├── .babelrc.cjs ├── .circleci └── config.yml ├── .eslintrc.cjs ├── .flowconfig ├── .gitignore ├── .mocharc.cjs ├── LICENSE.md ├── README.md ├── flow-typed └── npm │ ├── @commitlint │ ├── cli_vx.x.x.js │ └── config-conventional_vx.x.x.js │ ├── @jedwards1211 │ ├── commitlint-config_vx.x.x.js │ ├── eslint-config-flow_vx.x.x.js │ └── eslint-config_vx.x.x.js │ ├── babel-cli_vx.x.x.js │ ├── babel-core_vx.x.x.js │ ├── babel-eslint_vx.x.x.js │ ├── babel-plugin-istanbul_vx.x.x.js │ ├── babel-plugin-lodash_vx.x.x.js │ ├── babel-plugin-syntax-dynamic-import_vx.x.x.js │ ├── babel-plugin-syntax-flow_vx.x.x.js │ ├── babel-plugin-transform-class-properties_vx.x.x.js │ ├── babel-plugin-transform-export-extensions_vx.x.x.js │ ├── babel-plugin-transform-flow-comments_vx.x.x.js │ ├── babel-plugin-transform-object-rest-spread_vx.x.x.js │ ├── babel-plugin-transform-runtime_vx.x.x.js │ ├── babel-preset-env_vx.x.x.js │ ├── babel-preset-es2015_vx.x.x.js │ ├── babel-preset-flow_vx.x.x.js │ ├── babel-preset-stage-1_vx.x.x.js │ ├── babel-register_vx.x.x.js │ ├── babel-runtime_vx.x.x.js │ ├── chai_v3.5.x.js │ ├── chai_v4.x.x.js │ ├── codecov_vx.x.x.js │ ├── copy_vx.x.x.js │ ├── coveralls_vx.x.x.js │ ├── eslint-plugin-flowtype_vx.x.x.js │ ├── eslint-watch_vx.x.x.js │ ├── eslint_vx.x.x.js │ ├── flow-bin_v0.x.x.js │ ├── flow-copy-source_vx.x.x.js │ ├── flow-watch_vx.x.x.js │ ├── husky_vx.x.x.js │ ├── istanbul_vx.x.x.js │ ├── lodash.mapvalues_vx.x.x.js │ ├── lodash_v4.x.x.js │ ├── mindfront-redux-utils_vx.x.x.js │ ├── mocha_v3.1.x.js │ ├── mocha_v5.x.x.js │ ├── nyc_vx.x.x.js │ ├── redux_v3.x.x.js │ ├── reselect_v3.x.x.js │ ├── rimraf_v2.x.x.js │ ├── semantic-release_vx.x.x.js │ ├── sinon_vx.x.x.js │ ├── travis-deploy-once_vx.x.x.js │ └── validate-commit-msg_vx.x.x.js ├── githooks.cjs ├── lint-staged.config.cjs ├── nyc.config.cjs ├── package.json ├── pnpm-lock.yaml ├── prettier.config.cjs ├── release.config.cjs ├── src ├── actions.d.ts ├── actions.js ├── defaults.d.ts ├── defaults.js ├── featureMiddlewaresMiddleware.d.ts ├── featureMiddlewaresMiddleware.js ├── featureReducersReducer.d.ts ├── featureReducersReducer.js ├── featureStatesReducer.d.ts ├── featureStatesReducer.js ├── featuresReducer.d.ts ├── featuresReducer.js ├── index.d.ts ├── index.js ├── loadFeatureMiddleware.d.ts └── loadFeatureMiddleware.js ├── test ├── .eslintrc ├── clearConsole.js ├── featureMiddlewaresMiddlewareTest.js ├── featureReducersReducerTest.js ├── featureStatesReducerTest.js ├── featuresReducerTest.js ├── loadFeatureMiddlewareTest.js ├── typecheck.js └── typecheck.ts ├── toolchain.config.cjs ├── tsconfig.build.json └── tsconfig.json /.babelrc.cjs: -------------------------------------------------------------------------------- 1 | /* eslint-env node, es2018 */ 2 | module.exports = function (api) { 3 | const base = require('@jcoreio/toolchain-esnext/.babelrc.cjs')(api) 4 | return { 5 | ...base, 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /.circleci/config.yml: -------------------------------------------------------------------------------- 1 | # created by @jcoreio/toolchain-circle 2 | 3 | version: 2.1 4 | jobs: 5 | build: 6 | docker: 7 | - image: cimg/node:20.3.0 8 | 9 | steps: 10 | - checkout 11 | - run: 12 | name: Setup NPM Token 13 | command: | 14 | npm config set \ 15 | "//registry.npmjs.org/:_authToken=$NPM_TOKEN" \ 16 | "registry=https://registry.npmjs.org/" 17 | - run: 18 | name: Corepack enable 19 | command: sudo corepack enable 20 | - run: 21 | name: Install Dependencies 22 | command: pnpm install --frozen-lockfile 23 | - run: 24 | name: Prepublish 25 | command: | 26 | [[ $(netstat -tnlp | grep -F 'circleci-agent') ]] || pnpm run tc prepublish 27 | - run: 28 | name: Release 29 | command: | 30 | [[ $(netstat -tnlp | grep -F 'circleci-agent') ]] || pnpm run tc release 31 | 32 | workflows: 33 | build: 34 | jobs: 35 | - build: 36 | context: 37 | - npm-release 38 | - github-release 39 | -------------------------------------------------------------------------------- /.eslintrc.cjs: -------------------------------------------------------------------------------- 1 | /* eslint-env node, es2018 */ 2 | module.exports = { 3 | extends: [require.resolve('@jcoreio/toolchain/eslint.config.cjs')], 4 | env: { 5 | es6: true, 6 | }, 7 | rules: { 8 | '@typescript-eslint/ban-types': 0, 9 | }, 10 | } 11 | -------------------------------------------------------------------------------- /.flowconfig: -------------------------------------------------------------------------------- 1 | [ignore] 2 | /lib/.* 3 | /es/.* 4 | /node_modules/fbjs/.* 5 | /node_modules/.*/fbjs/.* 6 | /node_modules/findup/test/.* 7 | /dist/.* 8 | .*/malformed_package_json/.* 9 | .*/findup/.* 10 | 11 | [include] 12 | ./src 13 | ./test 14 | 15 | [libs] 16 | ./flowlib 17 | 18 | [options] 19 | module.system=node 20 | esproposal.class_static_fields=enable 21 | esproposal.class_instance_fields=enable 22 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /dist 2 | .nyc_output 3 | node_modules 4 | /coverage 5 | -------------------------------------------------------------------------------- /.mocharc.cjs: -------------------------------------------------------------------------------- 1 | /* eslint-env node, es2018 */ 2 | const base = require('@jcoreio/toolchain-mocha/.mocharc.cjs') 3 | module.exports = { 4 | ...base, 5 | } 6 | -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2016-present Andy Edwards 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /flow-typed/npm/@commitlint/cli_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 6683e317b86cbc6e4f7ba2ed155c1f4e 2 | // flow-typed version: <>/@commitlint/cli_v^6.0.2/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * '@commitlint/cli' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module '@commitlint/cli' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | declare module '@commitlint/cli/fixtures/empty/commitlint.config' { 26 | declare module.exports: any 27 | } 28 | 29 | declare module '@commitlint/cli/fixtures/extends-root/extended' { 30 | declare module.exports: any 31 | } 32 | 33 | declare module '@commitlint/cli/fixtures/inner-scope/commitlint.config' { 34 | declare module.exports: any 35 | } 36 | 37 | declare module '@commitlint/cli/fixtures/inner-scope/inner-scope/commitlint.config' { 38 | declare module.exports: any 39 | } 40 | 41 | declare module '@commitlint/cli/fixtures/issue-prefixes/commitlint.config' { 42 | declare module.exports: any 43 | } 44 | 45 | declare module '@commitlint/cli/fixtures/outer-scope/commitlint.config' { 46 | declare module.exports: any 47 | } 48 | 49 | declare module '@commitlint/cli/fixtures/parser-preset/commitlint.config' { 50 | declare module.exports: any 51 | } 52 | 53 | declare module '@commitlint/cli/fixtures/parser-preset/parser-preset' { 54 | declare module.exports: any 55 | } 56 | 57 | declare module '@commitlint/cli/fixtures/signoff/commitlint.config' { 58 | declare module.exports: any 59 | } 60 | 61 | declare module '@commitlint/cli/fixtures/simple/commitlint.config' { 62 | declare module.exports: any 63 | } 64 | 65 | declare module '@commitlint/cli/lib/cli' { 66 | declare module.exports: any 67 | } 68 | 69 | declare module '@commitlint/cli/lib/cli.test' { 70 | declare module.exports: any 71 | } 72 | 73 | declare module '@commitlint/cli/lib/help' { 74 | declare module.exports: any 75 | } 76 | 77 | declare module '@commitlint/cli/src/cli' { 78 | declare module.exports: any 79 | } 80 | 81 | declare module '@commitlint/cli/src/cli.test' { 82 | declare module.exports: any 83 | } 84 | 85 | declare module '@commitlint/cli/src/help' { 86 | declare module.exports: any 87 | } 88 | 89 | // Filename aliases 90 | declare module '@commitlint/cli/fixtures/empty/commitlint.config.js' { 91 | declare module.exports: $Exports<'@commitlint/cli/fixtures/empty/commitlint.config'> 92 | } 93 | declare module '@commitlint/cli/fixtures/extends-root/extended.js' { 94 | declare module.exports: $Exports<'@commitlint/cli/fixtures/extends-root/extended'> 95 | } 96 | declare module '@commitlint/cli/fixtures/inner-scope/commitlint.config.js' { 97 | declare module.exports: $Exports<'@commitlint/cli/fixtures/inner-scope/commitlint.config'> 98 | } 99 | declare module '@commitlint/cli/fixtures/inner-scope/inner-scope/commitlint.config.js' { 100 | declare module.exports: $Exports<'@commitlint/cli/fixtures/inner-scope/inner-scope/commitlint.config'> 101 | } 102 | declare module '@commitlint/cli/fixtures/issue-prefixes/commitlint.config.js' { 103 | declare module.exports: $Exports<'@commitlint/cli/fixtures/issue-prefixes/commitlint.config'> 104 | } 105 | declare module '@commitlint/cli/fixtures/outer-scope/commitlint.config.js' { 106 | declare module.exports: $Exports<'@commitlint/cli/fixtures/outer-scope/commitlint.config'> 107 | } 108 | declare module '@commitlint/cli/fixtures/parser-preset/commitlint.config.js' { 109 | declare module.exports: $Exports<'@commitlint/cli/fixtures/parser-preset/commitlint.config'> 110 | } 111 | declare module '@commitlint/cli/fixtures/parser-preset/parser-preset.js' { 112 | declare module.exports: $Exports<'@commitlint/cli/fixtures/parser-preset/parser-preset'> 113 | } 114 | declare module '@commitlint/cli/fixtures/signoff/commitlint.config.js' { 115 | declare module.exports: $Exports<'@commitlint/cli/fixtures/signoff/commitlint.config'> 116 | } 117 | declare module '@commitlint/cli/fixtures/simple/commitlint.config.js' { 118 | declare module.exports: $Exports<'@commitlint/cli/fixtures/simple/commitlint.config'> 119 | } 120 | declare module '@commitlint/cli/index' { 121 | declare module.exports: $Exports<'@commitlint/cli'> 122 | } 123 | declare module '@commitlint/cli/index.js' { 124 | declare module.exports: $Exports<'@commitlint/cli'> 125 | } 126 | declare module '@commitlint/cli/lib/cli.js' { 127 | declare module.exports: $Exports<'@commitlint/cli/lib/cli'> 128 | } 129 | declare module '@commitlint/cli/lib/cli.test.js' { 130 | declare module.exports: $Exports<'@commitlint/cli/lib/cli.test'> 131 | } 132 | declare module '@commitlint/cli/lib/help.js' { 133 | declare module.exports: $Exports<'@commitlint/cli/lib/help'> 134 | } 135 | declare module '@commitlint/cli/src/cli.js' { 136 | declare module.exports: $Exports<'@commitlint/cli/src/cli'> 137 | } 138 | declare module '@commitlint/cli/src/cli.test.js' { 139 | declare module.exports: $Exports<'@commitlint/cli/src/cli.test'> 140 | } 141 | declare module '@commitlint/cli/src/help.js' { 142 | declare module.exports: $Exports<'@commitlint/cli/src/help'> 143 | } 144 | -------------------------------------------------------------------------------- /flow-typed/npm/@commitlint/config-conventional_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 12857df53d6bf6d09eb4234e7d8f816c 2 | // flow-typed version: <>/@commitlint/config-conventional_v^6.0.2/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * '@commitlint/config-conventional' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module '@commitlint/config-conventional' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | 26 | // Filename aliases 27 | declare module '@commitlint/config-conventional/index' { 28 | declare module.exports: $Exports<'@commitlint/config-conventional'> 29 | } 30 | declare module '@commitlint/config-conventional/index.js' { 31 | declare module.exports: $Exports<'@commitlint/config-conventional'> 32 | } 33 | -------------------------------------------------------------------------------- /flow-typed/npm/@jedwards1211/commitlint-config_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 50c82f33e50286a7bcd0e13a4a351f58 2 | // flow-typed version: <>/@jedwards1211/commitlint-config_v^1.0.0/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * '@jedwards1211/commitlint-config' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module '@jedwards1211/commitlint-config' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | declare module '@jedwards1211/commitlint-config/commitlint.config' { 26 | declare module.exports: any 27 | } 28 | 29 | // Filename aliases 30 | declare module '@jedwards1211/commitlint-config/commitlint.config.js' { 31 | declare module.exports: $Exports<'@jedwards1211/commitlint-config/commitlint.config'> 32 | } 33 | -------------------------------------------------------------------------------- /flow-typed/npm/@jedwards1211/eslint-config-flow_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 3b5c1df4985b263aa39bc46f637e4be0 2 | // flow-typed version: <>/@jedwards1211/eslint-config-flow_v^1.0.0/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * '@jedwards1211/eslint-config-flow' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module '@jedwards1211/eslint-config-flow' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | 26 | // Filename aliases 27 | declare module '@jedwards1211/eslint-config-flow/index' { 28 | declare module.exports: $Exports<'@jedwards1211/eslint-config-flow'> 29 | } 30 | declare module '@jedwards1211/eslint-config-flow/index.js' { 31 | declare module.exports: $Exports<'@jedwards1211/eslint-config-flow'> 32 | } 33 | -------------------------------------------------------------------------------- /flow-typed/npm/@jedwards1211/eslint-config_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: b707a1312ba7106f46b25d0fa419b18e 2 | // flow-typed version: <>/@jedwards1211/eslint-config_v^2.0.0/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * '@jedwards1211/eslint-config' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module '@jedwards1211/eslint-config' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | 26 | // Filename aliases 27 | declare module '@jedwards1211/eslint-config/index' { 28 | declare module.exports: $Exports<'@jedwards1211/eslint-config'> 29 | } 30 | declare module '@jedwards1211/eslint-config/index.js' { 31 | declare module.exports: $Exports<'@jedwards1211/eslint-config'> 32 | } 33 | -------------------------------------------------------------------------------- /flow-typed/npm/babel-cli_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 0053ab19d1f7f466b2b5f03964cc6750 2 | // flow-typed version: <>/babel-cli_v^6.23.0/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'babel-cli' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module 'babel-cli' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | declare module 'babel-cli/bin/babel-doctor' { 26 | declare module.exports: any 27 | } 28 | 29 | declare module 'babel-cli/bin/babel-external-helpers' { 30 | declare module.exports: any 31 | } 32 | 33 | declare module 'babel-cli/bin/babel-node' { 34 | declare module.exports: any 35 | } 36 | 37 | declare module 'babel-cli/bin/babel' { 38 | declare module.exports: any 39 | } 40 | 41 | declare module 'babel-cli/lib/_babel-node' { 42 | declare module.exports: any 43 | } 44 | 45 | declare module 'babel-cli/lib/babel-external-helpers' { 46 | declare module.exports: any 47 | } 48 | 49 | declare module 'babel-cli/lib/babel-node' { 50 | declare module.exports: any 51 | } 52 | 53 | declare module 'babel-cli/lib/babel/dir' { 54 | declare module.exports: any 55 | } 56 | 57 | declare module 'babel-cli/lib/babel/file' { 58 | declare module.exports: any 59 | } 60 | 61 | declare module 'babel-cli/lib/babel/index' { 62 | declare module.exports: any 63 | } 64 | 65 | declare module 'babel-cli/lib/babel/util' { 66 | declare module.exports: any 67 | } 68 | 69 | // Filename aliases 70 | declare module 'babel-cli/bin/babel-doctor.js' { 71 | declare module.exports: $Exports<'babel-cli/bin/babel-doctor'> 72 | } 73 | declare module 'babel-cli/bin/babel-external-helpers.js' { 74 | declare module.exports: $Exports<'babel-cli/bin/babel-external-helpers'> 75 | } 76 | declare module 'babel-cli/bin/babel-node.js' { 77 | declare module.exports: $Exports<'babel-cli/bin/babel-node'> 78 | } 79 | declare module 'babel-cli/bin/babel.js' { 80 | declare module.exports: $Exports<'babel-cli/bin/babel'> 81 | } 82 | declare module 'babel-cli/index' { 83 | declare module.exports: $Exports<'babel-cli'> 84 | } 85 | declare module 'babel-cli/index.js' { 86 | declare module.exports: $Exports<'babel-cli'> 87 | } 88 | declare module 'babel-cli/lib/_babel-node.js' { 89 | declare module.exports: $Exports<'babel-cli/lib/_babel-node'> 90 | } 91 | declare module 'babel-cli/lib/babel-external-helpers.js' { 92 | declare module.exports: $Exports<'babel-cli/lib/babel-external-helpers'> 93 | } 94 | declare module 'babel-cli/lib/babel-node.js' { 95 | declare module.exports: $Exports<'babel-cli/lib/babel-node'> 96 | } 97 | declare module 'babel-cli/lib/babel/dir.js' { 98 | declare module.exports: $Exports<'babel-cli/lib/babel/dir'> 99 | } 100 | declare module 'babel-cli/lib/babel/file.js' { 101 | declare module.exports: $Exports<'babel-cli/lib/babel/file'> 102 | } 103 | declare module 'babel-cli/lib/babel/index.js' { 104 | declare module.exports: $Exports<'babel-cli/lib/babel/index'> 105 | } 106 | declare module 'babel-cli/lib/babel/util.js' { 107 | declare module.exports: $Exports<'babel-cli/lib/babel/util'> 108 | } 109 | -------------------------------------------------------------------------------- /flow-typed/npm/babel-core_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: ee2a0aa7a206ee05dda4e0b82775176e 2 | // flow-typed version: <>/babel-core_v^6.23.1/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'babel-core' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module 'babel-core' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | declare module 'babel-core/lib/api/browser' { 26 | declare module.exports: any 27 | } 28 | 29 | declare module 'babel-core/lib/api/node' { 30 | declare module.exports: any 31 | } 32 | 33 | declare module 'babel-core/lib/helpers/get-possible-plugin-names' { 34 | declare module.exports: any 35 | } 36 | 37 | declare module 'babel-core/lib/helpers/get-possible-preset-names' { 38 | declare module.exports: any 39 | } 40 | 41 | declare module 'babel-core/lib/helpers/merge' { 42 | declare module.exports: any 43 | } 44 | 45 | declare module 'babel-core/lib/helpers/normalize-ast' { 46 | declare module.exports: any 47 | } 48 | 49 | declare module 'babel-core/lib/helpers/resolve-from-possible-names' { 50 | declare module.exports: any 51 | } 52 | 53 | declare module 'babel-core/lib/helpers/resolve-plugin' { 54 | declare module.exports: any 55 | } 56 | 57 | declare module 'babel-core/lib/helpers/resolve-preset' { 58 | declare module.exports: any 59 | } 60 | 61 | declare module 'babel-core/lib/helpers/resolve' { 62 | declare module.exports: any 63 | } 64 | 65 | declare module 'babel-core/lib/store' { 66 | declare module.exports: any 67 | } 68 | 69 | declare module 'babel-core/lib/tools/build-external-helpers' { 70 | declare module.exports: any 71 | } 72 | 73 | declare module 'babel-core/lib/transformation/file/index' { 74 | declare module.exports: any 75 | } 76 | 77 | declare module 'babel-core/lib/transformation/file/logger' { 78 | declare module.exports: any 79 | } 80 | 81 | declare module 'babel-core/lib/transformation/file/metadata' { 82 | declare module.exports: any 83 | } 84 | 85 | declare module 'babel-core/lib/transformation/file/options/build-config-chain' { 86 | declare module.exports: any 87 | } 88 | 89 | declare module 'babel-core/lib/transformation/file/options/config' { 90 | declare module.exports: any 91 | } 92 | 93 | declare module 'babel-core/lib/transformation/file/options/index' { 94 | declare module.exports: any 95 | } 96 | 97 | declare module 'babel-core/lib/transformation/file/options/option-manager' { 98 | declare module.exports: any 99 | } 100 | 101 | declare module 'babel-core/lib/transformation/file/options/parsers' { 102 | declare module.exports: any 103 | } 104 | 105 | declare module 'babel-core/lib/transformation/file/options/removed' { 106 | declare module.exports: any 107 | } 108 | 109 | declare module 'babel-core/lib/transformation/internal-plugins/block-hoist' { 110 | declare module.exports: any 111 | } 112 | 113 | declare module 'babel-core/lib/transformation/internal-plugins/shadow-functions' { 114 | declare module.exports: any 115 | } 116 | 117 | declare module 'babel-core/lib/transformation/pipeline' { 118 | declare module.exports: any 119 | } 120 | 121 | declare module 'babel-core/lib/transformation/plugin-pass' { 122 | declare module.exports: any 123 | } 124 | 125 | declare module 'babel-core/lib/transformation/plugin' { 126 | declare module.exports: any 127 | } 128 | 129 | declare module 'babel-core/lib/util' { 130 | declare module.exports: any 131 | } 132 | 133 | declare module 'babel-core/register' { 134 | declare module.exports: any 135 | } 136 | 137 | // Filename aliases 138 | declare module 'babel-core/index' { 139 | declare module.exports: $Exports<'babel-core'> 140 | } 141 | declare module 'babel-core/index.js' { 142 | declare module.exports: $Exports<'babel-core'> 143 | } 144 | declare module 'babel-core/lib/api/browser.js' { 145 | declare module.exports: $Exports<'babel-core/lib/api/browser'> 146 | } 147 | declare module 'babel-core/lib/api/node.js' { 148 | declare module.exports: $Exports<'babel-core/lib/api/node'> 149 | } 150 | declare module 'babel-core/lib/helpers/get-possible-plugin-names.js' { 151 | declare module.exports: $Exports<'babel-core/lib/helpers/get-possible-plugin-names'> 152 | } 153 | declare module 'babel-core/lib/helpers/get-possible-preset-names.js' { 154 | declare module.exports: $Exports<'babel-core/lib/helpers/get-possible-preset-names'> 155 | } 156 | declare module 'babel-core/lib/helpers/merge.js' { 157 | declare module.exports: $Exports<'babel-core/lib/helpers/merge'> 158 | } 159 | declare module 'babel-core/lib/helpers/normalize-ast.js' { 160 | declare module.exports: $Exports<'babel-core/lib/helpers/normalize-ast'> 161 | } 162 | declare module 'babel-core/lib/helpers/resolve-from-possible-names.js' { 163 | declare module.exports: $Exports<'babel-core/lib/helpers/resolve-from-possible-names'> 164 | } 165 | declare module 'babel-core/lib/helpers/resolve-plugin.js' { 166 | declare module.exports: $Exports<'babel-core/lib/helpers/resolve-plugin'> 167 | } 168 | declare module 'babel-core/lib/helpers/resolve-preset.js' { 169 | declare module.exports: $Exports<'babel-core/lib/helpers/resolve-preset'> 170 | } 171 | declare module 'babel-core/lib/helpers/resolve.js' { 172 | declare module.exports: $Exports<'babel-core/lib/helpers/resolve'> 173 | } 174 | declare module 'babel-core/lib/store.js' { 175 | declare module.exports: $Exports<'babel-core/lib/store'> 176 | } 177 | declare module 'babel-core/lib/tools/build-external-helpers.js' { 178 | declare module.exports: $Exports<'babel-core/lib/tools/build-external-helpers'> 179 | } 180 | declare module 'babel-core/lib/transformation/file/index.js' { 181 | declare module.exports: $Exports<'babel-core/lib/transformation/file/index'> 182 | } 183 | declare module 'babel-core/lib/transformation/file/logger.js' { 184 | declare module.exports: $Exports<'babel-core/lib/transformation/file/logger'> 185 | } 186 | declare module 'babel-core/lib/transformation/file/metadata.js' { 187 | declare module.exports: $Exports<'babel-core/lib/transformation/file/metadata'> 188 | } 189 | declare module 'babel-core/lib/transformation/file/options/build-config-chain.js' { 190 | declare module.exports: $Exports<'babel-core/lib/transformation/file/options/build-config-chain'> 191 | } 192 | declare module 'babel-core/lib/transformation/file/options/config.js' { 193 | declare module.exports: $Exports<'babel-core/lib/transformation/file/options/config'> 194 | } 195 | declare module 'babel-core/lib/transformation/file/options/index.js' { 196 | declare module.exports: $Exports<'babel-core/lib/transformation/file/options/index'> 197 | } 198 | declare module 'babel-core/lib/transformation/file/options/option-manager.js' { 199 | declare module.exports: $Exports<'babel-core/lib/transformation/file/options/option-manager'> 200 | } 201 | declare module 'babel-core/lib/transformation/file/options/parsers.js' { 202 | declare module.exports: $Exports<'babel-core/lib/transformation/file/options/parsers'> 203 | } 204 | declare module 'babel-core/lib/transformation/file/options/removed.js' { 205 | declare module.exports: $Exports<'babel-core/lib/transformation/file/options/removed'> 206 | } 207 | declare module 'babel-core/lib/transformation/internal-plugins/block-hoist.js' { 208 | declare module.exports: $Exports<'babel-core/lib/transformation/internal-plugins/block-hoist'> 209 | } 210 | declare module 'babel-core/lib/transformation/internal-plugins/shadow-functions.js' { 211 | declare module.exports: $Exports<'babel-core/lib/transformation/internal-plugins/shadow-functions'> 212 | } 213 | declare module 'babel-core/lib/transformation/pipeline.js' { 214 | declare module.exports: $Exports<'babel-core/lib/transformation/pipeline'> 215 | } 216 | declare module 'babel-core/lib/transformation/plugin-pass.js' { 217 | declare module.exports: $Exports<'babel-core/lib/transformation/plugin-pass'> 218 | } 219 | declare module 'babel-core/lib/transformation/plugin.js' { 220 | declare module.exports: $Exports<'babel-core/lib/transformation/plugin'> 221 | } 222 | declare module 'babel-core/lib/util.js' { 223 | declare module.exports: $Exports<'babel-core/lib/util'> 224 | } 225 | declare module 'babel-core/register.js' { 226 | declare module.exports: $Exports<'babel-core/register'> 227 | } 228 | -------------------------------------------------------------------------------- /flow-typed/npm/babel-eslint_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 4afde544d0ad1f152631b6b64a2390c0 2 | // flow-typed version: <>/babel-eslint_v^8.0.0/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'babel-eslint' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module 'babel-eslint' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | declare module 'babel-eslint/babylon-to-espree/attachComments' { 26 | declare module.exports: any 27 | } 28 | 29 | declare module 'babel-eslint/babylon-to-espree/convertComments' { 30 | declare module.exports: any 31 | } 32 | 33 | declare module 'babel-eslint/babylon-to-espree/convertTemplateType' { 34 | declare module.exports: any 35 | } 36 | 37 | declare module 'babel-eslint/babylon-to-espree/index' { 38 | declare module.exports: any 39 | } 40 | 41 | declare module 'babel-eslint/babylon-to-espree/toAST' { 42 | declare module.exports: any 43 | } 44 | 45 | declare module 'babel-eslint/babylon-to-espree/toToken' { 46 | declare module.exports: any 47 | } 48 | 49 | declare module 'babel-eslint/babylon-to-espree/toTokens' { 50 | declare module.exports: any 51 | } 52 | 53 | // Filename aliases 54 | declare module 'babel-eslint/babylon-to-espree/attachComments.js' { 55 | declare module.exports: $Exports<'babel-eslint/babylon-to-espree/attachComments'> 56 | } 57 | declare module 'babel-eslint/babylon-to-espree/convertComments.js' { 58 | declare module.exports: $Exports<'babel-eslint/babylon-to-espree/convertComments'> 59 | } 60 | declare module 'babel-eslint/babylon-to-espree/convertTemplateType.js' { 61 | declare module.exports: $Exports<'babel-eslint/babylon-to-espree/convertTemplateType'> 62 | } 63 | declare module 'babel-eslint/babylon-to-espree/index.js' { 64 | declare module.exports: $Exports<'babel-eslint/babylon-to-espree/index'> 65 | } 66 | declare module 'babel-eslint/babylon-to-espree/toAST.js' { 67 | declare module.exports: $Exports<'babel-eslint/babylon-to-espree/toAST'> 68 | } 69 | declare module 'babel-eslint/babylon-to-espree/toToken.js' { 70 | declare module.exports: $Exports<'babel-eslint/babylon-to-espree/toToken'> 71 | } 72 | declare module 'babel-eslint/babylon-to-espree/toTokens.js' { 73 | declare module.exports: $Exports<'babel-eslint/babylon-to-espree/toTokens'> 74 | } 75 | declare module 'babel-eslint/index' { 76 | declare module.exports: $Exports<'babel-eslint'> 77 | } 78 | declare module 'babel-eslint/index.js' { 79 | declare module.exports: $Exports<'babel-eslint'> 80 | } 81 | -------------------------------------------------------------------------------- /flow-typed/npm/babel-plugin-istanbul_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: d2355a0abec01b40ccd516673b8c3f44 2 | // flow-typed version: <>/babel-plugin-istanbul_v^4.1.1/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'babel-plugin-istanbul' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module 'babel-plugin-istanbul' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | declare module 'babel-plugin-istanbul/lib/index' { 26 | declare module.exports: any 27 | } 28 | 29 | // Filename aliases 30 | declare module 'babel-plugin-istanbul/lib/index.js' { 31 | declare module.exports: $Exports<'babel-plugin-istanbul/lib/index'> 32 | } 33 | -------------------------------------------------------------------------------- /flow-typed/npm/babel-plugin-lodash_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 75f2d449db190115c7d3320fda323fe7 2 | // flow-typed version: <>/babel-plugin-lodash_v^3.3.4/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'babel-plugin-lodash' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module 'babel-plugin-lodash' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | declare module 'babel-plugin-lodash/lib/config' { 26 | declare module.exports: any 27 | } 28 | 29 | declare module 'babel-plugin-lodash/lib/importModule' { 30 | declare module.exports: any 31 | } 32 | 33 | declare module 'babel-plugin-lodash/lib/index' { 34 | declare module.exports: any 35 | } 36 | 37 | declare module 'babel-plugin-lodash/lib/Map' { 38 | declare module.exports: any 39 | } 40 | 41 | declare module 'babel-plugin-lodash/lib/MapCache' { 42 | declare module.exports: any 43 | } 44 | 45 | declare module 'babel-plugin-lodash/lib/mapping' { 46 | declare module.exports: any 47 | } 48 | 49 | declare module 'babel-plugin-lodash/lib/ModuleCache' { 50 | declare module.exports: any 51 | } 52 | 53 | declare module 'babel-plugin-lodash/lib/Package' { 54 | declare module.exports: any 55 | } 56 | 57 | declare module 'babel-plugin-lodash/lib/Store' { 58 | declare module.exports: any 59 | } 60 | 61 | declare module 'babel-plugin-lodash/lib/util' { 62 | declare module.exports: any 63 | } 64 | 65 | // Filename aliases 66 | declare module 'babel-plugin-lodash/lib/config.js' { 67 | declare module.exports: $Exports<'babel-plugin-lodash/lib/config'> 68 | } 69 | declare module 'babel-plugin-lodash/lib/importModule.js' { 70 | declare module.exports: $Exports<'babel-plugin-lodash/lib/importModule'> 71 | } 72 | declare module 'babel-plugin-lodash/lib/index.js' { 73 | declare module.exports: $Exports<'babel-plugin-lodash/lib/index'> 74 | } 75 | declare module 'babel-plugin-lodash/lib/Map.js' { 76 | declare module.exports: $Exports<'babel-plugin-lodash/lib/Map'> 77 | } 78 | declare module 'babel-plugin-lodash/lib/MapCache.js' { 79 | declare module.exports: $Exports<'babel-plugin-lodash/lib/MapCache'> 80 | } 81 | declare module 'babel-plugin-lodash/lib/mapping.js' { 82 | declare module.exports: $Exports<'babel-plugin-lodash/lib/mapping'> 83 | } 84 | declare module 'babel-plugin-lodash/lib/ModuleCache.js' { 85 | declare module.exports: $Exports<'babel-plugin-lodash/lib/ModuleCache'> 86 | } 87 | declare module 'babel-plugin-lodash/lib/Package.js' { 88 | declare module.exports: $Exports<'babel-plugin-lodash/lib/Package'> 89 | } 90 | declare module 'babel-plugin-lodash/lib/Store.js' { 91 | declare module.exports: $Exports<'babel-plugin-lodash/lib/Store'> 92 | } 93 | declare module 'babel-plugin-lodash/lib/util.js' { 94 | declare module.exports: $Exports<'babel-plugin-lodash/lib/util'> 95 | } 96 | -------------------------------------------------------------------------------- /flow-typed/npm/babel-plugin-syntax-dynamic-import_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 3a57e681414fee269cf74d8b5fbed03a 2 | // flow-typed version: <>/babel-plugin-syntax-dynamic-import_v^6.18.0/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'babel-plugin-syntax-dynamic-import' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module 'babel-plugin-syntax-dynamic-import' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | declare module 'babel-plugin-syntax-dynamic-import/lib/index' { 26 | declare module.exports: any 27 | } 28 | 29 | // Filename aliases 30 | declare module 'babel-plugin-syntax-dynamic-import/lib/index.js' { 31 | declare module.exports: $Exports<'babel-plugin-syntax-dynamic-import/lib/index'> 32 | } 33 | -------------------------------------------------------------------------------- /flow-typed/npm/babel-plugin-syntax-flow_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 8181a7f11e87ba17ebd6b1eddf4c3494 2 | // flow-typed version: <>/babel-plugin-syntax-flow_v^6.18.0/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'babel-plugin-syntax-flow' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module 'babel-plugin-syntax-flow' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | declare module 'babel-plugin-syntax-flow/lib/index' { 26 | declare module.exports: any 27 | } 28 | 29 | // Filename aliases 30 | declare module 'babel-plugin-syntax-flow/lib/index.js' { 31 | declare module.exports: $Exports<'babel-plugin-syntax-flow/lib/index'> 32 | } 33 | -------------------------------------------------------------------------------- /flow-typed/npm/babel-plugin-transform-class-properties_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 767a7d3bf2a66c090e5050cb6c19194d 2 | // flow-typed version: <>/babel-plugin-transform-class-properties_v^6.24.1/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'babel-plugin-transform-class-properties' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module 'babel-plugin-transform-class-properties' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | declare module 'babel-plugin-transform-class-properties/lib/index' { 26 | declare module.exports: any 27 | } 28 | 29 | // Filename aliases 30 | declare module 'babel-plugin-transform-class-properties/lib/index.js' { 31 | declare module.exports: $Exports<'babel-plugin-transform-class-properties/lib/index'> 32 | } 33 | -------------------------------------------------------------------------------- /flow-typed/npm/babel-plugin-transform-export-extensions_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 24ffe2f565800aa0ae6049eae4931a99 2 | // flow-typed version: <>/babel-plugin-transform-export-extensions_v^6.22.0/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'babel-plugin-transform-export-extensions' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module 'babel-plugin-transform-export-extensions' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | declare module 'babel-plugin-transform-export-extensions/lib/index' { 26 | declare module.exports: any 27 | } 28 | 29 | // Filename aliases 30 | declare module 'babel-plugin-transform-export-extensions/lib/index.js' { 31 | declare module.exports: $Exports<'babel-plugin-transform-export-extensions/lib/index'> 32 | } 33 | -------------------------------------------------------------------------------- /flow-typed/npm/babel-plugin-transform-flow-comments_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: d3d69109f2cd9280eb42ac1905a2e228 2 | // flow-typed version: <>/babel-plugin-transform-flow-comments_v^6.17.0/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'babel-plugin-transform-flow-comments' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module 'babel-plugin-transform-flow-comments' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | declare module 'babel-plugin-transform-flow-comments/lib/index' { 26 | declare module.exports: any 27 | } 28 | 29 | // Filename aliases 30 | declare module 'babel-plugin-transform-flow-comments/lib/index.js' { 31 | declare module.exports: $Exports<'babel-plugin-transform-flow-comments/lib/index'> 32 | } 33 | -------------------------------------------------------------------------------- /flow-typed/npm/babel-plugin-transform-object-rest-spread_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 2beecb275553c1ba77591a53ec8c8d33 2 | // flow-typed version: <>/babel-plugin-transform-object-rest-spread_v^6.26.0/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'babel-plugin-transform-object-rest-spread' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module 'babel-plugin-transform-object-rest-spread' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | declare module 'babel-plugin-transform-object-rest-spread/lib/index' { 26 | declare module.exports: any 27 | } 28 | 29 | // Filename aliases 30 | declare module 'babel-plugin-transform-object-rest-spread/lib/index.js' { 31 | declare module.exports: $Exports<'babel-plugin-transform-object-rest-spread/lib/index'> 32 | } 33 | -------------------------------------------------------------------------------- /flow-typed/npm/babel-plugin-transform-runtime_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: b1ef518176db4fa8659f1eac43606007 2 | // flow-typed version: <>/babel-plugin-transform-runtime_v^6.23.0/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'babel-plugin-transform-runtime' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module 'babel-plugin-transform-runtime' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | declare module 'babel-plugin-transform-runtime/lib/definitions' { 26 | declare module.exports: any 27 | } 28 | 29 | declare module 'babel-plugin-transform-runtime/lib/index' { 30 | declare module.exports: any 31 | } 32 | 33 | // Filename aliases 34 | declare module 'babel-plugin-transform-runtime/lib/definitions.js' { 35 | declare module.exports: $Exports<'babel-plugin-transform-runtime/lib/definitions'> 36 | } 37 | declare module 'babel-plugin-transform-runtime/lib/index.js' { 38 | declare module.exports: $Exports<'babel-plugin-transform-runtime/lib/index'> 39 | } 40 | -------------------------------------------------------------------------------- /flow-typed/npm/babel-preset-env_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 4f3bc115d939d7795f240f1ff0324e24 2 | // flow-typed version: <>/babel-preset-env_v^1.7.0/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'babel-preset-env' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module 'babel-preset-env' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | declare module 'babel-preset-env/data/built-in-features' { 26 | declare module.exports: any 27 | } 28 | 29 | declare module 'babel-preset-env/data/plugin-features' { 30 | declare module.exports: any 31 | } 32 | 33 | declare module 'babel-preset-env/lib/default-includes' { 34 | declare module.exports: any 35 | } 36 | 37 | declare module 'babel-preset-env/lib/index' { 38 | declare module.exports: any 39 | } 40 | 41 | declare module 'babel-preset-env/lib/module-transformations' { 42 | declare module.exports: any 43 | } 44 | 45 | declare module 'babel-preset-env/lib/normalize-options' { 46 | declare module.exports: any 47 | } 48 | 49 | declare module 'babel-preset-env/lib/targets-parser' { 50 | declare module.exports: any 51 | } 52 | 53 | declare module 'babel-preset-env/lib/transform-polyfill-require-plugin' { 54 | declare module.exports: any 55 | } 56 | 57 | declare module 'babel-preset-env/lib/utils' { 58 | declare module.exports: any 59 | } 60 | 61 | // Filename aliases 62 | declare module 'babel-preset-env/data/built-in-features.js' { 63 | declare module.exports: $Exports<'babel-preset-env/data/built-in-features'> 64 | } 65 | declare module 'babel-preset-env/data/plugin-features.js' { 66 | declare module.exports: $Exports<'babel-preset-env/data/plugin-features'> 67 | } 68 | declare module 'babel-preset-env/lib/default-includes.js' { 69 | declare module.exports: $Exports<'babel-preset-env/lib/default-includes'> 70 | } 71 | declare module 'babel-preset-env/lib/index.js' { 72 | declare module.exports: $Exports<'babel-preset-env/lib/index'> 73 | } 74 | declare module 'babel-preset-env/lib/module-transformations.js' { 75 | declare module.exports: $Exports<'babel-preset-env/lib/module-transformations'> 76 | } 77 | declare module 'babel-preset-env/lib/normalize-options.js' { 78 | declare module.exports: $Exports<'babel-preset-env/lib/normalize-options'> 79 | } 80 | declare module 'babel-preset-env/lib/targets-parser.js' { 81 | declare module.exports: $Exports<'babel-preset-env/lib/targets-parser'> 82 | } 83 | declare module 'babel-preset-env/lib/transform-polyfill-require-plugin.js' { 84 | declare module.exports: $Exports<'babel-preset-env/lib/transform-polyfill-require-plugin'> 85 | } 86 | declare module 'babel-preset-env/lib/utils.js' { 87 | declare module.exports: $Exports<'babel-preset-env/lib/utils'> 88 | } 89 | -------------------------------------------------------------------------------- /flow-typed/npm/babel-preset-es2015_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 9ba572d5fea51c222524510c4649707c 2 | // flow-typed version: <>/babel-preset-es2015_v^6.18.0/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'babel-preset-es2015' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module 'babel-preset-es2015' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | declare module 'babel-preset-es2015/lib/index' { 26 | declare module.exports: any 27 | } 28 | 29 | // Filename aliases 30 | declare module 'babel-preset-es2015/lib/index.js' { 31 | declare module.exports: $Exports<'babel-preset-es2015/lib/index'> 32 | } 33 | -------------------------------------------------------------------------------- /flow-typed/npm/babel-preset-flow_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 4375142b779bc2952bd884f26f47edea 2 | // flow-typed version: <>/babel-preset-flow_v^6.23.0/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'babel-preset-flow' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module 'babel-preset-flow' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | declare module 'babel-preset-flow/lib/index' { 26 | declare module.exports: any 27 | } 28 | 29 | // Filename aliases 30 | declare module 'babel-preset-flow/lib/index.js' { 31 | declare module.exports: $Exports<'babel-preset-flow/lib/index'> 32 | } 33 | -------------------------------------------------------------------------------- /flow-typed/npm/babel-preset-stage-1_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 92aa525d680a9260f077e60b397615cf 2 | // flow-typed version: <>/babel-preset-stage-1_v^6.24.1/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'babel-preset-stage-1' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module 'babel-preset-stage-1' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | declare module 'babel-preset-stage-1/lib/index' { 26 | declare module.exports: any 27 | } 28 | 29 | // Filename aliases 30 | declare module 'babel-preset-stage-1/lib/index.js' { 31 | declare module.exports: $Exports<'babel-preset-stage-1/lib/index'> 32 | } 33 | -------------------------------------------------------------------------------- /flow-typed/npm/babel-register_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: ceeee16e59414b189a354a49aace1885 2 | // flow-typed version: <>/babel-register_v^6.23.0/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'babel-register' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module 'babel-register' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | declare module 'babel-register/lib/browser' { 26 | declare module.exports: any 27 | } 28 | 29 | declare module 'babel-register/lib/cache' { 30 | declare module.exports: any 31 | } 32 | 33 | declare module 'babel-register/lib/node' { 34 | declare module.exports: any 35 | } 36 | 37 | // Filename aliases 38 | declare module 'babel-register/lib/browser.js' { 39 | declare module.exports: $Exports<'babel-register/lib/browser'> 40 | } 41 | declare module 'babel-register/lib/cache.js' { 42 | declare module.exports: $Exports<'babel-register/lib/cache'> 43 | } 44 | declare module 'babel-register/lib/node.js' { 45 | declare module.exports: $Exports<'babel-register/lib/node'> 46 | } 47 | -------------------------------------------------------------------------------- /flow-typed/npm/chai_v3.5.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: f80f981d039947b3f29f0f437061852a 2 | // flow-typed version: da30fe6876/chai_v3.5.x/flow_>=v0.25.0 3 | 4 | declare module 'chai' { 5 | declare type ExpectChain = { 6 | and: ExpectChain, 7 | at: ExpectChain, 8 | be: ExpectChain, 9 | been: ExpectChain, 10 | have: ExpectChain, 11 | has: ExpectChain, 12 | is: ExpectChain, 13 | of: ExpectChain, 14 | same: ExpectChain, 15 | that: ExpectChain, 16 | to: ExpectChain, 17 | which: ExpectChain, 18 | with: ExpectChain, 19 | 20 | not: ExpectChain, 21 | deep: ExpectChain, 22 | any: ExpectChain, 23 | all: ExpectChain, 24 | 25 | a: ExpectChain & ((type: string) => ExpectChain), 26 | an: ExpectChain & ((type: string) => ExpectChain), 27 | 28 | include: ExpectChain & ((value: mixed) => ExpectChain), 29 | includes: ExpectChain & ((value: mixed) => ExpectChain), 30 | contain: ExpectChain & ((value: mixed) => ExpectChain), 31 | contains: ExpectChain & ((value: mixed) => ExpectChain), 32 | 33 | eql: (value: T) => ExpectChain, 34 | equal: (value: T) => ExpectChain, 35 | equals: (value: T) => ExpectChain, 36 | 37 | above: (value: T & number) => ExpectChain, 38 | least: (value: T & number) => ExpectChain, 39 | below: (value: T & number) => ExpectChain, 40 | most: (value: T & number) => ExpectChain, 41 | within: (start: T & number, finish: T & number) => ExpectChain, 42 | 43 | instanceof: (constructor: mixed) => ExpectChain, 44 | property:

( 45 | name: string, 46 | value?: P 47 | ) => ExpectChain

& ((name: string) => ExpectChain), 48 | 49 | length: (value: number) => ExpectChain | ExpectChain, 50 | lengthOf: (value: number) => ExpectChain, 51 | 52 | match: (regex: RegExp) => ExpectChain, 53 | string: (string: string) => ExpectChain, 54 | 55 | key: (key: string) => ExpectChain, 56 | keys: ( 57 | key: string | Array, 58 | ...keys: Array 59 | ) => ExpectChain, 60 | 61 | throw: ( 62 | err?: Class | Error | RegExp | string, 63 | errMsgMatcher?: RegExp | string, 64 | msg?: string 65 | ) => ExpectChain, 66 | 67 | respondTo: (method: string) => ExpectChain, 68 | itself: ExpectChain, 69 | 70 | satisfy: (method: (value: T) => boolean) => ExpectChain, 71 | 72 | closeTo: (expected: T & number, delta: number) => ExpectChain, 73 | 74 | members: (set: mixed) => ExpectChain, 75 | oneOf: (list: Array) => ExpectChain, 76 | 77 | change: (obj: mixed, key: string) => ExpectChain, 78 | increase: (obj: mixed, key: string) => ExpectChain, 79 | decrease: (obj: mixed, key: string) => ExpectChain, 80 | 81 | // dirty-chai 82 | ok: () => ExpectChain, 83 | true: () => ExpectChain, 84 | false: () => ExpectChain, 85 | null: () => ExpectChain, 86 | undefined: () => ExpectChain, 87 | exist: () => ExpectChain, 88 | empty: () => ExpectChain, 89 | 90 | extensible: () => ExpectChain, 91 | sealed: () => ExpectChain, 92 | frozen: () => ExpectChain, 93 | 94 | // chai-immutable 95 | size: (n: number) => ExpectChain, 96 | 97 | // sinon-chai 98 | called: () => ExpectChain, 99 | callCount: (n: number) => ExpectChain, 100 | calledOnce: () => ExpectChain, 101 | calledTwice: () => ExpectChain, 102 | calledThrice: () => ExpectChain, 103 | calledBefore: (spy: mixed) => ExpectChain, 104 | calledAfter: (spy: mixed) => ExpectChain, 105 | calledWith: (...args: Array) => ExpectChain, 106 | calledWithMatch: (...args: Array) => ExpectChain, 107 | calledWithExactly: (...args: Array) => ExpectChain, 108 | 109 | // chai-as-promised 110 | eventually: ExpectChain, 111 | resolvedWith: (value: mixed) => Promise & ExpectChain, 112 | resolved: () => Promise & ExpectChain, 113 | rejectedWith: (value: mixed) => Promise & ExpectChain, 114 | rejected: () => Promise & ExpectChain, 115 | notify: (callback: () => mixed) => ExpectChain, 116 | 117 | // chai-subset 118 | containSubset: (obj: Object | Object[]) => ExpectChain, 119 | 120 | // chai-redux-mock-store 121 | dispatchedActions: ( 122 | actions: Array any)> 123 | ) => ExpectChain, 124 | dispatchedTypes: (actions: Array) => ExpectChain, 125 | } 126 | 127 | declare function expect(actual: T): ExpectChain 128 | 129 | declare function use(plugin: (chai: Object, utils: Object) => void): void 130 | 131 | declare class assert { 132 | static (expression: mixed, message?: string): void; 133 | static fail( 134 | actual: mixed, 135 | expected: mixed, 136 | message?: string, 137 | operator?: string 138 | ): void; 139 | 140 | static isOk(object: mixed, message?: string): void; 141 | static isNotOk(object: mixed, message?: string): void; 142 | 143 | static equal(actual: mixed, expected: mixed, message?: string): void; 144 | static notEqual(actual: mixed, expected: mixed, message?: string): void; 145 | 146 | static strictEqual(act: mixed, exp: mixed, msg?: string): void; 147 | static notStrictEqual(act: mixed, exp: mixed, msg?: string): void; 148 | 149 | static deepEqual(act: mixed, exp: mixed, msg?: string): void; 150 | static notDeepEqual(act: mixed, exp: mixed, msg?: string): void; 151 | 152 | static ok(val: mixed, msg?: string): void; 153 | static isTrue(val: mixed, msg?: string): void; 154 | static isNotTrue(val: mixed, msg?: string): void; 155 | static isFalse(val: mixed, msg?: string): void; 156 | static isNotFalse(val: mixed, msg?: string): void; 157 | 158 | static isNull(val: mixed, msg?: string): void; 159 | static isNotNull(val: mixed, msg?: string): void; 160 | 161 | static isUndefined(val: mixed, msg?: string): void; 162 | static isDefined(val: mixed, msg?: string): void; 163 | 164 | static isNaN(val: mixed, msg?: string): void; 165 | static isNotNaN(val: mixed, msg?: string): void; 166 | 167 | static isAbove(val: number, abv: number, msg?: string): void; 168 | static isBelow(val: number, blw: number, msg?: string): void; 169 | 170 | static isAtMost(val: number, atmst: number, msg?: string): void; 171 | static isAtLeast(val: number, atlst: number, msg?: string): void; 172 | 173 | static isFunction(val: mixed, msg?: string): void; 174 | static isNotFunction(val: mixed, msg?: string): void; 175 | 176 | static isObject(val: mixed, msg?: string): void; 177 | static isNotObject(val: mixed, msg?: string): void; 178 | 179 | static isArray(val: mixed, msg?: string): void; 180 | static isNotArray(val: mixed, msg?: string): void; 181 | 182 | static isString(val: mixed, msg?: string): void; 183 | static isNotString(val: mixed, msg?: string): void; 184 | 185 | static isNumber(val: mixed, msg?: string): void; 186 | static isNotNumber(val: mixed, msg?: string): void; 187 | 188 | static isBoolean(val: mixed, msg?: string): void; 189 | static isNotBoolean(val: mixed, msg?: string): void; 190 | 191 | static typeOf(val: mixed, type: string, msg?: string): void; 192 | static notTypeOf(val: mixed, type: string, msg?: string): void; 193 | 194 | static instanceOf(val: mixed, constructor: Function, msg?: string): void; 195 | static notInstanceOf(val: mixed, constructor: Function, msg?: string): void; 196 | 197 | static include(exp: string, inc: mixed, msg?: string): void; 198 | static include(exp: Array, inc: T, msg?: string): void; 199 | 200 | static notInclude(exp: string, inc: mixed, msg?: string): void; 201 | static notInclude(exp: Array, inc: T, msg?: string): void; 202 | 203 | static match(exp: mixed, re: RegExp, msg?: string): void; 204 | static notMatch(exp: mixed, re: RegExp, msg?: string): void; 205 | 206 | static property(obj: Object, prop: string, msg?: string): void; 207 | static notProperty(obj: Object, prop: string, msg?: string): void; 208 | static deepProperty(obj: Object, prop: string, msg?: string): void; 209 | static notDeepProperty(obj: Object, prop: string, msg?: string): void; 210 | 211 | static propertyVal( 212 | obj: Object, 213 | prop: string, 214 | val: mixed, 215 | msg?: string 216 | ): void; 217 | static propertyNotVal( 218 | obj: Object, 219 | prop: string, 220 | val: mixed, 221 | msg?: string 222 | ): void; 223 | 224 | static deepPropertyVal( 225 | obj: Object, 226 | prop: string, 227 | val: mixed, 228 | msg?: string 229 | ): void; 230 | static deepPropertyNotVal( 231 | obj: Object, 232 | prop: string, 233 | val: mixed, 234 | msg?: string 235 | ): void; 236 | 237 | static lengthOf(exp: mixed, len: number, msg?: string): void; 238 | 239 | static throws( 240 | func: () => any, 241 | err?: Class | Error | RegExp | string, 242 | errorMsgMatcher?: string | RegExp, 243 | msg?: string 244 | ): void; 245 | static doesNotThrow( 246 | func: () => any, 247 | err?: Class | Error | RegExp | string, 248 | errorMsgMatcher?: string | RegExp, 249 | msg?: string 250 | ): void; 251 | } 252 | 253 | declare var config: { 254 | includeStack: boolean, 255 | showDiff: boolean, 256 | truncateThreshold: number, 257 | } 258 | } 259 | -------------------------------------------------------------------------------- /flow-typed/npm/chai_v4.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: e3d42118a34a627d9c121880be7d1a52 2 | // flow-typed version: 120d43bb08/chai_v4.x.x/flow_>=v0.25.0 3 | 4 | declare module 'chai' { 5 | declare type ExpectChain = { 6 | and: ExpectChain, 7 | at: ExpectChain, 8 | be: ExpectChain, 9 | been: ExpectChain, 10 | have: ExpectChain, 11 | has: ExpectChain, 12 | is: ExpectChain, 13 | of: ExpectChain, 14 | same: ExpectChain, 15 | that: ExpectChain, 16 | to: ExpectChain, 17 | which: ExpectChain, 18 | with: ExpectChain, 19 | 20 | not: ExpectChain, 21 | deep: ExpectChain, 22 | any: ExpectChain, 23 | all: ExpectChain, 24 | 25 | a: ExpectChain & ((type: string, message?: string) => ExpectChain), 26 | an: ExpectChain & ((type: string, message?: string) => ExpectChain), 27 | 28 | include: ExpectChain & 29 | ((value: mixed, message?: string) => ExpectChain), 30 | includes: ExpectChain & 31 | ((value: mixed, message?: string) => ExpectChain), 32 | contain: ExpectChain & 33 | ((value: mixed, message?: string) => ExpectChain), 34 | contains: ExpectChain & 35 | ((value: mixed, message?: string) => ExpectChain), 36 | 37 | eq: (value: T, message?: string) => ExpectChain, 38 | eql: (value: T, message?: string) => ExpectChain, 39 | equal: (value: T, message?: string) => ExpectChain, 40 | equals: (value: T, message?: string) => ExpectChain, 41 | 42 | above: (value: T & number, message?: string) => ExpectChain, 43 | gt: (value: T & number, message?: string) => ExpectChain, 44 | greaterThan: (value: T & number, message?: string) => ExpectChain, 45 | least: (value: T & number, message?: string) => ExpectChain, 46 | below: (value: T & number, message?: string) => ExpectChain, 47 | lessThan: (value: T & number, message?: string) => ExpectChain, 48 | lt: (value: T & number, message?: string) => ExpectChain, 49 | most: (value: T & number, message?: string) => ExpectChain, 50 | within: ( 51 | start: T & number, 52 | finish: T & number, 53 | message?: string 54 | ) => ExpectChain, 55 | 56 | instanceof: (constructor: mixed, message?: string) => ExpectChain, 57 | nested: ExpectChain, 58 | property:

( 59 | name: string, 60 | value?: P, 61 | message?: string 62 | ) => ExpectChain

& ((name: string) => ExpectChain), 63 | 64 | length: ( 65 | value: number, 66 | message?: string 67 | ) => ExpectChain | ExpectChain, 68 | lengthOf: (value: number, message?: string) => ExpectChain, 69 | 70 | match: (regex: RegExp, message?: string) => ExpectChain, 71 | string: (string: string, message?: string) => ExpectChain, 72 | 73 | key: (key: string) => ExpectChain, 74 | keys: ( 75 | key: string | Array, 76 | ...keys: Array 77 | ) => ExpectChain, 78 | 79 | throw: ( 80 | err?: Class | Error | RegExp | string, 81 | errMsgMatcher?: RegExp | string, 82 | msg?: string 83 | ) => ExpectChain, 84 | 85 | respondTo: (method: string, message?: string) => ExpectChain, 86 | itself: ExpectChain, 87 | 88 | satisfy: ( 89 | method: (value: T) => boolean, 90 | message?: string 91 | ) => ExpectChain, 92 | 93 | closeTo: ( 94 | expected: T & number, 95 | delta: number, 96 | message?: string 97 | ) => ExpectChain, 98 | 99 | members: (set: mixed, message?: string) => ExpectChain, 100 | oneOf: (list: Array, message?: string) => ExpectChain, 101 | 102 | change: (obj: mixed, key: string, message?: string) => ExpectChain, 103 | increase: (obj: mixed, key: string, message?: string) => ExpectChain, 104 | decrease: (obj: mixed, key: string, message?: string) => ExpectChain, 105 | 106 | by: (delta: number, message?: string) => ExpectChain, 107 | 108 | // dirty-chai 109 | ok: () => ExpectChain, 110 | true: () => ExpectChain, 111 | false: () => ExpectChain, 112 | null: () => ExpectChain, 113 | undefined: () => ExpectChain, 114 | exist: () => ExpectChain, 115 | empty: () => ExpectChain, 116 | 117 | extensible: () => ExpectChain, 118 | sealed: () => ExpectChain, 119 | frozen: () => ExpectChain, 120 | NaN: () => ExpectChain, 121 | 122 | // chai-immutable 123 | size: (n: number) => ExpectChain, 124 | 125 | // sinon-chai 126 | called: () => ExpectChain, 127 | callCount: (n: number) => ExpectChain, 128 | calledOnce: () => ExpectChain, 129 | calledTwice: () => ExpectChain, 130 | calledThrice: () => ExpectChain, 131 | calledBefore: (spy: mixed) => ExpectChain, 132 | calledAfter: (spy: mixed) => ExpectChain, 133 | calledWith: (...args: Array) => ExpectChain, 134 | calledWithMatch: (...args: Array) => ExpectChain, 135 | calledWithExactly: (...args: Array) => ExpectChain, 136 | 137 | // chai-as-promised 138 | eventually: ExpectChain, 139 | resolvedWith: (value: mixed) => Promise & ExpectChain, 140 | resolved: () => Promise & ExpectChain, 141 | rejectedWith: (value: mixed) => Promise & ExpectChain, 142 | rejected: () => Promise & ExpectChain, 143 | notify: (callback: () => mixed) => ExpectChain, 144 | fulfilled: () => Promise & ExpectChain, 145 | 146 | // chai-subset 147 | containSubset: (obj: Object | Object[]) => ExpectChain, 148 | 149 | // chai-redux-mock-store 150 | dispatchedActions: ( 151 | actions: Array any)> 152 | ) => ExpectChain, 153 | dispatchedTypes: (actions: Array) => ExpectChain, 154 | 155 | // chai-enzyme 156 | attr: (key: string, val?: any) => ExpectChain, 157 | data: (key: string, val?: any) => ExpectChain, 158 | prop: (key: string, val?: any) => ExpectChain, 159 | state: (key: string, val?: any) => ExpectChain, 160 | value: (val: string) => ExpectChain, 161 | className: (val: string) => ExpectChain, 162 | text: (val: string) => ExpectChain, 163 | 164 | // chai-karma-snapshot 165 | matchSnapshot: (lang?: any, update?: boolean, msg?: any) => ExpectChain, 166 | } 167 | 168 | declare function expect(actual: T, message?: string): ExpectChain 169 | 170 | declare function use(plugin: (chai: Object, utils: Object) => void): void 171 | 172 | declare class assert { 173 | static (expression: mixed, message?: string): void; 174 | static fail( 175 | actual: mixed, 176 | expected: mixed, 177 | message?: string, 178 | operator?: string 179 | ): void; 180 | 181 | static isOk(object: mixed, message?: string): void; 182 | static isNotOk(object: mixed, message?: string): void; 183 | 184 | static equal(actual: mixed, expected: mixed, message?: string): void; 185 | static notEqual(actual: mixed, expected: mixed, message?: string): void; 186 | 187 | static strictEqual(act: mixed, exp: mixed, msg?: string): void; 188 | static notStrictEqual(act: mixed, exp: mixed, msg?: string): void; 189 | 190 | static deepEqual(act: mixed, exp: mixed, msg?: string): void; 191 | static notDeepEqual(act: mixed, exp: mixed, msg?: string): void; 192 | 193 | static ok(val: mixed, msg?: string): void; 194 | static isTrue(val: mixed, msg?: string): void; 195 | static isNotTrue(val: mixed, msg?: string): void; 196 | static isFalse(val: mixed, msg?: string): void; 197 | static isNotFalse(val: mixed, msg?: string): void; 198 | 199 | static isNull(val: mixed, msg?: string): void; 200 | static isNotNull(val: mixed, msg?: string): void; 201 | 202 | static isUndefined(val: mixed, msg?: string): void; 203 | static isDefined(val: mixed, msg?: string): void; 204 | 205 | static isNaN(val: mixed, msg?: string): void; 206 | static isNotNaN(val: mixed, msg?: string): void; 207 | 208 | static isAbove(val: number, abv: number, msg?: string): void; 209 | static isBelow(val: number, blw: number, msg?: string): void; 210 | 211 | static isAtMost(val: number, atmst: number, msg?: string): void; 212 | static isAtLeast(val: number, atlst: number, msg?: string): void; 213 | 214 | static isFunction(val: mixed, msg?: string): void; 215 | static isNotFunction(val: mixed, msg?: string): void; 216 | 217 | static isObject(val: mixed, msg?: string): void; 218 | static isNotObject(val: mixed, msg?: string): void; 219 | 220 | static isArray(val: mixed, msg?: string): void; 221 | static isNotArray(val: mixed, msg?: string): void; 222 | 223 | static isString(val: mixed, msg?: string): void; 224 | static isNotString(val: mixed, msg?: string): void; 225 | 226 | static isNumber(val: mixed, msg?: string): void; 227 | static isNotNumber(val: mixed, msg?: string): void; 228 | 229 | static isBoolean(val: mixed, msg?: string): void; 230 | static isNotBoolean(val: mixed, msg?: string): void; 231 | 232 | static typeOf(val: mixed, type: string, msg?: string): void; 233 | static notTypeOf(val: mixed, type: string, msg?: string): void; 234 | 235 | static instanceOf(val: mixed, constructor: Function, msg?: string): void; 236 | static notInstanceOf(val: mixed, constructor: Function, msg?: string): void; 237 | 238 | static include(exp: string, inc: mixed, msg?: string): void; 239 | static include(exp: Array, inc: T, msg?: string): void; 240 | 241 | static notInclude(exp: string, inc: mixed, msg?: string): void; 242 | static notInclude(exp: Array, inc: T, msg?: string): void; 243 | 244 | static match(exp: mixed, re: RegExp, msg?: string): void; 245 | static notMatch(exp: mixed, re: RegExp, msg?: string): void; 246 | 247 | static property(obj: Object, prop: string, msg?: string): void; 248 | static notProperty(obj: Object, prop: string, msg?: string): void; 249 | static deepProperty(obj: Object, prop: string, msg?: string): void; 250 | static notDeepProperty(obj: Object, prop: string, msg?: string): void; 251 | 252 | static propertyVal( 253 | obj: Object, 254 | prop: string, 255 | val: mixed, 256 | msg?: string 257 | ): void; 258 | static propertyNotVal( 259 | obj: Object, 260 | prop: string, 261 | val: mixed, 262 | msg?: string 263 | ): void; 264 | 265 | static deepPropertyVal( 266 | obj: Object, 267 | prop: string, 268 | val: mixed, 269 | msg?: string 270 | ): void; 271 | static deepPropertyNotVal( 272 | obj: Object, 273 | prop: string, 274 | val: mixed, 275 | msg?: string 276 | ): void; 277 | 278 | static lengthOf(exp: mixed, len: number, msg?: string): void; 279 | 280 | static throws( 281 | func: () => any, 282 | err?: Class | Error | RegExp | string, 283 | errorMsgMatcher?: string | RegExp, 284 | msg?: string 285 | ): void; 286 | static doesNotThrow( 287 | func: () => any, 288 | err?: Class | Error | RegExp | string, 289 | errorMsgMatcher?: string | RegExp, 290 | msg?: string 291 | ): void; 292 | 293 | static closeTo( 294 | actual: number, 295 | expected: number, 296 | delta: number, 297 | msg?: string 298 | ): void; 299 | static approximately( 300 | actual: number, 301 | expected: number, 302 | delta: number, 303 | msg?: string 304 | ): void; 305 | 306 | // chai-immutable 307 | static sizeOf(val: mixed, length: number): void; 308 | } 309 | 310 | declare var config: { 311 | includeStack: boolean, 312 | showDiff: boolean, 313 | truncateThreshold: number, 314 | } 315 | } 316 | -------------------------------------------------------------------------------- /flow-typed/npm/codecov_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 6a9c7f94e5903f655e7d5024025fc441 2 | // flow-typed version: <>/codecov_v^3.0.0/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'codecov' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module 'codecov' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | declare module 'codecov/lib/codecov' { 26 | declare module.exports: any 27 | } 28 | 29 | declare module 'codecov/lib/detect' { 30 | declare module.exports: any 31 | } 32 | 33 | declare module 'codecov/lib/git' { 34 | declare module.exports: any 35 | } 36 | 37 | declare module 'codecov/lib/offline' { 38 | declare module.exports: any 39 | } 40 | 41 | declare module 'codecov/lib/services/appveyor' { 42 | declare module.exports: any 43 | } 44 | 45 | declare module 'codecov/lib/services/buildkite' { 46 | declare module.exports: any 47 | } 48 | 49 | declare module 'codecov/lib/services/circle' { 50 | declare module.exports: any 51 | } 52 | 53 | declare module 'codecov/lib/services/codeship' { 54 | declare module.exports: any 55 | } 56 | 57 | declare module 'codecov/lib/services/drone' { 58 | declare module.exports: any 59 | } 60 | 61 | declare module 'codecov/lib/services/gitlab' { 62 | declare module.exports: any 63 | } 64 | 65 | declare module 'codecov/lib/services/jenkins' { 66 | declare module.exports: any 67 | } 68 | 69 | declare module 'codecov/lib/services/localGit' { 70 | declare module.exports: any 71 | } 72 | 73 | declare module 'codecov/lib/services/semaphore' { 74 | declare module.exports: any 75 | } 76 | 77 | declare module 'codecov/lib/services/shippable' { 78 | declare module.exports: any 79 | } 80 | 81 | declare module 'codecov/lib/services/snap' { 82 | declare module.exports: any 83 | } 84 | 85 | declare module 'codecov/lib/services/travis' { 86 | declare module.exports: any 87 | } 88 | 89 | declare module 'codecov/lib/services/wercker' { 90 | declare module.exports: any 91 | } 92 | 93 | declare module 'codecov/test/detect' { 94 | declare module.exports: any 95 | } 96 | 97 | declare module 'codecov/test/git' { 98 | declare module.exports: any 99 | } 100 | 101 | declare module 'codecov/test/index' { 102 | declare module.exports: any 103 | } 104 | 105 | declare module 'codecov/test/services/appveyor' { 106 | declare module.exports: any 107 | } 108 | 109 | declare module 'codecov/test/services/buildkite' { 110 | declare module.exports: any 111 | } 112 | 113 | declare module 'codecov/test/services/circle' { 114 | declare module.exports: any 115 | } 116 | 117 | declare module 'codecov/test/services/codeship' { 118 | declare module.exports: any 119 | } 120 | 121 | declare module 'codecov/test/services/drone' { 122 | declare module.exports: any 123 | } 124 | 125 | declare module 'codecov/test/services/gitlab' { 126 | declare module.exports: any 127 | } 128 | 129 | declare module 'codecov/test/services/jenkins' { 130 | declare module.exports: any 131 | } 132 | 133 | declare module 'codecov/test/services/localGit' { 134 | declare module.exports: any 135 | } 136 | 137 | declare module 'codecov/test/services/semaphore' { 138 | declare module.exports: any 139 | } 140 | 141 | declare module 'codecov/test/services/shippable' { 142 | declare module.exports: any 143 | } 144 | 145 | declare module 'codecov/test/services/snap' { 146 | declare module.exports: any 147 | } 148 | 149 | declare module 'codecov/test/services/travis' { 150 | declare module.exports: any 151 | } 152 | 153 | declare module 'codecov/test/services/wercker' { 154 | declare module.exports: any 155 | } 156 | 157 | declare module 'codecov/test/upload' { 158 | declare module.exports: any 159 | } 160 | 161 | declare module 'codecov/testinit' { 162 | declare module.exports: any 163 | } 164 | 165 | // Filename aliases 166 | declare module 'codecov/index' { 167 | declare module.exports: $Exports<'codecov'> 168 | } 169 | declare module 'codecov/index.js' { 170 | declare module.exports: $Exports<'codecov'> 171 | } 172 | declare module 'codecov/lib/codecov.js' { 173 | declare module.exports: $Exports<'codecov/lib/codecov'> 174 | } 175 | declare module 'codecov/lib/detect.js' { 176 | declare module.exports: $Exports<'codecov/lib/detect'> 177 | } 178 | declare module 'codecov/lib/git.js' { 179 | declare module.exports: $Exports<'codecov/lib/git'> 180 | } 181 | declare module 'codecov/lib/offline.js' { 182 | declare module.exports: $Exports<'codecov/lib/offline'> 183 | } 184 | declare module 'codecov/lib/services/appveyor.js' { 185 | declare module.exports: $Exports<'codecov/lib/services/appveyor'> 186 | } 187 | declare module 'codecov/lib/services/buildkite.js' { 188 | declare module.exports: $Exports<'codecov/lib/services/buildkite'> 189 | } 190 | declare module 'codecov/lib/services/circle.js' { 191 | declare module.exports: $Exports<'codecov/lib/services/circle'> 192 | } 193 | declare module 'codecov/lib/services/codeship.js' { 194 | declare module.exports: $Exports<'codecov/lib/services/codeship'> 195 | } 196 | declare module 'codecov/lib/services/drone.js' { 197 | declare module.exports: $Exports<'codecov/lib/services/drone'> 198 | } 199 | declare module 'codecov/lib/services/gitlab.js' { 200 | declare module.exports: $Exports<'codecov/lib/services/gitlab'> 201 | } 202 | declare module 'codecov/lib/services/jenkins.js' { 203 | declare module.exports: $Exports<'codecov/lib/services/jenkins'> 204 | } 205 | declare module 'codecov/lib/services/localGit.js' { 206 | declare module.exports: $Exports<'codecov/lib/services/localGit'> 207 | } 208 | declare module 'codecov/lib/services/semaphore.js' { 209 | declare module.exports: $Exports<'codecov/lib/services/semaphore'> 210 | } 211 | declare module 'codecov/lib/services/shippable.js' { 212 | declare module.exports: $Exports<'codecov/lib/services/shippable'> 213 | } 214 | declare module 'codecov/lib/services/snap.js' { 215 | declare module.exports: $Exports<'codecov/lib/services/snap'> 216 | } 217 | declare module 'codecov/lib/services/travis.js' { 218 | declare module.exports: $Exports<'codecov/lib/services/travis'> 219 | } 220 | declare module 'codecov/lib/services/wercker.js' { 221 | declare module.exports: $Exports<'codecov/lib/services/wercker'> 222 | } 223 | declare module 'codecov/test/detect.js' { 224 | declare module.exports: $Exports<'codecov/test/detect'> 225 | } 226 | declare module 'codecov/test/git.js' { 227 | declare module.exports: $Exports<'codecov/test/git'> 228 | } 229 | declare module 'codecov/test/index.js' { 230 | declare module.exports: $Exports<'codecov/test/index'> 231 | } 232 | declare module 'codecov/test/services/appveyor.js' { 233 | declare module.exports: $Exports<'codecov/test/services/appveyor'> 234 | } 235 | declare module 'codecov/test/services/buildkite.js' { 236 | declare module.exports: $Exports<'codecov/test/services/buildkite'> 237 | } 238 | declare module 'codecov/test/services/circle.js' { 239 | declare module.exports: $Exports<'codecov/test/services/circle'> 240 | } 241 | declare module 'codecov/test/services/codeship.js' { 242 | declare module.exports: $Exports<'codecov/test/services/codeship'> 243 | } 244 | declare module 'codecov/test/services/drone.js' { 245 | declare module.exports: $Exports<'codecov/test/services/drone'> 246 | } 247 | declare module 'codecov/test/services/gitlab.js' { 248 | declare module.exports: $Exports<'codecov/test/services/gitlab'> 249 | } 250 | declare module 'codecov/test/services/jenkins.js' { 251 | declare module.exports: $Exports<'codecov/test/services/jenkins'> 252 | } 253 | declare module 'codecov/test/services/localGit.js' { 254 | declare module.exports: $Exports<'codecov/test/services/localGit'> 255 | } 256 | declare module 'codecov/test/services/semaphore.js' { 257 | declare module.exports: $Exports<'codecov/test/services/semaphore'> 258 | } 259 | declare module 'codecov/test/services/shippable.js' { 260 | declare module.exports: $Exports<'codecov/test/services/shippable'> 261 | } 262 | declare module 'codecov/test/services/snap.js' { 263 | declare module.exports: $Exports<'codecov/test/services/snap'> 264 | } 265 | declare module 'codecov/test/services/travis.js' { 266 | declare module.exports: $Exports<'codecov/test/services/travis'> 267 | } 268 | declare module 'codecov/test/services/wercker.js' { 269 | declare module.exports: $Exports<'codecov/test/services/wercker'> 270 | } 271 | declare module 'codecov/test/upload.js' { 272 | declare module.exports: $Exports<'codecov/test/upload'> 273 | } 274 | declare module 'codecov/testinit.js' { 275 | declare module.exports: $Exports<'codecov/testinit'> 276 | } 277 | -------------------------------------------------------------------------------- /flow-typed/npm/copy_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 027d7a8d381bcdde54acfd9a1895f056 2 | // flow-typed version: <>/copy_v^0.3.0/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'copy' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module 'copy' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | declare module 'copy/bin/cli' { 26 | declare module.exports: any 27 | } 28 | 29 | declare module 'copy/lib/base' { 30 | declare module.exports: any 31 | } 32 | 33 | declare module 'copy/lib/dest' { 34 | declare module.exports: any 35 | } 36 | 37 | declare module 'copy/lib/invalid' { 38 | declare module.exports: any 39 | } 40 | 41 | declare module 'copy/lib/once' { 42 | declare module.exports: any 43 | } 44 | 45 | declare module 'copy/lib/recurse' { 46 | declare module.exports: any 47 | } 48 | 49 | declare module 'copy/lib/utils' { 50 | declare module.exports: any 51 | } 52 | 53 | // Filename aliases 54 | declare module 'copy/bin/cli.js' { 55 | declare module.exports: $Exports<'copy/bin/cli'> 56 | } 57 | declare module 'copy/index' { 58 | declare module.exports: $Exports<'copy'> 59 | } 60 | declare module 'copy/index.js' { 61 | declare module.exports: $Exports<'copy'> 62 | } 63 | declare module 'copy/lib/base.js' { 64 | declare module.exports: $Exports<'copy/lib/base'> 65 | } 66 | declare module 'copy/lib/dest.js' { 67 | declare module.exports: $Exports<'copy/lib/dest'> 68 | } 69 | declare module 'copy/lib/invalid.js' { 70 | declare module.exports: $Exports<'copy/lib/invalid'> 71 | } 72 | declare module 'copy/lib/once.js' { 73 | declare module.exports: $Exports<'copy/lib/once'> 74 | } 75 | declare module 'copy/lib/recurse.js' { 76 | declare module.exports: $Exports<'copy/lib/recurse'> 77 | } 78 | declare module 'copy/lib/utils.js' { 79 | declare module.exports: $Exports<'copy/lib/utils'> 80 | } 81 | -------------------------------------------------------------------------------- /flow-typed/npm/coveralls_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: a8f87b891e180b1c8d118371ee04894a 2 | // flow-typed version: <>/coveralls_v^3.0.0/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'coveralls' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module 'coveralls' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | declare module 'coveralls/bin/coveralls' { 26 | declare module.exports: any 27 | } 28 | 29 | declare module 'coveralls/fixtures/lib/index' { 30 | declare module.exports: any 31 | } 32 | 33 | declare module 'coveralls/lib/convertLcovToCoveralls' { 34 | declare module.exports: any 35 | } 36 | 37 | declare module 'coveralls/lib/detectLocalGit' { 38 | declare module.exports: any 39 | } 40 | 41 | declare module 'coveralls/lib/fetchGitData' { 42 | declare module.exports: any 43 | } 44 | 45 | declare module 'coveralls/lib/getOptions' { 46 | declare module.exports: any 47 | } 48 | 49 | declare module 'coveralls/lib/handleInput' { 50 | declare module.exports: any 51 | } 52 | 53 | declare module 'coveralls/lib/logger' { 54 | declare module.exports: any 55 | } 56 | 57 | declare module 'coveralls/lib/sendToCoveralls' { 58 | declare module.exports: any 59 | } 60 | 61 | declare module 'coveralls/test/convertLcovToCoveralls' { 62 | declare module.exports: any 63 | } 64 | 65 | declare module 'coveralls/test/detectLocalGit' { 66 | declare module.exports: any 67 | } 68 | 69 | declare module 'coveralls/test/fetchGitData' { 70 | declare module.exports: any 71 | } 72 | 73 | declare module 'coveralls/test/getOptions' { 74 | declare module.exports: any 75 | } 76 | 77 | declare module 'coveralls/test/handleInput' { 78 | declare module.exports: any 79 | } 80 | 81 | declare module 'coveralls/test/logger' { 82 | declare module.exports: any 83 | } 84 | 85 | declare module 'coveralls/test/sendToCoveralls' { 86 | declare module.exports: any 87 | } 88 | 89 | // Filename aliases 90 | declare module 'coveralls/bin/coveralls.js' { 91 | declare module.exports: $Exports<'coveralls/bin/coveralls'> 92 | } 93 | declare module 'coveralls/fixtures/lib/index.js' { 94 | declare module.exports: $Exports<'coveralls/fixtures/lib/index'> 95 | } 96 | declare module 'coveralls/index' { 97 | declare module.exports: $Exports<'coveralls'> 98 | } 99 | declare module 'coveralls/index.js' { 100 | declare module.exports: $Exports<'coveralls'> 101 | } 102 | declare module 'coveralls/lib/convertLcovToCoveralls.js' { 103 | declare module.exports: $Exports<'coveralls/lib/convertLcovToCoveralls'> 104 | } 105 | declare module 'coveralls/lib/detectLocalGit.js' { 106 | declare module.exports: $Exports<'coveralls/lib/detectLocalGit'> 107 | } 108 | declare module 'coveralls/lib/fetchGitData.js' { 109 | declare module.exports: $Exports<'coveralls/lib/fetchGitData'> 110 | } 111 | declare module 'coveralls/lib/getOptions.js' { 112 | declare module.exports: $Exports<'coveralls/lib/getOptions'> 113 | } 114 | declare module 'coveralls/lib/handleInput.js' { 115 | declare module.exports: $Exports<'coveralls/lib/handleInput'> 116 | } 117 | declare module 'coveralls/lib/logger.js' { 118 | declare module.exports: $Exports<'coveralls/lib/logger'> 119 | } 120 | declare module 'coveralls/lib/sendToCoveralls.js' { 121 | declare module.exports: $Exports<'coveralls/lib/sendToCoveralls'> 122 | } 123 | declare module 'coveralls/test/convertLcovToCoveralls.js' { 124 | declare module.exports: $Exports<'coveralls/test/convertLcovToCoveralls'> 125 | } 126 | declare module 'coveralls/test/detectLocalGit.js' { 127 | declare module.exports: $Exports<'coveralls/test/detectLocalGit'> 128 | } 129 | declare module 'coveralls/test/fetchGitData.js' { 130 | declare module.exports: $Exports<'coveralls/test/fetchGitData'> 131 | } 132 | declare module 'coveralls/test/getOptions.js' { 133 | declare module.exports: $Exports<'coveralls/test/getOptions'> 134 | } 135 | declare module 'coveralls/test/handleInput.js' { 136 | declare module.exports: $Exports<'coveralls/test/handleInput'> 137 | } 138 | declare module 'coveralls/test/logger.js' { 139 | declare module.exports: $Exports<'coveralls/test/logger'> 140 | } 141 | declare module 'coveralls/test/sendToCoveralls.js' { 142 | declare module.exports: $Exports<'coveralls/test/sendToCoveralls'> 143 | } 144 | -------------------------------------------------------------------------------- /flow-typed/npm/eslint-watch_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: ef75a01aa7cc0e0028718aa2666ef81c 2 | // flow-typed version: <>/eslint-watch_v^3.0.0/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'eslint-watch' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module 'eslint-watch' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | declare module 'eslint-watch/build/arg-parser' { 26 | declare module.exports: any 27 | } 28 | 29 | declare module 'eslint-watch/build/eslint/cli' { 30 | declare module.exports: any 31 | } 32 | 33 | declare module 'eslint-watch/build/eslint/help' { 34 | declare module.exports: any 35 | } 36 | 37 | declare module 'eslint-watch/build/executor' { 38 | declare module.exports: any 39 | } 40 | 41 | declare module 'eslint-watch/build/formatters/helpers/characters' { 42 | declare module.exports: any 43 | } 44 | 45 | declare module 'eslint-watch/build/formatters/helpers/clear-terminal' { 46 | declare module.exports: any 47 | } 48 | 49 | declare module 'eslint-watch/build/formatters/helpers/error-warning' { 50 | declare module.exports: any 51 | } 52 | 53 | declare module 'eslint-watch/build/formatters/helpers/success' { 54 | declare module.exports: any 55 | } 56 | 57 | declare module 'eslint-watch/build/formatters/simple-detail' { 58 | declare module.exports: any 59 | } 60 | 61 | declare module 'eslint-watch/build/formatters/simple-success' { 62 | declare module.exports: any 63 | } 64 | 65 | declare module 'eslint-watch/build/formatters/simple' { 66 | declare module.exports: any 67 | } 68 | 69 | declare module 'eslint-watch/build/index' { 70 | declare module.exports: any 71 | } 72 | 73 | declare module 'eslint-watch/build/logger' { 74 | declare module.exports: any 75 | } 76 | 77 | declare module 'eslint-watch/build/options' { 78 | declare module.exports: any 79 | } 80 | 81 | declare module 'eslint-watch/build/settings' { 82 | declare module.exports: any 83 | } 84 | 85 | declare module 'eslint-watch/build/watcher' { 86 | declare module.exports: any 87 | } 88 | 89 | // Filename aliases 90 | declare module 'eslint-watch/build/arg-parser.js' { 91 | declare module.exports: $Exports<'eslint-watch/build/arg-parser'> 92 | } 93 | declare module 'eslint-watch/build/eslint/cli.js' { 94 | declare module.exports: $Exports<'eslint-watch/build/eslint/cli'> 95 | } 96 | declare module 'eslint-watch/build/eslint/help.js' { 97 | declare module.exports: $Exports<'eslint-watch/build/eslint/help'> 98 | } 99 | declare module 'eslint-watch/build/executor.js' { 100 | declare module.exports: $Exports<'eslint-watch/build/executor'> 101 | } 102 | declare module 'eslint-watch/build/formatters/helpers/characters.js' { 103 | declare module.exports: $Exports<'eslint-watch/build/formatters/helpers/characters'> 104 | } 105 | declare module 'eslint-watch/build/formatters/helpers/clear-terminal.js' { 106 | declare module.exports: $Exports<'eslint-watch/build/formatters/helpers/clear-terminal'> 107 | } 108 | declare module 'eslint-watch/build/formatters/helpers/error-warning.js' { 109 | declare module.exports: $Exports<'eslint-watch/build/formatters/helpers/error-warning'> 110 | } 111 | declare module 'eslint-watch/build/formatters/helpers/success.js' { 112 | declare module.exports: $Exports<'eslint-watch/build/formatters/helpers/success'> 113 | } 114 | declare module 'eslint-watch/build/formatters/simple-detail.js' { 115 | declare module.exports: $Exports<'eslint-watch/build/formatters/simple-detail'> 116 | } 117 | declare module 'eslint-watch/build/formatters/simple-success.js' { 118 | declare module.exports: $Exports<'eslint-watch/build/formatters/simple-success'> 119 | } 120 | declare module 'eslint-watch/build/formatters/simple.js' { 121 | declare module.exports: $Exports<'eslint-watch/build/formatters/simple'> 122 | } 123 | declare module 'eslint-watch/build/index.js' { 124 | declare module.exports: $Exports<'eslint-watch/build/index'> 125 | } 126 | declare module 'eslint-watch/build/logger.js' { 127 | declare module.exports: $Exports<'eslint-watch/build/logger'> 128 | } 129 | declare module 'eslint-watch/build/options.js' { 130 | declare module.exports: $Exports<'eslint-watch/build/options'> 131 | } 132 | declare module 'eslint-watch/build/settings.js' { 133 | declare module.exports: $Exports<'eslint-watch/build/settings'> 134 | } 135 | declare module 'eslint-watch/build/watcher.js' { 136 | declare module.exports: $Exports<'eslint-watch/build/watcher'> 137 | } 138 | -------------------------------------------------------------------------------- /flow-typed/npm/flow-bin_v0.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 6a5610678d4b01e13bbfbbc62bdaf583 2 | // flow-typed version: 3817bc6980/flow-bin_v0.x.x/flow_>=v0.25.x 3 | 4 | declare module 'flow-bin' { 5 | declare module.exports: string 6 | } 7 | -------------------------------------------------------------------------------- /flow-typed/npm/flow-copy-source_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 8b27f601999c94eb8b97bf85889ffbd9 2 | // flow-typed version: <>/flow-copy-source_v^1.2.1/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'flow-copy-source' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module 'flow-copy-source' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | declare module 'flow-copy-source/bin/flow-copy-source' { 26 | declare module.exports: any 27 | } 28 | 29 | declare module 'flow-copy-source/src/index' { 30 | declare module.exports: any 31 | } 32 | 33 | declare module 'flow-copy-source/src/kefir-copy-file' { 34 | declare module.exports: any 35 | } 36 | 37 | declare module 'flow-copy-source/src/kefir-glob' { 38 | declare module.exports: any 39 | } 40 | 41 | // Filename aliases 42 | declare module 'flow-copy-source/bin/flow-copy-source.js' { 43 | declare module.exports: $Exports<'flow-copy-source/bin/flow-copy-source'> 44 | } 45 | declare module 'flow-copy-source/src/index.js' { 46 | declare module.exports: $Exports<'flow-copy-source/src/index'> 47 | } 48 | declare module 'flow-copy-source/src/kefir-copy-file.js' { 49 | declare module.exports: $Exports<'flow-copy-source/src/kefir-copy-file'> 50 | } 51 | declare module 'flow-copy-source/src/kefir-glob.js' { 52 | declare module.exports: $Exports<'flow-copy-source/src/kefir-glob'> 53 | } 54 | -------------------------------------------------------------------------------- /flow-typed/npm/flow-watch_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: c617a7fa285ed534f0a932676634ba33 2 | // flow-typed version: <>/flow-watch_v^1.1.0/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'flow-watch' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module 'flow-watch' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | declare module 'flow-watch/src/flow-watch' { 26 | declare module.exports: any 27 | } 28 | 29 | declare module 'flow-watch/src/runFlow' { 30 | declare module.exports: any 31 | } 32 | 33 | // Filename aliases 34 | declare module 'flow-watch/src/flow-watch.js' { 35 | declare module.exports: $Exports<'flow-watch/src/flow-watch'> 36 | } 37 | declare module 'flow-watch/src/runFlow.js' { 38 | declare module.exports: $Exports<'flow-watch/src/runFlow'> 39 | } 40 | -------------------------------------------------------------------------------- /flow-typed/npm/husky_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 902c5906120009b518abfae729c93235 2 | // flow-typed version: <>/husky_v^0.14.3/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'husky' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module 'husky' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | declare module 'husky/__tests__/index' { 26 | declare module.exports: any 27 | } 28 | 29 | declare module 'husky/bin/install' { 30 | declare module.exports: any 31 | } 32 | 33 | declare module 'husky/bin/uninstall' { 34 | declare module.exports: any 35 | } 36 | 37 | declare module 'husky/src/install' { 38 | declare module.exports: any 39 | } 40 | 41 | declare module 'husky/src/uninstall' { 42 | declare module.exports: any 43 | } 44 | 45 | declare module 'husky/src/utils/find-hooks-dir' { 46 | declare module.exports: any 47 | } 48 | 49 | declare module 'husky/src/utils/find-parent' { 50 | declare module.exports: any 51 | } 52 | 53 | declare module 'husky/src/utils/get-hook-script' { 54 | declare module.exports: any 55 | } 56 | 57 | declare module 'husky/src/utils/is-husky' { 58 | declare module.exports: any 59 | } 60 | 61 | // Filename aliases 62 | declare module 'husky/__tests__/index.js' { 63 | declare module.exports: $Exports<'husky/__tests__/index'> 64 | } 65 | declare module 'husky/bin/install.js' { 66 | declare module.exports: $Exports<'husky/bin/install'> 67 | } 68 | declare module 'husky/bin/uninstall.js' { 69 | declare module.exports: $Exports<'husky/bin/uninstall'> 70 | } 71 | declare module 'husky/src/install.js' { 72 | declare module.exports: $Exports<'husky/src/install'> 73 | } 74 | declare module 'husky/src/uninstall.js' { 75 | declare module.exports: $Exports<'husky/src/uninstall'> 76 | } 77 | declare module 'husky/src/utils/find-hooks-dir.js' { 78 | declare module.exports: $Exports<'husky/src/utils/find-hooks-dir'> 79 | } 80 | declare module 'husky/src/utils/find-parent.js' { 81 | declare module.exports: $Exports<'husky/src/utils/find-parent'> 82 | } 83 | declare module 'husky/src/utils/get-hook-script.js' { 84 | declare module.exports: $Exports<'husky/src/utils/get-hook-script'> 85 | } 86 | declare module 'husky/src/utils/is-husky.js' { 87 | declare module.exports: $Exports<'husky/src/utils/is-husky'> 88 | } 89 | -------------------------------------------------------------------------------- /flow-typed/npm/istanbul_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 302c5d99bb64f8044a737193af5846c9 2 | // flow-typed version: <>/istanbul_v^0.4.5/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'istanbul' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module 'istanbul' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | declare module 'istanbul/lib/assets/sorter' { 26 | declare module.exports: any 27 | } 28 | 29 | declare module 'istanbul/lib/assets/vendor/prettify' { 30 | declare module.exports: any 31 | } 32 | 33 | declare module 'istanbul/lib/cli' { 34 | declare module.exports: any 35 | } 36 | 37 | declare module 'istanbul/lib/collector' { 38 | declare module.exports: any 39 | } 40 | 41 | declare module 'istanbul/lib/command/check-coverage' { 42 | declare module.exports: any 43 | } 44 | 45 | declare module 'istanbul/lib/command/common/run-with-cover' { 46 | declare module.exports: any 47 | } 48 | 49 | declare module 'istanbul/lib/command/cover' { 50 | declare module.exports: any 51 | } 52 | 53 | declare module 'istanbul/lib/command/help' { 54 | declare module.exports: any 55 | } 56 | 57 | declare module 'istanbul/lib/command/index' { 58 | declare module.exports: any 59 | } 60 | 61 | declare module 'istanbul/lib/command/instrument' { 62 | declare module.exports: any 63 | } 64 | 65 | declare module 'istanbul/lib/command/report' { 66 | declare module.exports: any 67 | } 68 | 69 | declare module 'istanbul/lib/command/test' { 70 | declare module.exports: any 71 | } 72 | 73 | declare module 'istanbul/lib/config' { 74 | declare module.exports: any 75 | } 76 | 77 | declare module 'istanbul/lib/hook' { 78 | declare module.exports: any 79 | } 80 | 81 | declare module 'istanbul/lib/instrumenter' { 82 | declare module.exports: any 83 | } 84 | 85 | declare module 'istanbul/lib/object-utils' { 86 | declare module.exports: any 87 | } 88 | 89 | declare module 'istanbul/lib/register-plugins' { 90 | declare module.exports: any 91 | } 92 | 93 | declare module 'istanbul/lib/report/clover' { 94 | declare module.exports: any 95 | } 96 | 97 | declare module 'istanbul/lib/report/cobertura' { 98 | declare module.exports: any 99 | } 100 | 101 | declare module 'istanbul/lib/report/common/defaults' { 102 | declare module.exports: any 103 | } 104 | 105 | declare module 'istanbul/lib/report/html' { 106 | declare module.exports: any 107 | } 108 | 109 | declare module 'istanbul/lib/report/index' { 110 | declare module.exports: any 111 | } 112 | 113 | declare module 'istanbul/lib/report/json-summary' { 114 | declare module.exports: any 115 | } 116 | 117 | declare module 'istanbul/lib/report/json' { 118 | declare module.exports: any 119 | } 120 | 121 | declare module 'istanbul/lib/report/lcov' { 122 | declare module.exports: any 123 | } 124 | 125 | declare module 'istanbul/lib/report/lcovonly' { 126 | declare module.exports: any 127 | } 128 | 129 | declare module 'istanbul/lib/report/none' { 130 | declare module.exports: any 131 | } 132 | 133 | declare module 'istanbul/lib/report/teamcity' { 134 | declare module.exports: any 135 | } 136 | 137 | declare module 'istanbul/lib/report/text-lcov' { 138 | declare module.exports: any 139 | } 140 | 141 | declare module 'istanbul/lib/report/text-summary' { 142 | declare module.exports: any 143 | } 144 | 145 | declare module 'istanbul/lib/report/text' { 146 | declare module.exports: any 147 | } 148 | 149 | declare module 'istanbul/lib/reporter' { 150 | declare module.exports: any 151 | } 152 | 153 | declare module 'istanbul/lib/store/fslookup' { 154 | declare module.exports: any 155 | } 156 | 157 | declare module 'istanbul/lib/store/index' { 158 | declare module.exports: any 159 | } 160 | 161 | declare module 'istanbul/lib/store/memory' { 162 | declare module.exports: any 163 | } 164 | 165 | declare module 'istanbul/lib/store/tmp' { 166 | declare module.exports: any 167 | } 168 | 169 | declare module 'istanbul/lib/util/factory' { 170 | declare module.exports: any 171 | } 172 | 173 | declare module 'istanbul/lib/util/file-matcher' { 174 | declare module.exports: any 175 | } 176 | 177 | declare module 'istanbul/lib/util/file-writer' { 178 | declare module.exports: any 179 | } 180 | 181 | declare module 'istanbul/lib/util/help-formatter' { 182 | declare module.exports: any 183 | } 184 | 185 | declare module 'istanbul/lib/util/input-error' { 186 | declare module.exports: any 187 | } 188 | 189 | declare module 'istanbul/lib/util/insertion-text' { 190 | declare module.exports: any 191 | } 192 | 193 | declare module 'istanbul/lib/util/meta' { 194 | declare module.exports: any 195 | } 196 | 197 | declare module 'istanbul/lib/util/tree-summarizer' { 198 | declare module.exports: any 199 | } 200 | 201 | declare module 'istanbul/lib/util/writer' { 202 | declare module.exports: any 203 | } 204 | 205 | declare module 'istanbul/lib/util/yui-load-hook' { 206 | declare module.exports: any 207 | } 208 | 209 | // Filename aliases 210 | declare module 'istanbul/index' { 211 | declare module.exports: $Exports<'istanbul'> 212 | } 213 | declare module 'istanbul/index.js' { 214 | declare module.exports: $Exports<'istanbul'> 215 | } 216 | declare module 'istanbul/lib/assets/sorter.js' { 217 | declare module.exports: $Exports<'istanbul/lib/assets/sorter'> 218 | } 219 | declare module 'istanbul/lib/assets/vendor/prettify.js' { 220 | declare module.exports: $Exports<'istanbul/lib/assets/vendor/prettify'> 221 | } 222 | declare module 'istanbul/lib/cli.js' { 223 | declare module.exports: $Exports<'istanbul/lib/cli'> 224 | } 225 | declare module 'istanbul/lib/collector.js' { 226 | declare module.exports: $Exports<'istanbul/lib/collector'> 227 | } 228 | declare module 'istanbul/lib/command/check-coverage.js' { 229 | declare module.exports: $Exports<'istanbul/lib/command/check-coverage'> 230 | } 231 | declare module 'istanbul/lib/command/common/run-with-cover.js' { 232 | declare module.exports: $Exports<'istanbul/lib/command/common/run-with-cover'> 233 | } 234 | declare module 'istanbul/lib/command/cover.js' { 235 | declare module.exports: $Exports<'istanbul/lib/command/cover'> 236 | } 237 | declare module 'istanbul/lib/command/help.js' { 238 | declare module.exports: $Exports<'istanbul/lib/command/help'> 239 | } 240 | declare module 'istanbul/lib/command/index.js' { 241 | declare module.exports: $Exports<'istanbul/lib/command/index'> 242 | } 243 | declare module 'istanbul/lib/command/instrument.js' { 244 | declare module.exports: $Exports<'istanbul/lib/command/instrument'> 245 | } 246 | declare module 'istanbul/lib/command/report.js' { 247 | declare module.exports: $Exports<'istanbul/lib/command/report'> 248 | } 249 | declare module 'istanbul/lib/command/test.js' { 250 | declare module.exports: $Exports<'istanbul/lib/command/test'> 251 | } 252 | declare module 'istanbul/lib/config.js' { 253 | declare module.exports: $Exports<'istanbul/lib/config'> 254 | } 255 | declare module 'istanbul/lib/hook.js' { 256 | declare module.exports: $Exports<'istanbul/lib/hook'> 257 | } 258 | declare module 'istanbul/lib/instrumenter.js' { 259 | declare module.exports: $Exports<'istanbul/lib/instrumenter'> 260 | } 261 | declare module 'istanbul/lib/object-utils.js' { 262 | declare module.exports: $Exports<'istanbul/lib/object-utils'> 263 | } 264 | declare module 'istanbul/lib/register-plugins.js' { 265 | declare module.exports: $Exports<'istanbul/lib/register-plugins'> 266 | } 267 | declare module 'istanbul/lib/report/clover.js' { 268 | declare module.exports: $Exports<'istanbul/lib/report/clover'> 269 | } 270 | declare module 'istanbul/lib/report/cobertura.js' { 271 | declare module.exports: $Exports<'istanbul/lib/report/cobertura'> 272 | } 273 | declare module 'istanbul/lib/report/common/defaults.js' { 274 | declare module.exports: $Exports<'istanbul/lib/report/common/defaults'> 275 | } 276 | declare module 'istanbul/lib/report/html.js' { 277 | declare module.exports: $Exports<'istanbul/lib/report/html'> 278 | } 279 | declare module 'istanbul/lib/report/index.js' { 280 | declare module.exports: $Exports<'istanbul/lib/report/index'> 281 | } 282 | declare module 'istanbul/lib/report/json-summary.js' { 283 | declare module.exports: $Exports<'istanbul/lib/report/json-summary'> 284 | } 285 | declare module 'istanbul/lib/report/json.js' { 286 | declare module.exports: $Exports<'istanbul/lib/report/json'> 287 | } 288 | declare module 'istanbul/lib/report/lcov.js' { 289 | declare module.exports: $Exports<'istanbul/lib/report/lcov'> 290 | } 291 | declare module 'istanbul/lib/report/lcovonly.js' { 292 | declare module.exports: $Exports<'istanbul/lib/report/lcovonly'> 293 | } 294 | declare module 'istanbul/lib/report/none.js' { 295 | declare module.exports: $Exports<'istanbul/lib/report/none'> 296 | } 297 | declare module 'istanbul/lib/report/teamcity.js' { 298 | declare module.exports: $Exports<'istanbul/lib/report/teamcity'> 299 | } 300 | declare module 'istanbul/lib/report/text-lcov.js' { 301 | declare module.exports: $Exports<'istanbul/lib/report/text-lcov'> 302 | } 303 | declare module 'istanbul/lib/report/text-summary.js' { 304 | declare module.exports: $Exports<'istanbul/lib/report/text-summary'> 305 | } 306 | declare module 'istanbul/lib/report/text.js' { 307 | declare module.exports: $Exports<'istanbul/lib/report/text'> 308 | } 309 | declare module 'istanbul/lib/reporter.js' { 310 | declare module.exports: $Exports<'istanbul/lib/reporter'> 311 | } 312 | declare module 'istanbul/lib/store/fslookup.js' { 313 | declare module.exports: $Exports<'istanbul/lib/store/fslookup'> 314 | } 315 | declare module 'istanbul/lib/store/index.js' { 316 | declare module.exports: $Exports<'istanbul/lib/store/index'> 317 | } 318 | declare module 'istanbul/lib/store/memory.js' { 319 | declare module.exports: $Exports<'istanbul/lib/store/memory'> 320 | } 321 | declare module 'istanbul/lib/store/tmp.js' { 322 | declare module.exports: $Exports<'istanbul/lib/store/tmp'> 323 | } 324 | declare module 'istanbul/lib/util/factory.js' { 325 | declare module.exports: $Exports<'istanbul/lib/util/factory'> 326 | } 327 | declare module 'istanbul/lib/util/file-matcher.js' { 328 | declare module.exports: $Exports<'istanbul/lib/util/file-matcher'> 329 | } 330 | declare module 'istanbul/lib/util/file-writer.js' { 331 | declare module.exports: $Exports<'istanbul/lib/util/file-writer'> 332 | } 333 | declare module 'istanbul/lib/util/help-formatter.js' { 334 | declare module.exports: $Exports<'istanbul/lib/util/help-formatter'> 335 | } 336 | declare module 'istanbul/lib/util/input-error.js' { 337 | declare module.exports: $Exports<'istanbul/lib/util/input-error'> 338 | } 339 | declare module 'istanbul/lib/util/insertion-text.js' { 340 | declare module.exports: $Exports<'istanbul/lib/util/insertion-text'> 341 | } 342 | declare module 'istanbul/lib/util/meta.js' { 343 | declare module.exports: $Exports<'istanbul/lib/util/meta'> 344 | } 345 | declare module 'istanbul/lib/util/tree-summarizer.js' { 346 | declare module.exports: $Exports<'istanbul/lib/util/tree-summarizer'> 347 | } 348 | declare module 'istanbul/lib/util/writer.js' { 349 | declare module.exports: $Exports<'istanbul/lib/util/writer'> 350 | } 351 | declare module 'istanbul/lib/util/yui-load-hook.js' { 352 | declare module.exports: $Exports<'istanbul/lib/util/yui-load-hook'> 353 | } 354 | -------------------------------------------------------------------------------- /flow-typed/npm/lodash.mapvalues_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 69fdd7ad1a3b9a7754835c7e36de3207 2 | // flow-typed version: <>/lodash.mapvalues_v^4.6.0/flow_v0.62.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'lodash.mapvalues' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module 'lodash.mapvalues' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | 26 | // Filename aliases 27 | declare module 'lodash.mapvalues/index' { 28 | declare module.exports: $Exports<'lodash.mapvalues'> 29 | } 30 | declare module 'lodash.mapvalues/index.js' { 31 | declare module.exports: $Exports<'lodash.mapvalues'> 32 | } 33 | -------------------------------------------------------------------------------- /flow-typed/npm/mindfront-redux-utils_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: eab2731e3a4ce61a676160e14c2b2167 2 | // flow-typed version: <>/mindfront-redux-utils_v^1.6.1/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'mindfront-redux-utils' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module 'mindfront-redux-utils' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | declare module 'mindfront-redux-utils/lib/addCreationStack' { 26 | declare module.exports: any 27 | } 28 | 29 | declare module 'mindfront-redux-utils/lib/addMeta' { 30 | declare module.exports: any 31 | } 32 | 33 | declare module 'mindfront-redux-utils/lib/applyMiddleware' { 34 | declare module.exports: any 35 | } 36 | 37 | declare module 'mindfront-redux-utils/lib/checkForNonFunctions' { 38 | declare module.exports: any 39 | } 40 | 41 | declare module 'mindfront-redux-utils/lib/composeMiddleware' { 42 | declare module.exports: any 43 | } 44 | 45 | declare module 'mindfront-redux-utils/lib/composeReducers' { 46 | declare module.exports: any 47 | } 48 | 49 | declare module 'mindfront-redux-utils/lib/createMiddleware' { 50 | declare module.exports: any 51 | } 52 | 53 | declare module 'mindfront-redux-utils/lib/createPluggableMiddleware' { 54 | declare module.exports: any 55 | } 56 | 57 | declare module 'mindfront-redux-utils/lib/createReducer' { 58 | declare module.exports: any 59 | } 60 | 61 | declare module 'mindfront-redux-utils/lib/fullStack' { 62 | declare module.exports: any 63 | } 64 | 65 | declare module 'mindfront-redux-utils/lib/index' { 66 | declare module.exports: any 67 | } 68 | 69 | declare module 'mindfront-redux-utils/lib/prefixActionCreator' { 70 | declare module.exports: any 71 | } 72 | 73 | declare module 'mindfront-redux-utils/lib/prefixReducer' { 74 | declare module.exports: any 75 | } 76 | 77 | declare module 'mindfront-redux-utils/src/addCreationStack' { 78 | declare module.exports: any 79 | } 80 | 81 | declare module 'mindfront-redux-utils/src/addMeta' { 82 | declare module.exports: any 83 | } 84 | 85 | declare module 'mindfront-redux-utils/src/applyMiddleware' { 86 | declare module.exports: any 87 | } 88 | 89 | declare module 'mindfront-redux-utils/src/checkForNonFunctions' { 90 | declare module.exports: any 91 | } 92 | 93 | declare module 'mindfront-redux-utils/src/composeMiddleware' { 94 | declare module.exports: any 95 | } 96 | 97 | declare module 'mindfront-redux-utils/src/composeReducers' { 98 | declare module.exports: any 99 | } 100 | 101 | declare module 'mindfront-redux-utils/src/createMiddleware' { 102 | declare module.exports: any 103 | } 104 | 105 | declare module 'mindfront-redux-utils/src/createPluggableMiddleware' { 106 | declare module.exports: any 107 | } 108 | 109 | declare module 'mindfront-redux-utils/src/createReducer' { 110 | declare module.exports: any 111 | } 112 | 113 | declare module 'mindfront-redux-utils/src/fullStack' { 114 | declare module.exports: any 115 | } 116 | 117 | declare module 'mindfront-redux-utils/src/index' { 118 | declare module.exports: any 119 | } 120 | 121 | declare module 'mindfront-redux-utils/src/prefixActionCreator' { 122 | declare module.exports: any 123 | } 124 | 125 | declare module 'mindfront-redux-utils/src/prefixReducer' { 126 | declare module.exports: any 127 | } 128 | 129 | // Filename aliases 130 | declare module 'mindfront-redux-utils/lib/addCreationStack.js' { 131 | declare module.exports: $Exports<'mindfront-redux-utils/lib/addCreationStack'> 132 | } 133 | declare module 'mindfront-redux-utils/lib/addMeta.js' { 134 | declare module.exports: $Exports<'mindfront-redux-utils/lib/addMeta'> 135 | } 136 | declare module 'mindfront-redux-utils/lib/applyMiddleware.js' { 137 | declare module.exports: $Exports<'mindfront-redux-utils/lib/applyMiddleware'> 138 | } 139 | declare module 'mindfront-redux-utils/lib/checkForNonFunctions.js' { 140 | declare module.exports: $Exports<'mindfront-redux-utils/lib/checkForNonFunctions'> 141 | } 142 | declare module 'mindfront-redux-utils/lib/composeMiddleware.js' { 143 | declare module.exports: $Exports<'mindfront-redux-utils/lib/composeMiddleware'> 144 | } 145 | declare module 'mindfront-redux-utils/lib/composeReducers.js' { 146 | declare module.exports: $Exports<'mindfront-redux-utils/lib/composeReducers'> 147 | } 148 | declare module 'mindfront-redux-utils/lib/createMiddleware.js' { 149 | declare module.exports: $Exports<'mindfront-redux-utils/lib/createMiddleware'> 150 | } 151 | declare module 'mindfront-redux-utils/lib/createPluggableMiddleware.js' { 152 | declare module.exports: $Exports<'mindfront-redux-utils/lib/createPluggableMiddleware'> 153 | } 154 | declare module 'mindfront-redux-utils/lib/createReducer.js' { 155 | declare module.exports: $Exports<'mindfront-redux-utils/lib/createReducer'> 156 | } 157 | declare module 'mindfront-redux-utils/lib/fullStack.js' { 158 | declare module.exports: $Exports<'mindfront-redux-utils/lib/fullStack'> 159 | } 160 | declare module 'mindfront-redux-utils/lib/index.js' { 161 | declare module.exports: $Exports<'mindfront-redux-utils/lib/index'> 162 | } 163 | declare module 'mindfront-redux-utils/lib/prefixActionCreator.js' { 164 | declare module.exports: $Exports<'mindfront-redux-utils/lib/prefixActionCreator'> 165 | } 166 | declare module 'mindfront-redux-utils/lib/prefixReducer.js' { 167 | declare module.exports: $Exports<'mindfront-redux-utils/lib/prefixReducer'> 168 | } 169 | declare module 'mindfront-redux-utils/src/addCreationStack.js' { 170 | declare module.exports: $Exports<'mindfront-redux-utils/src/addCreationStack'> 171 | } 172 | declare module 'mindfront-redux-utils/src/addMeta.js' { 173 | declare module.exports: $Exports<'mindfront-redux-utils/src/addMeta'> 174 | } 175 | declare module 'mindfront-redux-utils/src/applyMiddleware.js' { 176 | declare module.exports: $Exports<'mindfront-redux-utils/src/applyMiddleware'> 177 | } 178 | declare module 'mindfront-redux-utils/src/checkForNonFunctions.js' { 179 | declare module.exports: $Exports<'mindfront-redux-utils/src/checkForNonFunctions'> 180 | } 181 | declare module 'mindfront-redux-utils/src/composeMiddleware.js' { 182 | declare module.exports: $Exports<'mindfront-redux-utils/src/composeMiddleware'> 183 | } 184 | declare module 'mindfront-redux-utils/src/composeReducers.js' { 185 | declare module.exports: $Exports<'mindfront-redux-utils/src/composeReducers'> 186 | } 187 | declare module 'mindfront-redux-utils/src/createMiddleware.js' { 188 | declare module.exports: $Exports<'mindfront-redux-utils/src/createMiddleware'> 189 | } 190 | declare module 'mindfront-redux-utils/src/createPluggableMiddleware.js' { 191 | declare module.exports: $Exports<'mindfront-redux-utils/src/createPluggableMiddleware'> 192 | } 193 | declare module 'mindfront-redux-utils/src/createReducer.js' { 194 | declare module.exports: $Exports<'mindfront-redux-utils/src/createReducer'> 195 | } 196 | declare module 'mindfront-redux-utils/src/fullStack.js' { 197 | declare module.exports: $Exports<'mindfront-redux-utils/src/fullStack'> 198 | } 199 | declare module 'mindfront-redux-utils/src/index.js' { 200 | declare module.exports: $Exports<'mindfront-redux-utils/src/index'> 201 | } 202 | declare module 'mindfront-redux-utils/src/prefixActionCreator.js' { 203 | declare module.exports: $Exports<'mindfront-redux-utils/src/prefixActionCreator'> 204 | } 205 | declare module 'mindfront-redux-utils/src/prefixReducer.js' { 206 | declare module.exports: $Exports<'mindfront-redux-utils/src/prefixReducer'> 207 | } 208 | -------------------------------------------------------------------------------- /flow-typed/npm/mocha_v3.1.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 58fb316c623a4f7918b0e2529256be8c 2 | // flow-typed version: 0ef6a9a08b/mocha_v3.1.x/flow_>=v0.28.x 3 | 4 | declare interface $npm$mocha$SetupOptions { 5 | slow?: number; 6 | timeout?: number; 7 | ui?: string; 8 | globals?: Array; 9 | reporter?: any; 10 | bail?: boolean; 11 | ignoreLeaks?: boolean; 12 | grep?: any; 13 | } 14 | 15 | declare type $npm$mocha$done = (error?: any) => any 16 | 17 | // declare interface $npm$mocha$SuiteCallbackContext { 18 | // timeout(ms: number): void; 19 | // retries(n: number): void; 20 | // slow(ms: number): void; 21 | // } 22 | 23 | // declare interface $npm$mocha$TestCallbackContext { 24 | // skip(): void; 25 | // timeout(ms: number): void; 26 | // retries(n: number): void; 27 | // slow(ms: number): void; 28 | // [index: string]: any; 29 | // } 30 | 31 | declare interface $npm$mocha$Suite { 32 | parent: $npm$mocha$Suite; 33 | title: string; 34 | fullTitle(): string; 35 | } 36 | 37 | declare interface $npm$mocha$ContextDefinition { 38 | ( 39 | description: string, 40 | callback: () => /* this: $npm$mocha$SuiteCallbackContext */ void 41 | ): $npm$mocha$Suite; 42 | only( 43 | description: string, 44 | callback: () => /* this: $npm$mocha$SuiteCallbackContext */ void 45 | ): $npm$mocha$Suite; 46 | skip( 47 | description: string, 48 | callback: () => /* this: $npm$mocha$SuiteCallbackContext */ void 49 | ): void; 50 | timeout(ms: number): void; 51 | } 52 | 53 | declare interface $npm$mocha$TestDefinition { 54 | ( 55 | expectation: string, 56 | callback?: ( 57 | /* this: $npm$mocha$TestCallbackContext, */ done: $npm$mocha$done 58 | ) => mixed 59 | ): $npm$mocha$Test; 60 | only( 61 | expectation: string, 62 | callback?: ( 63 | /* this: $npm$mocha$TestCallbackContext, */ done: $npm$mocha$done 64 | ) => mixed 65 | ): $npm$mocha$Test; 66 | skip( 67 | expectation: string, 68 | callback?: ( 69 | /* this: $npm$mocha$TestCallbackContext, */ done: $npm$mocha$done 70 | ) => mixed 71 | ): void; 72 | timeout(ms: number): void; 73 | state: 'failed' | 'passed'; 74 | } 75 | 76 | declare interface $npm$mocha$Runner {} 77 | 78 | declare class $npm$mocha$BaseReporter { 79 | stats: { 80 | suites: number, 81 | tests: number, 82 | passes: number, 83 | pending: number, 84 | failures: number, 85 | }; 86 | 87 | constructor(runner: $npm$mocha$Runner): $npm$mocha$BaseReporter; 88 | } 89 | 90 | declare class $npm$mocha$DocReporter extends $npm$mocha$BaseReporter {} 91 | declare class $npm$mocha$DotReporter extends $npm$mocha$BaseReporter {} 92 | declare class $npm$mocha$HTMLReporter extends $npm$mocha$BaseReporter {} 93 | declare class $npm$mocha$HTMLCovReporter extends $npm$mocha$BaseReporter {} 94 | declare class $npm$mocha$JSONReporter extends $npm$mocha$BaseReporter {} 95 | declare class $npm$mocha$JSONCovReporter extends $npm$mocha$BaseReporter {} 96 | declare class $npm$mocha$JSONStreamReporter extends $npm$mocha$BaseReporter {} 97 | declare class $npm$mocha$LandingReporter extends $npm$mocha$BaseReporter {} 98 | declare class $npm$mocha$ListReporter extends $npm$mocha$BaseReporter {} 99 | declare class $npm$mocha$MarkdownReporter extends $npm$mocha$BaseReporter {} 100 | declare class $npm$mocha$MinReporter extends $npm$mocha$BaseReporter {} 101 | declare class $npm$mocha$NyanReporter extends $npm$mocha$BaseReporter {} 102 | declare class $npm$mocha$ProgressReporter extends $npm$mocha$BaseReporter { 103 | constructor( 104 | runner: $npm$mocha$Runner, 105 | options?: { 106 | open?: string, 107 | complete?: string, 108 | incomplete?: string, 109 | close?: string, 110 | } 111 | ): $npm$mocha$ProgressReporter; 112 | } 113 | declare class $npm$mocha$SpecReporter extends $npm$mocha$BaseReporter {} 114 | declare class $npm$mocha$TAPReporter extends $npm$mocha$BaseReporter {} 115 | declare class $npm$mocha$XUnitReporter extends $npm$mocha$BaseReporter { 116 | constructor( 117 | runner: $npm$mocha$Runner, 118 | options?: any 119 | ): $npm$mocha$XUnitReporter; 120 | } 121 | 122 | declare class $npm$mocha$Mocha { 123 | currentTest: $npm$mocha$TestDefinition; 124 | constructor(options?: { 125 | grep?: RegExp, 126 | ui?: string, 127 | reporter?: string, 128 | timeout?: number, 129 | reporterOptions?: any, 130 | slow?: number, 131 | bail?: boolean, 132 | }): $npm$mocha$Mocha; 133 | setup(options: $npm$mocha$SetupOptions): this; 134 | bail(value?: boolean): this; 135 | addFile(file: string): this; 136 | reporter(name: string): this; 137 | reporter(reporter: (runner: $npm$mocha$Runner, options: any) => any): this; 138 | ui(value: string): this; 139 | grep(value: string): this; 140 | grep(value: RegExp): this; 141 | invert(): this; 142 | ignoreLeaks(value: boolean): this; 143 | checkLeaks(): this; 144 | throwError(error: Error): void; 145 | growl(): this; 146 | globals(value: string): this; 147 | globals(values: Array): this; 148 | useColors(value: boolean): this; 149 | useInlineDiffs(value: boolean): this; 150 | timeout(value: number): this; 151 | slow(value: number): this; 152 | enableTimeouts(value: boolean): this; 153 | asyncOnly(value: boolean): this; 154 | noHighlighting(value: boolean): this; 155 | run(onComplete?: (failures: number) => void): $npm$mocha$Runner; 156 | 157 | static reporters: { 158 | Doc: $npm$mocha$DocReporter, 159 | Dot: $npm$mocha$DotReporter, 160 | HTML: $npm$mocha$HTMLReporter, 161 | HTMLCov: $npm$mocha$HTMLCovReporter, 162 | JSON: $npm$mocha$JSONReporter, 163 | JSONCov: $npm$mocha$JSONCovReporter, 164 | JSONStream: $npm$mocha$JSONStreamReporter, 165 | Landing: $npm$mocha$LandingReporter, 166 | List: $npm$mocha$ListReporter, 167 | Markdown: $npm$mocha$MarkdownReporter, 168 | Min: $npm$mocha$MinReporter, 169 | Nyan: $npm$mocha$NyanReporter, 170 | Progress: $npm$mocha$ProgressReporter, 171 | }; 172 | } 173 | 174 | // declare interface $npm$mocha$HookCallbackContext { 175 | // skip(): void; 176 | // timeout(ms: number): void; 177 | // [index: string]: any; 178 | // } 179 | 180 | declare interface $npm$mocha$Runnable { 181 | title: string; 182 | fn: Function; 183 | async: boolean; 184 | sync: boolean; 185 | timedOut: boolean; 186 | } 187 | 188 | declare interface $npm$mocha$Test extends $npm$mocha$Runnable { 189 | parent: $npm$mocha$Suite; 190 | pending: boolean; 191 | state: 'failed' | 'passed' | void; 192 | fullTitle(): string; 193 | } 194 | 195 | // declare interface $npm$mocha$BeforeAndAfterContext extends $npm$mocha$HookCallbackContext { 196 | // currentTest: $npm$mocha$Test; 197 | // } 198 | 199 | declare var mocha: $npm$mocha$Mocha 200 | declare var describe: $npm$mocha$ContextDefinition 201 | declare var xdescribe: $npm$mocha$ContextDefinition 202 | declare var context: $npm$mocha$ContextDefinition 203 | declare var suite: $npm$mocha$ContextDefinition 204 | declare var it: $npm$mocha$TestDefinition 205 | declare var xit: $npm$mocha$TestDefinition 206 | declare var test: $npm$mocha$TestDefinition 207 | declare var specify: $npm$mocha$TestDefinition 208 | 209 | declare function run(): void 210 | 211 | declare function setup( 212 | callback: ( 213 | /* this: $npm$mocha$BeforeAndAfterContext, */ done: $npm$mocha$done 214 | ) => mixed 215 | ): void 216 | declare function teardown( 217 | callback: ( 218 | /* this: $npm$mocha$BeforeAndAfterContext, */ done: $npm$mocha$done 219 | ) => mixed 220 | ): void 221 | declare function suiteSetup( 222 | callback: ( 223 | /* this: $npm$mocha$HookCallbackContext, */ done: $npm$mocha$done 224 | ) => mixed 225 | ): void 226 | declare function suiteTeardown( 227 | callback: ( 228 | /* this: $npm$mocha$HookCallbackContext, */ done: $npm$mocha$done 229 | ) => mixed 230 | ): void 231 | declare function before( 232 | callback: ( 233 | /* this: $npm$mocha$HookCallbackContext, */ done: $npm$mocha$done 234 | ) => mixed 235 | ): void 236 | declare function before( 237 | description: string, 238 | callback: ( 239 | /* this: $npm$mocha$HookCallbackContext, */ done: $npm$mocha$done 240 | ) => mixed 241 | ): void 242 | declare function after( 243 | callback: ( 244 | /* this: $npm$mocha$HookCallbackContext, */ done: $npm$mocha$done 245 | ) => mixed 246 | ): void 247 | declare function after( 248 | description: string, 249 | callback: ( 250 | /* this: $npm$mocha$HookCallbackContext, */ done: $npm$mocha$done 251 | ) => mixed 252 | ): void 253 | declare function beforeEach( 254 | callback: ( 255 | /* this: $npm$mocha$BeforeAndAfterContext, */ done: $npm$mocha$done 256 | ) => mixed 257 | ): void 258 | declare function beforeEach( 259 | description: string, 260 | callback: ( 261 | /* this: $npm$mocha$BeforeAndAfterContext, */ done: $npm$mocha$done 262 | ) => mixed 263 | ): void 264 | declare function afterEach( 265 | callback: ( 266 | /* this: $npm$mocha$BeforeAndAfterContext, */ done: $npm$mocha$done 267 | ) => mixed 268 | ): void 269 | declare function afterEach( 270 | description: string, 271 | callback: ( 272 | /* this: $npm$mocha$BeforeAndAfterContext, */ done: $npm$mocha$done 273 | ) => mixed 274 | ): void 275 | 276 | declare module 'mocha' { 277 | declare export var mocha: typeof mocha 278 | declare export var describe: typeof describe 279 | declare export var xdescribe: typeof xdescribe 280 | declare export var context: typeof context 281 | declare export var suite: typeof suite 282 | declare export var it: typeof it 283 | declare export var xit: typeof xit 284 | declare export var test: typeof test 285 | declare export var specify: typeof specify 286 | 287 | declare export var run: typeof run 288 | 289 | declare export var setup: typeof setup 290 | declare export var teardown: typeof teardown 291 | declare export var suiteSetup: typeof suiteSetup 292 | declare export var suiteTeardown: typeof suiteTeardown 293 | declare export var before: typeof before 294 | declare export var before: typeof before 295 | declare export var after: typeof after 296 | declare export var after: typeof after 297 | declare export var beforeEach: typeof beforeEach 298 | declare export var beforeEach: typeof beforeEach 299 | declare export var afterEach: typeof afterEach 300 | declare export var afterEach: typeof afterEach 301 | 302 | declare export default $npm$mocha$Mocha 303 | } 304 | -------------------------------------------------------------------------------- /flow-typed/npm/mocha_v5.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: f58bffa67453f8927660cb5f142b2c7f 2 | // flow-typed version: 03669c2773/mocha_v5.x.x/flow_>=v0.28.x 3 | 4 | declare interface $npm$mocha$SetupOptions { 5 | slow?: number; 6 | timeout?: number; 7 | ui?: string; 8 | globals?: Array; 9 | reporter?: any; 10 | bail?: boolean; 11 | ignoreLeaks?: boolean; 12 | grep?: any; 13 | } 14 | 15 | declare type $npm$mocha$done = (error?: any) => any 16 | 17 | // declare interface $npm$mocha$SuiteCallbackContext { 18 | // timeout(ms: number): void; 19 | // retries(n: number): void; 20 | // slow(ms: number): void; 21 | // } 22 | 23 | // declare interface $npm$mocha$TestCallbackContext { 24 | // skip(): void; 25 | // timeout(ms: number): void; 26 | // retries(n: number): void; 27 | // slow(ms: number): void; 28 | // [index: string]: any; 29 | // } 30 | 31 | declare interface $npm$mocha$Suite { 32 | parent: $npm$mocha$Suite; 33 | title: string; 34 | fullTitle(): string; 35 | } 36 | 37 | declare interface $npm$mocha$ContextDefinition { 38 | ( 39 | description: string, 40 | callback: () => /* this: $npm$mocha$SuiteCallbackContext */ void 41 | ): $npm$mocha$Suite; 42 | only( 43 | description: string, 44 | callback: () => /* this: $npm$mocha$SuiteCallbackContext */ void 45 | ): $npm$mocha$Suite; 46 | skip( 47 | description: string, 48 | callback: () => /* this: $npm$mocha$SuiteCallbackContext */ void 49 | ): void; 50 | timeout(ms: number): void; 51 | } 52 | 53 | declare interface $npm$mocha$TestDefinition { 54 | ( 55 | expectation: string, 56 | callback?: ( 57 | /* this: $npm$mocha$TestCallbackContext, */ done: $npm$mocha$done 58 | ) => mixed 59 | ): $npm$mocha$Test; 60 | only( 61 | expectation: string, 62 | callback?: ( 63 | /* this: $npm$mocha$TestCallbackContext, */ done: $npm$mocha$done 64 | ) => mixed 65 | ): $npm$mocha$Test; 66 | skip( 67 | expectation: string, 68 | callback?: ( 69 | /* this: $npm$mocha$TestCallbackContext, */ done: $npm$mocha$done 70 | ) => mixed 71 | ): void; 72 | timeout(ms: number): void; 73 | state: 'failed' | 'passed'; 74 | } 75 | 76 | declare interface $npm$mocha$Runner {} 77 | 78 | declare class $npm$mocha$BaseReporter { 79 | stats: { 80 | suites: number, 81 | tests: number, 82 | passes: number, 83 | pending: number, 84 | failures: number, 85 | }; 86 | 87 | constructor(runner: $npm$mocha$Runner): $npm$mocha$BaseReporter; 88 | } 89 | 90 | declare class $npm$mocha$DocReporter extends $npm$mocha$BaseReporter {} 91 | declare class $npm$mocha$DotReporter extends $npm$mocha$BaseReporter {} 92 | declare class $npm$mocha$HTMLReporter extends $npm$mocha$BaseReporter {} 93 | declare class $npm$mocha$HTMLCovReporter extends $npm$mocha$BaseReporter {} 94 | declare class $npm$mocha$JSONReporter extends $npm$mocha$BaseReporter {} 95 | declare class $npm$mocha$JSONCovReporter extends $npm$mocha$BaseReporter {} 96 | declare class $npm$mocha$JSONStreamReporter extends $npm$mocha$BaseReporter {} 97 | declare class $npm$mocha$LandingReporter extends $npm$mocha$BaseReporter {} 98 | declare class $npm$mocha$ListReporter extends $npm$mocha$BaseReporter {} 99 | declare class $npm$mocha$MarkdownReporter extends $npm$mocha$BaseReporter {} 100 | declare class $npm$mocha$MinReporter extends $npm$mocha$BaseReporter {} 101 | declare class $npm$mocha$NyanReporter extends $npm$mocha$BaseReporter {} 102 | declare class $npm$mocha$ProgressReporter extends $npm$mocha$BaseReporter { 103 | constructor( 104 | runner: $npm$mocha$Runner, 105 | options?: { 106 | open?: string, 107 | complete?: string, 108 | incomplete?: string, 109 | close?: string, 110 | } 111 | ): $npm$mocha$ProgressReporter; 112 | } 113 | declare class $npm$mocha$SpecReporter extends $npm$mocha$BaseReporter {} 114 | declare class $npm$mocha$TAPReporter extends $npm$mocha$BaseReporter {} 115 | declare class $npm$mocha$XUnitReporter extends $npm$mocha$BaseReporter { 116 | constructor( 117 | runner: $npm$mocha$Runner, 118 | options?: any 119 | ): $npm$mocha$XUnitReporter; 120 | } 121 | 122 | declare class $npm$mocha$Mocha { 123 | currentTest: $npm$mocha$TestDefinition; 124 | constructor(options?: { 125 | grep?: RegExp, 126 | ui?: string, 127 | reporter?: string, 128 | timeout?: number, 129 | reporterOptions?: any, 130 | slow?: number, 131 | bail?: boolean, 132 | }): $npm$mocha$Mocha; 133 | setup(options: $npm$mocha$SetupOptions): this; 134 | bail(value?: boolean): this; 135 | addFile(file: string): this; 136 | reporter(name: string): this; 137 | reporter(reporter: (runner: $npm$mocha$Runner, options: any) => any): this; 138 | ui(value: string): this; 139 | grep(value: string): this; 140 | grep(value: RegExp): this; 141 | invert(): this; 142 | ignoreLeaks(value: boolean): this; 143 | checkLeaks(): this; 144 | throwError(error: Error): void; 145 | growl(): this; 146 | globals(value: string): this; 147 | globals(values: Array): this; 148 | useColors(value: boolean): this; 149 | useInlineDiffs(value: boolean): this; 150 | timeout(value: number): this; 151 | slow(value: number): this; 152 | enableTimeouts(value: boolean): this; 153 | asyncOnly(value: boolean): this; 154 | noHighlighting(value: boolean): this; 155 | run(onComplete?: (failures: number) => void): $npm$mocha$Runner; 156 | 157 | static reporters: { 158 | Doc: $npm$mocha$DocReporter, 159 | Dot: $npm$mocha$DotReporter, 160 | HTML: $npm$mocha$HTMLReporter, 161 | HTMLCov: $npm$mocha$HTMLCovReporter, 162 | JSON: $npm$mocha$JSONReporter, 163 | JSONCov: $npm$mocha$JSONCovReporter, 164 | JSONStream: $npm$mocha$JSONStreamReporter, 165 | Landing: $npm$mocha$LandingReporter, 166 | List: $npm$mocha$ListReporter, 167 | Markdown: $npm$mocha$MarkdownReporter, 168 | Min: $npm$mocha$MinReporter, 169 | Nyan: $npm$mocha$NyanReporter, 170 | Progress: $npm$mocha$ProgressReporter, 171 | }; 172 | } 173 | 174 | // declare interface $npm$mocha$HookCallbackContext { 175 | // skip(): void; 176 | // timeout(ms: number): void; 177 | // [index: string]: any; 178 | // } 179 | 180 | declare interface $npm$mocha$Runnable { 181 | title: string; 182 | fn: Function; 183 | async: boolean; 184 | sync: boolean; 185 | timedOut: boolean; 186 | } 187 | 188 | declare interface $npm$mocha$Test extends $npm$mocha$Runnable { 189 | parent: $npm$mocha$Suite; 190 | pending: boolean; 191 | state: 'failed' | 'passed' | void; 192 | fullTitle(): string; 193 | } 194 | 195 | // declare interface $npm$mocha$BeforeAndAfterContext extends $npm$mocha$HookCallbackContext { 196 | // currentTest: $npm$mocha$Test; 197 | // } 198 | 199 | declare var mocha: $npm$mocha$Mocha 200 | declare var describe: $npm$mocha$ContextDefinition 201 | declare var xdescribe: $npm$mocha$ContextDefinition 202 | declare var context: $npm$mocha$ContextDefinition 203 | declare var suite: $npm$mocha$ContextDefinition 204 | declare var it: $npm$mocha$TestDefinition 205 | declare var xit: $npm$mocha$TestDefinition 206 | declare var test: $npm$mocha$TestDefinition 207 | declare var specify: $npm$mocha$TestDefinition 208 | 209 | declare function run(): void 210 | 211 | declare function setup( 212 | callback: ( 213 | /* this: $npm$mocha$BeforeAndAfterContext, */ done: $npm$mocha$done 214 | ) => mixed 215 | ): void 216 | declare function teardown( 217 | callback: ( 218 | /* this: $npm$mocha$BeforeAndAfterContext, */ done: $npm$mocha$done 219 | ) => mixed 220 | ): void 221 | declare function suiteSetup( 222 | callback: ( 223 | /* this: $npm$mocha$HookCallbackContext, */ done: $npm$mocha$done 224 | ) => mixed 225 | ): void 226 | declare function suiteTeardown( 227 | callback: ( 228 | /* this: $npm$mocha$HookCallbackContext, */ done: $npm$mocha$done 229 | ) => mixed 230 | ): void 231 | declare function before( 232 | callback: ( 233 | /* this: $npm$mocha$HookCallbackContext, */ done: $npm$mocha$done 234 | ) => mixed 235 | ): void 236 | declare function before( 237 | description: string, 238 | callback: ( 239 | /* this: $npm$mocha$HookCallbackContext, */ done: $npm$mocha$done 240 | ) => mixed 241 | ): void 242 | declare function after( 243 | callback: ( 244 | /* this: $npm$mocha$HookCallbackContext, */ done: $npm$mocha$done 245 | ) => mixed 246 | ): void 247 | declare function after( 248 | description: string, 249 | callback: ( 250 | /* this: $npm$mocha$HookCallbackContext, */ done: $npm$mocha$done 251 | ) => mixed 252 | ): void 253 | declare function beforeEach( 254 | callback: ( 255 | /* this: $npm$mocha$BeforeAndAfterContext, */ done: $npm$mocha$done 256 | ) => mixed 257 | ): void 258 | declare function beforeEach( 259 | description: string, 260 | callback: ( 261 | /* this: $npm$mocha$BeforeAndAfterContext, */ done: $npm$mocha$done 262 | ) => mixed 263 | ): void 264 | declare function afterEach( 265 | callback: ( 266 | /* this: $npm$mocha$BeforeAndAfterContext, */ done: $npm$mocha$done 267 | ) => mixed 268 | ): void 269 | declare function afterEach( 270 | description: string, 271 | callback: ( 272 | /* this: $npm$mocha$BeforeAndAfterContext, */ done: $npm$mocha$done 273 | ) => mixed 274 | ): void 275 | 276 | declare module 'mocha' { 277 | declare export var mocha: typeof mocha 278 | declare export var describe: typeof describe 279 | declare export var xdescribe: typeof xdescribe 280 | declare export var context: typeof context 281 | declare export var suite: typeof suite 282 | declare export var it: typeof it 283 | declare export var xit: typeof xit 284 | declare export var test: typeof test 285 | declare export var specify: typeof specify 286 | 287 | declare export var run: typeof run 288 | 289 | declare export var setup: typeof setup 290 | declare export var teardown: typeof teardown 291 | declare export var suiteSetup: typeof suiteSetup 292 | declare export var suiteTeardown: typeof suiteTeardown 293 | declare export var before: typeof before 294 | declare export var before: typeof before 295 | declare export var after: typeof after 296 | declare export var after: typeof after 297 | declare export var beforeEach: typeof beforeEach 298 | declare export var beforeEach: typeof beforeEach 299 | declare export var afterEach: typeof afterEach 300 | declare export var afterEach: typeof afterEach 301 | 302 | declare export default $npm$mocha$Mocha 303 | } 304 | -------------------------------------------------------------------------------- /flow-typed/npm/nyc_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 118a191d36724957bef3e5799300d7c7 2 | // flow-typed version: <>/nyc_v^11.4.1/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'nyc' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module 'nyc' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | declare module 'nyc/bin/nyc' { 26 | declare module.exports: any 27 | } 28 | 29 | declare module 'nyc/bin/wrap' { 30 | declare module.exports: any 31 | } 32 | 33 | declare module 'nyc/lib/commands/check-coverage' { 34 | declare module.exports: any 35 | } 36 | 37 | declare module 'nyc/lib/commands/instrument' { 38 | declare module.exports: any 39 | } 40 | 41 | declare module 'nyc/lib/commands/report' { 42 | declare module.exports: any 43 | } 44 | 45 | declare module 'nyc/lib/config-util' { 46 | declare module.exports: any 47 | } 48 | 49 | declare module 'nyc/lib/hash' { 50 | declare module.exports: any 51 | } 52 | 53 | declare module 'nyc/lib/instrumenters/istanbul' { 54 | declare module.exports: any 55 | } 56 | 57 | declare module 'nyc/lib/instrumenters/noop' { 58 | declare module.exports: any 59 | } 60 | 61 | declare module 'nyc/lib/process-args' { 62 | declare module.exports: any 63 | } 64 | 65 | declare module 'nyc/lib/process' { 66 | declare module.exports: any 67 | } 68 | 69 | declare module 'nyc/lib/self-coverage-helper' { 70 | declare module.exports: any 71 | } 72 | 73 | declare module 'nyc/lib/source-maps' { 74 | declare module.exports: any 75 | } 76 | 77 | // Filename aliases 78 | declare module 'nyc/bin/nyc.js' { 79 | declare module.exports: $Exports<'nyc/bin/nyc'> 80 | } 81 | declare module 'nyc/bin/wrap.js' { 82 | declare module.exports: $Exports<'nyc/bin/wrap'> 83 | } 84 | declare module 'nyc/index' { 85 | declare module.exports: $Exports<'nyc'> 86 | } 87 | declare module 'nyc/index.js' { 88 | declare module.exports: $Exports<'nyc'> 89 | } 90 | declare module 'nyc/lib/commands/check-coverage.js' { 91 | declare module.exports: $Exports<'nyc/lib/commands/check-coverage'> 92 | } 93 | declare module 'nyc/lib/commands/instrument.js' { 94 | declare module.exports: $Exports<'nyc/lib/commands/instrument'> 95 | } 96 | declare module 'nyc/lib/commands/report.js' { 97 | declare module.exports: $Exports<'nyc/lib/commands/report'> 98 | } 99 | declare module 'nyc/lib/config-util.js' { 100 | declare module.exports: $Exports<'nyc/lib/config-util'> 101 | } 102 | declare module 'nyc/lib/hash.js' { 103 | declare module.exports: $Exports<'nyc/lib/hash'> 104 | } 105 | declare module 'nyc/lib/instrumenters/istanbul.js' { 106 | declare module.exports: $Exports<'nyc/lib/instrumenters/istanbul'> 107 | } 108 | declare module 'nyc/lib/instrumenters/noop.js' { 109 | declare module.exports: $Exports<'nyc/lib/instrumenters/noop'> 110 | } 111 | declare module 'nyc/lib/process-args.js' { 112 | declare module.exports: $Exports<'nyc/lib/process-args'> 113 | } 114 | declare module 'nyc/lib/process.js' { 115 | declare module.exports: $Exports<'nyc/lib/process'> 116 | } 117 | declare module 'nyc/lib/self-coverage-helper.js' { 118 | declare module.exports: $Exports<'nyc/lib/self-coverage-helper'> 119 | } 120 | declare module 'nyc/lib/source-maps.js' { 121 | declare module.exports: $Exports<'nyc/lib/source-maps'> 122 | } 123 | -------------------------------------------------------------------------------- /flow-typed/npm/redux_v3.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: cca4916b0213065533df8335c3285a4a 2 | // flow-typed version: cab04034e7/redux_v3.x.x/flow_>=v0.55.x 3 | 4 | declare module 'redux' { 5 | /* 6 | 7 | S = State 8 | A = Action 9 | D = Dispatch 10 | 11 | */ 12 | 13 | declare export type DispatchAPI = (action: A) => A 14 | declare export type Dispatch }> = DispatchAPI 15 | 16 | declare export type MiddlewareAPI> = { 17 | dispatch: D, 18 | getState(): S, 19 | } 20 | 21 | declare export type Store> = { 22 | // rewrite MiddlewareAPI members in order to get nicer error messages (intersections produce long messages) 23 | dispatch: D, 24 | getState(): S, 25 | subscribe(listener: () => void): () => void, 26 | replaceReducer(nextReducer: Reducer): void, 27 | } 28 | 29 | declare export type Reducer = (state: S | void, action: A) => S 30 | 31 | declare export type CombinedReducer = ( 32 | state: ($Shape & {}) | void, 33 | action: A 34 | ) => S 35 | 36 | declare export type Middleware> = ( 37 | api: MiddlewareAPI 38 | ) => (next: D) => D 39 | 40 | declare export type StoreCreator> = { 41 | (reducer: Reducer, enhancer?: StoreEnhancer): Store, 42 | ( 43 | reducer: Reducer, 44 | preloadedState: S, 45 | enhancer?: StoreEnhancer 46 | ): Store, 47 | } 48 | 49 | declare export type StoreEnhancer> = ( 50 | next: StoreCreator 51 | ) => StoreCreator 52 | 53 | declare export function createStore( 54 | reducer: Reducer, 55 | enhancer?: StoreEnhancer 56 | ): Store 57 | declare export function createStore( 58 | reducer: Reducer, 59 | preloadedState?: S, 60 | enhancer?: StoreEnhancer 61 | ): Store 62 | 63 | declare export function applyMiddleware( 64 | ...middlewares: Array> 65 | ): StoreEnhancer 66 | 67 | declare export type ActionCreator = (...args: Array) => A 68 | declare export type ActionCreators = { [key: K]: ActionCreator } 69 | 70 | declare export function bindActionCreators< 71 | A, 72 | C: ActionCreator, 73 | D: DispatchAPI 74 | >( 75 | actionCreator: C, 76 | dispatch: D 77 | ): C 78 | declare export function bindActionCreators< 79 | A, 80 | K, 81 | C: ActionCreators, 82 | D: DispatchAPI 83 | >( 84 | actionCreators: C, 85 | dispatch: D 86 | ): C 87 | 88 | declare export function combineReducers( 89 | reducers: O 90 | ): CombinedReducer<$ObjMap(r: Reducer) => S>, A> 91 | 92 | declare export var compose: $Compose 93 | } 94 | -------------------------------------------------------------------------------- /flow-typed/npm/rimraf_v2.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 1dff23447d5e18f5ac2b05aaec7cfb74 2 | // flow-typed version: a453e98ea2/rimraf_v2.x.x/flow_>=v0.25.0 3 | 4 | declare module 'rimraf' { 5 | declare type Options = { 6 | maxBusyTries?: number, 7 | emfileWait?: number, 8 | glob?: boolean, 9 | disableGlob?: boolean, 10 | } 11 | 12 | declare type Callback = (err: ?Error, path: ?string) => void 13 | 14 | declare module.exports: { 15 | (f: string, opts?: Options | Callback, callback?: Callback): void, 16 | sync(path: string, opts?: Options): void, 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /flow-typed/npm/semantic-release_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: e22b7c8b3c5cb24e43edd287467cda0e 2 | // flow-typed version: <>/semantic-release_v^15.1.4/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'semantic-release' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module 'semantic-release' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | declare module 'semantic-release/bin/semantic-release' { 26 | declare module.exports: any 27 | } 28 | 29 | declare module 'semantic-release/cli' { 30 | declare module.exports: any 31 | } 32 | 33 | declare module 'semantic-release/lib/definitions/errors' { 34 | declare module.exports: any 35 | } 36 | 37 | declare module 'semantic-release/lib/definitions/plugins' { 38 | declare module.exports: any 39 | } 40 | 41 | declare module 'semantic-release/lib/definitions/release-types' { 42 | declare module.exports: any 43 | } 44 | 45 | declare module 'semantic-release/lib/get-commits' { 46 | declare module.exports: any 47 | } 48 | 49 | declare module 'semantic-release/lib/get-config' { 50 | declare module.exports: any 51 | } 52 | 53 | declare module 'semantic-release/lib/get-error' { 54 | declare module.exports: any 55 | } 56 | 57 | declare module 'semantic-release/lib/get-git-auth-url' { 58 | declare module.exports: any 59 | } 60 | 61 | declare module 'semantic-release/lib/get-last-release' { 62 | declare module.exports: any 63 | } 64 | 65 | declare module 'semantic-release/lib/get-next-version' { 66 | declare module.exports: any 67 | } 68 | 69 | declare module 'semantic-release/lib/git' { 70 | declare module.exports: any 71 | } 72 | 73 | declare module 'semantic-release/lib/hide-sensitive' { 74 | declare module.exports: any 75 | } 76 | 77 | declare module 'semantic-release/lib/logger' { 78 | declare module.exports: any 79 | } 80 | 81 | declare module 'semantic-release/lib/plugins/index' { 82 | declare module.exports: any 83 | } 84 | 85 | declare module 'semantic-release/lib/plugins/normalize' { 86 | declare module.exports: any 87 | } 88 | 89 | declare module 'semantic-release/lib/plugins/pipeline' { 90 | declare module.exports: any 91 | } 92 | 93 | declare module 'semantic-release/lib/utils' { 94 | declare module.exports: any 95 | } 96 | 97 | declare module 'semantic-release/lib/verify' { 98 | declare module.exports: any 99 | } 100 | 101 | // Filename aliases 102 | declare module 'semantic-release/bin/semantic-release.js' { 103 | declare module.exports: $Exports<'semantic-release/bin/semantic-release'> 104 | } 105 | declare module 'semantic-release/cli.js' { 106 | declare module.exports: $Exports<'semantic-release/cli'> 107 | } 108 | declare module 'semantic-release/index' { 109 | declare module.exports: $Exports<'semantic-release'> 110 | } 111 | declare module 'semantic-release/index.js' { 112 | declare module.exports: $Exports<'semantic-release'> 113 | } 114 | declare module 'semantic-release/lib/definitions/errors.js' { 115 | declare module.exports: $Exports<'semantic-release/lib/definitions/errors'> 116 | } 117 | declare module 'semantic-release/lib/definitions/plugins.js' { 118 | declare module.exports: $Exports<'semantic-release/lib/definitions/plugins'> 119 | } 120 | declare module 'semantic-release/lib/definitions/release-types.js' { 121 | declare module.exports: $Exports<'semantic-release/lib/definitions/release-types'> 122 | } 123 | declare module 'semantic-release/lib/get-commits.js' { 124 | declare module.exports: $Exports<'semantic-release/lib/get-commits'> 125 | } 126 | declare module 'semantic-release/lib/get-config.js' { 127 | declare module.exports: $Exports<'semantic-release/lib/get-config'> 128 | } 129 | declare module 'semantic-release/lib/get-error.js' { 130 | declare module.exports: $Exports<'semantic-release/lib/get-error'> 131 | } 132 | declare module 'semantic-release/lib/get-git-auth-url.js' { 133 | declare module.exports: $Exports<'semantic-release/lib/get-git-auth-url'> 134 | } 135 | declare module 'semantic-release/lib/get-last-release.js' { 136 | declare module.exports: $Exports<'semantic-release/lib/get-last-release'> 137 | } 138 | declare module 'semantic-release/lib/get-next-version.js' { 139 | declare module.exports: $Exports<'semantic-release/lib/get-next-version'> 140 | } 141 | declare module 'semantic-release/lib/git.js' { 142 | declare module.exports: $Exports<'semantic-release/lib/git'> 143 | } 144 | declare module 'semantic-release/lib/hide-sensitive.js' { 145 | declare module.exports: $Exports<'semantic-release/lib/hide-sensitive'> 146 | } 147 | declare module 'semantic-release/lib/logger.js' { 148 | declare module.exports: $Exports<'semantic-release/lib/logger'> 149 | } 150 | declare module 'semantic-release/lib/plugins/index.js' { 151 | declare module.exports: $Exports<'semantic-release/lib/plugins/index'> 152 | } 153 | declare module 'semantic-release/lib/plugins/normalize.js' { 154 | declare module.exports: $Exports<'semantic-release/lib/plugins/normalize'> 155 | } 156 | declare module 'semantic-release/lib/plugins/pipeline.js' { 157 | declare module.exports: $Exports<'semantic-release/lib/plugins/pipeline'> 158 | } 159 | declare module 'semantic-release/lib/utils.js' { 160 | declare module.exports: $Exports<'semantic-release/lib/utils'> 161 | } 162 | declare module 'semantic-release/lib/verify.js' { 163 | declare module.exports: $Exports<'semantic-release/lib/verify'> 164 | } 165 | -------------------------------------------------------------------------------- /flow-typed/npm/sinon_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: c906d7e1723c9238592be85a02aa28b7 2 | // flow-typed version: <>/sinon_v^1.17.6/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'sinon' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module 'sinon' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | declare module 'sinon/lib/sinon' { 26 | declare module.exports: any 27 | } 28 | 29 | declare module 'sinon/lib/sinon/assert' { 30 | declare module.exports: any 31 | } 32 | 33 | declare module 'sinon/lib/sinon/behavior' { 34 | declare module.exports: any 35 | } 36 | 37 | declare module 'sinon/lib/sinon/call' { 38 | declare module.exports: any 39 | } 40 | 41 | declare module 'sinon/lib/sinon/collection' { 42 | declare module.exports: any 43 | } 44 | 45 | declare module 'sinon/lib/sinon/extend' { 46 | declare module.exports: any 47 | } 48 | 49 | declare module 'sinon/lib/sinon/format' { 50 | declare module.exports: any 51 | } 52 | 53 | declare module 'sinon/lib/sinon/log_error' { 54 | declare module.exports: any 55 | } 56 | 57 | declare module 'sinon/lib/sinon/match' { 58 | declare module.exports: any 59 | } 60 | 61 | declare module 'sinon/lib/sinon/mock' { 62 | declare module.exports: any 63 | } 64 | 65 | declare module 'sinon/lib/sinon/sandbox' { 66 | declare module.exports: any 67 | } 68 | 69 | declare module 'sinon/lib/sinon/spy' { 70 | declare module.exports: any 71 | } 72 | 73 | declare module 'sinon/lib/sinon/stub' { 74 | declare module.exports: any 75 | } 76 | 77 | declare module 'sinon/lib/sinon/test_case' { 78 | declare module.exports: any 79 | } 80 | 81 | declare module 'sinon/lib/sinon/test' { 82 | declare module.exports: any 83 | } 84 | 85 | declare module 'sinon/lib/sinon/times_in_words' { 86 | declare module.exports: any 87 | } 88 | 89 | declare module 'sinon/lib/sinon/typeOf' { 90 | declare module.exports: any 91 | } 92 | 93 | declare module 'sinon/lib/sinon/util/core' { 94 | declare module.exports: any 95 | } 96 | 97 | declare module 'sinon/lib/sinon/util/event' { 98 | declare module.exports: any 99 | } 100 | 101 | declare module 'sinon/lib/sinon/util/fake_server_with_clock' { 102 | declare module.exports: any 103 | } 104 | 105 | declare module 'sinon/lib/sinon/util/fake_server' { 106 | declare module.exports: any 107 | } 108 | 109 | declare module 'sinon/lib/sinon/util/fake_timers' { 110 | declare module.exports: any 111 | } 112 | 113 | declare module 'sinon/lib/sinon/util/fake_xdomain_request' { 114 | declare module.exports: any 115 | } 116 | 117 | declare module 'sinon/lib/sinon/util/fake_xml_http_request' { 118 | declare module.exports: any 119 | } 120 | 121 | declare module 'sinon/lib/sinon/util/timers_ie' { 122 | declare module.exports: any 123 | } 124 | 125 | declare module 'sinon/lib/sinon/util/xdr_ie' { 126 | declare module.exports: any 127 | } 128 | 129 | declare module 'sinon/lib/sinon/util/xhr_ie' { 130 | declare module.exports: any 131 | } 132 | 133 | declare module 'sinon/lib/sinon/walk' { 134 | declare module.exports: any 135 | } 136 | 137 | declare module 'sinon/pkg/sinon-1.17.7' { 138 | declare module.exports: any 139 | } 140 | 141 | declare module 'sinon/pkg/sinon-ie-1.17.7' { 142 | declare module.exports: any 143 | } 144 | 145 | declare module 'sinon/pkg/sinon-ie' { 146 | declare module.exports: any 147 | } 148 | 149 | declare module 'sinon/pkg/sinon-server-1.17.7' { 150 | declare module.exports: any 151 | } 152 | 153 | declare module 'sinon/pkg/sinon-server' { 154 | declare module.exports: any 155 | } 156 | 157 | declare module 'sinon/pkg/sinon' { 158 | declare module.exports: any 159 | } 160 | 161 | // Filename aliases 162 | declare module 'sinon/lib/sinon.js' { 163 | declare module.exports: $Exports<'sinon/lib/sinon'> 164 | } 165 | declare module 'sinon/lib/sinon/assert.js' { 166 | declare module.exports: $Exports<'sinon/lib/sinon/assert'> 167 | } 168 | declare module 'sinon/lib/sinon/behavior.js' { 169 | declare module.exports: $Exports<'sinon/lib/sinon/behavior'> 170 | } 171 | declare module 'sinon/lib/sinon/call.js' { 172 | declare module.exports: $Exports<'sinon/lib/sinon/call'> 173 | } 174 | declare module 'sinon/lib/sinon/collection.js' { 175 | declare module.exports: $Exports<'sinon/lib/sinon/collection'> 176 | } 177 | declare module 'sinon/lib/sinon/extend.js' { 178 | declare module.exports: $Exports<'sinon/lib/sinon/extend'> 179 | } 180 | declare module 'sinon/lib/sinon/format.js' { 181 | declare module.exports: $Exports<'sinon/lib/sinon/format'> 182 | } 183 | declare module 'sinon/lib/sinon/log_error.js' { 184 | declare module.exports: $Exports<'sinon/lib/sinon/log_error'> 185 | } 186 | declare module 'sinon/lib/sinon/match.js' { 187 | declare module.exports: $Exports<'sinon/lib/sinon/match'> 188 | } 189 | declare module 'sinon/lib/sinon/mock.js' { 190 | declare module.exports: $Exports<'sinon/lib/sinon/mock'> 191 | } 192 | declare module 'sinon/lib/sinon/sandbox.js' { 193 | declare module.exports: $Exports<'sinon/lib/sinon/sandbox'> 194 | } 195 | declare module 'sinon/lib/sinon/spy.js' { 196 | declare module.exports: $Exports<'sinon/lib/sinon/spy'> 197 | } 198 | declare module 'sinon/lib/sinon/stub.js' { 199 | declare module.exports: $Exports<'sinon/lib/sinon/stub'> 200 | } 201 | declare module 'sinon/lib/sinon/test_case.js' { 202 | declare module.exports: $Exports<'sinon/lib/sinon/test_case'> 203 | } 204 | declare module 'sinon/lib/sinon/test.js' { 205 | declare module.exports: $Exports<'sinon/lib/sinon/test'> 206 | } 207 | declare module 'sinon/lib/sinon/times_in_words.js' { 208 | declare module.exports: $Exports<'sinon/lib/sinon/times_in_words'> 209 | } 210 | declare module 'sinon/lib/sinon/typeOf.js' { 211 | declare module.exports: $Exports<'sinon/lib/sinon/typeOf'> 212 | } 213 | declare module 'sinon/lib/sinon/util/core.js' { 214 | declare module.exports: $Exports<'sinon/lib/sinon/util/core'> 215 | } 216 | declare module 'sinon/lib/sinon/util/event.js' { 217 | declare module.exports: $Exports<'sinon/lib/sinon/util/event'> 218 | } 219 | declare module 'sinon/lib/sinon/util/fake_server_with_clock.js' { 220 | declare module.exports: $Exports<'sinon/lib/sinon/util/fake_server_with_clock'> 221 | } 222 | declare module 'sinon/lib/sinon/util/fake_server.js' { 223 | declare module.exports: $Exports<'sinon/lib/sinon/util/fake_server'> 224 | } 225 | declare module 'sinon/lib/sinon/util/fake_timers.js' { 226 | declare module.exports: $Exports<'sinon/lib/sinon/util/fake_timers'> 227 | } 228 | declare module 'sinon/lib/sinon/util/fake_xdomain_request.js' { 229 | declare module.exports: $Exports<'sinon/lib/sinon/util/fake_xdomain_request'> 230 | } 231 | declare module 'sinon/lib/sinon/util/fake_xml_http_request.js' { 232 | declare module.exports: $Exports<'sinon/lib/sinon/util/fake_xml_http_request'> 233 | } 234 | declare module 'sinon/lib/sinon/util/timers_ie.js' { 235 | declare module.exports: $Exports<'sinon/lib/sinon/util/timers_ie'> 236 | } 237 | declare module 'sinon/lib/sinon/util/xdr_ie.js' { 238 | declare module.exports: $Exports<'sinon/lib/sinon/util/xdr_ie'> 239 | } 240 | declare module 'sinon/lib/sinon/util/xhr_ie.js' { 241 | declare module.exports: $Exports<'sinon/lib/sinon/util/xhr_ie'> 242 | } 243 | declare module 'sinon/lib/sinon/walk.js' { 244 | declare module.exports: $Exports<'sinon/lib/sinon/walk'> 245 | } 246 | declare module 'sinon/pkg/sinon-1.17.7.js' { 247 | declare module.exports: $Exports<'sinon/pkg/sinon-1.17.7'> 248 | } 249 | declare module 'sinon/pkg/sinon-ie-1.17.7.js' { 250 | declare module.exports: $Exports<'sinon/pkg/sinon-ie-1.17.7'> 251 | } 252 | declare module 'sinon/pkg/sinon-ie.js' { 253 | declare module.exports: $Exports<'sinon/pkg/sinon-ie'> 254 | } 255 | declare module 'sinon/pkg/sinon-server-1.17.7.js' { 256 | declare module.exports: $Exports<'sinon/pkg/sinon-server-1.17.7'> 257 | } 258 | declare module 'sinon/pkg/sinon-server.js' { 259 | declare module.exports: $Exports<'sinon/pkg/sinon-server'> 260 | } 261 | declare module 'sinon/pkg/sinon.js' { 262 | declare module.exports: $Exports<'sinon/pkg/sinon'> 263 | } 264 | -------------------------------------------------------------------------------- /flow-typed/npm/travis-deploy-once_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 0933b73cb950e9a08cb44c6ae2c0b3cd 2 | // flow-typed version: <>/travis-deploy-once_v^4.3.1/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'travis-deploy-once' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module 'travis-deploy-once' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | declare module 'travis-deploy-once/bin/travis-deploy-once' { 26 | declare module.exports: any 27 | } 28 | 29 | declare module 'travis-deploy-once/cli' { 30 | declare module.exports: any 31 | } 32 | 33 | declare module 'travis-deploy-once/lib/elect-build-leader' { 34 | declare module.exports: any 35 | } 36 | 37 | declare module 'travis-deploy-once/lib/get-jobs' { 38 | declare module.exports: any 39 | } 40 | 41 | declare module 'travis-deploy-once/lib/get-logger' { 42 | declare module.exports: any 43 | } 44 | 45 | declare module 'travis-deploy-once/lib/get-token' { 46 | declare module.exports: any 47 | } 48 | 49 | declare module 'travis-deploy-once/lib/get-travis-url' { 50 | declare module.exports: any 51 | } 52 | 53 | declare module 'travis-deploy-once/lib/travis-deploy-once' { 54 | declare module.exports: any 55 | } 56 | 57 | declare module 'travis-deploy-once/lib/validate' { 58 | declare module.exports: any 59 | } 60 | 61 | declare module 'travis-deploy-once/lib/verify-jobs-state' { 62 | declare module.exports: any 63 | } 64 | 65 | declare module 'travis-deploy-once/lib/wait-for-other-jobs' { 66 | declare module.exports: any 67 | } 68 | 69 | // Filename aliases 70 | declare module 'travis-deploy-once/bin/travis-deploy-once.js' { 71 | declare module.exports: $Exports<'travis-deploy-once/bin/travis-deploy-once'> 72 | } 73 | declare module 'travis-deploy-once/cli.js' { 74 | declare module.exports: $Exports<'travis-deploy-once/cli'> 75 | } 76 | declare module 'travis-deploy-once/index' { 77 | declare module.exports: $Exports<'travis-deploy-once'> 78 | } 79 | declare module 'travis-deploy-once/index.js' { 80 | declare module.exports: $Exports<'travis-deploy-once'> 81 | } 82 | declare module 'travis-deploy-once/lib/elect-build-leader.js' { 83 | declare module.exports: $Exports<'travis-deploy-once/lib/elect-build-leader'> 84 | } 85 | declare module 'travis-deploy-once/lib/get-jobs.js' { 86 | declare module.exports: $Exports<'travis-deploy-once/lib/get-jobs'> 87 | } 88 | declare module 'travis-deploy-once/lib/get-logger.js' { 89 | declare module.exports: $Exports<'travis-deploy-once/lib/get-logger'> 90 | } 91 | declare module 'travis-deploy-once/lib/get-token.js' { 92 | declare module.exports: $Exports<'travis-deploy-once/lib/get-token'> 93 | } 94 | declare module 'travis-deploy-once/lib/get-travis-url.js' { 95 | declare module.exports: $Exports<'travis-deploy-once/lib/get-travis-url'> 96 | } 97 | declare module 'travis-deploy-once/lib/travis-deploy-once.js' { 98 | declare module.exports: $Exports<'travis-deploy-once/lib/travis-deploy-once'> 99 | } 100 | declare module 'travis-deploy-once/lib/validate.js' { 101 | declare module.exports: $Exports<'travis-deploy-once/lib/validate'> 102 | } 103 | declare module 'travis-deploy-once/lib/verify-jobs-state.js' { 104 | declare module.exports: $Exports<'travis-deploy-once/lib/verify-jobs-state'> 105 | } 106 | declare module 'travis-deploy-once/lib/wait-for-other-jobs.js' { 107 | declare module.exports: $Exports<'travis-deploy-once/lib/wait-for-other-jobs'> 108 | } 109 | -------------------------------------------------------------------------------- /flow-typed/npm/validate-commit-msg_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: c4574ae8e602f6b581ab90b3b906b67b 2 | // flow-typed version: <>/validate-commit-msg_v^2.8.2/flow_v0.74.0 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'validate-commit-msg' 8 | * 9 | * Fill this stub out by replacing all the `any` types. 10 | * 11 | * Once filled out, we encourage you to share your work with the 12 | * community by sending a pull request to: 13 | * https://github.com/flowtype/flow-typed 14 | */ 15 | 16 | declare module 'validate-commit-msg' { 17 | declare module.exports: any 18 | } 19 | 20 | /** 21 | * We include stubs for each file inside this npm package in case you need to 22 | * require those files directly. Feel free to delete any files that aren't 23 | * needed. 24 | */ 25 | declare module 'validate-commit-msg/lib/cli' { 26 | declare module.exports: any 27 | } 28 | 29 | declare module 'validate-commit-msg/lib/config' { 30 | declare module.exports: any 31 | } 32 | 33 | declare module 'validate-commit-msg/lib/getGitFolder' { 34 | declare module.exports: any 35 | } 36 | 37 | declare module 'validate-commit-msg/lib/validateMessage' { 38 | declare module.exports: any 39 | } 40 | 41 | // Filename aliases 42 | declare module 'validate-commit-msg/index' { 43 | declare module.exports: $Exports<'validate-commit-msg'> 44 | } 45 | declare module 'validate-commit-msg/index.js' { 46 | declare module.exports: $Exports<'validate-commit-msg'> 47 | } 48 | declare module 'validate-commit-msg/lib/cli.js' { 49 | declare module.exports: $Exports<'validate-commit-msg/lib/cli'> 50 | } 51 | declare module 'validate-commit-msg/lib/config.js' { 52 | declare module.exports: $Exports<'validate-commit-msg/lib/config'> 53 | } 54 | declare module 'validate-commit-msg/lib/getGitFolder.js' { 55 | declare module.exports: $Exports<'validate-commit-msg/lib/getGitFolder'> 56 | } 57 | declare module 'validate-commit-msg/lib/validateMessage.js' { 58 | declare module.exports: $Exports<'validate-commit-msg/lib/validateMessage'> 59 | } 60 | -------------------------------------------------------------------------------- /githooks.cjs: -------------------------------------------------------------------------------- 1 | /* eslint-env node, es2018 */ 2 | const base = require('@jcoreio/toolchain/githooks.cjs') 3 | module.exports = { 4 | ...base, 5 | } 6 | -------------------------------------------------------------------------------- /lint-staged.config.cjs: -------------------------------------------------------------------------------- 1 | /* eslint-env node, es2018 */ 2 | const base = require('@jcoreio/toolchain/lint-staged.config.cjs') 3 | module.exports = { 4 | ...base, 5 | } 6 | -------------------------------------------------------------------------------- /nyc.config.cjs: -------------------------------------------------------------------------------- 1 | /* eslint-env node, es2018 */ 2 | const base = require('@jcoreio/toolchain-mocha/nyc.config.cjs') 3 | module.exports = { 4 | ...base, 5 | } 6 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "redux-features", 3 | "version": "0.0.0-development", 4 | "description": "powerful feature-oriented programming for redux", 5 | "modules.root": "es", 6 | "sideEffects": false, 7 | "scripts": { 8 | "tc": "toolchain", 9 | "toolchain": "toolchain", 10 | "test": "toolchain test", 11 | "prepublishOnly": "echo This package is meant to be published by semantic-release from the dist build directory. && exit 1" 12 | }, 13 | "repository": { 14 | "type": "git", 15 | "url": "https://github.com/jcoreio/redux-features.git" 16 | }, 17 | "keywords": [ 18 | "redux", 19 | "features", 20 | "feature-oriented programming", 21 | "fop", 22 | "plugins", 23 | "code splitting" 24 | ], 25 | "author": "Andy Edwards", 26 | "license": "MIT", 27 | "bugs": { 28 | "url": "https://github.com/jcoreio/redux-features/issues" 29 | }, 30 | "homepage": "https://github.com/jcoreio/redux-features#readme", 31 | "devDependencies": { 32 | "@babel/plugin-syntax-flow": "^7.14.5", 33 | "@babel/plugin-transform-react-jsx": "^7.14.9", 34 | "@jcoreio/toolchain": "^3.2.0", 35 | "@jcoreio/toolchain-circle": "^3.2.0", 36 | "@jcoreio/toolchain-esnext": "^3.2.0", 37 | "@jcoreio/toolchain-flow": "^3.2.0", 38 | "@jcoreio/toolchain-mocha": "^3.2.0", 39 | "@jcoreio/toolchain-semantic-release": "^3.2.0", 40 | "@jcoreio/toolchain-typescript": "^3.2.0", 41 | "@typescript-eslint/eslint-plugin": "^5.60.0", 42 | "@typescript-eslint/parser": "^5.60.0", 43 | "babel-plugin-lodash": "^3.3.4", 44 | "chai": "^4.3.7", 45 | "copy": "^0.3.0", 46 | "eslint": "^8.43.0", 47 | "eslint-plugin-flowtype": "^8.0.3", 48 | "flow-bin": "^0.97.0", 49 | "mindfront-redux-utils": "^2.0.0", 50 | "mocha": "^10.2.0", 51 | "redux": "^4.2.1", 52 | "rimraf": "^2.6.0", 53 | "sinon": "^1.17.6", 54 | "typescript": "^5.2.2", 55 | "validate-commit-msg": "^2.8.2" 56 | }, 57 | "dependencies": { 58 | "@babel/runtime": "^7.18.6", 59 | "lodash": "^4.17.10", 60 | "reselect": "^3.0.0" 61 | }, 62 | "main": "dist/index.js", 63 | "types": "dist/index.d.ts", 64 | "exports": { 65 | ".": { 66 | "types": "./dist/index.d.ts", 67 | "default": "./dist/index.js" 68 | } 69 | }, 70 | "engines": { 71 | "node": ">=16" 72 | }, 73 | "packageManager": "pnpm@8.3.1" 74 | } 75 | -------------------------------------------------------------------------------- /prettier.config.cjs: -------------------------------------------------------------------------------- 1 | /* eslint-env node, es2018 */ 2 | const base = require('@jcoreio/toolchain/prettier.config.cjs') 3 | module.exports = { 4 | ...base, 5 | } 6 | -------------------------------------------------------------------------------- /release.config.cjs: -------------------------------------------------------------------------------- 1 | /* eslint-env node, es2018 */ 2 | module.exports = { 3 | extends: [ 4 | require.resolve('@jcoreio/toolchain-semantic-release/release.config.cjs'), 5 | ], 6 | } 7 | -------------------------------------------------------------------------------- /src/actions.d.ts: -------------------------------------------------------------------------------- 1 | import { AnyAction } from 'redux' 2 | import type { Feature, FeatureState } from './index' 3 | export declare const ACTION_TYPE_PREFIX = '@@redux-features/' 4 | export declare const ADD_FEATURE: '@@redux-features/ADD_FEATURE' 5 | export declare const REPLACE_FEATURE: '@@redux-features/REPLACE_FEATURE' 6 | export declare const LOAD_FEATURE: '@@redux-features/LOAD_FEATURE' 7 | export declare const INSTALL_FEATURE: '@@redux-features/INSTALL_FEATURE' 8 | export declare const SET_FEATURE_STATE: '@@redux-features/SET_FEATURE_STATE' 9 | export declare const LOAD_INITIAL_FEATURES: '@@redux-features/LOAD_INITIAL_FEATURES' 10 | 11 | export type AddFeatureAction = { 12 | type: typeof ADD_FEATURE 13 | payload: Feature 14 | meta: { id: string } 15 | } 16 | export declare function addFeature( 17 | id: string, 18 | feature: Feature 19 | ): AddFeatureAction 20 | 21 | export type ReplaceFeatureAction = { 22 | type: typeof REPLACE_FEATURE 23 | feature: Feature 24 | meta: { id: string } 25 | } 26 | export declare function replaceFeature< 27 | S = any, 28 | A extends AnyAction = AnyAction 29 | >(id: string, feature: Feature): ReplaceFeatureAction 30 | 31 | export type LoadFeatureAction = { 32 | type: typeof LOAD_FEATURE 33 | meta: { id: string } 34 | } 35 | export declare function loadFeature(id: string): LoadFeatureAction 36 | 37 | export type InstallFeatureAction = { 38 | type: typeof INSTALL_FEATURE 39 | feature: Feature 40 | meta: { id: string } 41 | } 42 | export declare function installFeature< 43 | S = any, 44 | A extends AnyAction = AnyAction 45 | >(id: string, feature: Feature): InstallFeatureAction 46 | 47 | export type SetFeatureStateAction = { 48 | type: typeof SET_FEATURE_STATE 49 | payload: FeatureState 50 | } 51 | export declare function setFeatureState( 52 | id: string, 53 | payload: FeatureState 54 | ): SetFeatureStateAction 55 | 56 | export type LoadInitialFeaturesAction = { 57 | type: typeof LOAD_INITIAL_FEATURES 58 | } 59 | export declare function loadInitialFeatures(): LoadInitialFeaturesAction 60 | 61 | export type FeatureAction = 62 | | AddFeatureAction 63 | | ReplaceFeatureAction 64 | | LoadFeatureAction 65 | | InstallFeatureAction 66 | | SetFeatureStateAction 67 | | LoadInitialFeaturesAction 68 | -------------------------------------------------------------------------------- /src/actions.js: -------------------------------------------------------------------------------- 1 | /* @flow */ 2 | 3 | import type { Feature, FeatureState, FeatureAction } from './index' 4 | 5 | export const ACTION_TYPE_PREFIX = '@@redux-features/' 6 | export const ADD_FEATURE = ACTION_TYPE_PREFIX + 'ADD_FEATURE' 7 | export const REPLACE_FEATURE = ACTION_TYPE_PREFIX + 'REPLACE_FEATURE' 8 | export const LOAD_FEATURE = ACTION_TYPE_PREFIX + 'LOAD_FEATURE' 9 | export const INSTALL_FEATURE = ACTION_TYPE_PREFIX + 'INSTALL_FEATURE' 10 | export const SET_FEATURE_STATE = ACTION_TYPE_PREFIX + 'SET_FEATURE_STATE' 11 | export const LOAD_INITIAL_FEATURES = 12 | ACTION_TYPE_PREFIX + 'LOAD_INITIAL_FEATURES' 13 | 14 | export function addFeature( 15 | id: string, 16 | feature: Feature 17 | ): FeatureAction { 18 | return { 19 | type: ADD_FEATURE, 20 | payload: feature, 21 | meta: { id }, 22 | } 23 | } 24 | 25 | export function replaceFeature( 26 | id: string, 27 | feature: Feature 28 | ): FeatureAction { 29 | return { 30 | type: REPLACE_FEATURE, 31 | payload: feature, 32 | meta: { id }, 33 | } 34 | } 35 | 36 | export function loadFeature(id: string): FeatureAction { 37 | return { 38 | type: LOAD_FEATURE, 39 | meta: { id }, 40 | } 41 | } 42 | 43 | export function installFeature( 44 | id: string, 45 | feature: Feature 46 | ): FeatureAction { 47 | return { 48 | type: INSTALL_FEATURE, 49 | payload: feature, 50 | meta: { id }, 51 | } 52 | } 53 | 54 | export function setFeatureState( 55 | id: string, 56 | payload: FeatureState 57 | ): FeatureAction { 58 | return { 59 | type: SET_FEATURE_STATE, 60 | payload, 61 | meta: { id }, 62 | } 63 | } 64 | 65 | export function loadInitialFeatures(): FeatureAction { 66 | return { 67 | type: LOAD_INITIAL_FEATURES, 68 | } 69 | } 70 | -------------------------------------------------------------------------------- /src/defaults.d.ts: -------------------------------------------------------------------------------- 1 | import type { Reducer, Middleware, AnyAction, Dispatch } from 'redux' 2 | export declare const defaultCreateReducer: { 3 | ( 4 | initialState: S, 5 | reducers: Record> 6 | ): Reducer 7 | ( 8 | reducers: Record> 9 | ): Reducer 10 | } 11 | export declare function defaultComposeReducers< 12 | S = any, 13 | A extends AnyAction = AnyAction 14 | >(...reducers: Array>): Reducer 15 | export declare function defaultCreateMiddleware< 16 | DispatchExt = {}, 17 | S = any, 18 | D extends Dispatch = Dispatch 19 | >( 20 | middlewares: Record> 21 | ): Middleware 22 | export declare function defaultComposeMiddleware< 23 | DispatchExt = {}, 24 | S = any, 25 | D extends Dispatch = Dispatch 26 | >( 27 | ...middlewares: Array> 28 | ): Middleware 29 | -------------------------------------------------------------------------------- /src/defaults.js: -------------------------------------------------------------------------------- 1 | // @flow 2 | 3 | import type { Reducer, Middleware, MiddlewareAPI, Dispatch } from 'redux' 4 | 5 | export const defaultCreateReducer: ( }>( 6 | initialState: S, 7 | reducers: { [actionType: string]: Reducer } 8 | ) => Reducer) & 9 | ( }>(reducers: { 10 | [actionType: string]: Reducer, 11 | }) => Reducer) = function }>(): Reducer< 12 | S, 13 | A 14 | > { 15 | const initialState = arguments[1] ? arguments[0] : undefined 16 | const reducers = arguments[1] ? arguments[1] : arguments[0] 17 | return function actionHandlerReducer(state: S | void, action: A): S { 18 | if (state === undefined && initialState !== undefined) state = initialState 19 | if (!state) throw new Error('unable to return defined state') 20 | const reducer = reducers[action.type] 21 | return reducer ? reducer(state, action) : state 22 | } 23 | } 24 | 25 | export function defaultComposeReducers( 26 | ...reducers: Array> 27 | ): Reducer { 28 | return function composedReducer(state: S | void, action: A): S { 29 | const result = reducers.reduceRight( 30 | (state: S | void, reducer) => (reducer(state, action): any), 31 | state 32 | ) 33 | if (result === undefined) throw new Error('unable to return defined state') 34 | return result 35 | } 36 | } 37 | 38 | export function defaultCreateMiddleware< 39 | S, 40 | A: { type: $Subtype } 41 | >(middlewares: { [actionType: string]: Middleware }): Middleware { 42 | // eslint-disable-next-line flowtype/require-return-type 43 | return (store: MiddlewareAPI) => (next: Dispatch) => (action: A) => { 44 | const middleware = middlewares[action.type] 45 | if (!middleware) return next(action) 46 | return middleware(store)(next)(action) 47 | } 48 | } 49 | 50 | export function defaultComposeMiddleware }>( 51 | ...middlewares: Array> 52 | ): Middleware { 53 | return (store) => (next) => 54 | middlewares.reduceRight((next, handler) => handler(store)(next), next) 55 | } 56 | -------------------------------------------------------------------------------- /src/featureMiddlewaresMiddleware.d.ts: -------------------------------------------------------------------------------- 1 | import type { Dispatch, Middleware } from 'redux' 2 | import type { Features, ComposeMiddleware } from './index' 3 | export default function featureMiddlewaresMiddleware< 4 | DispatchExt = {}, 5 | S = any, 6 | D extends Dispatch = Dispatch 7 | >(config?: { 8 | getFeatures?: (state: S) => Features[0]> | null | undefined 9 | composeMiddleware?: ComposeMiddleware 10 | }): Middleware 11 | -------------------------------------------------------------------------------- /src/featureMiddlewaresMiddleware.js: -------------------------------------------------------------------------------- 1 | // @flow 2 | 3 | import { createSelector } from 'reselect' 4 | import type { Middleware } from 'redux' 5 | import type { Features, ComposeMiddleware } from './index' 6 | 7 | import { defaultComposeMiddleware } from './defaults' 8 | 9 | export default function featureMiddlewaresMiddleware< 10 | S, 11 | A: { type: $Subtype } 12 | >( 13 | config?: { 14 | getFeatures?: (state: S) => ?Features, 15 | composeMiddleware?: ComposeMiddleware, 16 | } = {} 17 | ): Middleware { 18 | const getFeatures = 19 | config.getFeatures || ((state: any) => state && state.features) 20 | const composeMiddleware = config.composeMiddleware || defaultComposeMiddleware 21 | 22 | const selectFeatureMiddleware: (state: S) => Middleware = 23 | createSelector( 24 | getFeatures, 25 | (features: ?Features): Middleware => { 26 | if (!features) return (store) => (next) => next 27 | const middlewares: Array> = [] 28 | for (let id in features) { 29 | const { middleware } = features[id] 30 | if (middleware instanceof Function) middlewares.push(middleware) 31 | } 32 | if (!middlewares.length) return (store) => (next) => next 33 | return composeMiddleware(...middlewares) 34 | } 35 | ) 36 | 37 | return (store) => (next) => (action) => 38 | selectFeatureMiddleware(store.getState())(store)(next)(action) 39 | } 40 | -------------------------------------------------------------------------------- /src/featureReducersReducer.d.ts: -------------------------------------------------------------------------------- 1 | import type { AnyAction, Reducer } from 'redux' 2 | import type { Features, ComposeReducers } from './index' 3 | export default function featureReducersReducer< 4 | S = any, 5 | A extends AnyAction = AnyAction 6 | >(config?: { 7 | getFeatures?: (state: S) => Features | null | undefined 8 | composeReducers?: ComposeReducers 9 | }): Reducer 10 | -------------------------------------------------------------------------------- /src/featureReducersReducer.js: -------------------------------------------------------------------------------- 1 | // @flow 2 | 3 | import type { Reducer } from 'redux' 4 | import type { Features, ComposeReducers } from './index' 5 | import { createSelector } from 'reselect' 6 | 7 | import { defaultComposeReducers } from './defaults' 8 | 9 | export default function featureReducersReducer< 10 | S, 11 | A: { type: $Subtype } 12 | >( 13 | config?: { 14 | getFeatures?: (state: S) => ?Features, 15 | composeReducers?: ComposeReducers, 16 | } = {} 17 | ): Reducer { 18 | const getFeatures = 19 | config.getFeatures || ((state) => (state ? (state: any).features : {})) 20 | const composeReducers = config.composeReducers || defaultComposeReducers 21 | 22 | const selectFeatureReducers: (state: S | void) => Reducer = 23 | createSelector( 24 | (state) => (state ? getFeatures(state) : null), 25 | (features: ?Features): Reducer => { 26 | if (!features) return (state) => (state: any) 27 | const reducers: Array> = [] 28 | for (let id in features) { 29 | const { reducer } = features[id] 30 | if (reducer instanceof Function) reducers.push(reducer) 31 | } 32 | if (!reducers.length) return (state) => (state: any) 33 | return composeReducers(...reducers) 34 | } 35 | ) 36 | 37 | return (state, action) => selectFeatureReducers(state)(state, action) 38 | } 39 | -------------------------------------------------------------------------------- /src/featureStatesReducer.d.ts: -------------------------------------------------------------------------------- 1 | import type { AnyAction, Reducer } from 'redux' 2 | import type { FeatureStates, CreateReducer } from './index' 3 | export default function featureStatesReducer< 4 | S extends FeatureStates = FeatureStates, 5 | A extends AnyAction = AnyAction 6 | >(config?: { createReducer?: CreateReducer }): Reducer 7 | -------------------------------------------------------------------------------- /src/featureStatesReducer.js: -------------------------------------------------------------------------------- 1 | // @flow 2 | 3 | import { 4 | ADD_FEATURE, 5 | LOAD_FEATURE, 6 | INSTALL_FEATURE, 7 | REPLACE_FEATURE, 8 | SET_FEATURE_STATE, 9 | LOAD_INITIAL_FEATURES, 10 | } from './actions' 11 | import { mapValues } from 'lodash' 12 | import type { Reducer } from 'redux' 13 | import type { FeatureStates, FeatureAction, CreateReducer } from './index' 14 | 15 | import { defaultCreateReducer } from './defaults' 16 | 17 | export default function featureStatesReducer( 18 | config?: { 19 | createReducer?: CreateReducer, 20 | } = {} 21 | ): Reducer { 22 | const createReducer = config.createReducer || defaultCreateReducer 23 | return createReducer( 24 | {}, 25 | { 26 | [ADD_FEATURE]: (state, { meta: { id } }) => 27 | state[id] ? state : { ...state, [id]: 'NOT_LOADED' }, 28 | [LOAD_FEATURE]: (state, { meta: { id } }) => 29 | state[id] && state[id] !== 'LOADED' 30 | ? { ...state, [id]: 'LOADING' } 31 | : state, 32 | [INSTALL_FEATURE]: (state, { meta: { id } }) => 33 | state[id] ? { ...state, [id]: 'LOADED' } : state, 34 | [REPLACE_FEATURE]: (state, { meta: { id } }) => 35 | state[id] ? { ...state, [id]: 'NOT_LOADED' } : state, 36 | [SET_FEATURE_STATE]: (state, { payload, meta: { id } }) => 37 | state[id] ? { ...state, [id]: payload } : state, 38 | [LOAD_INITIAL_FEATURES]: (state) => 39 | mapValues(state, (fs) => (fs === 'LOADED' ? 'LOADING' : fs)), 40 | } 41 | ) 42 | } 43 | -------------------------------------------------------------------------------- /src/featuresReducer.d.ts: -------------------------------------------------------------------------------- 1 | import type { AnyAction, Dispatch, Reducer } from 'redux' 2 | import type { Features, CreateReducer } from './index' 3 | export default function featuresReducer< 4 | S = any, 5 | A extends AnyAction = AnyAction, 6 | D extends Dispatch = Dispatch 7 | >(config?: { 8 | createReducer?: CreateReducer> 9 | }): Reducer> 10 | -------------------------------------------------------------------------------- /src/featuresReducer.js: -------------------------------------------------------------------------------- 1 | // @flow 2 | 3 | import type { Reducer } from 'redux' 4 | import type { Features, FeatureAction, CreateReducer } from './index' 5 | import { ADD_FEATURE, INSTALL_FEATURE, REPLACE_FEATURE } from './actions' 6 | 7 | import { defaultCreateReducer } from './defaults' 8 | 9 | export default function featuresReducer }>( 10 | config?: { 11 | createReducer?: CreateReducer, FeatureAction>, 12 | } = {} 13 | ): Reducer, FeatureAction> { 14 | const createReducer = config.createReducer || defaultCreateReducer 15 | 16 | return createReducer( 17 | {}, 18 | { 19 | [ADD_FEATURE]: (state, { payload, meta: { id } }) => 20 | state[id] ? state : { ...state, [id]: payload }, 21 | [INSTALL_FEATURE]: (state, { payload, meta: { id } }) => ({ 22 | ...state, 23 | [id]: payload, 24 | }), 25 | [REPLACE_FEATURE]: (state, { payload, meta: { id } }) => 26 | state[id] ? { ...state, [id]: payload } : state, 27 | } 28 | ) 29 | } 30 | -------------------------------------------------------------------------------- /src/index.d.ts: -------------------------------------------------------------------------------- 1 | import featuresReducer from './featuresReducer' 2 | import featureStatesReducer from './featureStatesReducer' 3 | import featureReducersReducer from './featureReducersReducer' 4 | import loadFeatureMiddleware from './loadFeatureMiddleware' 5 | import featureMiddlewaresMiddleware from './featureMiddlewaresMiddleware' 6 | import { defaultComposeReducers } from './defaults' 7 | import { 8 | ACTION_TYPE_PREFIX, 9 | ADD_FEATURE, 10 | LOAD_FEATURE, 11 | INSTALL_FEATURE, 12 | REPLACE_FEATURE, 13 | SET_FEATURE_STATE, 14 | LOAD_INITIAL_FEATURES, 15 | addFeature, 16 | loadFeature, 17 | installFeature, 18 | replaceFeature, 19 | setFeatureState, 20 | loadInitialFeatures, 21 | AddFeatureAction, 22 | LoadFeatureAction, 23 | InstallFeatureAction, 24 | ReplaceFeatureAction, 25 | SetFeatureStateAction, 26 | LoadInitialFeaturesAction, 27 | FeatureAction, 28 | } from './actions' 29 | export { 30 | featuresReducer, 31 | featureStatesReducer, 32 | featureReducersReducer, 33 | loadFeatureMiddleware, 34 | featureMiddlewaresMiddleware, 35 | defaultComposeReducers as composeReducers, 36 | ACTION_TYPE_PREFIX, 37 | ADD_FEATURE, 38 | LOAD_FEATURE, 39 | INSTALL_FEATURE, 40 | REPLACE_FEATURE, 41 | SET_FEATURE_STATE, 42 | LOAD_INITIAL_FEATURES, 43 | addFeature, 44 | loadFeature, 45 | installFeature, 46 | replaceFeature, 47 | setFeatureState, 48 | loadInitialFeatures, 49 | AddFeatureAction, 50 | LoadFeatureAction, 51 | InstallFeatureAction, 52 | ReplaceFeatureAction, 53 | SetFeatureStateAction, 54 | LoadInitialFeaturesAction, 55 | FeatureAction, 56 | } 57 | import type { 58 | MiddlewareAPI, 59 | Reducer, 60 | Middleware, 61 | AnyAction, 62 | Dispatch, 63 | } from 'redux' 64 | 65 | export interface CreateReducer { 66 | (initialState: S, reducers: Record>): Reducer 67 | (reducers: Record>): Reducer 68 | } 69 | export type ComposeReducers = ( 70 | ...reducers: Array> 71 | ) => Reducer 72 | export type ComposeMiddleware< 73 | DispatchExt = {}, 74 | S = any, 75 | D extends Dispatch = Dispatch 76 | > = ( 77 | ...middlewares: Array> 78 | ) => Middleware 79 | export type FeatureState = 'NOT_LOADED' | 'LOADING' | 'LOADED' | Error 80 | export type FeatureStates = Record 81 | export type Feature< 82 | S = any, 83 | A extends AnyAction = AnyAction, 84 | D extends Dispatch = Dispatch 85 | > = { 86 | init?: (store: MiddlewareAPI) => any 87 | load?: (store: MiddlewareAPI) => Promise> 88 | dependencies?: Array 89 | middleware?: Middleware 90 | reducer?: Reducer 91 | } 92 | export type Features< 93 | S, 94 | A extends AnyAction = AnyAction, 95 | D extends Dispatch = Dispatch 96 | > = Record> 97 | -------------------------------------------------------------------------------- /src/index.js: -------------------------------------------------------------------------------- 1 | /* @flow */ 2 | 3 | import featuresReducer from './featuresReducer' 4 | import featureStatesReducer from './featureStatesReducer' 5 | import featureReducersReducer from './featureReducersReducer' 6 | import loadFeatureMiddleware from './loadFeatureMiddleware' 7 | import featureMiddlewaresMiddleware from './featureMiddlewaresMiddleware' 8 | import { defaultComposeReducers } from './defaults' 9 | import { 10 | ACTION_TYPE_PREFIX, 11 | ADD_FEATURE, 12 | LOAD_FEATURE, 13 | INSTALL_FEATURE, 14 | REPLACE_FEATURE, 15 | SET_FEATURE_STATE, 16 | LOAD_INITIAL_FEATURES, 17 | addFeature, 18 | loadFeature, 19 | installFeature, 20 | replaceFeature, 21 | setFeatureState, 22 | loadInitialFeatures, 23 | } from './actions' 24 | 25 | export { 26 | featuresReducer, 27 | featureStatesReducer, 28 | featureReducersReducer, 29 | loadFeatureMiddleware, 30 | featureMiddlewaresMiddleware, 31 | defaultComposeReducers as composeReducers, 32 | ACTION_TYPE_PREFIX, 33 | ADD_FEATURE, 34 | LOAD_FEATURE, 35 | INSTALL_FEATURE, 36 | REPLACE_FEATURE, 37 | SET_FEATURE_STATE, 38 | LOAD_INITIAL_FEATURES, 39 | addFeature, 40 | loadFeature, 41 | installFeature, 42 | replaceFeature, 43 | setFeatureState, 44 | loadInitialFeatures, 45 | } 46 | 47 | import type { MiddlewareAPI, Reducer, Middleware, ActionCreator } from 'redux' 48 | 49 | /* 50 | 51 | S = State 52 | A = Action 53 | 54 | */ 55 | 56 | export type ActionCreators = { [key: K]: ActionCreator } 57 | 58 | export type CreateReducer = ( }>( 59 | initialState: S, 60 | reducers: { [actionType: string]: Reducer } 61 | ) => Reducer) & 62 | ( }>(reducers: { 63 | [actionType: string]: Reducer, 64 | }) => Reducer) 65 | export type ComposeReducers = ( 66 | ...reducers: Array> 67 | ) => Reducer 68 | export type ComposeMiddleware = ( 69 | ...middlewares: Array> 70 | ) => Middleware 71 | 72 | export type FeatureState = 'NOT_LOADED' | 'LOADING' | 'LOADED' | Error 73 | export type FeatureStates = { [featureId: string]: FeatureState } 74 | 75 | export type Feature = { 76 | init?: (store: MiddlewareAPI) => any, 77 | load?: (store: MiddlewareAPI) => Promise>, 78 | dependencies?: Array, 79 | middleware?: Middleware, 80 | reducer?: Reducer, 81 | } 82 | export type Features = { [featureId: string]: Feature } 83 | 84 | export type FeatureAction = { 85 | type: string, 86 | payload?: any, 87 | meta?: { id: string }, 88 | } 89 | -------------------------------------------------------------------------------- /src/loadFeatureMiddleware.d.ts: -------------------------------------------------------------------------------- 1 | import type { Features, FeatureStates } from './index' 2 | import type { Dispatch, Middleware } from 'redux' 3 | export default function loadFeatureMiddleware< 4 | DispatchExt = {}, 5 | S = any, 6 | D extends Dispatch = Dispatch 7 | >(config?: { 8 | getFeatures?: ( 9 | state: S 10 | ) => Features[0], D> | null | undefined 11 | getFeatureStates?: (state: S) => FeatureStates | null | undefined 12 | createMiddleware?: ( 13 | middlewares: Record> 14 | ) => Middleware 15 | }): Middleware 16 | -------------------------------------------------------------------------------- /src/loadFeatureMiddleware.js: -------------------------------------------------------------------------------- 1 | // @flow 2 | 3 | import type { Feature, Features, FeatureStates, FeatureAction } from './index' 4 | import type { Middleware, MiddlewareAPI, Dispatch } from 'redux' 5 | import { 6 | ADD_FEATURE, 7 | LOAD_FEATURE, 8 | installFeature, 9 | setFeatureState, 10 | LOAD_INITIAL_FEATURES, 11 | loadFeature, 12 | } from './actions' 13 | import { defaultCreateMiddleware } from './defaults' 14 | 15 | export default function loadFeatureMiddleware }>( 16 | config?: { 17 | getFeatures?: (state: S) => ?Features, 18 | getFeatureStates?: (state: S) => ?FeatureStates, 19 | createMiddleware?: (middlewares: { 20 | [actionType: string]: Middleware, 21 | }) => Middleware, 22 | } = {} 23 | ): Middleware { 24 | const getFeatures = 25 | config.getFeatures || ((state: any) => state && state.features) 26 | const getFeatureStates = 27 | config.getFeatureStates || ((state: any) => state && state.featureStates) 28 | const createMiddleware = config.createMiddleware || defaultCreateMiddleware 29 | 30 | return createMiddleware({ 31 | [ADD_FEATURE]: 32 | (store: MiddlewareAPI) => 33 | (next: Dispatch) => 34 | (action: any): any => { 35 | const id = action.meta && action.meta.id 36 | const priorFeature = (getFeatures(store.getState()) || {})[id] 37 | const result = next(action) 38 | const feature = (getFeatures(store.getState()) || {})[id] 39 | if (!priorFeature && feature && feature.init instanceof Function) 40 | feature.init(store, id) 41 | return result 42 | }, 43 | [LOAD_FEATURE]: 44 | (store: MiddlewareAPI) => 45 | (next: Dispatch) => 46 | (action: any): any => { 47 | const id = action.meta && action.meta.id 48 | const featureStates = getFeatureStates(store.getState()) || {} 49 | 50 | next(action) 51 | 52 | const feature = (getFeatures(store.getState()) || {})[id] 53 | const featureState = featureStates[id] 54 | if (feature) { 55 | if (featureState === 'LOADED') return Promise.resolve(feature) 56 | if (!(feature.load instanceof Function)) { 57 | const error = new Error('missing load method for feature id: ' + id) 58 | store.dispatch(setFeatureState(id, error)) 59 | return Promise.reject(error) 60 | } 61 | 62 | let featurePromise 63 | try { 64 | featurePromise = feature.load(store) 65 | } catch (error) { 66 | store.dispatch(setFeatureState(id, error)) 67 | return Promise.reject(error) 68 | } 69 | const { dependencies } = feature 70 | const promises: Array>> = Array.isArray( 71 | dependencies 72 | ) 73 | ? [ 74 | ...dependencies.map( 75 | (id) => (store.dispatch(loadFeature(id)): any) 76 | ), 77 | featurePromise, 78 | ] 79 | : [featurePromise] 80 | 81 | return Promise.all(promises) 82 | .then((features: Array>): Feature => { 83 | const feature = features[features.length - 1] 84 | store.dispatch(installFeature(id, feature)) 85 | return feature 86 | }) 87 | .catch((error: Error) => { 88 | store.dispatch(setFeatureState(id, error)) 89 | throw error 90 | }) 91 | } 92 | return Promise.reject(new Error('missing feature for id: ' + id)) 93 | }, 94 | [LOAD_INITIAL_FEATURES]: 95 | (store: MiddlewareAPI) => 96 | (next: Dispatch) => 97 | (action: any): any => { 98 | const featureStates = getFeatureStates(store.getState()) || {} 99 | 100 | const initialFeatures = [] 101 | for (let id in featureStates) { 102 | if (featureStates[id] === 'LOADED') initialFeatures.push(id) 103 | } 104 | 105 | next(action) 106 | return Promise.all( 107 | initialFeatures.map((id) => store.dispatch(loadFeature(id))) 108 | ) 109 | }, 110 | }) 111 | } 112 | -------------------------------------------------------------------------------- /test/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "mocha": true 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /test/clearConsole.js: -------------------------------------------------------------------------------- 1 | /* eslint-env node */ 2 | 3 | if (process.argv.indexOf('--watch') >= 0) { 4 | before(() => process.stdout.write('\u001b[2J\u001b[1;1H\u001b[3J')) 5 | } 6 | -------------------------------------------------------------------------------- /test/featureMiddlewaresMiddlewareTest.js: -------------------------------------------------------------------------------- 1 | import featureMiddlewaresMiddleware from '../src/featureMiddlewaresMiddleware' 2 | import { createStore, applyMiddleware } from 'redux' 3 | import { composeMiddleware } from 'mindfront-redux-utils' 4 | import { expect } from 'chai' 5 | import sinon from 'sinon' 6 | 7 | describe('featureMiddlewaresMiddleware', () => { 8 | function createTestStore(initialState, config) { 9 | return createStore( 10 | (state) => state, 11 | initialState, 12 | applyMiddleware(featureMiddlewaresMiddleware(config)) 13 | ) 14 | } 15 | 16 | it('calls feature middlewares in order', () => { 17 | const s1 = sinon.spy((a) => a) 18 | const s2 = sinon.spy((a) => a) 19 | const s3 = sinon.spy((a) => a) 20 | 21 | const m1 = (store) => (next) => (action) => next(s1(action)) 22 | const m2 = (store) => (next) => (action) => next(s2(action)) 23 | const m3 = (store) => (next) => (action) => next(s3(action)) 24 | 25 | const initState = { 26 | featureStates: { 27 | a: 'LOADED', 28 | b: 'LOADED', 29 | c: 'LOADED', 30 | }, 31 | features: { 32 | a: { middleware: m1 }, 33 | b: { middleware: m2 }, 34 | c: { middleware: m3 }, 35 | d: {}, 36 | e: {}, 37 | }, 38 | } 39 | 40 | const store = createTestStore(initState) 41 | const action = { type: 'test' } 42 | store.dispatch(action) 43 | expect(s1.calledWith(action)).to.be.true 44 | expect(s2.calledWith(action)).to.be.true 45 | expect(s3.calledWith(action)).to.be.true 46 | expect(s1.calledBefore(s2)).to.be.true 47 | expect(s2.calledBefore(s3)).to.be.true 48 | 49 | const state2 = { 50 | featureStates: { 51 | a: 'LOADED', 52 | }, 53 | features: { 54 | a: { middleware: m1 }, 55 | e: {}, 56 | }, 57 | } 58 | s1.reset() 59 | s2.reset() 60 | s3.reset() 61 | const store2 = createTestStore(state2) 62 | store2.dispatch(action) 63 | expect(s1.calledWith(action)).to.be.true 64 | expect(s2.called).to.be.false 65 | expect(s3.called).to.be.false 66 | 67 | const state3 = {} 68 | s1.reset() 69 | s2.reset() 70 | s3.reset() 71 | const store3 = createTestStore(state3) 72 | store3.dispatch(action) 73 | expect(s1.called).to.be.false 74 | expect(s2.called).to.be.false 75 | expect(s3.called).to.be.false 76 | 77 | const state4 = { 78 | featureStates: { 79 | a: 'LOADED', 80 | }, 81 | features: { 82 | a: {}, 83 | }, 84 | } 85 | s1.reset() 86 | s2.reset() 87 | s3.reset() 88 | const store4 = createTestStore(state4) 89 | store4.dispatch(action) 90 | expect(s1.called).to.be.false 91 | expect(s2.called).to.be.false 92 | expect(s3.called).to.be.false 93 | }) 94 | it('supports custom getFeatures', () => { 95 | const s1 = sinon.spy((a) => a) 96 | const s2 = sinon.spy((a) => a) 97 | const s3 = sinon.spy((a) => a) 98 | 99 | const m1 = (store) => (next) => (action) => next(s1(action)) 100 | const m2 = (store) => (next) => (action) => next(s2(action)) 101 | const m3 = (store) => (next) => (action) => next(s3(action)) 102 | 103 | const initState = { 104 | theFeatureStates: { 105 | a: 'LOADED', 106 | b: 'LOADED', 107 | c: 'LOADED', 108 | }, 109 | theFeatures: { 110 | a: { middleware: m1 }, 111 | b: { middleware: m2 }, 112 | c: { middleware: m3 }, 113 | d: {}, 114 | e: {}, 115 | }, 116 | } 117 | 118 | const store = createTestStore(initState, { 119 | getFeatures: (state) => state.theFeatures, 120 | }) 121 | const action = { type: 'test' } 122 | store.dispatch(action) 123 | expect(s1.calledWith(action)).to.be.true 124 | expect(s2.calledWith(action)).to.be.true 125 | expect(s3.calledWith(action)).to.be.true 126 | expect(s1.calledBefore(s2)).to.be.true 127 | expect(s2.calledBefore(s3)).to.be.true 128 | }) 129 | it('supports custom composeMiddleware', () => { 130 | const s1 = sinon.spy((a) => a) 131 | const s2 = sinon.spy((a) => a) 132 | const s3 = sinon.spy((a) => a) 133 | 134 | const m1 = (store) => (next) => (action) => next(s1(action)) 135 | const m2 = (store) => (next) => (action) => next(s2(action)) 136 | const m3 = (store) => (next) => (action) => next(s3(action)) 137 | 138 | const initState = { 139 | featureStates: { 140 | a: 'LOADED', 141 | b: 'LOADED', 142 | c: 'LOADED', 143 | }, 144 | features: { 145 | a: { middleware: m1 }, 146 | b: { middleware: m2 }, 147 | c: { middleware: m3 }, 148 | d: {}, 149 | e: {}, 150 | }, 151 | } 152 | 153 | const cms = sinon.spy(composeMiddleware) 154 | 155 | const store = createTestStore(initState, { 156 | composeMiddleware: cms, 157 | }) 158 | const action = { type: 'test' } 159 | store.dispatch(action) 160 | expect(s1.calledWith(action)).to.be.true 161 | expect(s2.calledWith(action)).to.be.true 162 | expect(s3.calledWith(action)).to.be.true 163 | expect(s1.calledBefore(s2)).to.be.true 164 | expect(s2.calledBefore(s3)).to.be.true 165 | expect(cms.called).to.be.true 166 | }) 167 | }) 168 | -------------------------------------------------------------------------------- /test/featureReducersReducerTest.js: -------------------------------------------------------------------------------- 1 | import featureReducersReducer from '../src/featureReducersReducer' 2 | import { expect } from 'chai' 3 | import sinon from 'sinon' 4 | import { composeReducers } from 'mindfront-redux-utils' 5 | 6 | describe('featureReducersReducer', () => { 7 | const reducer = featureReducersReducer() 8 | 9 | it('calls feature reducers in order', () => { 10 | const r1 = sinon.spy((state, action) => 11 | action.type[0] === 'a' ? { ...state, a: 1 } : state 12 | ) 13 | const r2 = sinon.spy((state, action) => 14 | action.type[1] === 'b' ? { ...state, b: 2 } : state 15 | ) 16 | const r3 = sinon.spy((state, action) => 17 | action.type[2] === 'c' ? { ...state, c: 3 } : state 18 | ) 19 | 20 | const initState = { 21 | featureStates: { 22 | a: 'LOADED', 23 | b: 'LOADED', 24 | c: 'LOADED', 25 | }, 26 | features: { 27 | a: { reducer: r1 }, 28 | b: { reducer: r2 }, 29 | c: { reducer: r3 }, 30 | d: {}, 31 | e: {}, 32 | }, 33 | } 34 | 35 | expect(reducer(initState, { type: 'abc' })).to.deep.equal({ 36 | ...initState, 37 | a: 1, 38 | b: 2, 39 | c: 3, 40 | }) 41 | expect(reducer(initState, { type: '....' })).to.deep.equal(initState) 42 | expect(r1.calledBefore(r2)).to.be.true 43 | expect(r2.calledBefore(r3)).to.be.true 44 | 45 | const state2 = { 46 | featureStates: { 47 | a: 'LOADED', 48 | }, 49 | features: { 50 | a: { reducer: r1 }, 51 | e: {}, 52 | }, 53 | } 54 | expect(reducer(state2, { type: 'abc' })).to.deep.equal({ ...state2, a: 1 }) 55 | 56 | const state3 = {} 57 | expect(reducer(state3, { type: 'abc' })).to.deep.equal(state3) 58 | 59 | const state4 = { 60 | featureStates: { 61 | a: 'LOADED', 62 | }, 63 | features: { 64 | a: {}, 65 | }, 66 | } 67 | expect(reducer(state4, { type: 'abc' })).to.deep.equal(state4) 68 | }) 69 | it('supports custom getFeatures', () => { 70 | const reducer = featureReducersReducer({ 71 | getFeatures: (state) => state.theFeatures, 72 | }) 73 | 74 | const r1 = sinon.spy((state, action) => 75 | action.type[0] === 'a' ? { ...state, a: 1 } : state 76 | ) 77 | const r2 = sinon.spy((state, action) => 78 | action.type[1] === 'b' ? { ...state, b: 2 } : state 79 | ) 80 | const r3 = sinon.spy((state, action) => 81 | action.type[2] === 'c' ? { ...state, c: 3 } : state 82 | ) 83 | 84 | const initState = { 85 | featureStates: { 86 | a: 'LOADED', 87 | b: 'LOADED', 88 | c: 'LOADED', 89 | }, 90 | theFeatures: { 91 | a: { reducer: r1 }, 92 | b: { reducer: r2 }, 93 | c: { reducer: r3 }, 94 | d: {}, 95 | e: {}, 96 | }, 97 | } 98 | 99 | expect(reducer(initState, { type: 'abc' })).to.deep.equal({ 100 | ...initState, 101 | a: 1, 102 | b: 2, 103 | c: 3, 104 | }) 105 | expect(reducer(initState, { type: '....' })).to.deep.equal(initState) 106 | expect(r1.calledBefore(r2)).to.be.true 107 | expect(r2.calledBefore(r3)).to.be.true 108 | }) 109 | it('supports custom composeReducers', () => { 110 | const compose = sinon.spy(composeReducers) 111 | const reducer = featureReducersReducer({ composeReducers: compose }) 112 | 113 | const r1 = sinon.spy((state, action) => 114 | action.type[0] === 'a' ? { ...state, a: 1 } : state 115 | ) 116 | const r2 = sinon.spy((state, action) => 117 | action.type[1] === 'b' ? { ...state, b: 2 } : state 118 | ) 119 | const r3 = sinon.spy((state, action) => 120 | action.type[2] === 'c' ? { ...state, c: 3 } : state 121 | ) 122 | 123 | const initState = { 124 | featureStates: { 125 | a: 'LOADED', 126 | b: 'LOADED', 127 | c: 'LOADED', 128 | }, 129 | features: { 130 | a: { reducer: r1 }, 131 | b: { reducer: r2 }, 132 | c: { reducer: r3 }, 133 | d: {}, 134 | e: {}, 135 | }, 136 | } 137 | 138 | expect(reducer(initState, { type: 'abc' })).to.deep.equal({ 139 | ...initState, 140 | a: 1, 141 | b: 2, 142 | c: 3, 143 | }) 144 | expect(reducer(initState, { type: '....' })).to.deep.equal(initState) 145 | expect(r1.calledBefore(r2)).to.be.true 146 | expect(r2.calledBefore(r3)).to.be.true 147 | 148 | expect(compose.called).to.be.true 149 | }) 150 | }) 151 | -------------------------------------------------------------------------------- /test/featureStatesReducerTest.js: -------------------------------------------------------------------------------- 1 | import featureStatesReducer from '../src/featureStatesReducer' 2 | import { expect } from 'chai' 3 | import { createReducer } from 'mindfront-redux-utils' 4 | import { 5 | addFeature, 6 | loadFeature, 7 | installFeature, 8 | replaceFeature, 9 | setFeatureState, 10 | loadInitialFeatures, 11 | } from '../src/actions' 12 | 13 | describe('featureStatesReducer', () => { 14 | const reducer = featureStatesReducer() 15 | it('defaults initial state to empty object', () => { 16 | expect(reducer(undefined, {})).to.deep.equal({}) 17 | }) 18 | it('supports custom createReducer', () => { 19 | const reducer = featureStatesReducer({ 20 | createReducer, 21 | }) 22 | expect(reducer.actionHandlers).to.exist 23 | }) 24 | it('handles addFeature correctly', () => { 25 | expect(reducer({}, addFeature('a', {}))).to.deep.equal({ a: 'NOT_LOADED' }) 26 | expect(reducer({ a: 'LOADING' }, addFeature('a', {}))).to.deep.equal({ 27 | a: 'LOADING', 28 | }) 29 | expect(reducer({ a: 'LOADED' }, addFeature('a', {}))).to.deep.equal({ 30 | a: 'LOADED', 31 | }) 32 | }) 33 | it('handles loadFeature correctly', () => { 34 | expect(reducer({}, loadFeature('a', {}))).to.deep.equal({}) 35 | expect(reducer({ a: 'NOT_LOADED' }, loadFeature('a', {}))).to.deep.equal({ 36 | a: 'LOADING', 37 | }) 38 | expect( 39 | reducer({ a: new Error('test') }, loadFeature('a', {})) 40 | ).to.deep.equal({ a: 'LOADING' }) 41 | expect(reducer({ a: 'LOADED' }, loadFeature('a', {}))).to.deep.equal({ 42 | a: 'LOADED', 43 | }) 44 | }) 45 | it('handles installFeature correctly', () => { 46 | expect(reducer({}, installFeature('a', {}))).to.deep.equal({}) 47 | expect(reducer({ a: 'NOT_LOADED' }, installFeature('a', {}))).to.deep.equal( 48 | { a: 'LOADED' } 49 | ) 50 | expect(reducer({ a: 'LOADING' }, installFeature('a', {}))).to.deep.equal({ 51 | a: 'LOADED', 52 | }) 53 | }) 54 | it('handles replaceFeature correctly', () => { 55 | expect(reducer({}, replaceFeature('a', {}))).to.deep.equal({}) 56 | expect(reducer({ a: 'NOT_LOADED' }, replaceFeature('a', {}))).to.deep.equal( 57 | { a: 'NOT_LOADED' } 58 | ) 59 | expect(reducer({ a: 'LOADED' }, replaceFeature('a', {}))).to.deep.equal({ 60 | a: 'NOT_LOADED', 61 | }) 62 | }) 63 | it('handles setFeatureState correctly', () => { 64 | expect(reducer({}, setFeatureState('a', 'LOADING'))).to.deep.equal({}) 65 | expect( 66 | reducer({ a: 'NOT_LOADED' }, setFeatureState('a', 'LOADING')) 67 | ).to.deep.equal({ a: 'LOADING' }) 68 | expect( 69 | reducer({ a: 'LOADED' }, setFeatureState('a', 'LOADING')) 70 | ).to.deep.equal({ a: 'LOADING' }) 71 | }) 72 | it('handles loadInitialFeatures correctly', () => { 73 | expect(reducer({}, loadInitialFeatures())).to.deep.equal({}) 74 | expect( 75 | reducer( 76 | { a: 'NOT_LOADED', b: 'LOADING', c: 'LOADED' }, 77 | loadInitialFeatures() 78 | ) 79 | ).to.deep.equal({ 80 | a: 'NOT_LOADED', 81 | b: 'LOADING', 82 | c: 'LOADING', 83 | }) 84 | }) 85 | }) 86 | -------------------------------------------------------------------------------- /test/featuresReducerTest.js: -------------------------------------------------------------------------------- 1 | import featuresReducer from '../src/featuresReducer' 2 | import { expect } from 'chai' 3 | import { createReducer } from 'mindfront-redux-utils' 4 | import { addFeature, installFeature, replaceFeature } from '../src/actions' 5 | 6 | describe('featuresReducer', () => { 7 | const reducer = featuresReducer() 8 | it('defaults initial state to empty object', () => { 9 | expect(reducer(undefined, {})).to.deep.equal({}) 10 | }) 11 | it('supports custom createReducer', () => { 12 | const reducer = featuresReducer({ 13 | createReducer, 14 | }) 15 | expect(reducer.actionHandlers).to.exist 16 | }) 17 | it('handles addFeature correctly', () => { 18 | expect(reducer({}, addFeature('a', { hello: 'world' }))).to.deep.equal({ 19 | a: { hello: 'world' }, 20 | }) 21 | expect( 22 | reducer({ b: { test: 1 } }, addFeature('a', { hello: 'world' })) 23 | ).to.deep.equal({ b: { test: 1 }, a: { hello: 'world' } }) 24 | expect( 25 | reducer({ a: { hello: 'world' } }, addFeature('a', { a: 1 })) 26 | ).to.deep.equal({ a: { hello: 'world' } }) 27 | }) 28 | it('handles installFeature correctly', () => { 29 | expect(reducer({}, installFeature('a', { hello: 'world' }))).to.deep.equal({ 30 | a: { hello: 'world' }, 31 | }) 32 | expect( 33 | reducer({ b: { test: 1 } }, installFeature('a', { hello: 'world' })) 34 | ).to.deep.equal({ b: { test: 1 }, a: { hello: 'world' } }) 35 | expect( 36 | reducer({ a: { hello: 'world' } }, installFeature('a', { a: 1 })) 37 | ).to.deep.equal({ a: { a: 1 } }) 38 | }) 39 | it('handles replaceFeature correctly', () => { 40 | expect(reducer({}, replaceFeature('a', {}))).to.deep.equal({}) 41 | expect(reducer({ b: { test: 1 } }, replaceFeature('a', {}))).to.deep.equal({ 42 | b: { test: 1 }, 43 | }) 44 | expect( 45 | reducer({ a: { hello: 'world' } }, replaceFeature('a', { a: 1 })) 46 | ).to.deep.equal({ a: { a: 1 } }) 47 | }) 48 | }) 49 | -------------------------------------------------------------------------------- /test/typecheck.js: -------------------------------------------------------------------------------- 1 | // @flow 2 | 3 | import type { Features, FeatureStates, FeatureAction } from '../src/index' 4 | import { 5 | composeReducers, 6 | featuresReducer, 7 | featureStatesReducer, 8 | featureReducersReducer, 9 | loadFeatureMiddleware, 10 | featureMiddlewaresMiddleware, 11 | addFeature, 12 | } from '../src' 13 | import { combineReducers, createStore, applyMiddleware } from 'redux' 14 | import type { Store, Reducer } from 'redux' 15 | 16 | type Action = 17 | | { 18 | type: string, 19 | payload?: any, 20 | meta?: Object, 21 | error?: boolean, 22 | } 23 | | FeatureAction 24 | 25 | type State = { 26 | features: Features, 27 | featureStates: FeatureStates, 28 | } 29 | 30 | const reducer: Reducer = composeReducers( 31 | combineReducers({ 32 | features: featuresReducer(), 33 | featureStates: featureStatesReducer(), 34 | }), 35 | featureReducersReducer() 36 | ) 37 | 38 | const store: Store = createStore( 39 | reducer, 40 | applyMiddleware(loadFeatureMiddleware(), featureMiddlewaresMiddleware()) 41 | ) 42 | 43 | const feature = { 44 | reducer: (state: State | void, action: Action) => state, 45 | } 46 | store.dispatch(addFeature('test', feature)) 47 | -------------------------------------------------------------------------------- /test/typecheck.ts: -------------------------------------------------------------------------------- 1 | import type { 2 | Features, 3 | FeatureStates, 4 | FeatureAction, 5 | Feature, 6 | } from '../src/index' 7 | import { 8 | composeReducers, 9 | featuresReducer, 10 | featureStatesReducer, 11 | featureReducersReducer, 12 | loadFeatureMiddleware, 13 | featureMiddlewaresMiddleware, 14 | addFeature, 15 | } from '../src' 16 | import { combineReducers, createStore, applyMiddleware } from 'redux' 17 | import type { Store, Reducer } from 'redux' 18 | type Action = 19 | | { 20 | type: string 21 | payload?: any 22 | meta?: any 23 | error?: boolean 24 | } 25 | | FeatureAction 26 | type State = { 27 | features: Features 28 | featureStates: FeatureStates 29 | } 30 | const reducer: Reducer = composeReducers( 31 | combineReducers({ 32 | features: featuresReducer(), 33 | featureStates: featureStatesReducer(), 34 | }), 35 | featureReducersReducer() 36 | ) 37 | const store: Store = createStore( 38 | reducer, 39 | applyMiddleware(loadFeatureMiddleware(), featureMiddlewaresMiddleware()) 40 | ) 41 | const feature: Feature = { 42 | // eslint-disable-next-line no-unused-vars 43 | reducer: (state: State | undefined, action: Action) => 44 | state || { features: {}, featureStates: {} }, 45 | } 46 | store.dispatch(addFeature('test', feature)) 47 | -------------------------------------------------------------------------------- /toolchain.config.cjs: -------------------------------------------------------------------------------- 1 | /* eslint-env node, es2018 */ 2 | module.exports = { 3 | cjsBabelEnv: { forceAllTransforms: true }, 4 | outputEsm: false, 5 | } 6 | -------------------------------------------------------------------------------- /tsconfig.build.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "./tsconfig.json", 3 | "include": ["./src"], 4 | "exclude": ["node_modules", "./src/**/*.spec.ts", "./test"], 5 | "compilerOptions": { 6 | "outDir": "./dist", 7 | "declaration": true, 8 | "noEmit": false, 9 | "emitDeclarationOnly": true 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "./node_modules/@jcoreio/toolchain-typescript/tsconfig.json", 3 | "include": ["./src"], 4 | "exclude": ["node_modules"], 5 | "compilerOptions": { 6 | "skipLibCheck": false 7 | } 8 | } 9 | --------------------------------------------------------------------------------