├── .babelrc ├── .editorconfig ├── .eslintignore ├── .eslintrc ├── .flowconfig ├── .gitignore ├── PWA-test.json ├── README.md ├── assets ├── 144.png ├── 192.png └── 96.png ├── flow-typed └── npm │ ├── autoprefixer_vx.x.x.js │ ├── axios_v0.15.x.js │ ├── axios_v0.16.x.js │ ├── babel-core_vx.x.x.js │ ├── babel-jest_vx.x.x.js │ ├── babel-loader_vx.x.x.js │ ├── babel-plugin-syntax-dynamic-import_vx.x.x.js │ ├── babel-plugin-syntax-flow_vx.x.x.js │ ├── babel-plugin-transform-decorators-legacy_vx.x.x.js │ ├── babel-plugin-transform-flow-strip-types_vx.x.x.js │ ├── babel-plugin-transform-object-rest-spread_vx.x.x.js │ ├── babel-polyfill_vx.x.x.js │ ├── babel-preset-env_vx.x.x.js │ ├── babel-preset-es2015_vx.x.x.js │ ├── babel-preset-react_vx.x.x.js │ ├── babel-preset-stage-0_vx.x.x.js │ ├── babel-register_vx.x.x.js │ ├── body-parser_vx.x.x.js │ ├── chunk-manifest-webpack-plugin_vx.x.x.js │ ├── compression_vx.x.x.js │ ├── copy-webpack-plugin_vx.x.x.js │ ├── cross-env_vx.x.x.js │ ├── css-loader_vx.x.x.js │ ├── dotenv_vx.x.x.js │ ├── enzyme_v2.3.x.js │ ├── eslint-config-equimper_vx.x.x.js │ ├── eslint_vx.x.x.js │ ├── express_v4.x.x.js │ ├── extract-text-webpack-plugin_vx.x.x.js │ ├── file-loader_vx.x.x.js │ ├── flow-bin_v0.x.x.js │ ├── flow-typed_vx.x.x.js │ ├── html-webpack-plugin_vx.x.x.js │ ├── image-webpack-loader_vx.x.x.js │ ├── jest_v19.x.x.js │ ├── mongoose_vx.x.x.js │ ├── morgan_vx.x.x.js │ ├── nodemon_vx.x.x.js │ ├── normalize.css_vx.x.x.js │ ├── offline-plugin_vx.x.x.js │ ├── postcss-loader_vx.x.x.js │ ├── react-addons-test-utils_v15.x.x.js │ ├── react-hot-loader_vx.x.x.js │ ├── react-redux_v5.x.x.js │ ├── react-router_vx.x.x.js │ ├── redbox-react_vx.x.x.js │ ├── redux-logger_vx.x.x.js │ ├── redux-thunk_vx.x.x.js │ ├── redux_v3.x.x.js │ ├── reselect_v2.x.x.js │ ├── reselect_v3.x.x.js │ ├── rimraf_vx.x.x.js │ ├── style-loader_vx.x.x.js │ ├── styled-components_v1.4.x.js │ ├── supertest_vx.x.x.js │ ├── sw-precache-webpack-plugin_vx.x.x.js │ ├── url-loader_vx.x.x.js │ ├── validator_vx.x.x.js │ ├── webpack-bundle-analyzer_vx.x.x.js │ ├── webpack-dashboard_vx.x.x.js │ ├── webpack-dev-server_vx.x.x.js │ └── webpack_vx.x.x.js ├── nodemon.json ├── package.json ├── server ├── .babelrc ├── config │ ├── db.js │ ├── index.js │ └── middlewares.js ├── index.js ├── modules │ ├── index.js │ └── posts │ │ ├── controller.js │ │ ├── index.js │ │ ├── model.js │ │ └── routes.js └── postman │ └── Thinkful-Medium.postman_collection.json ├── src ├── Root.js ├── Routes.js ├── __test__ │ └── layout │ │ └── App.test.js ├── components │ ├── Button.js │ ├── Card.js │ ├── ContainerFluidCenter.js │ ├── LoadingScreen.js │ └── Title.js ├── helpers │ └── api.js ├── index.html ├── index.js ├── layout │ └── App.js ├── manifest.json ├── modules │ └── posts │ │ ├── Posts.js │ │ ├── SinglePost.js │ │ ├── actions.js │ │ ├── actions.test.js │ │ ├── actionsTypes.js │ │ ├── reducer.js │ │ └── single_post_selector.js ├── redux │ ├── reducers.js │ └── store.js ├── styles │ └── styles.css └── types │ ├── Action.js │ ├── Data.js │ ├── State.js │ └── Store.js ├── webpack.dev.config.js ├── webpack.prod.config.js └── yarn.lock /.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "presets": [["es2015", {"modules": false}], "react", "stage-0"], 3 | "plugins": [ 4 | "react-hot-loader/babel", 5 | "transform-decorators-legacy", 6 | "syntax-flow", 7 | "transform-flow-strip-types", 8 | "syntax-dynamic-import" 9 | ], 10 | "env": { 11 | "test": { 12 | "presets": ["es2015", "react", "stage-0"] 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | indent_style = space 5 | indent_size = 2 6 | end_of_line = lf 7 | charset = utf-8 8 | trim_trailing_whitespace = true 9 | insert_final_newline = true 10 | 11 | [*.md] 12 | trim_trailing_whitespace = true 13 | -------------------------------------------------------------------------------- /.eslintignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | flow-typed/ 3 | -------------------------------------------------------------------------------- /.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "equimper" 3 | } 4 | -------------------------------------------------------------------------------- /.flowconfig: -------------------------------------------------------------------------------- 1 | [ignore] 2 | .*/node_modules/.* 3 | .*/flow-typed/.* 4 | .*/coverage/.* 5 | [include] 6 | 7 | [libs] 8 | 9 | [options] 10 | esproposal.decorators=ignore 11 | esproposal.class_static_fields=enable 12 | esproposal.class_instance_fields=enable 13 | unsafe.enable_getters_and_setters=true 14 | suppress_comment= \\(.\\|\n\\)*\\$FlowFixMe 15 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | .vscode/ 3 | coverage/ 4 | .env 5 | dist/ 6 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ## Stack 2 | 3 | - React 4 | - Redux 5 | - MongoDB 6 | - Node.JS 7 | - Webpack2 8 | - FlowTypes 9 | - Styled-Component 10 | - Service-Worker 11 | - App Caching 12 | 13 | ## PWA TEST 14 | 15 | ![](http://i.imgur.com/8UCFean.png) 16 | 17 | The test link https://googlechrome.github.io/lighthouse/viewer/?gist=66a00c9974e7b3bb4ba1fed1cf0c07cf 18 | 19 | ## Theme Color on Chrome for Android 20 | 21 | ![](http://i.imgur.com/22FS2Y4l.png) 22 | 23 | ## Code splitting with React-Router 24 | 25 | ```js 26 | const componentRoutes = { 27 | component: App, 28 | path: '/', 29 | childRoutes: [ 30 | { 31 | path: '/posts', 32 | async getComponent(location: string, cb: Function) { 33 | try { 34 | const module = await import('./modules/posts/Posts'); 35 | cb(null, module.default); 36 | } catch (e) { 37 | errorLoading(e); 38 | } 39 | } 40 | }, 41 | { 42 | path: '/posts/:id', 43 | async getComponent(location: string, cb: Function) { 44 | try { 45 | const module = await import('./modules/posts/SinglePost'); 46 | cb(null, module.default); 47 | } catch (e) { 48 | errorLoading(e); 49 | } 50 | } 51 | } 52 | ] 53 | }; 54 | ``` 55 | 56 | ## Service Worker 57 | 58 | ```js 59 | if (process.env.NODE_ENV === 'production') { 60 | (() => { 61 | if ('serviceWorker' in navigator) { 62 | navigator.serviceWorker.register('/service-worker.js'); 63 | } 64 | })(); 65 | require('offline-plugin/runtime').install(); 66 | } 67 | ``` 68 | 69 | ## Styled-Component 70 | 71 | ```js 72 | import styled from 'styled-components'; 73 | 74 | const Card = styled.div` 75 | height: 400px; 76 | width: 300px; 77 | background-color: #fff; 78 | cursor: pointer; 79 | `; 80 | 81 | export default Card; 82 | ``` 83 | 84 | ## FlowTypes 85 | 86 | ```js 87 | /** @flow */ 88 | import type { Post } from './Data'; 89 | 90 | // POSTS 91 | type FetchPostAction = { 92 | type: 'FETCH_SINGLE_POST', 93 | post: Post 94 | } 95 | 96 | type FetchAllPostsAction = { 97 | type: 'FETCH_ALL_POSTS', 98 | posts: Array 99 | } 100 | 101 | type FetchSinglePostErrorAction = { 102 | type: 'FETCH_SINGLE_POST_ERROR' 103 | } 104 | 105 | type SelectPostAction = { 106 | type: 'SELECTED_POST', 107 | id: string 108 | } 109 | 110 | export type Action = 111 | | FetchPostAction 112 | | FetchAllPostsAction 113 | | FetchSinglePostErrorAction 114 | | SelectPostAction 115 | ``` 116 | 117 | https://thinkful-workshop-webpack2-node-react.now.sh/ 118 | 119 | ## Want to play with ? 120 | 121 | 1. Clone the repos 122 | 2. `npm i` or `yarn` 123 | 3. `npm run dev:s` or `yarn dev:s` for start the server 124 | 4. `npm run dev:c` or `yarn dev:c` for start the client 125 | 5. `localhost:9000` gonna open in your browser by webpack 126 | 127 | ## FlowTypes 128 | 129 | When install new packages just run `flow-typed install` 130 | 131 | ## Deploy 132 | 133 | For deploy I'm using [Now from Zeit](https://zeit.co/now) Who provided free hosting with HTTP2. I'm using a variables for the mongodb hosting. For set yours just 134 | 135 | ``` 136 | now secret add mongodb 137 | ``` 138 | 139 | Inside the `packages.json` I have alias this is for change the name from now. 140 | 141 | Just run `yarn deploy` or `npm run deploy` 142 | 143 | ## TODO 144 | 145 | - [x] Change webpack code splitting System.import for import() 146 | - [x] Add service worker 147 | - [x] Add offline caching 148 | - [ ] Get smaller bundle 149 | -------------------------------------------------------------------------------- /assets/144.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EQuimper/thinkful-workshop-react-redux-node-mongodb-webpack2/cf1365a93c6a0ff360bf888dd630a413f18ec350/assets/144.png -------------------------------------------------------------------------------- /assets/192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EQuimper/thinkful-workshop-react-redux-node-mongodb-webpack2/cf1365a93c6a0ff360bf888dd630a413f18ec350/assets/192.png -------------------------------------------------------------------------------- /assets/96.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EQuimper/thinkful-workshop-react-redux-node-mongodb-webpack2/cf1365a93c6a0ff360bf888dd630a413f18ec350/assets/96.png -------------------------------------------------------------------------------- /flow-typed/npm/autoprefixer_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: ac8e760ca173c2e0875d83ee8e8183d1 2 | // flow-typed version: <>/autoprefixer_v^6.7.7/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'autoprefixer' 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 'autoprefixer' { 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 'autoprefixer/data/prefixes' { 26 | declare module.exports: any; 27 | } 28 | 29 | declare module 'autoprefixer/lib/at-rule' { 30 | declare module.exports: any; 31 | } 32 | 33 | declare module 'autoprefixer/lib/autoprefixer' { 34 | declare module.exports: any; 35 | } 36 | 37 | declare module 'autoprefixer/lib/brackets' { 38 | declare module.exports: any; 39 | } 40 | 41 | declare module 'autoprefixer/lib/browsers' { 42 | declare module.exports: any; 43 | } 44 | 45 | declare module 'autoprefixer/lib/declaration' { 46 | declare module.exports: any; 47 | } 48 | 49 | declare module 'autoprefixer/lib/hacks/align-content' { 50 | declare module.exports: any; 51 | } 52 | 53 | declare module 'autoprefixer/lib/hacks/align-items' { 54 | declare module.exports: any; 55 | } 56 | 57 | declare module 'autoprefixer/lib/hacks/align-self' { 58 | declare module.exports: any; 59 | } 60 | 61 | declare module 'autoprefixer/lib/hacks/background-size' { 62 | declare module.exports: any; 63 | } 64 | 65 | declare module 'autoprefixer/lib/hacks/block-logical' { 66 | declare module.exports: any; 67 | } 68 | 69 | declare module 'autoprefixer/lib/hacks/border-image' { 70 | declare module.exports: any; 71 | } 72 | 73 | declare module 'autoprefixer/lib/hacks/border-radius' { 74 | declare module.exports: any; 75 | } 76 | 77 | declare module 'autoprefixer/lib/hacks/break-props' { 78 | declare module.exports: any; 79 | } 80 | 81 | declare module 'autoprefixer/lib/hacks/cross-fade' { 82 | declare module.exports: any; 83 | } 84 | 85 | declare module 'autoprefixer/lib/hacks/display-flex' { 86 | declare module.exports: any; 87 | } 88 | 89 | declare module 'autoprefixer/lib/hacks/display-grid' { 90 | declare module.exports: any; 91 | } 92 | 93 | declare module 'autoprefixer/lib/hacks/filter-value' { 94 | declare module.exports: any; 95 | } 96 | 97 | declare module 'autoprefixer/lib/hacks/filter' { 98 | declare module.exports: any; 99 | } 100 | 101 | declare module 'autoprefixer/lib/hacks/flex-basis' { 102 | declare module.exports: any; 103 | } 104 | 105 | declare module 'autoprefixer/lib/hacks/flex-direction' { 106 | declare module.exports: any; 107 | } 108 | 109 | declare module 'autoprefixer/lib/hacks/flex-flow' { 110 | declare module.exports: any; 111 | } 112 | 113 | declare module 'autoprefixer/lib/hacks/flex-grow' { 114 | declare module.exports: any; 115 | } 116 | 117 | declare module 'autoprefixer/lib/hacks/flex-shrink' { 118 | declare module.exports: any; 119 | } 120 | 121 | declare module 'autoprefixer/lib/hacks/flex-spec' { 122 | declare module.exports: any; 123 | } 124 | 125 | declare module 'autoprefixer/lib/hacks/flex-values' { 126 | declare module.exports: any; 127 | } 128 | 129 | declare module 'autoprefixer/lib/hacks/flex-wrap' { 130 | declare module.exports: any; 131 | } 132 | 133 | declare module 'autoprefixer/lib/hacks/flex' { 134 | declare module.exports: any; 135 | } 136 | 137 | declare module 'autoprefixer/lib/hacks/fullscreen' { 138 | declare module.exports: any; 139 | } 140 | 141 | declare module 'autoprefixer/lib/hacks/gradient' { 142 | declare module.exports: any; 143 | } 144 | 145 | declare module 'autoprefixer/lib/hacks/grid-end' { 146 | declare module.exports: any; 147 | } 148 | 149 | declare module 'autoprefixer/lib/hacks/grid-row-align' { 150 | declare module.exports: any; 151 | } 152 | 153 | declare module 'autoprefixer/lib/hacks/grid-start' { 154 | declare module.exports: any; 155 | } 156 | 157 | declare module 'autoprefixer/lib/hacks/grid-template' { 158 | declare module.exports: any; 159 | } 160 | 161 | declare module 'autoprefixer/lib/hacks/image-rendering' { 162 | declare module.exports: any; 163 | } 164 | 165 | declare module 'autoprefixer/lib/hacks/image-set' { 166 | declare module.exports: any; 167 | } 168 | 169 | declare module 'autoprefixer/lib/hacks/inline-logical' { 170 | declare module.exports: any; 171 | } 172 | 173 | declare module 'autoprefixer/lib/hacks/justify-content' { 174 | declare module.exports: any; 175 | } 176 | 177 | declare module 'autoprefixer/lib/hacks/justify-items' { 178 | declare module.exports: any; 179 | } 180 | 181 | declare module 'autoprefixer/lib/hacks/mask-border' { 182 | declare module.exports: any; 183 | } 184 | 185 | declare module 'autoprefixer/lib/hacks/order' { 186 | declare module.exports: any; 187 | } 188 | 189 | declare module 'autoprefixer/lib/hacks/pixelated' { 190 | declare module.exports: any; 191 | } 192 | 193 | declare module 'autoprefixer/lib/hacks/placeholder' { 194 | declare module.exports: any; 195 | } 196 | 197 | declare module 'autoprefixer/lib/hacks/stretch' { 198 | declare module.exports: any; 199 | } 200 | 201 | declare module 'autoprefixer/lib/hacks/text-emphasis-position' { 202 | declare module.exports: any; 203 | } 204 | 205 | declare module 'autoprefixer/lib/hacks/transform-decl' { 206 | declare module.exports: any; 207 | } 208 | 209 | declare module 'autoprefixer/lib/hacks/writing-mode' { 210 | declare module.exports: any; 211 | } 212 | 213 | declare module 'autoprefixer/lib/info' { 214 | declare module.exports: any; 215 | } 216 | 217 | declare module 'autoprefixer/lib/old-selector' { 218 | declare module.exports: any; 219 | } 220 | 221 | declare module 'autoprefixer/lib/old-value' { 222 | declare module.exports: any; 223 | } 224 | 225 | declare module 'autoprefixer/lib/prefixer' { 226 | declare module.exports: any; 227 | } 228 | 229 | declare module 'autoprefixer/lib/prefixes' { 230 | declare module.exports: any; 231 | } 232 | 233 | declare module 'autoprefixer/lib/processor' { 234 | declare module.exports: any; 235 | } 236 | 237 | declare module 'autoprefixer/lib/resolution' { 238 | declare module.exports: any; 239 | } 240 | 241 | declare module 'autoprefixer/lib/selector' { 242 | declare module.exports: any; 243 | } 244 | 245 | declare module 'autoprefixer/lib/supports' { 246 | declare module.exports: any; 247 | } 248 | 249 | declare module 'autoprefixer/lib/transition' { 250 | declare module.exports: any; 251 | } 252 | 253 | declare module 'autoprefixer/lib/utils' { 254 | declare module.exports: any; 255 | } 256 | 257 | declare module 'autoprefixer/lib/value' { 258 | declare module.exports: any; 259 | } 260 | 261 | // Filename aliases 262 | declare module 'autoprefixer/data/prefixes.js' { 263 | declare module.exports: $Exports<'autoprefixer/data/prefixes'>; 264 | } 265 | declare module 'autoprefixer/lib/at-rule.js' { 266 | declare module.exports: $Exports<'autoprefixer/lib/at-rule'>; 267 | } 268 | declare module 'autoprefixer/lib/autoprefixer.js' { 269 | declare module.exports: $Exports<'autoprefixer/lib/autoprefixer'>; 270 | } 271 | declare module 'autoprefixer/lib/brackets.js' { 272 | declare module.exports: $Exports<'autoprefixer/lib/brackets'>; 273 | } 274 | declare module 'autoprefixer/lib/browsers.js' { 275 | declare module.exports: $Exports<'autoprefixer/lib/browsers'>; 276 | } 277 | declare module 'autoprefixer/lib/declaration.js' { 278 | declare module.exports: $Exports<'autoprefixer/lib/declaration'>; 279 | } 280 | declare module 'autoprefixer/lib/hacks/align-content.js' { 281 | declare module.exports: $Exports<'autoprefixer/lib/hacks/align-content'>; 282 | } 283 | declare module 'autoprefixer/lib/hacks/align-items.js' { 284 | declare module.exports: $Exports<'autoprefixer/lib/hacks/align-items'>; 285 | } 286 | declare module 'autoprefixer/lib/hacks/align-self.js' { 287 | declare module.exports: $Exports<'autoprefixer/lib/hacks/align-self'>; 288 | } 289 | declare module 'autoprefixer/lib/hacks/background-size.js' { 290 | declare module.exports: $Exports<'autoprefixer/lib/hacks/background-size'>; 291 | } 292 | declare module 'autoprefixer/lib/hacks/block-logical.js' { 293 | declare module.exports: $Exports<'autoprefixer/lib/hacks/block-logical'>; 294 | } 295 | declare module 'autoprefixer/lib/hacks/border-image.js' { 296 | declare module.exports: $Exports<'autoprefixer/lib/hacks/border-image'>; 297 | } 298 | declare module 'autoprefixer/lib/hacks/border-radius.js' { 299 | declare module.exports: $Exports<'autoprefixer/lib/hacks/border-radius'>; 300 | } 301 | declare module 'autoprefixer/lib/hacks/break-props.js' { 302 | declare module.exports: $Exports<'autoprefixer/lib/hacks/break-props'>; 303 | } 304 | declare module 'autoprefixer/lib/hacks/cross-fade.js' { 305 | declare module.exports: $Exports<'autoprefixer/lib/hacks/cross-fade'>; 306 | } 307 | declare module 'autoprefixer/lib/hacks/display-flex.js' { 308 | declare module.exports: $Exports<'autoprefixer/lib/hacks/display-flex'>; 309 | } 310 | declare module 'autoprefixer/lib/hacks/display-grid.js' { 311 | declare module.exports: $Exports<'autoprefixer/lib/hacks/display-grid'>; 312 | } 313 | declare module 'autoprefixer/lib/hacks/filter-value.js' { 314 | declare module.exports: $Exports<'autoprefixer/lib/hacks/filter-value'>; 315 | } 316 | declare module 'autoprefixer/lib/hacks/filter.js' { 317 | declare module.exports: $Exports<'autoprefixer/lib/hacks/filter'>; 318 | } 319 | declare module 'autoprefixer/lib/hacks/flex-basis.js' { 320 | declare module.exports: $Exports<'autoprefixer/lib/hacks/flex-basis'>; 321 | } 322 | declare module 'autoprefixer/lib/hacks/flex-direction.js' { 323 | declare module.exports: $Exports<'autoprefixer/lib/hacks/flex-direction'>; 324 | } 325 | declare module 'autoprefixer/lib/hacks/flex-flow.js' { 326 | declare module.exports: $Exports<'autoprefixer/lib/hacks/flex-flow'>; 327 | } 328 | declare module 'autoprefixer/lib/hacks/flex-grow.js' { 329 | declare module.exports: $Exports<'autoprefixer/lib/hacks/flex-grow'>; 330 | } 331 | declare module 'autoprefixer/lib/hacks/flex-shrink.js' { 332 | declare module.exports: $Exports<'autoprefixer/lib/hacks/flex-shrink'>; 333 | } 334 | declare module 'autoprefixer/lib/hacks/flex-spec.js' { 335 | declare module.exports: $Exports<'autoprefixer/lib/hacks/flex-spec'>; 336 | } 337 | declare module 'autoprefixer/lib/hacks/flex-values.js' { 338 | declare module.exports: $Exports<'autoprefixer/lib/hacks/flex-values'>; 339 | } 340 | declare module 'autoprefixer/lib/hacks/flex-wrap.js' { 341 | declare module.exports: $Exports<'autoprefixer/lib/hacks/flex-wrap'>; 342 | } 343 | declare module 'autoprefixer/lib/hacks/flex.js' { 344 | declare module.exports: $Exports<'autoprefixer/lib/hacks/flex'>; 345 | } 346 | declare module 'autoprefixer/lib/hacks/fullscreen.js' { 347 | declare module.exports: $Exports<'autoprefixer/lib/hacks/fullscreen'>; 348 | } 349 | declare module 'autoprefixer/lib/hacks/gradient.js' { 350 | declare module.exports: $Exports<'autoprefixer/lib/hacks/gradient'>; 351 | } 352 | declare module 'autoprefixer/lib/hacks/grid-end.js' { 353 | declare module.exports: $Exports<'autoprefixer/lib/hacks/grid-end'>; 354 | } 355 | declare module 'autoprefixer/lib/hacks/grid-row-align.js' { 356 | declare module.exports: $Exports<'autoprefixer/lib/hacks/grid-row-align'>; 357 | } 358 | declare module 'autoprefixer/lib/hacks/grid-start.js' { 359 | declare module.exports: $Exports<'autoprefixer/lib/hacks/grid-start'>; 360 | } 361 | declare module 'autoprefixer/lib/hacks/grid-template.js' { 362 | declare module.exports: $Exports<'autoprefixer/lib/hacks/grid-template'>; 363 | } 364 | declare module 'autoprefixer/lib/hacks/image-rendering.js' { 365 | declare module.exports: $Exports<'autoprefixer/lib/hacks/image-rendering'>; 366 | } 367 | declare module 'autoprefixer/lib/hacks/image-set.js' { 368 | declare module.exports: $Exports<'autoprefixer/lib/hacks/image-set'>; 369 | } 370 | declare module 'autoprefixer/lib/hacks/inline-logical.js' { 371 | declare module.exports: $Exports<'autoprefixer/lib/hacks/inline-logical'>; 372 | } 373 | declare module 'autoprefixer/lib/hacks/justify-content.js' { 374 | declare module.exports: $Exports<'autoprefixer/lib/hacks/justify-content'>; 375 | } 376 | declare module 'autoprefixer/lib/hacks/justify-items.js' { 377 | declare module.exports: $Exports<'autoprefixer/lib/hacks/justify-items'>; 378 | } 379 | declare module 'autoprefixer/lib/hacks/mask-border.js' { 380 | declare module.exports: $Exports<'autoprefixer/lib/hacks/mask-border'>; 381 | } 382 | declare module 'autoprefixer/lib/hacks/order.js' { 383 | declare module.exports: $Exports<'autoprefixer/lib/hacks/order'>; 384 | } 385 | declare module 'autoprefixer/lib/hacks/pixelated.js' { 386 | declare module.exports: $Exports<'autoprefixer/lib/hacks/pixelated'>; 387 | } 388 | declare module 'autoprefixer/lib/hacks/placeholder.js' { 389 | declare module.exports: $Exports<'autoprefixer/lib/hacks/placeholder'>; 390 | } 391 | declare module 'autoprefixer/lib/hacks/stretch.js' { 392 | declare module.exports: $Exports<'autoprefixer/lib/hacks/stretch'>; 393 | } 394 | declare module 'autoprefixer/lib/hacks/text-emphasis-position.js' { 395 | declare module.exports: $Exports<'autoprefixer/lib/hacks/text-emphasis-position'>; 396 | } 397 | declare module 'autoprefixer/lib/hacks/transform-decl.js' { 398 | declare module.exports: $Exports<'autoprefixer/lib/hacks/transform-decl'>; 399 | } 400 | declare module 'autoprefixer/lib/hacks/writing-mode.js' { 401 | declare module.exports: $Exports<'autoprefixer/lib/hacks/writing-mode'>; 402 | } 403 | declare module 'autoprefixer/lib/info.js' { 404 | declare module.exports: $Exports<'autoprefixer/lib/info'>; 405 | } 406 | declare module 'autoprefixer/lib/old-selector.js' { 407 | declare module.exports: $Exports<'autoprefixer/lib/old-selector'>; 408 | } 409 | declare module 'autoprefixer/lib/old-value.js' { 410 | declare module.exports: $Exports<'autoprefixer/lib/old-value'>; 411 | } 412 | declare module 'autoprefixer/lib/prefixer.js' { 413 | declare module.exports: $Exports<'autoprefixer/lib/prefixer'>; 414 | } 415 | declare module 'autoprefixer/lib/prefixes.js' { 416 | declare module.exports: $Exports<'autoprefixer/lib/prefixes'>; 417 | } 418 | declare module 'autoprefixer/lib/processor.js' { 419 | declare module.exports: $Exports<'autoprefixer/lib/processor'>; 420 | } 421 | declare module 'autoprefixer/lib/resolution.js' { 422 | declare module.exports: $Exports<'autoprefixer/lib/resolution'>; 423 | } 424 | declare module 'autoprefixer/lib/selector.js' { 425 | declare module.exports: $Exports<'autoprefixer/lib/selector'>; 426 | } 427 | declare module 'autoprefixer/lib/supports.js' { 428 | declare module.exports: $Exports<'autoprefixer/lib/supports'>; 429 | } 430 | declare module 'autoprefixer/lib/transition.js' { 431 | declare module.exports: $Exports<'autoprefixer/lib/transition'>; 432 | } 433 | declare module 'autoprefixer/lib/utils.js' { 434 | declare module.exports: $Exports<'autoprefixer/lib/utils'>; 435 | } 436 | declare module 'autoprefixer/lib/value.js' { 437 | declare module.exports: $Exports<'autoprefixer/lib/value'>; 438 | } 439 | -------------------------------------------------------------------------------- /flow-typed/npm/axios_v0.15.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 09272b82e4d7a497eb3ffd12dd130407 2 | // flow-typed version: d28912a036/axios_v0.15.x/flow_>=v0.28.x 3 | 4 | declare module 'axios' { 5 | declare interface ProxyConfig { 6 | host: string; 7 | port: number; 8 | } 9 | declare interface Cancel { 10 | constructor(message?: string): Cancel; 11 | message: string; 12 | } 13 | declare interface Canceler { 14 | (message?: string): void; 15 | } 16 | declare interface CancelTokenSource { 17 | token: CancelToken; 18 | cancel: Canceler; 19 | } 20 | declare interface CancelToken { 21 | constructor(executor: (cancel: Canceler) => void): CancelToken; 22 | static source(): CancelTokenSource; 23 | promise: Promise; 24 | reason?: Cancel; 25 | throwIfRequested(): void; 26 | } 27 | declare interface AxiosXHRConfigBase { 28 | adapter?: (config: AxiosXHRConfig) => Promise>; 29 | auth?: { 30 | username: string, 31 | password: string 32 | }; 33 | baseURL?: string, 34 | cancelToken?: CancelToken; 35 | headers?: Object; 36 | httpAgent?: mixed; // Missing the type in the core flow node libdef 37 | httpsAgent?: mixed; // Missing the type in the core flow node libdef 38 | maxContentLength?: number; 39 | maxRedirects?: 5, 40 | params?: Object; 41 | paramsSerializer?: (params: Object) => string; 42 | progress?: (progressEvent: Event) => void | mixed; 43 | proxy?: ProxyConfig; 44 | responseType?: 'arraybuffer' | 'blob' | 'document' | 'json' | 'text' | 'stream'; 45 | timeout?: number; 46 | transformRequest?: Array<(data: T) => U|Array<(data: T) => U>>; 47 | transformResponse?: Array<(data: T) => U>; 48 | validateStatus?: (status: number) => boolean, 49 | withCredentials?: boolean; 50 | xsrfCookieName?: string; 51 | xsrfHeaderName?: string; 52 | } 53 | declare type $AxiosXHRConfigBase = AxiosXHRConfigBase; 54 | declare interface AxiosXHRConfig extends AxiosXHRConfigBase { 55 | data?: T; 56 | method?: string; 57 | url: string; 58 | } 59 | declare type $AxiosXHRConfig = AxiosXHRConfig; 60 | declare class AxiosXHR { 61 | config: AxiosXHRConfig; 62 | data: T; 63 | headers: Object; 64 | status: number; 65 | statusText: string, 66 | request: http$ClientRequest | XMLHttpRequest 67 | } 68 | declare type $AxiosXHR = $AxiosXHR; 69 | declare class AxiosInterceptorIdent extends String {} 70 | declare class AxiosRequestInterceptor { 71 | use( 72 | successHandler: ?(response: AxiosXHRConfig) => Promise> | AxiosXHRConfig<*>, 73 | errorHandler: ?(error: mixed) => mixed, 74 | ): AxiosInterceptorIdent; 75 | eject(ident: AxiosInterceptorIdent): void; 76 | } 77 | declare class AxiosResponseInterceptor { 78 | use( 79 | successHandler: ?(response: AxiosXHR) => mixed, 80 | errorHandler: ?(error: mixed) => mixed, 81 | ): AxiosInterceptorIdent; 82 | eject(ident: AxiosInterceptorIdent): void; 83 | } 84 | declare type AxiosPromise = Promise>; 85 | declare class Axios { 86 | constructor(config?: AxiosXHRConfigBase): void; 87 | $call: (config: AxiosXHRConfig | string, config?: AxiosXHRConfig) => AxiosPromise; 88 | request(config: AxiosXHRConfig): AxiosPromise; 89 | delete(url: string, config?: AxiosXHRConfigBase): AxiosPromise; 90 | get(url: string, config?: AxiosXHRConfigBase): AxiosPromise; 91 | head(url: string, config?: AxiosXHRConfigBase): AxiosPromise; 92 | post(url: string, data?: mixed, config?: AxiosXHRConfigBase): AxiosPromise; 93 | put(url: string, data?: mixed, config?: AxiosXHRConfigBase): AxiosPromise; 94 | patch(url: string, data?: mixed, config?: AxiosXHRConfigBase): AxiosPromise; 95 | interceptors: { 96 | request: AxiosRequestInterceptor, 97 | response: AxiosResponseInterceptor, 98 | }; 99 | } 100 | 101 | declare class AxiosError extends Error { 102 | config: AxiosXHRConfig; 103 | response: AxiosXHR; 104 | code?: string; 105 | } 106 | 107 | declare type $AxiosError = AxiosError; 108 | 109 | declare interface AxiosExport extends Axios { 110 | Axios: typeof Axios; 111 | Cancel: Class; 112 | CancelToken: Class; 113 | isCancel(value: any): boolean; 114 | create(config?: AxiosXHRConfigBase): Axios; 115 | all: typeof Promise.all; 116 | spread(callback: Function): (arr: Array) => Function 117 | } 118 | declare module.exports: AxiosExport; 119 | } 120 | -------------------------------------------------------------------------------- /flow-typed/npm/axios_v0.16.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: b371e1002f7439f9f053dc08186c5375 2 | // flow-typed version: dbaff82b4f/axios_v0.16.x/flow_>=v0.28.x 3 | 4 | declare module 'axios' { 5 | declare interface ProxyConfig { 6 | host: string; 7 | port: number; 8 | } 9 | declare interface Cancel { 10 | constructor(message?: string): Cancel; 11 | message: string; 12 | } 13 | declare interface Canceler { 14 | (message?: string): void; 15 | } 16 | declare interface CancelTokenSource { 17 | token: CancelToken; 18 | cancel: Canceler; 19 | } 20 | declare interface CancelToken { 21 | constructor(executor: (cancel: Canceler) => void): CancelToken; 22 | static source(): CancelTokenSource; 23 | promise: Promise; 24 | reason?: Cancel; 25 | throwIfRequested(): void; 26 | } 27 | declare interface AxiosXHRConfigBase { 28 | adapter?: (config: AxiosXHRConfig) => Promise>; 29 | auth?: { 30 | username: string, 31 | password: string 32 | }; 33 | baseURL?: string, 34 | cancelToken?: CancelToken; 35 | headers?: Object; 36 | httpAgent?: mixed; // Missing the type in the core flow node libdef 37 | httpsAgent?: mixed; // Missing the type in the core flow node libdef 38 | maxContentLength?: number; 39 | maxRedirects?: 5, 40 | params?: Object; 41 | paramsSerializer?: (params: Object) => string; 42 | progress?: (progressEvent: Event) => void | mixed; 43 | proxy?: ProxyConfig; 44 | responseType?: 'arraybuffer' | 'blob' | 'document' | 'json' | 'text' | 'stream'; 45 | timeout?: number; 46 | transformRequest?: Array<(data: T) => U|Array<(data: T) => U>>; 47 | transformResponse?: Array<(data: T) => U>; 48 | validateStatus?: (status: number) => boolean, 49 | withCredentials?: boolean; 50 | xsrfCookieName?: string; 51 | xsrfHeaderName?: string; 52 | } 53 | declare type $AxiosXHRConfigBase = AxiosXHRConfigBase; 54 | declare interface AxiosXHRConfig extends AxiosXHRConfigBase { 55 | data?: T; 56 | method?: string; 57 | url: string; 58 | } 59 | declare type $AxiosXHRConfig = AxiosXHRConfig; 60 | declare class AxiosXHR { 61 | config: AxiosXHRConfig; 62 | data: T; 63 | headers: Object; 64 | status: number; 65 | statusText: string, 66 | request: http$ClientRequest | XMLHttpRequest 67 | } 68 | declare type $AxiosXHR = $AxiosXHR; 69 | declare class AxiosInterceptorIdent extends String {} 70 | declare class AxiosRequestInterceptor { 71 | use( 72 | successHandler: ?(response: AxiosXHRConfig) => Promise> | AxiosXHRConfig<*>, 73 | errorHandler: ?(error: mixed) => mixed, 74 | ): AxiosInterceptorIdent; 75 | eject(ident: AxiosInterceptorIdent): void; 76 | } 77 | declare class AxiosResponseInterceptor { 78 | use( 79 | successHandler: ?(response: AxiosXHR) => mixed, 80 | errorHandler: ?(error: mixed) => mixed, 81 | ): AxiosInterceptorIdent; 82 | eject(ident: AxiosInterceptorIdent): void; 83 | } 84 | declare type AxiosPromise = Promise>; 85 | declare class Axios { 86 | constructor(config?: AxiosXHRConfigBase): void; 87 | $call: (config: AxiosXHRConfig | string, config?: AxiosXHRConfig) => AxiosPromise; 88 | request(config: AxiosXHRConfig): AxiosPromise; 89 | delete(url: string, config?: AxiosXHRConfigBase): AxiosPromise; 90 | get(url: string, config?: AxiosXHRConfigBase): AxiosPromise; 91 | head(url: string, config?: AxiosXHRConfigBase): AxiosPromise; 92 | post(url: string, data?: mixed, config?: AxiosXHRConfigBase): AxiosPromise; 93 | put(url: string, data?: mixed, config?: AxiosXHRConfigBase): AxiosPromise; 94 | patch(url: string, data?: mixed, config?: AxiosXHRConfigBase): AxiosPromise; 95 | interceptors: { 96 | request: AxiosRequestInterceptor, 97 | response: AxiosResponseInterceptor, 98 | }; 99 | defaults: AxiosXHRConfig<*> & { headers: Object }; 100 | } 101 | 102 | declare class AxiosError extends Error { 103 | config: AxiosXHRConfig; 104 | response: AxiosXHR; 105 | code?: string; 106 | } 107 | 108 | declare type $AxiosError = AxiosError; 109 | 110 | declare interface AxiosExport extends Axios { 111 | Axios: typeof Axios; 112 | Cancel: Class; 113 | CancelToken: Class; 114 | isCancel(value: any): boolean; 115 | create(config?: AxiosXHRConfigBase): Axios; 116 | all: typeof Promise.all; 117 | spread(callback: Function): (arr: Array) => Function 118 | } 119 | declare module.exports: AxiosExport; 120 | } 121 | -------------------------------------------------------------------------------- /flow-typed/npm/babel-core_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 7747d97160a51302b6e46d8d4f61b45b 2 | // flow-typed version: <>/babel-core_v^6.24.1/flow_v0.44.2 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-jest_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 7e3c723226a3e66f8e7dfd762e9e67ca 2 | // flow-typed version: <>/babel-jest_v^19.0.0/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'babel-jest' 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-jest' { 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-jest/build/index' { 26 | declare module.exports: any; 27 | } 28 | 29 | // Filename aliases 30 | declare module 'babel-jest/build/index.js' { 31 | declare module.exports: $Exports<'babel-jest/build/index'>; 32 | } 33 | -------------------------------------------------------------------------------- /flow-typed/npm/babel-loader_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: c4ca639f68b7884edde29540ef8f13c7 2 | // flow-typed version: <>/babel-loader_v^6.4.1/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'babel-loader' 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-loader' { 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-loader/lib/fs-cache' { 26 | declare module.exports: any; 27 | } 28 | 29 | declare module 'babel-loader/lib/index' { 30 | declare module.exports: any; 31 | } 32 | 33 | declare module 'babel-loader/lib/resolve-rc' { 34 | declare module.exports: any; 35 | } 36 | 37 | declare module 'babel-loader/lib/utils/exists' { 38 | declare module.exports: any; 39 | } 40 | 41 | declare module 'babel-loader/lib/utils/read' { 42 | declare module.exports: any; 43 | } 44 | 45 | declare module 'babel-loader/lib/utils/relative' { 46 | declare module.exports: any; 47 | } 48 | 49 | // Filename aliases 50 | declare module 'babel-loader/lib/fs-cache.js' { 51 | declare module.exports: $Exports<'babel-loader/lib/fs-cache'>; 52 | } 53 | declare module 'babel-loader/lib/index.js' { 54 | declare module.exports: $Exports<'babel-loader/lib/index'>; 55 | } 56 | declare module 'babel-loader/lib/resolve-rc.js' { 57 | declare module.exports: $Exports<'babel-loader/lib/resolve-rc'>; 58 | } 59 | declare module 'babel-loader/lib/utils/exists.js' { 60 | declare module.exports: $Exports<'babel-loader/lib/utils/exists'>; 61 | } 62 | declare module 'babel-loader/lib/utils/read.js' { 63 | declare module.exports: $Exports<'babel-loader/lib/utils/read'>; 64 | } 65 | declare module 'babel-loader/lib/utils/relative.js' { 66 | declare module.exports: $Exports<'babel-loader/lib/utils/relative'>; 67 | } 68 | -------------------------------------------------------------------------------- /flow-typed/npm/babel-plugin-syntax-dynamic-import_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 45627c47be25f023c219d876ebf10782 2 | // flow-typed version: <>/babel-plugin-syntax-dynamic-import_v^6.18.0/flow_v0.44.2 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: 8b311fdceda216499d095aedd44b7e71 2 | // flow-typed version: <>/babel-plugin-syntax-flow_v^6.18.0/flow_v0.44.2 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-decorators-legacy_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 54d7e67e08460d0ad0192ba100e4521f 2 | // flow-typed version: <>/babel-plugin-transform-decorators-legacy_v^1.3.4/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'babel-plugin-transform-decorators-legacy' 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-decorators-legacy' { 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-decorators-legacy/lib/index' { 26 | declare module.exports: any; 27 | } 28 | 29 | // Filename aliases 30 | declare module 'babel-plugin-transform-decorators-legacy/lib/index.js' { 31 | declare module.exports: $Exports<'babel-plugin-transform-decorators-legacy/lib/index'>; 32 | } 33 | -------------------------------------------------------------------------------- /flow-typed/npm/babel-plugin-transform-flow-strip-types_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 2b190e5965ba65c5786377f60d287651 2 | // flow-typed version: <>/babel-plugin-transform-flow-strip-types_v^6.22.0/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'babel-plugin-transform-flow-strip-types' 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-strip-types' { 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-strip-types/lib/index' { 26 | declare module.exports: any; 27 | } 28 | 29 | // Filename aliases 30 | declare module 'babel-plugin-transform-flow-strip-types/lib/index.js' { 31 | declare module.exports: $Exports<'babel-plugin-transform-flow-strip-types/lib/index'>; 32 | } 33 | -------------------------------------------------------------------------------- /flow-typed/npm/babel-plugin-transform-object-rest-spread_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 606f6b4804064186f79d797dec2d820e 2 | // flow-typed version: <>/babel-plugin-transform-object-rest-spread_v^6.23.0/flow_v0.44.2 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-polyfill_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 8fb9fd3f2dde03d652a5820199991058 2 | // flow-typed version: <>/babel-polyfill_v^6.23.0/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'babel-polyfill' 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-polyfill' { 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-polyfill/browser' { 26 | declare module.exports: any; 27 | } 28 | 29 | declare module 'babel-polyfill/dist/polyfill' { 30 | declare module.exports: any; 31 | } 32 | 33 | declare module 'babel-polyfill/dist/polyfill.min' { 34 | declare module.exports: any; 35 | } 36 | 37 | declare module 'babel-polyfill/lib/index' { 38 | declare module.exports: any; 39 | } 40 | 41 | declare module 'babel-polyfill/scripts/postpublish' { 42 | declare module.exports: any; 43 | } 44 | 45 | declare module 'babel-polyfill/scripts/prepublish' { 46 | declare module.exports: any; 47 | } 48 | 49 | // Filename aliases 50 | declare module 'babel-polyfill/browser.js' { 51 | declare module.exports: $Exports<'babel-polyfill/browser'>; 52 | } 53 | declare module 'babel-polyfill/dist/polyfill.js' { 54 | declare module.exports: $Exports<'babel-polyfill/dist/polyfill'>; 55 | } 56 | declare module 'babel-polyfill/dist/polyfill.min.js' { 57 | declare module.exports: $Exports<'babel-polyfill/dist/polyfill.min'>; 58 | } 59 | declare module 'babel-polyfill/lib/index.js' { 60 | declare module.exports: $Exports<'babel-polyfill/lib/index'>; 61 | } 62 | declare module 'babel-polyfill/scripts/postpublish.js' { 63 | declare module.exports: $Exports<'babel-polyfill/scripts/postpublish'>; 64 | } 65 | declare module 'babel-polyfill/scripts/prepublish.js' { 66 | declare module.exports: $Exports<'babel-polyfill/scripts/prepublish'>; 67 | } 68 | -------------------------------------------------------------------------------- /flow-typed/npm/babel-preset-env_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 5335b75a0745a608fc95894ec3f6eeaa 2 | // flow-typed version: <>/babel-preset-env_v^1.4.0/flow_v0.44.2 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/transform-polyfill-require-plugin' { 50 | declare module.exports: any; 51 | } 52 | 53 | // Filename aliases 54 | declare module 'babel-preset-env/data/built-in-features.js' { 55 | declare module.exports: $Exports<'babel-preset-env/data/built-in-features'>; 56 | } 57 | declare module 'babel-preset-env/data/plugin-features.js' { 58 | declare module.exports: $Exports<'babel-preset-env/data/plugin-features'>; 59 | } 60 | declare module 'babel-preset-env/lib/default-includes.js' { 61 | declare module.exports: $Exports<'babel-preset-env/lib/default-includes'>; 62 | } 63 | declare module 'babel-preset-env/lib/index.js' { 64 | declare module.exports: $Exports<'babel-preset-env/lib/index'>; 65 | } 66 | declare module 'babel-preset-env/lib/module-transformations.js' { 67 | declare module.exports: $Exports<'babel-preset-env/lib/module-transformations'>; 68 | } 69 | declare module 'babel-preset-env/lib/normalize-options.js' { 70 | declare module.exports: $Exports<'babel-preset-env/lib/normalize-options'>; 71 | } 72 | declare module 'babel-preset-env/lib/transform-polyfill-require-plugin.js' { 73 | declare module.exports: $Exports<'babel-preset-env/lib/transform-polyfill-require-plugin'>; 74 | } 75 | -------------------------------------------------------------------------------- /flow-typed/npm/babel-preset-es2015_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: fbeebc72f067aec04e6e377373f33c83 2 | // flow-typed version: <>/babel-preset-es2015_v^6.24.1/flow_v0.44.2 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-react_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: c8943ded65cdfe5f18a660fccf46af6b 2 | // flow-typed version: <>/babel-preset-react_v^6.24.1/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'babel-preset-react' 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-react' { 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-react/lib/index' { 26 | declare module.exports: any; 27 | } 28 | 29 | // Filename aliases 30 | declare module 'babel-preset-react/lib/index.js' { 31 | declare module.exports: $Exports<'babel-preset-react/lib/index'>; 32 | } 33 | -------------------------------------------------------------------------------- /flow-typed/npm/babel-preset-stage-0_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 3d18060fdc73ff4251410e79ef885539 2 | // flow-typed version: <>/babel-preset-stage-0_v^6.24.1/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'babel-preset-stage-0' 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-0' { 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-0/lib/index' { 26 | declare module.exports: any; 27 | } 28 | 29 | // Filename aliases 30 | declare module 'babel-preset-stage-0/lib/index.js' { 31 | declare module.exports: $Exports<'babel-preset-stage-0/lib/index'>; 32 | } 33 | -------------------------------------------------------------------------------- /flow-typed/npm/babel-register_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: c989bd6ecd657689f933b89cdbc47e2a 2 | // flow-typed version: <>/babel-register_v^6.24.1/flow_v0.44.2 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/body-parser_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 613ef0732b56cf1e7ecd1680656bc53f 2 | // flow-typed version: <>/body-parser_v^1.17.1/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'body-parser' 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 'body-parser' { 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 'body-parser/lib/read' { 26 | declare module.exports: any; 27 | } 28 | 29 | declare module 'body-parser/lib/types/json' { 30 | declare module.exports: any; 31 | } 32 | 33 | declare module 'body-parser/lib/types/raw' { 34 | declare module.exports: any; 35 | } 36 | 37 | declare module 'body-parser/lib/types/text' { 38 | declare module.exports: any; 39 | } 40 | 41 | declare module 'body-parser/lib/types/urlencoded' { 42 | declare module.exports: any; 43 | } 44 | 45 | // Filename aliases 46 | declare module 'body-parser/index' { 47 | declare module.exports: $Exports<'body-parser'>; 48 | } 49 | declare module 'body-parser/index.js' { 50 | declare module.exports: $Exports<'body-parser'>; 51 | } 52 | declare module 'body-parser/lib/read.js' { 53 | declare module.exports: $Exports<'body-parser/lib/read'>; 54 | } 55 | declare module 'body-parser/lib/types/json.js' { 56 | declare module.exports: $Exports<'body-parser/lib/types/json'>; 57 | } 58 | declare module 'body-parser/lib/types/raw.js' { 59 | declare module.exports: $Exports<'body-parser/lib/types/raw'>; 60 | } 61 | declare module 'body-parser/lib/types/text.js' { 62 | declare module.exports: $Exports<'body-parser/lib/types/text'>; 63 | } 64 | declare module 'body-parser/lib/types/urlencoded.js' { 65 | declare module.exports: $Exports<'body-parser/lib/types/urlencoded'>; 66 | } 67 | -------------------------------------------------------------------------------- /flow-typed/npm/chunk-manifest-webpack-plugin_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 85d344717dd7ed62de01c07646973dfe 2 | // flow-typed version: <>/chunk-manifest-webpack-plugin_v^1.0.0/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'chunk-manifest-webpack-plugin' 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 'chunk-manifest-webpack-plugin' { 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 'chunk-manifest-webpack-plugin/lib/ChunkManifestPlugin' { 26 | declare module.exports: any; 27 | } 28 | 29 | // Filename aliases 30 | declare module 'chunk-manifest-webpack-plugin/lib/ChunkManifestPlugin.js' { 31 | declare module.exports: $Exports<'chunk-manifest-webpack-plugin/lib/ChunkManifestPlugin'>; 32 | } 33 | -------------------------------------------------------------------------------- /flow-typed/npm/compression_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: fec4a2096aa3bcbbbaf408f3b7e338e3 2 | // flow-typed version: <>/compression_v^1.6.2/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'compression' 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 'compression' { 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 | 27 | // Filename aliases 28 | declare module 'compression/index' { 29 | declare module.exports: $Exports<'compression'>; 30 | } 31 | declare module 'compression/index.js' { 32 | declare module.exports: $Exports<'compression'>; 33 | } 34 | -------------------------------------------------------------------------------- /flow-typed/npm/copy-webpack-plugin_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: ef7e6587e81b07dd61a2137621e85361 2 | // flow-typed version: <>/copy-webpack-plugin_v^4.0.1/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'copy-webpack-plugin' 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-webpack-plugin' { 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-webpack-plugin/backup' { 26 | declare module.exports: any; 27 | } 28 | 29 | declare module 'copy-webpack-plugin/dist/index' { 30 | declare module.exports: any; 31 | } 32 | 33 | declare module 'copy-webpack-plugin/dist/indexOld' { 34 | declare module.exports: any; 35 | } 36 | 37 | declare module 'copy-webpack-plugin/dist/path' { 38 | declare module.exports: any; 39 | } 40 | 41 | declare module 'copy-webpack-plugin/dist/preProcessPattern' { 42 | declare module.exports: any; 43 | } 44 | 45 | declare module 'copy-webpack-plugin/dist/processPattern' { 46 | declare module.exports: any; 47 | } 48 | 49 | declare module 'copy-webpack-plugin/dist/shouldIgnore' { 50 | declare module.exports: any; 51 | } 52 | 53 | declare module 'copy-webpack-plugin/dist/toLooksLikeDirectory' { 54 | declare module.exports: any; 55 | } 56 | 57 | declare module 'copy-webpack-plugin/dist/writeDirectoryToAssets' { 58 | declare module.exports: any; 59 | } 60 | 61 | declare module 'copy-webpack-plugin/dist/writeFile' { 62 | declare module.exports: any; 63 | } 64 | 65 | declare module 'copy-webpack-plugin/dist/writeFileToAssets' { 66 | declare module.exports: any; 67 | } 68 | 69 | // Filename aliases 70 | declare module 'copy-webpack-plugin/backup.js' { 71 | declare module.exports: $Exports<'copy-webpack-plugin/backup'>; 72 | } 73 | declare module 'copy-webpack-plugin/dist/index.js' { 74 | declare module.exports: $Exports<'copy-webpack-plugin/dist/index'>; 75 | } 76 | declare module 'copy-webpack-plugin/dist/indexOld.js' { 77 | declare module.exports: $Exports<'copy-webpack-plugin/dist/indexOld'>; 78 | } 79 | declare module 'copy-webpack-plugin/dist/path.js' { 80 | declare module.exports: $Exports<'copy-webpack-plugin/dist/path'>; 81 | } 82 | declare module 'copy-webpack-plugin/dist/preProcessPattern.js' { 83 | declare module.exports: $Exports<'copy-webpack-plugin/dist/preProcessPattern'>; 84 | } 85 | declare module 'copy-webpack-plugin/dist/processPattern.js' { 86 | declare module.exports: $Exports<'copy-webpack-plugin/dist/processPattern'>; 87 | } 88 | declare module 'copy-webpack-plugin/dist/shouldIgnore.js' { 89 | declare module.exports: $Exports<'copy-webpack-plugin/dist/shouldIgnore'>; 90 | } 91 | declare module 'copy-webpack-plugin/dist/toLooksLikeDirectory.js' { 92 | declare module.exports: $Exports<'copy-webpack-plugin/dist/toLooksLikeDirectory'>; 93 | } 94 | declare module 'copy-webpack-plugin/dist/writeDirectoryToAssets.js' { 95 | declare module.exports: $Exports<'copy-webpack-plugin/dist/writeDirectoryToAssets'>; 96 | } 97 | declare module 'copy-webpack-plugin/dist/writeFile.js' { 98 | declare module.exports: $Exports<'copy-webpack-plugin/dist/writeFile'>; 99 | } 100 | declare module 'copy-webpack-plugin/dist/writeFileToAssets.js' { 101 | declare module.exports: $Exports<'copy-webpack-plugin/dist/writeFileToAssets'>; 102 | } 103 | -------------------------------------------------------------------------------- /flow-typed/npm/cross-env_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 86e4329dd4c1127a1a55df6cfd5bcddf 2 | // flow-typed version: <>/cross-env_v^4.0.0/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'cross-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 'cross-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 'cross-env/dist/bin/cross-env' { 26 | declare module.exports: any; 27 | } 28 | 29 | declare module 'cross-env/dist/command' { 30 | declare module.exports: any; 31 | } 32 | 33 | declare module 'cross-env/dist/index' { 34 | declare module.exports: any; 35 | } 36 | 37 | declare module 'cross-env/dist/variable' { 38 | declare module.exports: any; 39 | } 40 | 41 | // Filename aliases 42 | declare module 'cross-env/dist/bin/cross-env.js' { 43 | declare module.exports: $Exports<'cross-env/dist/bin/cross-env'>; 44 | } 45 | declare module 'cross-env/dist/command.js' { 46 | declare module.exports: $Exports<'cross-env/dist/command'>; 47 | } 48 | declare module 'cross-env/dist/index.js' { 49 | declare module.exports: $Exports<'cross-env/dist/index'>; 50 | } 51 | declare module 'cross-env/dist/variable.js' { 52 | declare module.exports: $Exports<'cross-env/dist/variable'>; 53 | } 54 | -------------------------------------------------------------------------------- /flow-typed/npm/css-loader_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: bf9ae12c1dd71af21060fc842d3907fc 2 | // flow-typed version: <>/css-loader_v^0.28.0/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'css-loader' 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 'css-loader' { 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 'css-loader/lib/compile-exports' { 26 | declare module.exports: any; 27 | } 28 | 29 | declare module 'css-loader/lib/createResolver' { 30 | declare module.exports: any; 31 | } 32 | 33 | declare module 'css-loader/lib/css-base' { 34 | declare module.exports: any; 35 | } 36 | 37 | declare module 'css-loader/lib/getImportPrefix' { 38 | declare module.exports: any; 39 | } 40 | 41 | declare module 'css-loader/lib/getLocalIdent' { 42 | declare module.exports: any; 43 | } 44 | 45 | declare module 'css-loader/lib/loader' { 46 | declare module.exports: any; 47 | } 48 | 49 | declare module 'css-loader/lib/localsLoader' { 50 | declare module.exports: any; 51 | } 52 | 53 | declare module 'css-loader/lib/processCss' { 54 | declare module.exports: any; 55 | } 56 | 57 | declare module 'css-loader/locals' { 58 | declare module.exports: any; 59 | } 60 | 61 | // Filename aliases 62 | declare module 'css-loader/index' { 63 | declare module.exports: $Exports<'css-loader'>; 64 | } 65 | declare module 'css-loader/index.js' { 66 | declare module.exports: $Exports<'css-loader'>; 67 | } 68 | declare module 'css-loader/lib/compile-exports.js' { 69 | declare module.exports: $Exports<'css-loader/lib/compile-exports'>; 70 | } 71 | declare module 'css-loader/lib/createResolver.js' { 72 | declare module.exports: $Exports<'css-loader/lib/createResolver'>; 73 | } 74 | declare module 'css-loader/lib/css-base.js' { 75 | declare module.exports: $Exports<'css-loader/lib/css-base'>; 76 | } 77 | declare module 'css-loader/lib/getImportPrefix.js' { 78 | declare module.exports: $Exports<'css-loader/lib/getImportPrefix'>; 79 | } 80 | declare module 'css-loader/lib/getLocalIdent.js' { 81 | declare module.exports: $Exports<'css-loader/lib/getLocalIdent'>; 82 | } 83 | declare module 'css-loader/lib/loader.js' { 84 | declare module.exports: $Exports<'css-loader/lib/loader'>; 85 | } 86 | declare module 'css-loader/lib/localsLoader.js' { 87 | declare module.exports: $Exports<'css-loader/lib/localsLoader'>; 88 | } 89 | declare module 'css-loader/lib/processCss.js' { 90 | declare module.exports: $Exports<'css-loader/lib/processCss'>; 91 | } 92 | declare module 'css-loader/locals.js' { 93 | declare module.exports: $Exports<'css-loader/locals'>; 94 | } 95 | -------------------------------------------------------------------------------- /flow-typed/npm/dotenv_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 01812d9251fb7d9a6e460fcb35ee145d 2 | // flow-typed version: <>/dotenv_v^4.0.0/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'dotenv' 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 'dotenv' { 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 'dotenv/config' { 26 | declare module.exports: any; 27 | } 28 | 29 | declare module 'dotenv/lib/main' { 30 | declare module.exports: any; 31 | } 32 | 33 | // Filename aliases 34 | declare module 'dotenv/config.js' { 35 | declare module.exports: $Exports<'dotenv/config'>; 36 | } 37 | declare module 'dotenv/lib/main.js' { 38 | declare module.exports: $Exports<'dotenv/lib/main'>; 39 | } 40 | -------------------------------------------------------------------------------- /flow-typed/npm/enzyme_v2.3.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 4109fee535b1f5c38bd1a24450044e0f 2 | // flow-typed version: 2b435bb71a/enzyme_v2.3.x/flow_>=v0.28.x 3 | 4 | declare module 'enzyme' { 5 | declare type PredicateFunction = (wrapper: T) => boolean; 6 | declare type NodeOrNodes = React$Element | Array>; 7 | declare type EnzymeSelector = string | ReactClass | Object; 8 | 9 | // CheerioWrapper is a type alias for an actual cheerio instance 10 | // TODO: Reference correct type from cheerio's type declarations 11 | declare type CheerioWrapper = any; 12 | 13 | declare class Wrapper { 14 | find(selector: EnzymeSelector): this; 15 | findWhere(predicate: PredicateFunction): this; 16 | filter(selector: EnzymeSelector): this; 17 | filterWhere(predicate: PredicateFunction): this; 18 | contains(nodeOrNodes: NodeOrNodes): boolean; 19 | containsMatchingElement(node: React$Element): boolean; 20 | containsAllMatchingElements(nodes: NodeOrNodes): boolean; 21 | containsAnyMatchingElements(nodes: NodeOrNodes): boolean; 22 | dive(option?: { context?: Object }): this; 23 | exists(): boolean; 24 | matchesElement(node: React$Element): boolean; 25 | hasClass(className: string): boolean; 26 | is(selector: EnzymeSelector): boolean; 27 | isEmpty(): boolean; 28 | not(selector: EnzymeSelector): boolean; 29 | children(selector?: EnzymeSelector): this; 30 | childAt(index: number): this; 31 | parents(selector?: EnzymeSelector): this; 32 | parent(): this; 33 | closest(selector: EnzymeSelector): this; 34 | render(): CheerioWrapper; 35 | unmount(): this; 36 | text(): string; 37 | html(): string; 38 | get(index: number): React$Element; 39 | getNode(): React$Element; 40 | getNodes(): Array>; 41 | at(index: number): this; 42 | first(): this; 43 | last(): this; 44 | state(key?: string): any; 45 | context(key?: string): any; 46 | props(): Object; 47 | prop(key: string): any; 48 | key(): string; 49 | simulate(event: string, ...args: Array): this; 50 | setState(state: Object): this; 51 | setProps(props: Object): this; 52 | setContext(context: Object): this; 53 | instance(): React$Component; 54 | update(): this; 55 | debug(): string; 56 | type(): string | Function | null; 57 | name(): string; 58 | forEach(fn: (node: this) => any): this; 59 | map(fn: (node: this) => T): Array; 60 | reduce(fn: (value: T, node: this, index: number) => T, initialValue?: T): Array; 61 | reduceRight(fn: (value: T, node: this, index: number) => T, initialValue?: T): Array; 62 | some(selector: EnzymeSelector): boolean; 63 | someWhere(predicate: PredicateFunction): boolean; 64 | every(selector: EnzymeSelector): boolean; 65 | everyWhere(predicate: PredicateFunction): boolean; 66 | length: number; 67 | } 68 | 69 | declare export class ReactWrapper extends Wrapper { 70 | mount(): this; 71 | ref(refName: string): this; 72 | detach(): void; 73 | } 74 | 75 | declare export class ShallowWrapper extends Wrapper { 76 | equals(node: React$Element): boolean; 77 | shallow(options?: { context?: Object }): ShallowWrapper; 78 | } 79 | 80 | declare export function shallow(node: React$Element, options?: { context?: Object }): ShallowWrapper; 81 | declare export function mount(node: React$Element, options?: { context?: Object, attachTo?: HTMLElement, childContextTypes?: Object }): ReactWrapper; 82 | declare export function render(node: React$Element, options?: { context?: Object }): CheerioWrapper; 83 | } 84 | -------------------------------------------------------------------------------- /flow-typed/npm/eslint-config-equimper_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: ac50a7ba2bb682a32918a4288e8dd219 2 | // flow-typed version: <>/eslint-config-equimper_v^1.6.2/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'eslint-config-equimper' 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-config-equimper' { 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-config-equimper/rules/best-practices' { 26 | declare module.exports: any; 27 | } 28 | 29 | declare module 'eslint-config-equimper/rules/errors' { 30 | declare module.exports: any; 31 | } 32 | 33 | declare module 'eslint-config-equimper/rules/es6' { 34 | declare module.exports: any; 35 | } 36 | 37 | declare module 'eslint-config-equimper/rules/imports' { 38 | declare module.exports: any; 39 | } 40 | 41 | declare module 'eslint-config-equimper/rules/node' { 42 | declare module.exports: any; 43 | } 44 | 45 | declare module 'eslint-config-equimper/rules/react-a11y' { 46 | declare module.exports: any; 47 | } 48 | 49 | declare module 'eslint-config-equimper/rules/react' { 50 | declare module.exports: any; 51 | } 52 | 53 | declare module 'eslint-config-equimper/rules/strict' { 54 | declare module.exports: any; 55 | } 56 | 57 | declare module 'eslint-config-equimper/rules/style' { 58 | declare module.exports: any; 59 | } 60 | 61 | declare module 'eslint-config-equimper/rules/variables' { 62 | declare module.exports: any; 63 | } 64 | 65 | // Filename aliases 66 | declare module 'eslint-config-equimper/index' { 67 | declare module.exports: $Exports<'eslint-config-equimper'>; 68 | } 69 | declare module 'eslint-config-equimper/index.js' { 70 | declare module.exports: $Exports<'eslint-config-equimper'>; 71 | } 72 | declare module 'eslint-config-equimper/rules/best-practices.js' { 73 | declare module.exports: $Exports<'eslint-config-equimper/rules/best-practices'>; 74 | } 75 | declare module 'eslint-config-equimper/rules/errors.js' { 76 | declare module.exports: $Exports<'eslint-config-equimper/rules/errors'>; 77 | } 78 | declare module 'eslint-config-equimper/rules/es6.js' { 79 | declare module.exports: $Exports<'eslint-config-equimper/rules/es6'>; 80 | } 81 | declare module 'eslint-config-equimper/rules/imports.js' { 82 | declare module.exports: $Exports<'eslint-config-equimper/rules/imports'>; 83 | } 84 | declare module 'eslint-config-equimper/rules/node.js' { 85 | declare module.exports: $Exports<'eslint-config-equimper/rules/node'>; 86 | } 87 | declare module 'eslint-config-equimper/rules/react-a11y.js' { 88 | declare module.exports: $Exports<'eslint-config-equimper/rules/react-a11y'>; 89 | } 90 | declare module 'eslint-config-equimper/rules/react.js' { 91 | declare module.exports: $Exports<'eslint-config-equimper/rules/react'>; 92 | } 93 | declare module 'eslint-config-equimper/rules/strict.js' { 94 | declare module.exports: $Exports<'eslint-config-equimper/rules/strict'>; 95 | } 96 | declare module 'eslint-config-equimper/rules/style.js' { 97 | declare module.exports: $Exports<'eslint-config-equimper/rules/style'>; 98 | } 99 | declare module 'eslint-config-equimper/rules/variables.js' { 100 | declare module.exports: $Exports<'eslint-config-equimper/rules/variables'>; 101 | } 102 | -------------------------------------------------------------------------------- /flow-typed/npm/express_v4.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 5800b9dee6b8969ab2b5fa338d02a89f 2 | // flow-typed version: 473c121609/express_v4.x.x/flow_>=v0.32.x 3 | 4 | import type { Server } from 'http'; 5 | 6 | declare type express$RouterOptions = { 7 | caseSensitive?: boolean, 8 | mergeParams?: boolean, 9 | strict?: boolean 10 | }; 11 | 12 | declare class express$RequestResponseBase { 13 | app: express$Application; 14 | get(field: string): string | void; 15 | } 16 | 17 | declare class express$Request extends http$IncomingMessage mixins express$RequestResponseBase { 18 | baseUrl: string; 19 | body: mixed; 20 | cookies: {[cookie: string]: string}; 21 | fresh: boolean; 22 | hostname: string; 23 | ip: string; 24 | ips: Array; 25 | method: string; 26 | originalUrl: string; 27 | params: {[param: string]: string}; 28 | path: string; 29 | protocol: 'https' | 'http'; 30 | query: {[name: string]: string}; 31 | route: string; 32 | secure: boolean; 33 | signedCookies: {[signedCookie: string]: string}; 34 | stale: boolean; 35 | subdomains: Array; 36 | xhr: boolean; 37 | accepts(types: string): string | false; 38 | acceptsCharsets(...charsets: Array): string | false; 39 | acceptsEncodings(...encoding: Array): string | false; 40 | acceptsLanguages(...lang: Array): string | false; 41 | header(field: string): string | void; 42 | is(type: string): boolean; 43 | param(name: string, defaultValue?: string): string | void; 44 | } 45 | 46 | declare type express$CookieOptions = { 47 | domain?: string, 48 | encode?: (value: string) => string, 49 | expires?: Date, 50 | httpOnly?: boolean, 51 | maxAge?: number, 52 | path?: string, 53 | secure?: boolean, 54 | signed?: boolean 55 | }; 56 | 57 | declare type express$RenderCallback = (err: Error | null, html?: string) => mixed; 58 | 59 | declare type express$SendFileOptions = { 60 | maxAge?: number, 61 | root?: string, 62 | lastModified?: boolean, 63 | headers?: {[name: string]: string}, 64 | dotfiles?: 'allow' | 'deny' | 'ignore' 65 | }; 66 | 67 | declare class express$Response extends http$ServerResponse mixins express$RequestResponseBase { 68 | headersSent: boolean; 69 | locals: {[name: string]: mixed}; 70 | append(field: string, value?: string): this; 71 | attachment(filename?: string): this; 72 | cookie(name: string, value: string, options?: express$CookieOptions): this; 73 | clearCookie(name: string, options?: express$CookieOptions): this; 74 | download(path: string, filename?: string, callback?: (err?: ?Error) => void): this; 75 | format(typesObject: {[type: string]: Function}): this; 76 | json(body?: mixed): this; 77 | jsonp(body?: mixed): this; 78 | links(links: {[name: string]: string}): this; 79 | location(path: string): this; 80 | redirect(url: string, ...args: Array): this; 81 | redirect(status: number, url: string, ...args: Array): this; 82 | render(view: string, locals?: {[name: string]: mixed}, callback?: express$RenderCallback): this; 83 | send(body?: mixed): this; 84 | sendFile(path: string, options?: express$SendFileOptions, callback?: (err?: ?Error) => mixed): this; 85 | sendStatus(statusCode: number): this; 86 | header(field: string, value?: string): this; 87 | header(headers: {[name: string]: string}): this; 88 | set(field: string, value?: string): this; 89 | set(headers: {[name: string]: string}): this; 90 | status(statusCode: number): this; 91 | type(type: string): this; 92 | vary(field: string): this; 93 | } 94 | 95 | declare type express$NextFunction = (err?: ?Error) => mixed; 96 | declare type express$Middleware = 97 | ((req: express$Request, res: express$Response, next: express$NextFunction) => mixed) | 98 | ((error: ?Error, req: express$Request, res: express$Response, next: express$NextFunction) => mixed); 99 | declare interface express$RouteMethodType { 100 | (middleware: express$Middleware): T; 101 | (...middleware: Array): T; 102 | (path: string|RegExp|string[], ...middleware: Array): T; 103 | } 104 | declare class express$Route { 105 | all: express$RouteMethodType; 106 | get: express$RouteMethodType; 107 | post: express$RouteMethodType; 108 | put: express$RouteMethodType; 109 | head: express$RouteMethodType; 110 | delete: express$RouteMethodType; 111 | options: express$RouteMethodType; 112 | trace: express$RouteMethodType; 113 | copy: express$RouteMethodType; 114 | lock: express$RouteMethodType; 115 | mkcol: express$RouteMethodType; 116 | move: express$RouteMethodType; 117 | purge: express$RouteMethodType; 118 | propfind: express$RouteMethodType; 119 | proppatch: express$RouteMethodType; 120 | unlock: express$RouteMethodType; 121 | report: express$RouteMethodType; 122 | mkactivity: express$RouteMethodType; 123 | checkout: express$RouteMethodType; 124 | merge: express$RouteMethodType; 125 | 126 | // @TODO Missing 'm-search' but get flow illegal name error. 127 | 128 | notify: express$RouteMethodType; 129 | subscribe: express$RouteMethodType; 130 | unsubscribe: express$RouteMethodType; 131 | patch: express$RouteMethodType; 132 | search: express$RouteMethodType; 133 | connect: express$RouteMethodType; 134 | } 135 | 136 | declare class express$Router extends express$Route { 137 | constructor(options?: express$RouterOptions): void; 138 | route(path: string): express$Route; 139 | static (): express$Router; 140 | use(middleware: express$Middleware): this; 141 | use(...middleware: Array): this; 142 | use(path: string|RegExp|string[], ...middleware: Array): this; 143 | use(path: string, router: express$Router): this; 144 | handle(req: http$IncomingMessage, res: http$ServerResponse, next: express$NextFunction): void; 145 | 146 | // Can't use regular callable signature syntax due to https://github.com/facebook/flow/issues/3084 147 | $call: (req: http$IncomingMessage, res: http$ServerResponse, next?: ?express$NextFunction) => void; 148 | } 149 | 150 | declare class express$Application extends express$Router mixins events$EventEmitter { 151 | constructor(): void; 152 | locals: {[name: string]: mixed}; 153 | mountpath: string; 154 | listen(port: number, hostname?: string, backlog?: number, callback?: (err?: ?Error) => mixed): Server; 155 | listen(port: number, hostname?: string, callback?: (err?: ?Error) => mixed): Server; 156 | listen(port: number, callback?: (err?: ?Error) => mixed): Server; 157 | listen(path: string, callback?: (err?: ?Error) => mixed): Server; 158 | listen(handle: Object, callback?: (err?: ?Error) => mixed): Server; 159 | disable(name: string): void; 160 | disabled(name: string): boolean; 161 | enable(name: string): void; 162 | enabled(name: string): boolean; 163 | engine(name: string, callback: Function): void; 164 | /** 165 | * Mixed will not be taken as a value option. Issue around using the GET http method name and the get for settings. 166 | */ 167 | // get(name: string): mixed; 168 | set(name: string, value: mixed): mixed; 169 | render(name: string, optionsOrFunction: {[name: string]: mixed}, callback: express$RenderCallback): void; 170 | handle(req: http$IncomingMessage, res: http$ServerResponse, next?: ?express$NextFunction): void; 171 | } 172 | 173 | declare module 'express' { 174 | declare function serveStatic(root: string, options?: Object): express$Middleware; 175 | 176 | declare type RouterOptions = express$RouterOptions; 177 | declare type CookieOptions = express$CookieOptions; 178 | declare type Middleware = express$Middleware; 179 | declare type NextFunction = express$NextFunction; 180 | declare type $Response = express$Response; 181 | declare type $Request = express$Request; 182 | declare type $Application = express$Application; 183 | 184 | declare module.exports: { 185 | (): express$Application, // If you try to call like a function, it will use this signature 186 | static: serveStatic, // `static` property on the function 187 | Router: typeof express$Router, // `Router` property on the function 188 | }; 189 | } 190 | -------------------------------------------------------------------------------- /flow-typed/npm/extract-text-webpack-plugin_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: abd875ec2bbd4e8269f9192bfa92cb9b 2 | // flow-typed version: <>/extract-text-webpack-plugin_v^2.1.0/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'extract-text-webpack-plugin' 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 'extract-text-webpack-plugin' { 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 'extract-text-webpack-plugin/ExtractedModule' { 26 | declare module.exports: any; 27 | } 28 | 29 | declare module 'extract-text-webpack-plugin/loader' { 30 | declare module.exports: any; 31 | } 32 | 33 | declare module 'extract-text-webpack-plugin/OrderUndefinedError' { 34 | declare module.exports: any; 35 | } 36 | 37 | declare module 'extract-text-webpack-plugin/schema/loader-schema' { 38 | declare module.exports: any; 39 | } 40 | 41 | declare module 'extract-text-webpack-plugin/schema/validator' { 42 | declare module.exports: any; 43 | } 44 | 45 | // Filename aliases 46 | declare module 'extract-text-webpack-plugin/ExtractedModule.js' { 47 | declare module.exports: $Exports<'extract-text-webpack-plugin/ExtractedModule'>; 48 | } 49 | declare module 'extract-text-webpack-plugin/index' { 50 | declare module.exports: $Exports<'extract-text-webpack-plugin'>; 51 | } 52 | declare module 'extract-text-webpack-plugin/index.js' { 53 | declare module.exports: $Exports<'extract-text-webpack-plugin'>; 54 | } 55 | declare module 'extract-text-webpack-plugin/loader.js' { 56 | declare module.exports: $Exports<'extract-text-webpack-plugin/loader'>; 57 | } 58 | declare module 'extract-text-webpack-plugin/OrderUndefinedError.js' { 59 | declare module.exports: $Exports<'extract-text-webpack-plugin/OrderUndefinedError'>; 60 | } 61 | declare module 'extract-text-webpack-plugin/schema/loader-schema.js' { 62 | declare module.exports: $Exports<'extract-text-webpack-plugin/schema/loader-schema'>; 63 | } 64 | declare module 'extract-text-webpack-plugin/schema/validator.js' { 65 | declare module.exports: $Exports<'extract-text-webpack-plugin/schema/validator'>; 66 | } 67 | -------------------------------------------------------------------------------- /flow-typed/npm/file-loader_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 0aef4c535b773793bc229af9b054ef62 2 | // flow-typed version: <>/file-loader_v^0.11.1/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'file-loader' 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 'file-loader' { 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 | 27 | // Filename aliases 28 | declare module 'file-loader/index' { 29 | declare module.exports: $Exports<'file-loader'>; 30 | } 31 | declare module 'file-loader/index.js' { 32 | declare module.exports: $Exports<'file-loader'>; 33 | } 34 | -------------------------------------------------------------------------------- /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-typed_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 743bc5660325af1883b1f3d668702669 2 | // flow-typed version: <>/flow-typed_v^2.0.0/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'flow-typed' 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-typed' { 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-typed/dist/cli' { 26 | declare module.exports: any; 27 | } 28 | 29 | declare module 'flow-typed/dist/commands/create-stub' { 30 | declare module.exports: any; 31 | } 32 | 33 | declare module 'flow-typed/dist/commands/install' { 34 | declare module.exports: any; 35 | } 36 | 37 | declare module 'flow-typed/dist/commands/runTests' { 38 | declare module.exports: any; 39 | } 40 | 41 | declare module 'flow-typed/dist/commands/search' { 42 | declare module.exports: any; 43 | } 44 | 45 | declare module 'flow-typed/dist/commands/update-cache' { 46 | declare module.exports: any; 47 | } 48 | 49 | declare module 'flow-typed/dist/commands/update' { 50 | declare module.exports: any; 51 | } 52 | 53 | declare module 'flow-typed/dist/commands/validateDefs' { 54 | declare module.exports: any; 55 | } 56 | 57 | declare module 'flow-typed/dist/commands/version' { 58 | declare module.exports: any; 59 | } 60 | 61 | declare module 'flow-typed/dist/lib/codeSign' { 62 | declare module.exports: any; 63 | } 64 | 65 | declare module 'flow-typed/dist/lib/fileUtils' { 66 | declare module.exports: any; 67 | } 68 | 69 | declare module 'flow-typed/dist/lib/flowProjectUtils' { 70 | declare module.exports: any; 71 | } 72 | 73 | declare module 'flow-typed/dist/lib/git' { 74 | declare module.exports: any; 75 | } 76 | 77 | declare module 'flow-typed/dist/lib/github' { 78 | declare module.exports: any; 79 | } 80 | 81 | declare module 'flow-typed/dist/lib/libDefs' { 82 | declare module.exports: any; 83 | } 84 | 85 | declare module 'flow-typed/dist/lib/node' { 86 | declare module.exports: any; 87 | } 88 | 89 | declare module 'flow-typed/dist/lib/npmProjectUtils' { 90 | declare module.exports: any; 91 | } 92 | 93 | declare module 'flow-typed/dist/lib/semver' { 94 | declare module.exports: any; 95 | } 96 | 97 | declare module 'flow-typed/dist/lib/stubUtils' { 98 | declare module.exports: any; 99 | } 100 | 101 | // Filename aliases 102 | declare module 'flow-typed/dist/cli.js' { 103 | declare module.exports: $Exports<'flow-typed/dist/cli'>; 104 | } 105 | declare module 'flow-typed/dist/commands/create-stub.js' { 106 | declare module.exports: $Exports<'flow-typed/dist/commands/create-stub'>; 107 | } 108 | declare module 'flow-typed/dist/commands/install.js' { 109 | declare module.exports: $Exports<'flow-typed/dist/commands/install'>; 110 | } 111 | declare module 'flow-typed/dist/commands/runTests.js' { 112 | declare module.exports: $Exports<'flow-typed/dist/commands/runTests'>; 113 | } 114 | declare module 'flow-typed/dist/commands/search.js' { 115 | declare module.exports: $Exports<'flow-typed/dist/commands/search'>; 116 | } 117 | declare module 'flow-typed/dist/commands/update-cache.js' { 118 | declare module.exports: $Exports<'flow-typed/dist/commands/update-cache'>; 119 | } 120 | declare module 'flow-typed/dist/commands/update.js' { 121 | declare module.exports: $Exports<'flow-typed/dist/commands/update'>; 122 | } 123 | declare module 'flow-typed/dist/commands/validateDefs.js' { 124 | declare module.exports: $Exports<'flow-typed/dist/commands/validateDefs'>; 125 | } 126 | declare module 'flow-typed/dist/commands/version.js' { 127 | declare module.exports: $Exports<'flow-typed/dist/commands/version'>; 128 | } 129 | declare module 'flow-typed/dist/lib/codeSign.js' { 130 | declare module.exports: $Exports<'flow-typed/dist/lib/codeSign'>; 131 | } 132 | declare module 'flow-typed/dist/lib/fileUtils.js' { 133 | declare module.exports: $Exports<'flow-typed/dist/lib/fileUtils'>; 134 | } 135 | declare module 'flow-typed/dist/lib/flowProjectUtils.js' { 136 | declare module.exports: $Exports<'flow-typed/dist/lib/flowProjectUtils'>; 137 | } 138 | declare module 'flow-typed/dist/lib/git.js' { 139 | declare module.exports: $Exports<'flow-typed/dist/lib/git'>; 140 | } 141 | declare module 'flow-typed/dist/lib/github.js' { 142 | declare module.exports: $Exports<'flow-typed/dist/lib/github'>; 143 | } 144 | declare module 'flow-typed/dist/lib/libDefs.js' { 145 | declare module.exports: $Exports<'flow-typed/dist/lib/libDefs'>; 146 | } 147 | declare module 'flow-typed/dist/lib/node.js' { 148 | declare module.exports: $Exports<'flow-typed/dist/lib/node'>; 149 | } 150 | declare module 'flow-typed/dist/lib/npmProjectUtils.js' { 151 | declare module.exports: $Exports<'flow-typed/dist/lib/npmProjectUtils'>; 152 | } 153 | declare module 'flow-typed/dist/lib/semver.js' { 154 | declare module.exports: $Exports<'flow-typed/dist/lib/semver'>; 155 | } 156 | declare module 'flow-typed/dist/lib/stubUtils.js' { 157 | declare module.exports: $Exports<'flow-typed/dist/lib/stubUtils'>; 158 | } 159 | -------------------------------------------------------------------------------- /flow-typed/npm/html-webpack-plugin_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 3f22aa54e5cc798fdc74bf868b4203bc 2 | // flow-typed version: <>/html-webpack-plugin_v^2.28.0/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'html-webpack-plugin' 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 'html-webpack-plugin' { 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 'html-webpack-plugin/lib/chunksorter' { 26 | declare module.exports: any; 27 | } 28 | 29 | declare module 'html-webpack-plugin/lib/compiler' { 30 | declare module.exports: any; 31 | } 32 | 33 | declare module 'html-webpack-plugin/lib/errors' { 34 | declare module.exports: any; 35 | } 36 | 37 | declare module 'html-webpack-plugin/lib/loader' { 38 | declare module.exports: any; 39 | } 40 | 41 | // Filename aliases 42 | declare module 'html-webpack-plugin/index' { 43 | declare module.exports: $Exports<'html-webpack-plugin'>; 44 | } 45 | declare module 'html-webpack-plugin/index.js' { 46 | declare module.exports: $Exports<'html-webpack-plugin'>; 47 | } 48 | declare module 'html-webpack-plugin/lib/chunksorter.js' { 49 | declare module.exports: $Exports<'html-webpack-plugin/lib/chunksorter'>; 50 | } 51 | declare module 'html-webpack-plugin/lib/compiler.js' { 52 | declare module.exports: $Exports<'html-webpack-plugin/lib/compiler'>; 53 | } 54 | declare module 'html-webpack-plugin/lib/errors.js' { 55 | declare module.exports: $Exports<'html-webpack-plugin/lib/errors'>; 56 | } 57 | declare module 'html-webpack-plugin/lib/loader.js' { 58 | declare module.exports: $Exports<'html-webpack-plugin/lib/loader'>; 59 | } 60 | -------------------------------------------------------------------------------- /flow-typed/npm/image-webpack-loader_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 6e66b1bbddbaf0b0f67a44b4dccdf18f 2 | // flow-typed version: <>/image-webpack-loader_v^3.3.0/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'image-webpack-loader' 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 'image-webpack-loader' { 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 'image-webpack-loader/test/app' { 26 | declare module.exports: any; 27 | } 28 | 29 | declare module 'image-webpack-loader/test/webpack1.config' { 30 | declare module.exports: any; 31 | } 32 | 33 | declare module 'image-webpack-loader/test/webpack2.config' { 34 | declare module.exports: any; 35 | } 36 | 37 | // Filename aliases 38 | declare module 'image-webpack-loader/index' { 39 | declare module.exports: $Exports<'image-webpack-loader'>; 40 | } 41 | declare module 'image-webpack-loader/index.js' { 42 | declare module.exports: $Exports<'image-webpack-loader'>; 43 | } 44 | declare module 'image-webpack-loader/test/app.js' { 45 | declare module.exports: $Exports<'image-webpack-loader/test/app'>; 46 | } 47 | declare module 'image-webpack-loader/test/webpack1.config.js' { 48 | declare module.exports: $Exports<'image-webpack-loader/test/webpack1.config'>; 49 | } 50 | declare module 'image-webpack-loader/test/webpack2.config.js' { 51 | declare module.exports: $Exports<'image-webpack-loader/test/webpack2.config'>; 52 | } 53 | -------------------------------------------------------------------------------- /flow-typed/npm/morgan_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: c3ee99241a2f2222dfdbd9021522fa45 2 | // flow-typed version: <>/morgan_v^1.8.1/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'morgan' 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 'morgan' { 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 | 27 | // Filename aliases 28 | declare module 'morgan/index' { 29 | declare module.exports: $Exports<'morgan'>; 30 | } 31 | declare module 'morgan/index.js' { 32 | declare module.exports: $Exports<'morgan'>; 33 | } 34 | -------------------------------------------------------------------------------- /flow-typed/npm/nodemon_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 2d295ab66adccb83f4524fa3421490a1 2 | // flow-typed version: <>/nodemon_v^1.11.0/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'nodemon' 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 'nodemon' { 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 'nodemon/bin/nodemon' { 26 | declare module.exports: any; 27 | } 28 | 29 | declare module 'nodemon/lib/cli/index' { 30 | declare module.exports: any; 31 | } 32 | 33 | declare module 'nodemon/lib/cli/parse' { 34 | declare module.exports: any; 35 | } 36 | 37 | declare module 'nodemon/lib/config/command' { 38 | declare module.exports: any; 39 | } 40 | 41 | declare module 'nodemon/lib/config/defaults' { 42 | declare module.exports: any; 43 | } 44 | 45 | declare module 'nodemon/lib/config/exec' { 46 | declare module.exports: any; 47 | } 48 | 49 | declare module 'nodemon/lib/config/index' { 50 | declare module.exports: any; 51 | } 52 | 53 | declare module 'nodemon/lib/config/load' { 54 | declare module.exports: any; 55 | } 56 | 57 | declare module 'nodemon/lib/help/index' { 58 | declare module.exports: any; 59 | } 60 | 61 | declare module 'nodemon/lib/index' { 62 | declare module.exports: any; 63 | } 64 | 65 | declare module 'nodemon/lib/monitor/index' { 66 | declare module.exports: any; 67 | } 68 | 69 | declare module 'nodemon/lib/monitor/match' { 70 | declare module.exports: any; 71 | } 72 | 73 | declare module 'nodemon/lib/monitor/run' { 74 | declare module.exports: any; 75 | } 76 | 77 | declare module 'nodemon/lib/monitor/watch' { 78 | declare module.exports: any; 79 | } 80 | 81 | declare module 'nodemon/lib/nodemon' { 82 | declare module.exports: any; 83 | } 84 | 85 | declare module 'nodemon/lib/rules/add' { 86 | declare module.exports: any; 87 | } 88 | 89 | declare module 'nodemon/lib/rules/index' { 90 | declare module.exports: any; 91 | } 92 | 93 | declare module 'nodemon/lib/rules/parse' { 94 | declare module.exports: any; 95 | } 96 | 97 | declare module 'nodemon/lib/spawn' { 98 | declare module.exports: any; 99 | } 100 | 101 | declare module 'nodemon/lib/utils/bus' { 102 | declare module.exports: any; 103 | } 104 | 105 | declare module 'nodemon/lib/utils/clone' { 106 | declare module.exports: any; 107 | } 108 | 109 | declare module 'nodemon/lib/utils/colour' { 110 | declare module.exports: any; 111 | } 112 | 113 | declare module 'nodemon/lib/utils/index' { 114 | declare module.exports: any; 115 | } 116 | 117 | declare module 'nodemon/lib/utils/log' { 118 | declare module.exports: any; 119 | } 120 | 121 | declare module 'nodemon/lib/utils/merge' { 122 | declare module.exports: any; 123 | } 124 | 125 | declare module 'nodemon/lib/version' { 126 | declare module.exports: any; 127 | } 128 | 129 | declare module 'nodemon/web/index' { 130 | declare module.exports: any; 131 | } 132 | 133 | // Filename aliases 134 | declare module 'nodemon/bin/nodemon.js' { 135 | declare module.exports: $Exports<'nodemon/bin/nodemon'>; 136 | } 137 | declare module 'nodemon/lib/cli/index.js' { 138 | declare module.exports: $Exports<'nodemon/lib/cli/index'>; 139 | } 140 | declare module 'nodemon/lib/cli/parse.js' { 141 | declare module.exports: $Exports<'nodemon/lib/cli/parse'>; 142 | } 143 | declare module 'nodemon/lib/config/command.js' { 144 | declare module.exports: $Exports<'nodemon/lib/config/command'>; 145 | } 146 | declare module 'nodemon/lib/config/defaults.js' { 147 | declare module.exports: $Exports<'nodemon/lib/config/defaults'>; 148 | } 149 | declare module 'nodemon/lib/config/exec.js' { 150 | declare module.exports: $Exports<'nodemon/lib/config/exec'>; 151 | } 152 | declare module 'nodemon/lib/config/index.js' { 153 | declare module.exports: $Exports<'nodemon/lib/config/index'>; 154 | } 155 | declare module 'nodemon/lib/config/load.js' { 156 | declare module.exports: $Exports<'nodemon/lib/config/load'>; 157 | } 158 | declare module 'nodemon/lib/help/index.js' { 159 | declare module.exports: $Exports<'nodemon/lib/help/index'>; 160 | } 161 | declare module 'nodemon/lib/index.js' { 162 | declare module.exports: $Exports<'nodemon/lib/index'>; 163 | } 164 | declare module 'nodemon/lib/monitor/index.js' { 165 | declare module.exports: $Exports<'nodemon/lib/monitor/index'>; 166 | } 167 | declare module 'nodemon/lib/monitor/match.js' { 168 | declare module.exports: $Exports<'nodemon/lib/monitor/match'>; 169 | } 170 | declare module 'nodemon/lib/monitor/run.js' { 171 | declare module.exports: $Exports<'nodemon/lib/monitor/run'>; 172 | } 173 | declare module 'nodemon/lib/monitor/watch.js' { 174 | declare module.exports: $Exports<'nodemon/lib/monitor/watch'>; 175 | } 176 | declare module 'nodemon/lib/nodemon.js' { 177 | declare module.exports: $Exports<'nodemon/lib/nodemon'>; 178 | } 179 | declare module 'nodemon/lib/rules/add.js' { 180 | declare module.exports: $Exports<'nodemon/lib/rules/add'>; 181 | } 182 | declare module 'nodemon/lib/rules/index.js' { 183 | declare module.exports: $Exports<'nodemon/lib/rules/index'>; 184 | } 185 | declare module 'nodemon/lib/rules/parse.js' { 186 | declare module.exports: $Exports<'nodemon/lib/rules/parse'>; 187 | } 188 | declare module 'nodemon/lib/spawn.js' { 189 | declare module.exports: $Exports<'nodemon/lib/spawn'>; 190 | } 191 | declare module 'nodemon/lib/utils/bus.js' { 192 | declare module.exports: $Exports<'nodemon/lib/utils/bus'>; 193 | } 194 | declare module 'nodemon/lib/utils/clone.js' { 195 | declare module.exports: $Exports<'nodemon/lib/utils/clone'>; 196 | } 197 | declare module 'nodemon/lib/utils/colour.js' { 198 | declare module.exports: $Exports<'nodemon/lib/utils/colour'>; 199 | } 200 | declare module 'nodemon/lib/utils/index.js' { 201 | declare module.exports: $Exports<'nodemon/lib/utils/index'>; 202 | } 203 | declare module 'nodemon/lib/utils/log.js' { 204 | declare module.exports: $Exports<'nodemon/lib/utils/log'>; 205 | } 206 | declare module 'nodemon/lib/utils/merge.js' { 207 | declare module.exports: $Exports<'nodemon/lib/utils/merge'>; 208 | } 209 | declare module 'nodemon/lib/version.js' { 210 | declare module.exports: $Exports<'nodemon/lib/version'>; 211 | } 212 | declare module 'nodemon/web/index.js' { 213 | declare module.exports: $Exports<'nodemon/web/index'>; 214 | } 215 | -------------------------------------------------------------------------------- /flow-typed/npm/normalize.css_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 8ff396745c28dfa865e87f48e022746b 2 | // flow-typed version: <>/normalize.css_v^6.0.0/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'normalize.css' 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 'normalize.css' { 17 | declare module.exports: any; 18 | } 19 | -------------------------------------------------------------------------------- /flow-typed/npm/offline-plugin_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: baf69616c48ac105ce064d02e179b910 2 | // flow-typed version: <>/offline-plugin_v^4.7.0/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'offline-plugin' 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 'offline-plugin' { 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 'offline-plugin/empty-entry' { 26 | declare module.exports: any; 27 | } 28 | 29 | declare module 'offline-plugin/lib/app-cache' { 30 | declare module.exports: any; 31 | } 32 | 33 | declare module 'offline-plugin/lib/index' { 34 | declare module.exports: any; 35 | } 36 | 37 | declare module 'offline-plugin/lib/loaders/fonts-css' { 38 | declare module.exports: any; 39 | } 40 | 41 | declare module 'offline-plugin/lib/loaders/index' { 42 | declare module.exports: any; 43 | } 44 | 45 | declare module 'offline-plugin/lib/misc/runtime-loader' { 46 | declare module.exports: any; 47 | } 48 | 49 | declare module 'offline-plugin/lib/misc/sw-loader' { 50 | declare module.exports: any; 51 | } 52 | 53 | declare module 'offline-plugin/lib/misc/sw-polyfill' { 54 | declare module.exports: any; 55 | } 56 | 57 | declare module 'offline-plugin/lib/misc/sw-template' { 58 | declare module.exports: any; 59 | } 60 | 61 | declare module 'offline-plugin/lib/misc/utils' { 62 | declare module.exports: any; 63 | } 64 | 65 | declare module 'offline-plugin/lib/service-worker' { 66 | declare module.exports: any; 67 | } 68 | 69 | declare module 'offline-plugin/runtime' { 70 | declare module.exports: any; 71 | } 72 | 73 | declare module 'offline-plugin/tpls/runtime-template' { 74 | declare module.exports: any; 75 | } 76 | 77 | // Filename aliases 78 | declare module 'offline-plugin/empty-entry.js' { 79 | declare module.exports: $Exports<'offline-plugin/empty-entry'>; 80 | } 81 | declare module 'offline-plugin/lib/app-cache.js' { 82 | declare module.exports: $Exports<'offline-plugin/lib/app-cache'>; 83 | } 84 | declare module 'offline-plugin/lib/index.js' { 85 | declare module.exports: $Exports<'offline-plugin/lib/index'>; 86 | } 87 | declare module 'offline-plugin/lib/loaders/fonts-css.js' { 88 | declare module.exports: $Exports<'offline-plugin/lib/loaders/fonts-css'>; 89 | } 90 | declare module 'offline-plugin/lib/loaders/index.js' { 91 | declare module.exports: $Exports<'offline-plugin/lib/loaders/index'>; 92 | } 93 | declare module 'offline-plugin/lib/misc/runtime-loader.js' { 94 | declare module.exports: $Exports<'offline-plugin/lib/misc/runtime-loader'>; 95 | } 96 | declare module 'offline-plugin/lib/misc/sw-loader.js' { 97 | declare module.exports: $Exports<'offline-plugin/lib/misc/sw-loader'>; 98 | } 99 | declare module 'offline-plugin/lib/misc/sw-polyfill.js' { 100 | declare module.exports: $Exports<'offline-plugin/lib/misc/sw-polyfill'>; 101 | } 102 | declare module 'offline-plugin/lib/misc/sw-template.js' { 103 | declare module.exports: $Exports<'offline-plugin/lib/misc/sw-template'>; 104 | } 105 | declare module 'offline-plugin/lib/misc/utils.js' { 106 | declare module.exports: $Exports<'offline-plugin/lib/misc/utils'>; 107 | } 108 | declare module 'offline-plugin/lib/service-worker.js' { 109 | declare module.exports: $Exports<'offline-plugin/lib/service-worker'>; 110 | } 111 | declare module 'offline-plugin/runtime.js' { 112 | declare module.exports: $Exports<'offline-plugin/runtime'>; 113 | } 114 | declare module 'offline-plugin/tpls/runtime-template.js' { 115 | declare module.exports: $Exports<'offline-plugin/tpls/runtime-template'>; 116 | } 117 | -------------------------------------------------------------------------------- /flow-typed/npm/postcss-loader_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: d2285c00bdf93955bf02306e5a5a6670 2 | // flow-typed version: <>/postcss-loader_v^1.3.3/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'postcss-loader' 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 'postcss-loader' { 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 'postcss-loader/error' { 26 | declare module.exports: any; 27 | } 28 | 29 | // Filename aliases 30 | declare module 'postcss-loader/error.js' { 31 | declare module.exports: $Exports<'postcss-loader/error'>; 32 | } 33 | declare module 'postcss-loader/index' { 34 | declare module.exports: $Exports<'postcss-loader'>; 35 | } 36 | declare module 'postcss-loader/index.js' { 37 | declare module.exports: $Exports<'postcss-loader'>; 38 | } 39 | -------------------------------------------------------------------------------- /flow-typed/npm/react-addons-test-utils_v15.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 323fcc1a3353d5f7a36c5f1edcd963ef 2 | // flow-typed version: 41f45a7d8c/react-addons-test-utils_v15.x.x/flow_>=v0.23.x 3 | 4 | declare type ReactAddonTest$FunctionOrComponentClass = React$Component | Function; 5 | declare module 'react-addons-test-utils' { 6 | declare var Simulate: { 7 | [eventName: string]: (element: Element, eventData?: Object) => void; 8 | }; 9 | declare function renderIntoDocument(instance: React$Element): React$Component; 10 | declare function mockComponent(componentClass: ReactAddonTest$FunctionOrComponentClass, mockTagName?: string): Object; 11 | declare function isElement(element: React$Element): boolean; 12 | declare function isElementOfType(element: React$Element, componentClass: ReactAddonTest$FunctionOrComponentClass): boolean; 13 | declare function isDOMComponent(instance: React$Component): boolean; 14 | declare function isCompositeComponent(instance: React$Component): boolean; 15 | declare function isCompositeComponentWithType(instance: React$Component, componentClass: ReactAddonTest$FunctionOrComponentClass): boolean; 16 | declare function findAllInRenderedTree(tree: React$Component, test: (child: React$Component) => boolean): Array>; 17 | declare function scryRenderedDOMComponentsWithClass(tree: React$Component, className: string): Array; 18 | declare function findRenderedDOMComponentWithClass(tree: React$Component, className: string): ?Element; 19 | declare function scryRenderedDOMComponentsWithTag(tree: React$Component, tagName: string): Array; 20 | declare function findRenderedDOMComponentWithTag(tree: React$Component, tagName: string): ?Element; 21 | declare function scryRenderedComponentsWithType(tree: React$Component, componentClass: ReactAddonTest$FunctionOrComponentClass): Array>; 22 | declare function findRenderedComponentWithType(tree: React$Component, componentClass: ReactAddonTest$FunctionOrComponentClass): ?React$Component; 23 | declare class ReactShallowRender { 24 | render(element: React$Element): void; 25 | getRenderOutput(): React$Element; 26 | } 27 | declare function createRenderer(): ReactShallowRender; 28 | } 29 | -------------------------------------------------------------------------------- /flow-typed/npm/react-hot-loader_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: edfd4d1029448942e835afc16cef4b32 2 | // flow-typed version: <>/react-hot-loader_v3.0.0-beta.6/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'react-hot-loader' 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 'react-hot-loader' { 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 'react-hot-loader/babel' { 26 | declare module.exports: any; 27 | } 28 | 29 | declare module 'react-hot-loader/lib/AppContainer.dev' { 30 | declare module.exports: any; 31 | } 32 | 33 | declare module 'react-hot-loader/lib/AppContainer' { 34 | declare module.exports: any; 35 | } 36 | 37 | declare module 'react-hot-loader/lib/AppContainer.prod' { 38 | declare module.exports: any; 39 | } 40 | 41 | declare module 'react-hot-loader/lib/babel/index' { 42 | declare module.exports: any; 43 | } 44 | 45 | declare module 'react-hot-loader/lib/index' { 46 | declare module.exports: any; 47 | } 48 | 49 | declare module 'react-hot-loader/lib/patch.dev' { 50 | declare module.exports: any; 51 | } 52 | 53 | declare module 'react-hot-loader/lib/patch' { 54 | declare module.exports: any; 55 | } 56 | 57 | declare module 'react-hot-loader/lib/patch.prod' { 58 | declare module.exports: any; 59 | } 60 | 61 | declare module 'react-hot-loader/lib/webpack/index' { 62 | declare module.exports: any; 63 | } 64 | 65 | declare module 'react-hot-loader/lib/webpack/makeIdentitySourceMap' { 66 | declare module.exports: any; 67 | } 68 | 69 | declare module 'react-hot-loader/lib/webpack/tagCommonJSExports' { 70 | declare module.exports: any; 71 | } 72 | 73 | declare module 'react-hot-loader/patch' { 74 | declare module.exports: any; 75 | } 76 | 77 | declare module 'react-hot-loader/webpack' { 78 | declare module.exports: any; 79 | } 80 | 81 | // Filename aliases 82 | declare module 'react-hot-loader/babel.js' { 83 | declare module.exports: $Exports<'react-hot-loader/babel'>; 84 | } 85 | declare module 'react-hot-loader/index' { 86 | declare module.exports: $Exports<'react-hot-loader'>; 87 | } 88 | declare module 'react-hot-loader/index.js' { 89 | declare module.exports: $Exports<'react-hot-loader'>; 90 | } 91 | declare module 'react-hot-loader/lib/AppContainer.dev.js' { 92 | declare module.exports: $Exports<'react-hot-loader/lib/AppContainer.dev'>; 93 | } 94 | declare module 'react-hot-loader/lib/AppContainer.js' { 95 | declare module.exports: $Exports<'react-hot-loader/lib/AppContainer'>; 96 | } 97 | declare module 'react-hot-loader/lib/AppContainer.prod.js' { 98 | declare module.exports: $Exports<'react-hot-loader/lib/AppContainer.prod'>; 99 | } 100 | declare module 'react-hot-loader/lib/babel/index.js' { 101 | declare module.exports: $Exports<'react-hot-loader/lib/babel/index'>; 102 | } 103 | declare module 'react-hot-loader/lib/index.js' { 104 | declare module.exports: $Exports<'react-hot-loader/lib/index'>; 105 | } 106 | declare module 'react-hot-loader/lib/patch.dev.js' { 107 | declare module.exports: $Exports<'react-hot-loader/lib/patch.dev'>; 108 | } 109 | declare module 'react-hot-loader/lib/patch.js' { 110 | declare module.exports: $Exports<'react-hot-loader/lib/patch'>; 111 | } 112 | declare module 'react-hot-loader/lib/patch.prod.js' { 113 | declare module.exports: $Exports<'react-hot-loader/lib/patch.prod'>; 114 | } 115 | declare module 'react-hot-loader/lib/webpack/index.js' { 116 | declare module.exports: $Exports<'react-hot-loader/lib/webpack/index'>; 117 | } 118 | declare module 'react-hot-loader/lib/webpack/makeIdentitySourceMap.js' { 119 | declare module.exports: $Exports<'react-hot-loader/lib/webpack/makeIdentitySourceMap'>; 120 | } 121 | declare module 'react-hot-loader/lib/webpack/tagCommonJSExports.js' { 122 | declare module.exports: $Exports<'react-hot-loader/lib/webpack/tagCommonJSExports'>; 123 | } 124 | declare module 'react-hot-loader/patch.js' { 125 | declare module.exports: $Exports<'react-hot-loader/patch'>; 126 | } 127 | declare module 'react-hot-loader/webpack.js' { 128 | declare module.exports: $Exports<'react-hot-loader/webpack'>; 129 | } 130 | -------------------------------------------------------------------------------- /flow-typed/npm/react-redux_v5.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 0ed284c5a2e97a9e3c0e87af3dedc09d 2 | // flow-typed version: bdf1e66252/react-redux_v5.x.x/flow_>=v0.30.x 3 | 4 | import type { Dispatch, Store } from 'redux' 5 | 6 | declare module 'react-redux' { 7 | 8 | /* 9 | 10 | S = State 11 | A = Action 12 | OP = OwnProps 13 | SP = StateProps 14 | DP = DispatchProps 15 | 16 | */ 17 | 18 | declare type MapStateToProps = (state: S, ownProps: OP) => SP | MapStateToProps; 19 | 20 | declare type MapDispatchToProps = ((dispatch: Dispatch, ownProps: OP) => DP) | DP; 21 | 22 | declare type MergeProps = (stateProps: SP, dispatchProps: DP, ownProps: OP) => P; 23 | 24 | declare type StatelessComponent

= (props: P) => ?React$Element; 25 | 26 | declare class ConnectedComponent extends React$Component { 27 | static WrappedComponent: Class>; 28 | getWrappedInstance(): React$Component; 29 | static defaultProps: void; 30 | props: OP; 31 | state: void; 32 | } 33 | 34 | declare type ConnectedComponentClass = Class>; 35 | 36 | declare type Connector = { 37 | (component: StatelessComponent

): ConnectedComponentClass; 38 | (component: Class>): ConnectedComponentClass; 39 | }; 40 | 41 | declare class Provider extends React$Component, children?: any }, void> { } 42 | 43 | declare type ConnectOptions = { 44 | pure?: boolean, 45 | withRef?: boolean 46 | }; 47 | 48 | declare type Null = null | void; 49 | 50 | declare function connect( 51 | ...rest: Array // <= workaround for https://github.com/facebook/flow/issues/2360 52 | ): Connector } & OP>>; 53 | 54 | declare function connect( 55 | mapStateToProps: Null, 56 | mapDispatchToProps: Null, 57 | mergeProps: Null, 58 | options: ConnectOptions 59 | ): Connector } & OP>>; 60 | 61 | declare function connect( 62 | mapStateToProps: MapStateToProps, 63 | mapDispatchToProps: Null, 64 | mergeProps: Null, 65 | options?: ConnectOptions 66 | ): Connector } & OP>>; 67 | 68 | declare function connect( 69 | mapStateToProps: Null, 70 | mapDispatchToProps: MapDispatchToProps, 71 | mergeProps: Null, 72 | options?: ConnectOptions 73 | ): Connector>; 74 | 75 | declare function connect( 76 | mapStateToProps: MapStateToProps, 77 | mapDispatchToProps: MapDispatchToProps, 78 | mergeProps: Null, 79 | options?: ConnectOptions 80 | ): Connector>; 81 | 82 | declare function connect( 83 | mapStateToProps: MapStateToProps, 84 | mapDispatchToProps: MapDispatchToProps, 85 | mergeProps: MergeProps, 86 | options?: ConnectOptions 87 | ): Connector; 88 | 89 | } 90 | -------------------------------------------------------------------------------- /flow-typed/npm/redbox-react_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: ae6080d9dd2e0f4f18d5c2ac9f263f4b 2 | // flow-typed version: <>/redbox-react_v^1.3.6/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'redbox-react' 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 'redbox-react' { 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 'redbox-react/dist/redbox' { 26 | declare module.exports: any; 27 | } 28 | 29 | declare module 'redbox-react/dist/redbox.min' { 30 | declare module.exports: any; 31 | } 32 | 33 | declare module 'redbox-react/lib/index' { 34 | declare module.exports: any; 35 | } 36 | 37 | declare module 'redbox-react/lib/lib' { 38 | declare module.exports: any; 39 | } 40 | 41 | declare module 'redbox-react/lib/style' { 42 | declare module.exports: any; 43 | } 44 | 45 | declare module 'redbox-react/src/index' { 46 | declare module.exports: any; 47 | } 48 | 49 | declare module 'redbox-react/src/lib' { 50 | declare module.exports: any; 51 | } 52 | 53 | declare module 'redbox-react/src/style' { 54 | declare module.exports: any; 55 | } 56 | 57 | // Filename aliases 58 | declare module 'redbox-react/dist/redbox.js' { 59 | declare module.exports: $Exports<'redbox-react/dist/redbox'>; 60 | } 61 | declare module 'redbox-react/dist/redbox.min.js' { 62 | declare module.exports: $Exports<'redbox-react/dist/redbox.min'>; 63 | } 64 | declare module 'redbox-react/lib/index.js' { 65 | declare module.exports: $Exports<'redbox-react/lib/index'>; 66 | } 67 | declare module 'redbox-react/lib/lib.js' { 68 | declare module.exports: $Exports<'redbox-react/lib/lib'>; 69 | } 70 | declare module 'redbox-react/lib/style.js' { 71 | declare module.exports: $Exports<'redbox-react/lib/style'>; 72 | } 73 | declare module 'redbox-react/src/index.js' { 74 | declare module.exports: $Exports<'redbox-react/src/index'>; 75 | } 76 | declare module 'redbox-react/src/lib.js' { 77 | declare module.exports: $Exports<'redbox-react/src/lib'>; 78 | } 79 | declare module 'redbox-react/src/style.js' { 80 | declare module.exports: $Exports<'redbox-react/src/style'>; 81 | } 82 | -------------------------------------------------------------------------------- /flow-typed/npm/redux-logger_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 82b6877d2e911bfb45d71727cb52f02e 2 | // flow-typed version: <>/redux-logger_v^3.0.1/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'redux-logger' 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 'redux-logger' { 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 'redux-logger/dist/index' { 26 | declare module.exports: any; 27 | } 28 | 29 | declare module 'redux-logger/dist/index.min' { 30 | declare module.exports: any; 31 | } 32 | 33 | declare module 'redux-logger/lib/core' { 34 | declare module.exports: any; 35 | } 36 | 37 | declare module 'redux-logger/lib/defaults' { 38 | declare module.exports: any; 39 | } 40 | 41 | declare module 'redux-logger/lib/diff' { 42 | declare module.exports: any; 43 | } 44 | 45 | declare module 'redux-logger/lib/helpers' { 46 | declare module.exports: any; 47 | } 48 | 49 | declare module 'redux-logger/lib/index' { 50 | declare module.exports: any; 51 | } 52 | 53 | declare module 'redux-logger/src/core' { 54 | declare module.exports: any; 55 | } 56 | 57 | declare module 'redux-logger/src/defaults' { 58 | declare module.exports: any; 59 | } 60 | 61 | declare module 'redux-logger/src/diff' { 62 | declare module.exports: any; 63 | } 64 | 65 | declare module 'redux-logger/src/helpers' { 66 | declare module.exports: any; 67 | } 68 | 69 | declare module 'redux-logger/src/index' { 70 | declare module.exports: any; 71 | } 72 | 73 | // Filename aliases 74 | declare module 'redux-logger/dist/index.js' { 75 | declare module.exports: $Exports<'redux-logger/dist/index'>; 76 | } 77 | declare module 'redux-logger/dist/index.min.js' { 78 | declare module.exports: $Exports<'redux-logger/dist/index.min'>; 79 | } 80 | declare module 'redux-logger/lib/core.js' { 81 | declare module.exports: $Exports<'redux-logger/lib/core'>; 82 | } 83 | declare module 'redux-logger/lib/defaults.js' { 84 | declare module.exports: $Exports<'redux-logger/lib/defaults'>; 85 | } 86 | declare module 'redux-logger/lib/diff.js' { 87 | declare module.exports: $Exports<'redux-logger/lib/diff'>; 88 | } 89 | declare module 'redux-logger/lib/helpers.js' { 90 | declare module.exports: $Exports<'redux-logger/lib/helpers'>; 91 | } 92 | declare module 'redux-logger/lib/index.js' { 93 | declare module.exports: $Exports<'redux-logger/lib/index'>; 94 | } 95 | declare module 'redux-logger/src/core.js' { 96 | declare module.exports: $Exports<'redux-logger/src/core'>; 97 | } 98 | declare module 'redux-logger/src/defaults.js' { 99 | declare module.exports: $Exports<'redux-logger/src/defaults'>; 100 | } 101 | declare module 'redux-logger/src/diff.js' { 102 | declare module.exports: $Exports<'redux-logger/src/diff'>; 103 | } 104 | declare module 'redux-logger/src/helpers.js' { 105 | declare module.exports: $Exports<'redux-logger/src/helpers'>; 106 | } 107 | declare module 'redux-logger/src/index.js' { 108 | declare module.exports: $Exports<'redux-logger/src/index'>; 109 | } 110 | -------------------------------------------------------------------------------- /flow-typed/npm/redux-thunk_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 94e812360f3f3f4a16e35501a28ce5c2 2 | // flow-typed version: <>/redux-thunk_v^2.2.0/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'redux-thunk' 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 'redux-thunk' { 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 'redux-thunk/dist/redux-thunk' { 26 | declare module.exports: any; 27 | } 28 | 29 | declare module 'redux-thunk/dist/redux-thunk.min' { 30 | declare module.exports: any; 31 | } 32 | 33 | declare module 'redux-thunk/es/index' { 34 | declare module.exports: any; 35 | } 36 | 37 | declare module 'redux-thunk/lib/index' { 38 | declare module.exports: any; 39 | } 40 | 41 | declare module 'redux-thunk/src/index' { 42 | declare module.exports: any; 43 | } 44 | 45 | // Filename aliases 46 | declare module 'redux-thunk/dist/redux-thunk.js' { 47 | declare module.exports: $Exports<'redux-thunk/dist/redux-thunk'>; 48 | } 49 | declare module 'redux-thunk/dist/redux-thunk.min.js' { 50 | declare module.exports: $Exports<'redux-thunk/dist/redux-thunk.min'>; 51 | } 52 | declare module 'redux-thunk/es/index.js' { 53 | declare module.exports: $Exports<'redux-thunk/es/index'>; 54 | } 55 | declare module 'redux-thunk/lib/index.js' { 56 | declare module.exports: $Exports<'redux-thunk/lib/index'>; 57 | } 58 | declare module 'redux-thunk/src/index.js' { 59 | declare module.exports: $Exports<'redux-thunk/src/index'>; 60 | } 61 | -------------------------------------------------------------------------------- /flow-typed/npm/redux_v3.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 7f1a115f75043c44385071ea3f33c586 2 | // flow-typed version: 358375125e/redux_v3.x.x/flow_>=v0.33.x 3 | 4 | declare module 'redux' { 5 | 6 | /* 7 | 8 | S = State 9 | A = Action 10 | 11 | */ 12 | 13 | declare type Dispatch }> = (action: A) => A; 14 | 15 | declare type MiddlewareAPI = { 16 | dispatch: Dispatch; 17 | getState(): S; 18 | }; 19 | 20 | declare type Store = { 21 | // rewrite MiddlewareAPI members in order to get nicer error messages (intersections produce long messages) 22 | dispatch: Dispatch; 23 | getState(): S; 24 | subscribe(listener: () => void): () => void; 25 | replaceReducer(nextReducer: Reducer): void 26 | }; 27 | 28 | declare type Reducer = (state: S, action: A) => S; 29 | 30 | declare type CombinedReducer = (state: $Shape & {} | void, action: A) => S; 31 | 32 | declare type Middleware = 33 | (api: MiddlewareAPI) => 34 | (next: Dispatch) => Dispatch; 35 | 36 | declare type StoreCreator = { 37 | (reducer: Reducer, enhancer?: StoreEnhancer): Store; 38 | (reducer: Reducer, preloadedState: S, enhancer?: StoreEnhancer): Store; 39 | }; 40 | 41 | declare type StoreEnhancer = (next: StoreCreator) => StoreCreator; 42 | 43 | declare function createStore(reducer: Reducer, enhancer?: StoreEnhancer): Store; 44 | declare function createStore(reducer: Reducer, preloadedState: S, enhancer?: StoreEnhancer): Store; 45 | 46 | declare function applyMiddleware(...middlewares: Array>): StoreEnhancer; 47 | 48 | declare type ActionCreator = (...args: Array) => A; 49 | declare type ActionCreators = { [key: K]: ActionCreator }; 50 | 51 | declare function bindActionCreators>(actionCreator: C, dispatch: Dispatch): C; 52 | declare function bindActionCreators>(actionCreators: C, dispatch: Dispatch): C; 53 | 54 | declare function combineReducers(reducers: O): CombinedReducer<$ObjMap(r: Reducer) => S>, A>; 55 | 56 | declare function compose(...fns: Array>): Function; 57 | 58 | } 59 | -------------------------------------------------------------------------------- /flow-typed/npm/rimraf_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 11af39e01b4809feeba8a47813d9142a 2 | // flow-typed version: <>/rimraf_v^2.6.1/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'rimraf' 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 'rimraf' { 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 'rimraf/bin' { 26 | declare module.exports: any; 27 | } 28 | 29 | declare module 'rimraf/rimraf' { 30 | declare module.exports: any; 31 | } 32 | 33 | // Filename aliases 34 | declare module 'rimraf/bin.js' { 35 | declare module.exports: $Exports<'rimraf/bin'>; 36 | } 37 | declare module 'rimraf/rimraf.js' { 38 | declare module.exports: $Exports<'rimraf/rimraf'>; 39 | } 40 | -------------------------------------------------------------------------------- /flow-typed/npm/style-loader_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: eaefe17f2dc6de6097f5ae7396e6c675 2 | // flow-typed version: <>/style-loader_v^0.16.1/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'style-loader' 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 'style-loader' { 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 'style-loader/addStyles' { 26 | declare module.exports: any; 27 | } 28 | 29 | declare module 'style-loader/addStyleUrl' { 30 | declare module.exports: any; 31 | } 32 | 33 | declare module 'style-loader/fixUrls' { 34 | declare module.exports: any; 35 | } 36 | 37 | declare module 'style-loader/test/basicTest' { 38 | declare module.exports: any; 39 | } 40 | 41 | declare module 'style-loader/test/fixUrlsTest' { 42 | declare module.exports: any; 43 | } 44 | 45 | declare module 'style-loader/test/utils' { 46 | declare module.exports: any; 47 | } 48 | 49 | declare module 'style-loader/url' { 50 | declare module.exports: any; 51 | } 52 | 53 | declare module 'style-loader/useable' { 54 | declare module.exports: any; 55 | } 56 | 57 | // Filename aliases 58 | declare module 'style-loader/addStyles.js' { 59 | declare module.exports: $Exports<'style-loader/addStyles'>; 60 | } 61 | declare module 'style-loader/addStyleUrl.js' { 62 | declare module.exports: $Exports<'style-loader/addStyleUrl'>; 63 | } 64 | declare module 'style-loader/fixUrls.js' { 65 | declare module.exports: $Exports<'style-loader/fixUrls'>; 66 | } 67 | declare module 'style-loader/index' { 68 | declare module.exports: $Exports<'style-loader'>; 69 | } 70 | declare module 'style-loader/index.js' { 71 | declare module.exports: $Exports<'style-loader'>; 72 | } 73 | declare module 'style-loader/test/basicTest.js' { 74 | declare module.exports: $Exports<'style-loader/test/basicTest'>; 75 | } 76 | declare module 'style-loader/test/fixUrlsTest.js' { 77 | declare module.exports: $Exports<'style-loader/test/fixUrlsTest'>; 78 | } 79 | declare module 'style-loader/test/utils.js' { 80 | declare module.exports: $Exports<'style-loader/test/utils'>; 81 | } 82 | declare module 'style-loader/url.js' { 83 | declare module.exports: $Exports<'style-loader/url'>; 84 | } 85 | declare module 'style-loader/useable.js' { 86 | declare module.exports: $Exports<'style-loader/useable'>; 87 | } 88 | -------------------------------------------------------------------------------- /flow-typed/npm/styled-components_v1.4.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: e0384a3ab38cf7ce71e0f20a49980386 2 | // flow-typed version: e8362066ed/styled-components_v1.4.x/flow_>=v0.25.x 3 | 4 | // @flow 5 | 6 | declare module 'styled-components' { 7 | declare type Interpolation = ((executionContext: Object) => string) | string | number; 8 | declare type NameGenerator = (hash: number) => string 9 | 10 | declare type StyledComponent = ( 11 | strings: Array, 12 | ...interpolations: Array 13 | ) => ReactClass<*>; 14 | 15 | 16 | declare type Theme = {[key: string]: mixed}; 17 | declare type ThemeProviderProps = { 18 | theme: ((outerTheme: Theme) => void) | Theme 19 | }; 20 | 21 | declare class ThemeProvider extends React$Component { 22 | props: ThemeProviderProps; 23 | } 24 | 25 | declare module.exports: { 26 | injectGlobal: (strings: Array, ...interpolations: Array) => void, 27 | css: (strings: Array, ...interpolations: Array) => Array, 28 | keyframes: (nameGenerator: NameGenerator) => (strings: Array, ...interpolations: Array) => string, 29 | withTheme: () => React$Component<*, ThemeProviderProps, *>, 30 | ThemeProvider: typeof ThemeProvider, 31 | (baseComponent: React$Component<*, * , *>): StyledComponent, 32 | a: StyledComponent, 33 | abbr: StyledComponent, 34 | address: StyledComponent, 35 | area: StyledComponent, 36 | article: StyledComponent, 37 | aside: StyledComponent, 38 | audio: StyledComponent, 39 | b: StyledComponent, 40 | base: StyledComponent, 41 | bdi: StyledComponent, 42 | bdo: StyledComponent, 43 | big: StyledComponent, 44 | blockquote: StyledComponent, 45 | body: StyledComponent, 46 | br: StyledComponent, 47 | button: StyledComponent, 48 | canvas: StyledComponent, 49 | caption: StyledComponent, 50 | cite: StyledComponent, 51 | code: StyledComponent, 52 | col: StyledComponent, 53 | colgroup: StyledComponent, 54 | data: StyledComponent, 55 | datalist: StyledComponent, 56 | dd: StyledComponent, 57 | del: StyledComponent, 58 | details: StyledComponent, 59 | dfn: StyledComponent, 60 | dialog: StyledComponent, 61 | div: StyledComponent, 62 | dl: StyledComponent, 63 | dt: StyledComponent, 64 | em: StyledComponent, 65 | embed: StyledComponent, 66 | fieldset: StyledComponent, 67 | figcaption: StyledComponent, 68 | figure: StyledComponent, 69 | footer: StyledComponent, 70 | form: StyledComponent, 71 | h1: StyledComponent, 72 | h2: StyledComponent, 73 | h3: StyledComponent, 74 | h4: StyledComponent, 75 | h5: StyledComponent, 76 | h6: StyledComponent, 77 | head: StyledComponent, 78 | header: StyledComponent, 79 | hgroup: StyledComponent, 80 | hr: StyledComponent, 81 | html: StyledComponent, 82 | i: StyledComponent, 83 | iframe: StyledComponent, 84 | img: StyledComponent, 85 | input: StyledComponent, 86 | ins: StyledComponent, 87 | kbd: StyledComponent, 88 | keygen: StyledComponent, 89 | label: StyledComponent, 90 | legend: StyledComponent, 91 | li: StyledComponent, 92 | link: StyledComponent, 93 | main: StyledComponent, 94 | map: StyledComponent, 95 | mark: StyledComponent, 96 | menu: StyledComponent, 97 | menuitem: StyledComponent, 98 | meta: StyledComponent, 99 | meter: StyledComponent, 100 | nav: StyledComponent, 101 | noscript: StyledComponent, 102 | object: StyledComponent, 103 | ol: StyledComponent, 104 | optgroup: StyledComponent, 105 | option: StyledComponent, 106 | output: StyledComponent, 107 | p: StyledComponent, 108 | param: StyledComponent, 109 | picture: StyledComponent, 110 | pre: StyledComponent, 111 | progress: StyledComponent, 112 | q: StyledComponent, 113 | rp: StyledComponent, 114 | rt: StyledComponent, 115 | ruby: StyledComponent, 116 | s: StyledComponent, 117 | samp: StyledComponent, 118 | script: StyledComponent, 119 | section: StyledComponent, 120 | select: StyledComponent, 121 | small: StyledComponent, 122 | source: StyledComponent, 123 | span: StyledComponent, 124 | strong: StyledComponent, 125 | style: StyledComponent, 126 | sub: StyledComponent, 127 | summary: StyledComponent, 128 | sup: StyledComponent, 129 | table: StyledComponent, 130 | tbody: StyledComponent, 131 | td: StyledComponent, 132 | textarea: StyledComponent, 133 | tfoot: StyledComponent, 134 | th: StyledComponent, 135 | thead: StyledComponent, 136 | time: StyledComponent, 137 | title: StyledComponent, 138 | tr: StyledComponent, 139 | track: StyledComponent, 140 | u: StyledComponent, 141 | ul: StyledComponent, 142 | var: StyledComponent, 143 | video: StyledComponent, 144 | wbr: StyledComponent, 145 | 146 | // SVG 147 | circle: StyledComponent, 148 | clipPath: StyledComponent, 149 | defs: StyledComponent, 150 | ellipse: StyledComponent, 151 | g: StyledComponent, 152 | image: StyledComponent, 153 | line: StyledComponent, 154 | linearGradient: StyledComponent, 155 | mask: StyledComponent, 156 | path: StyledComponent, 157 | pattern: StyledComponent, 158 | polygon: StyledComponent, 159 | polyline: StyledComponent, 160 | radialGradient: StyledComponent, 161 | rect: StyledComponent, 162 | stop: StyledComponent, 163 | svg: StyledComponent, 164 | text: StyledComponent, 165 | tspan: StyledComponent, 166 | }; 167 | } 168 | -------------------------------------------------------------------------------- /flow-typed/npm/supertest_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: ccfc0121c84941350b2ff93ee87084f1 2 | // flow-typed version: <>/supertest_v^3.0.0/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'supertest' 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 'supertest' { 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 'supertest/lib/agent' { 26 | declare module.exports: any; 27 | } 28 | 29 | declare module 'supertest/lib/test' { 30 | declare module.exports: any; 31 | } 32 | 33 | declare module 'supertest/test/supertest' { 34 | declare module.exports: any; 35 | } 36 | 37 | // Filename aliases 38 | declare module 'supertest/index' { 39 | declare module.exports: $Exports<'supertest'>; 40 | } 41 | declare module 'supertest/index.js' { 42 | declare module.exports: $Exports<'supertest'>; 43 | } 44 | declare module 'supertest/lib/agent.js' { 45 | declare module.exports: $Exports<'supertest/lib/agent'>; 46 | } 47 | declare module 'supertest/lib/test.js' { 48 | declare module.exports: $Exports<'supertest/lib/test'>; 49 | } 50 | declare module 'supertest/test/supertest.js' { 51 | declare module.exports: $Exports<'supertest/test/supertest'>; 52 | } 53 | -------------------------------------------------------------------------------- /flow-typed/npm/sw-precache-webpack-plugin_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 98545cd2d8e71d17932f0e6c7a09954c 2 | // flow-typed version: <>/sw-precache-webpack-plugin_v^0.9.1/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'sw-precache-webpack-plugin' 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 'sw-precache-webpack-plugin' { 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 'sw-precache-webpack-plugin/lib/index' { 26 | declare module.exports: any; 27 | } 28 | 29 | // Filename aliases 30 | declare module 'sw-precache-webpack-plugin/lib/index.js' { 31 | declare module.exports: $Exports<'sw-precache-webpack-plugin/lib/index'>; 32 | } 33 | -------------------------------------------------------------------------------- /flow-typed/npm/url-loader_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 80a2ca6c3c04449a0daccfb42cd7fe24 2 | // flow-typed version: <>/url-loader_v^0.5.8/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'url-loader' 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 'url-loader' { 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 | 27 | // Filename aliases 28 | declare module 'url-loader/index' { 29 | declare module.exports: $Exports<'url-loader'>; 30 | } 31 | declare module 'url-loader/index.js' { 32 | declare module.exports: $Exports<'url-loader'>; 33 | } 34 | -------------------------------------------------------------------------------- /flow-typed/npm/validator_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: b43a3f20a220a8e868ac6b2a9216bcf4 2 | // flow-typed version: <>/validator_v^7.0.0/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'validator' 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 'validator' { 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 'validator/lib/alpha' { 26 | declare module.exports: any; 27 | } 28 | 29 | declare module 'validator/lib/blacklist' { 30 | declare module.exports: any; 31 | } 32 | 33 | declare module 'validator/lib/contains' { 34 | declare module.exports: any; 35 | } 36 | 37 | declare module 'validator/lib/equals' { 38 | declare module.exports: any; 39 | } 40 | 41 | declare module 'validator/lib/escape' { 42 | declare module.exports: any; 43 | } 44 | 45 | declare module 'validator/lib/isAfter' { 46 | declare module.exports: any; 47 | } 48 | 49 | declare module 'validator/lib/isAlpha' { 50 | declare module.exports: any; 51 | } 52 | 53 | declare module 'validator/lib/isAlphanumeric' { 54 | declare module.exports: any; 55 | } 56 | 57 | declare module 'validator/lib/isAscii' { 58 | declare module.exports: any; 59 | } 60 | 61 | declare module 'validator/lib/isBase64' { 62 | declare module.exports: any; 63 | } 64 | 65 | declare module 'validator/lib/isBefore' { 66 | declare module.exports: any; 67 | } 68 | 69 | declare module 'validator/lib/isBoolean' { 70 | declare module.exports: any; 71 | } 72 | 73 | declare module 'validator/lib/isByteLength' { 74 | declare module.exports: any; 75 | } 76 | 77 | declare module 'validator/lib/isCreditCard' { 78 | declare module.exports: any; 79 | } 80 | 81 | declare module 'validator/lib/isCurrency' { 82 | declare module.exports: any; 83 | } 84 | 85 | declare module 'validator/lib/isDataURI' { 86 | declare module.exports: any; 87 | } 88 | 89 | declare module 'validator/lib/isDate' { 90 | declare module.exports: any; 91 | } 92 | 93 | declare module 'validator/lib/isDecimal' { 94 | declare module.exports: any; 95 | } 96 | 97 | declare module 'validator/lib/isDivisibleBy' { 98 | declare module.exports: any; 99 | } 100 | 101 | declare module 'validator/lib/isEmail' { 102 | declare module.exports: any; 103 | } 104 | 105 | declare module 'validator/lib/isEmpty' { 106 | declare module.exports: any; 107 | } 108 | 109 | declare module 'validator/lib/isFloat' { 110 | declare module.exports: any; 111 | } 112 | 113 | declare module 'validator/lib/isFQDN' { 114 | declare module.exports: any; 115 | } 116 | 117 | declare module 'validator/lib/isFullWidth' { 118 | declare module.exports: any; 119 | } 120 | 121 | declare module 'validator/lib/isHalfWidth' { 122 | declare module.exports: any; 123 | } 124 | 125 | declare module 'validator/lib/isHexadecimal' { 126 | declare module.exports: any; 127 | } 128 | 129 | declare module 'validator/lib/isHexColor' { 130 | declare module.exports: any; 131 | } 132 | 133 | declare module 'validator/lib/isIn' { 134 | declare module.exports: any; 135 | } 136 | 137 | declare module 'validator/lib/isInt' { 138 | declare module.exports: any; 139 | } 140 | 141 | declare module 'validator/lib/isIP' { 142 | declare module.exports: any; 143 | } 144 | 145 | declare module 'validator/lib/isISBN' { 146 | declare module.exports: any; 147 | } 148 | 149 | declare module 'validator/lib/isISIN' { 150 | declare module.exports: any; 151 | } 152 | 153 | declare module 'validator/lib/isISO8601' { 154 | declare module.exports: any; 155 | } 156 | 157 | declare module 'validator/lib/isISSN' { 158 | declare module.exports: any; 159 | } 160 | 161 | declare module 'validator/lib/isJSON' { 162 | declare module.exports: any; 163 | } 164 | 165 | declare module 'validator/lib/isLength' { 166 | declare module.exports: any; 167 | } 168 | 169 | declare module 'validator/lib/isLowercase' { 170 | declare module.exports: any; 171 | } 172 | 173 | declare module 'validator/lib/isMACAddress' { 174 | declare module.exports: any; 175 | } 176 | 177 | declare module 'validator/lib/isMD5' { 178 | declare module.exports: any; 179 | } 180 | 181 | declare module 'validator/lib/isMobilePhone' { 182 | declare module.exports: any; 183 | } 184 | 185 | declare module 'validator/lib/isMongoId' { 186 | declare module.exports: any; 187 | } 188 | 189 | declare module 'validator/lib/isMultibyte' { 190 | declare module.exports: any; 191 | } 192 | 193 | declare module 'validator/lib/isNumeric' { 194 | declare module.exports: any; 195 | } 196 | 197 | declare module 'validator/lib/isSurrogatePair' { 198 | declare module.exports: any; 199 | } 200 | 201 | declare module 'validator/lib/isUppercase' { 202 | declare module.exports: any; 203 | } 204 | 205 | declare module 'validator/lib/isURL' { 206 | declare module.exports: any; 207 | } 208 | 209 | declare module 'validator/lib/isUUID' { 210 | declare module.exports: any; 211 | } 212 | 213 | declare module 'validator/lib/isVariableWidth' { 214 | declare module.exports: any; 215 | } 216 | 217 | declare module 'validator/lib/isWhitelisted' { 218 | declare module.exports: any; 219 | } 220 | 221 | declare module 'validator/lib/ltrim' { 222 | declare module.exports: any; 223 | } 224 | 225 | declare module 'validator/lib/matches' { 226 | declare module.exports: any; 227 | } 228 | 229 | declare module 'validator/lib/normalizeEmail' { 230 | declare module.exports: any; 231 | } 232 | 233 | declare module 'validator/lib/rtrim' { 234 | declare module.exports: any; 235 | } 236 | 237 | declare module 'validator/lib/stripLow' { 238 | declare module.exports: any; 239 | } 240 | 241 | declare module 'validator/lib/toBoolean' { 242 | declare module.exports: any; 243 | } 244 | 245 | declare module 'validator/lib/toDate' { 246 | declare module.exports: any; 247 | } 248 | 249 | declare module 'validator/lib/toFloat' { 250 | declare module.exports: any; 251 | } 252 | 253 | declare module 'validator/lib/toInt' { 254 | declare module.exports: any; 255 | } 256 | 257 | declare module 'validator/lib/trim' { 258 | declare module.exports: any; 259 | } 260 | 261 | declare module 'validator/lib/unescape' { 262 | declare module.exports: any; 263 | } 264 | 265 | declare module 'validator/lib/util/assertString' { 266 | declare module.exports: any; 267 | } 268 | 269 | declare module 'validator/lib/util/merge' { 270 | declare module.exports: any; 271 | } 272 | 273 | declare module 'validator/lib/util/toString' { 274 | declare module.exports: any; 275 | } 276 | 277 | declare module 'validator/lib/whitelist' { 278 | declare module.exports: any; 279 | } 280 | 281 | declare module 'validator/validator' { 282 | declare module.exports: any; 283 | } 284 | 285 | declare module 'validator/validator.min' { 286 | declare module.exports: any; 287 | } 288 | 289 | // Filename aliases 290 | declare module 'validator/index' { 291 | declare module.exports: $Exports<'validator'>; 292 | } 293 | declare module 'validator/index.js' { 294 | declare module.exports: $Exports<'validator'>; 295 | } 296 | declare module 'validator/lib/alpha.js' { 297 | declare module.exports: $Exports<'validator/lib/alpha'>; 298 | } 299 | declare module 'validator/lib/blacklist.js' { 300 | declare module.exports: $Exports<'validator/lib/blacklist'>; 301 | } 302 | declare module 'validator/lib/contains.js' { 303 | declare module.exports: $Exports<'validator/lib/contains'>; 304 | } 305 | declare module 'validator/lib/equals.js' { 306 | declare module.exports: $Exports<'validator/lib/equals'>; 307 | } 308 | declare module 'validator/lib/escape.js' { 309 | declare module.exports: $Exports<'validator/lib/escape'>; 310 | } 311 | declare module 'validator/lib/isAfter.js' { 312 | declare module.exports: $Exports<'validator/lib/isAfter'>; 313 | } 314 | declare module 'validator/lib/isAlpha.js' { 315 | declare module.exports: $Exports<'validator/lib/isAlpha'>; 316 | } 317 | declare module 'validator/lib/isAlphanumeric.js' { 318 | declare module.exports: $Exports<'validator/lib/isAlphanumeric'>; 319 | } 320 | declare module 'validator/lib/isAscii.js' { 321 | declare module.exports: $Exports<'validator/lib/isAscii'>; 322 | } 323 | declare module 'validator/lib/isBase64.js' { 324 | declare module.exports: $Exports<'validator/lib/isBase64'>; 325 | } 326 | declare module 'validator/lib/isBefore.js' { 327 | declare module.exports: $Exports<'validator/lib/isBefore'>; 328 | } 329 | declare module 'validator/lib/isBoolean.js' { 330 | declare module.exports: $Exports<'validator/lib/isBoolean'>; 331 | } 332 | declare module 'validator/lib/isByteLength.js' { 333 | declare module.exports: $Exports<'validator/lib/isByteLength'>; 334 | } 335 | declare module 'validator/lib/isCreditCard.js' { 336 | declare module.exports: $Exports<'validator/lib/isCreditCard'>; 337 | } 338 | declare module 'validator/lib/isCurrency.js' { 339 | declare module.exports: $Exports<'validator/lib/isCurrency'>; 340 | } 341 | declare module 'validator/lib/isDataURI.js' { 342 | declare module.exports: $Exports<'validator/lib/isDataURI'>; 343 | } 344 | declare module 'validator/lib/isDate.js' { 345 | declare module.exports: $Exports<'validator/lib/isDate'>; 346 | } 347 | declare module 'validator/lib/isDecimal.js' { 348 | declare module.exports: $Exports<'validator/lib/isDecimal'>; 349 | } 350 | declare module 'validator/lib/isDivisibleBy.js' { 351 | declare module.exports: $Exports<'validator/lib/isDivisibleBy'>; 352 | } 353 | declare module 'validator/lib/isEmail.js' { 354 | declare module.exports: $Exports<'validator/lib/isEmail'>; 355 | } 356 | declare module 'validator/lib/isEmpty.js' { 357 | declare module.exports: $Exports<'validator/lib/isEmpty'>; 358 | } 359 | declare module 'validator/lib/isFloat.js' { 360 | declare module.exports: $Exports<'validator/lib/isFloat'>; 361 | } 362 | declare module 'validator/lib/isFQDN.js' { 363 | declare module.exports: $Exports<'validator/lib/isFQDN'>; 364 | } 365 | declare module 'validator/lib/isFullWidth.js' { 366 | declare module.exports: $Exports<'validator/lib/isFullWidth'>; 367 | } 368 | declare module 'validator/lib/isHalfWidth.js' { 369 | declare module.exports: $Exports<'validator/lib/isHalfWidth'>; 370 | } 371 | declare module 'validator/lib/isHexadecimal.js' { 372 | declare module.exports: $Exports<'validator/lib/isHexadecimal'>; 373 | } 374 | declare module 'validator/lib/isHexColor.js' { 375 | declare module.exports: $Exports<'validator/lib/isHexColor'>; 376 | } 377 | declare module 'validator/lib/isIn.js' { 378 | declare module.exports: $Exports<'validator/lib/isIn'>; 379 | } 380 | declare module 'validator/lib/isInt.js' { 381 | declare module.exports: $Exports<'validator/lib/isInt'>; 382 | } 383 | declare module 'validator/lib/isIP.js' { 384 | declare module.exports: $Exports<'validator/lib/isIP'>; 385 | } 386 | declare module 'validator/lib/isISBN.js' { 387 | declare module.exports: $Exports<'validator/lib/isISBN'>; 388 | } 389 | declare module 'validator/lib/isISIN.js' { 390 | declare module.exports: $Exports<'validator/lib/isISIN'>; 391 | } 392 | declare module 'validator/lib/isISO8601.js' { 393 | declare module.exports: $Exports<'validator/lib/isISO8601'>; 394 | } 395 | declare module 'validator/lib/isISSN.js' { 396 | declare module.exports: $Exports<'validator/lib/isISSN'>; 397 | } 398 | declare module 'validator/lib/isJSON.js' { 399 | declare module.exports: $Exports<'validator/lib/isJSON'>; 400 | } 401 | declare module 'validator/lib/isLength.js' { 402 | declare module.exports: $Exports<'validator/lib/isLength'>; 403 | } 404 | declare module 'validator/lib/isLowercase.js' { 405 | declare module.exports: $Exports<'validator/lib/isLowercase'>; 406 | } 407 | declare module 'validator/lib/isMACAddress.js' { 408 | declare module.exports: $Exports<'validator/lib/isMACAddress'>; 409 | } 410 | declare module 'validator/lib/isMD5.js' { 411 | declare module.exports: $Exports<'validator/lib/isMD5'>; 412 | } 413 | declare module 'validator/lib/isMobilePhone.js' { 414 | declare module.exports: $Exports<'validator/lib/isMobilePhone'>; 415 | } 416 | declare module 'validator/lib/isMongoId.js' { 417 | declare module.exports: $Exports<'validator/lib/isMongoId'>; 418 | } 419 | declare module 'validator/lib/isMultibyte.js' { 420 | declare module.exports: $Exports<'validator/lib/isMultibyte'>; 421 | } 422 | declare module 'validator/lib/isNumeric.js' { 423 | declare module.exports: $Exports<'validator/lib/isNumeric'>; 424 | } 425 | declare module 'validator/lib/isSurrogatePair.js' { 426 | declare module.exports: $Exports<'validator/lib/isSurrogatePair'>; 427 | } 428 | declare module 'validator/lib/isUppercase.js' { 429 | declare module.exports: $Exports<'validator/lib/isUppercase'>; 430 | } 431 | declare module 'validator/lib/isURL.js' { 432 | declare module.exports: $Exports<'validator/lib/isURL'>; 433 | } 434 | declare module 'validator/lib/isUUID.js' { 435 | declare module.exports: $Exports<'validator/lib/isUUID'>; 436 | } 437 | declare module 'validator/lib/isVariableWidth.js' { 438 | declare module.exports: $Exports<'validator/lib/isVariableWidth'>; 439 | } 440 | declare module 'validator/lib/isWhitelisted.js' { 441 | declare module.exports: $Exports<'validator/lib/isWhitelisted'>; 442 | } 443 | declare module 'validator/lib/ltrim.js' { 444 | declare module.exports: $Exports<'validator/lib/ltrim'>; 445 | } 446 | declare module 'validator/lib/matches.js' { 447 | declare module.exports: $Exports<'validator/lib/matches'>; 448 | } 449 | declare module 'validator/lib/normalizeEmail.js' { 450 | declare module.exports: $Exports<'validator/lib/normalizeEmail'>; 451 | } 452 | declare module 'validator/lib/rtrim.js' { 453 | declare module.exports: $Exports<'validator/lib/rtrim'>; 454 | } 455 | declare module 'validator/lib/stripLow.js' { 456 | declare module.exports: $Exports<'validator/lib/stripLow'>; 457 | } 458 | declare module 'validator/lib/toBoolean.js' { 459 | declare module.exports: $Exports<'validator/lib/toBoolean'>; 460 | } 461 | declare module 'validator/lib/toDate.js' { 462 | declare module.exports: $Exports<'validator/lib/toDate'>; 463 | } 464 | declare module 'validator/lib/toFloat.js' { 465 | declare module.exports: $Exports<'validator/lib/toFloat'>; 466 | } 467 | declare module 'validator/lib/toInt.js' { 468 | declare module.exports: $Exports<'validator/lib/toInt'>; 469 | } 470 | declare module 'validator/lib/trim.js' { 471 | declare module.exports: $Exports<'validator/lib/trim'>; 472 | } 473 | declare module 'validator/lib/unescape.js' { 474 | declare module.exports: $Exports<'validator/lib/unescape'>; 475 | } 476 | declare module 'validator/lib/util/assertString.js' { 477 | declare module.exports: $Exports<'validator/lib/util/assertString'>; 478 | } 479 | declare module 'validator/lib/util/merge.js' { 480 | declare module.exports: $Exports<'validator/lib/util/merge'>; 481 | } 482 | declare module 'validator/lib/util/toString.js' { 483 | declare module.exports: $Exports<'validator/lib/util/toString'>; 484 | } 485 | declare module 'validator/lib/whitelist.js' { 486 | declare module.exports: $Exports<'validator/lib/whitelist'>; 487 | } 488 | declare module 'validator/validator.js' { 489 | declare module.exports: $Exports<'validator/validator'>; 490 | } 491 | declare module 'validator/validator.min.js' { 492 | declare module.exports: $Exports<'validator/validator.min'>; 493 | } 494 | -------------------------------------------------------------------------------- /flow-typed/npm/webpack-bundle-analyzer_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 35275e9570cf67d67a1be05ff105499e 2 | // flow-typed version: <>/webpack-bundle-analyzer_v^2.4.0/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'webpack-bundle-analyzer' 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 'webpack-bundle-analyzer' { 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 'webpack-bundle-analyzer/lib/analyzer' { 26 | declare module.exports: any; 27 | } 28 | 29 | declare module 'webpack-bundle-analyzer/lib/bin/analyzer' { 30 | declare module.exports: any; 31 | } 32 | 33 | declare module 'webpack-bundle-analyzer/lib/BundleAnalyzerPlugin' { 34 | declare module.exports: any; 35 | } 36 | 37 | declare module 'webpack-bundle-analyzer/lib/index' { 38 | declare module.exports: any; 39 | } 40 | 41 | declare module 'webpack-bundle-analyzer/lib/Logger' { 42 | declare module.exports: any; 43 | } 44 | 45 | declare module 'webpack-bundle-analyzer/lib/parseUtils' { 46 | declare module.exports: any; 47 | } 48 | 49 | declare module 'webpack-bundle-analyzer/lib/tree' { 50 | declare module.exports: any; 51 | } 52 | 53 | declare module 'webpack-bundle-analyzer/lib/viewer' { 54 | declare module.exports: any; 55 | } 56 | 57 | declare module 'webpack-bundle-analyzer/public/viewer' { 58 | declare module.exports: any; 59 | } 60 | 61 | declare module 'webpack-bundle-analyzer/src/analyzer' { 62 | declare module.exports: any; 63 | } 64 | 65 | declare module 'webpack-bundle-analyzer/src/bin/analyzer' { 66 | declare module.exports: any; 67 | } 68 | 69 | declare module 'webpack-bundle-analyzer/src/BundleAnalyzerPlugin' { 70 | declare module.exports: any; 71 | } 72 | 73 | declare module 'webpack-bundle-analyzer/src/index' { 74 | declare module.exports: any; 75 | } 76 | 77 | declare module 'webpack-bundle-analyzer/src/Logger' { 78 | declare module.exports: any; 79 | } 80 | 81 | declare module 'webpack-bundle-analyzer/src/parseUtils' { 82 | declare module.exports: any; 83 | } 84 | 85 | declare module 'webpack-bundle-analyzer/src/tree' { 86 | declare module.exports: any; 87 | } 88 | 89 | declare module 'webpack-bundle-analyzer/src/viewer' { 90 | declare module.exports: any; 91 | } 92 | 93 | // Filename aliases 94 | declare module 'webpack-bundle-analyzer/lib/analyzer.js' { 95 | declare module.exports: $Exports<'webpack-bundle-analyzer/lib/analyzer'>; 96 | } 97 | declare module 'webpack-bundle-analyzer/lib/bin/analyzer.js' { 98 | declare module.exports: $Exports<'webpack-bundle-analyzer/lib/bin/analyzer'>; 99 | } 100 | declare module 'webpack-bundle-analyzer/lib/BundleAnalyzerPlugin.js' { 101 | declare module.exports: $Exports<'webpack-bundle-analyzer/lib/BundleAnalyzerPlugin'>; 102 | } 103 | declare module 'webpack-bundle-analyzer/lib/index.js' { 104 | declare module.exports: $Exports<'webpack-bundle-analyzer/lib/index'>; 105 | } 106 | declare module 'webpack-bundle-analyzer/lib/Logger.js' { 107 | declare module.exports: $Exports<'webpack-bundle-analyzer/lib/Logger'>; 108 | } 109 | declare module 'webpack-bundle-analyzer/lib/parseUtils.js' { 110 | declare module.exports: $Exports<'webpack-bundle-analyzer/lib/parseUtils'>; 111 | } 112 | declare module 'webpack-bundle-analyzer/lib/tree.js' { 113 | declare module.exports: $Exports<'webpack-bundle-analyzer/lib/tree'>; 114 | } 115 | declare module 'webpack-bundle-analyzer/lib/viewer.js' { 116 | declare module.exports: $Exports<'webpack-bundle-analyzer/lib/viewer'>; 117 | } 118 | declare module 'webpack-bundle-analyzer/public/viewer.js' { 119 | declare module.exports: $Exports<'webpack-bundle-analyzer/public/viewer'>; 120 | } 121 | declare module 'webpack-bundle-analyzer/src/analyzer.js' { 122 | declare module.exports: $Exports<'webpack-bundle-analyzer/src/analyzer'>; 123 | } 124 | declare module 'webpack-bundle-analyzer/src/bin/analyzer.js' { 125 | declare module.exports: $Exports<'webpack-bundle-analyzer/src/bin/analyzer'>; 126 | } 127 | declare module 'webpack-bundle-analyzer/src/BundleAnalyzerPlugin.js' { 128 | declare module.exports: $Exports<'webpack-bundle-analyzer/src/BundleAnalyzerPlugin'>; 129 | } 130 | declare module 'webpack-bundle-analyzer/src/index.js' { 131 | declare module.exports: $Exports<'webpack-bundle-analyzer/src/index'>; 132 | } 133 | declare module 'webpack-bundle-analyzer/src/Logger.js' { 134 | declare module.exports: $Exports<'webpack-bundle-analyzer/src/Logger'>; 135 | } 136 | declare module 'webpack-bundle-analyzer/src/parseUtils.js' { 137 | declare module.exports: $Exports<'webpack-bundle-analyzer/src/parseUtils'>; 138 | } 139 | declare module 'webpack-bundle-analyzer/src/tree.js' { 140 | declare module.exports: $Exports<'webpack-bundle-analyzer/src/tree'>; 141 | } 142 | declare module 'webpack-bundle-analyzer/src/viewer.js' { 143 | declare module.exports: $Exports<'webpack-bundle-analyzer/src/viewer'>; 144 | } 145 | -------------------------------------------------------------------------------- /flow-typed/npm/webpack-dashboard_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: f5e716d3288f79dc397811e7a2d60b8c 2 | // flow-typed version: <>/webpack-dashboard_v^0.3.0/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'webpack-dashboard' 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 'webpack-dashboard' { 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 'webpack-dashboard/bin/webpack-dashboard' { 26 | declare module.exports: any; 27 | } 28 | 29 | declare module 'webpack-dashboard/dashboard/index' { 30 | declare module.exports: any; 31 | } 32 | 33 | declare module 'webpack-dashboard/plugin/index' { 34 | declare module.exports: any; 35 | } 36 | 37 | declare module 'webpack-dashboard/utils/format-assets' { 38 | declare module.exports: any; 39 | } 40 | 41 | declare module 'webpack-dashboard/utils/format-modules' { 42 | declare module.exports: any; 43 | } 44 | 45 | declare module 'webpack-dashboard/utils/format-output' { 46 | declare module.exports: any; 47 | } 48 | 49 | // Filename aliases 50 | declare module 'webpack-dashboard/bin/webpack-dashboard.js' { 51 | declare module.exports: $Exports<'webpack-dashboard/bin/webpack-dashboard'>; 52 | } 53 | declare module 'webpack-dashboard/dashboard/index.js' { 54 | declare module.exports: $Exports<'webpack-dashboard/dashboard/index'>; 55 | } 56 | declare module 'webpack-dashboard/index' { 57 | declare module.exports: $Exports<'webpack-dashboard'>; 58 | } 59 | declare module 'webpack-dashboard/index.js' { 60 | declare module.exports: $Exports<'webpack-dashboard'>; 61 | } 62 | declare module 'webpack-dashboard/plugin/index.js' { 63 | declare module.exports: $Exports<'webpack-dashboard/plugin/index'>; 64 | } 65 | declare module 'webpack-dashboard/utils/format-assets.js' { 66 | declare module.exports: $Exports<'webpack-dashboard/utils/format-assets'>; 67 | } 68 | declare module 'webpack-dashboard/utils/format-modules.js' { 69 | declare module.exports: $Exports<'webpack-dashboard/utils/format-modules'>; 70 | } 71 | declare module 'webpack-dashboard/utils/format-output.js' { 72 | declare module.exports: $Exports<'webpack-dashboard/utils/format-output'>; 73 | } 74 | -------------------------------------------------------------------------------- /flow-typed/npm/webpack-dev-server_vx.x.x.js: -------------------------------------------------------------------------------- 1 | // flow-typed signature: 5643c70b0dcefa38bdb33014e654e786 2 | // flow-typed version: <>/webpack-dev-server_v^2.4.2/flow_v0.44.2 3 | 4 | /** 5 | * This is an autogenerated libdef stub for: 6 | * 7 | * 'webpack-dev-server' 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 'webpack-dev-server' { 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 'webpack-dev-server/bin/webpack-dev-server' { 26 | declare module.exports: any; 27 | } 28 | 29 | declare module 'webpack-dev-server/client/index.bundle' { 30 | declare module.exports: any; 31 | } 32 | 33 | declare module 'webpack-dev-server/client/index' { 34 | declare module.exports: any; 35 | } 36 | 37 | declare module 'webpack-dev-server/client/live.bundle' { 38 | declare module.exports: any; 39 | } 40 | 41 | declare module 'webpack-dev-server/client/live' { 42 | declare module.exports: any; 43 | } 44 | 45 | declare module 'webpack-dev-server/client/overlay' { 46 | declare module.exports: any; 47 | } 48 | 49 | declare module 'webpack-dev-server/client/socket' { 50 | declare module.exports: any; 51 | } 52 | 53 | declare module 'webpack-dev-server/client/sockjs.bundle' { 54 | declare module.exports: any; 55 | } 56 | 57 | declare module 'webpack-dev-server/client/sockjs' { 58 | declare module.exports: any; 59 | } 60 | 61 | declare module 'webpack-dev-server/client/web_modules/jquery/index' { 62 | declare module.exports: any; 63 | } 64 | 65 | declare module 'webpack-dev-server/client/web_modules/jquery/jquery-1.8.1' { 66 | declare module.exports: any; 67 | } 68 | 69 | declare module 'webpack-dev-server/client/webpack.config' { 70 | declare module.exports: any; 71 | } 72 | 73 | declare module 'webpack-dev-server/client/webpack.sockjs.config' { 74 | declare module.exports: any; 75 | } 76 | 77 | declare module 'webpack-dev-server/lib/OptionsValidationError' { 78 | declare module.exports: any; 79 | } 80 | 81 | declare module 'webpack-dev-server/lib/Server' { 82 | declare module.exports: any; 83 | } 84 | 85 | declare module 'webpack-dev-server/lib/util/addDevServerEntrypoints' { 86 | declare module.exports: any; 87 | } 88 | 89 | declare module 'webpack-dev-server/lib/util/createDomain' { 90 | declare module.exports: any; 91 | } 92 | 93 | // Filename aliases 94 | declare module 'webpack-dev-server/bin/webpack-dev-server.js' { 95 | declare module.exports: $Exports<'webpack-dev-server/bin/webpack-dev-server'>; 96 | } 97 | declare module 'webpack-dev-server/client/index.bundle.js' { 98 | declare module.exports: $Exports<'webpack-dev-server/client/index.bundle'>; 99 | } 100 | declare module 'webpack-dev-server/client/index.js' { 101 | declare module.exports: $Exports<'webpack-dev-server/client/index'>; 102 | } 103 | declare module 'webpack-dev-server/client/live.bundle.js' { 104 | declare module.exports: $Exports<'webpack-dev-server/client/live.bundle'>; 105 | } 106 | declare module 'webpack-dev-server/client/live.js' { 107 | declare module.exports: $Exports<'webpack-dev-server/client/live'>; 108 | } 109 | declare module 'webpack-dev-server/client/overlay.js' { 110 | declare module.exports: $Exports<'webpack-dev-server/client/overlay'>; 111 | } 112 | declare module 'webpack-dev-server/client/socket.js' { 113 | declare module.exports: $Exports<'webpack-dev-server/client/socket'>; 114 | } 115 | declare module 'webpack-dev-server/client/sockjs.bundle.js' { 116 | declare module.exports: $Exports<'webpack-dev-server/client/sockjs.bundle'>; 117 | } 118 | declare module 'webpack-dev-server/client/sockjs.js' { 119 | declare module.exports: $Exports<'webpack-dev-server/client/sockjs'>; 120 | } 121 | declare module 'webpack-dev-server/client/web_modules/jquery/index.js' { 122 | declare module.exports: $Exports<'webpack-dev-server/client/web_modules/jquery/index'>; 123 | } 124 | declare module 'webpack-dev-server/client/web_modules/jquery/jquery-1.8.1.js' { 125 | declare module.exports: $Exports<'webpack-dev-server/client/web_modules/jquery/jquery-1.8.1'>; 126 | } 127 | declare module 'webpack-dev-server/client/webpack.config.js' { 128 | declare module.exports: $Exports<'webpack-dev-server/client/webpack.config'>; 129 | } 130 | declare module 'webpack-dev-server/client/webpack.sockjs.config.js' { 131 | declare module.exports: $Exports<'webpack-dev-server/client/webpack.sockjs.config'>; 132 | } 133 | declare module 'webpack-dev-server/lib/OptionsValidationError.js' { 134 | declare module.exports: $Exports<'webpack-dev-server/lib/OptionsValidationError'>; 135 | } 136 | declare module 'webpack-dev-server/lib/Server.js' { 137 | declare module.exports: $Exports<'webpack-dev-server/lib/Server'>; 138 | } 139 | declare module 'webpack-dev-server/lib/util/addDevServerEntrypoints.js' { 140 | declare module.exports: $Exports<'webpack-dev-server/lib/util/addDevServerEntrypoints'>; 141 | } 142 | declare module 'webpack-dev-server/lib/util/createDomain.js' { 143 | declare module.exports: $Exports<'webpack-dev-server/lib/util/createDomain'>; 144 | } 145 | -------------------------------------------------------------------------------- /nodemon.json: -------------------------------------------------------------------------------- 1 | { 2 | "ignore": ["src/*"] 3 | } 4 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "thinkful-workshop-full-stack-webpack2", 3 | "version": "0.1.0", 4 | "description": "Thinkful workshop for help student work with a full stack project", 5 | "main": "index.js", 6 | "author": "EQuimper ", 7 | "license": "MIT", 8 | "scripts": { 9 | "deploy": "now -e MONGODB=@mongodb", 10 | "test": "jest --coverage --watch --colors", 11 | "start": "cross-env NODE_ENV=production nodemon index.js", 12 | "build": "cross-env npm run clean && NODE_ENV=production webpack -p --progress --profile --colors --config webpack.prod.config.js", 13 | "server:watch": "babel -w --out-dir=server_dist ./server", 14 | "clean": "rimraf dist", 15 | "dev:c": "cross-env NODE_ENV=development webpack-dev-server --colors --profile --config webpack.dev.config.js", 16 | "dev:s": "cross-env NODE_ENV=development nodemon server_dist/index.js", 17 | "alias": "thinkful-workshop-webpack2-node-react", 18 | "lint": "eslint src server" 19 | }, 20 | "dependencies": { 21 | "autoprefixer": "^6.7.7", 22 | "axios": "^0.16.1", 23 | "babel-plugin-syntax-dynamic-import": "^6.18.0", 24 | "babel-plugin-syntax-flow": "^6.18.0", 25 | "babel-plugin-transform-decorators-legacy": "^1.3.4", 26 | "babel-plugin-transform-flow-strip-types": "^6.22.0", 27 | "babel-polyfill": "^6.23.0", 28 | "babel-preset-es2015": "^6.24.1", 29 | "babel-preset-react": "^6.24.1", 30 | "babel-preset-stage-0": "^6.24.1", 31 | "babel-register": "^6.24.1", 32 | "body-parser": "^1.17.1", 33 | "compression": "^1.6.2", 34 | "cross-env": "^4.0.0", 35 | "dotenv": "^4.0.0", 36 | "express": "^4.15.2", 37 | "mongoose": "^4.9.5", 38 | "morgan": "^1.8.1", 39 | "nodemon": "^1.11.0", 40 | "normalize.css": "^6.0.0", 41 | "react": "^15.5.4", 42 | "react-dom": "^15.5.4", 43 | "react-redux": "^5.0.4", 44 | "react-router": "^3.0.2", 45 | "redux": "^3.6.0", 46 | "redux-thunk": "^2.2.0", 47 | "reselect": "^3.0.0", 48 | "styled-components": "^1.4.5", 49 | "validator": "^7.0.0" 50 | }, 51 | "devDependencies": { 52 | "babel-core": "^6.24.1", 53 | "babel-jest": "^19.0.0", 54 | "babel-loader": "^6.4.1", 55 | "babel-plugin-transform-object-rest-spread": "^6.23.0", 56 | "babel-preset-env": "^1.4.0", 57 | "chunk-manifest-webpack-plugin": "^1.0.0", 58 | "copy-webpack-plugin": "^4.0.1", 59 | "css-loader": "^0.28.0", 60 | "enzyme": "^2.8.2", 61 | "eslint": "^3.19.0", 62 | "eslint-config-equimper": "^1.6.2", 63 | "extract-text-webpack-plugin": "^2.1.0", 64 | "file-loader": "^0.11.1", 65 | "flow-bin": "^0.44.2", 66 | "flow-typed": "^2.0.0", 67 | "html-webpack-plugin": "^2.28.0", 68 | "image-webpack-loader": "^3.3.0", 69 | "jest": "^19.0.2", 70 | "offline-plugin": "^4.7.0", 71 | "postcss-loader": "^1.3.3", 72 | "react-addons-test-utils": "^15.5.1", 73 | "react-hot-loader": "3.0.0-beta.6", 74 | "redbox-react": "^1.3.6", 75 | "redux-logger": "^3.0.1", 76 | "rimraf": "^2.6.1", 77 | "style-loader": "^0.16.1", 78 | "supertest": "^3.0.0", 79 | "sw-precache-webpack-plugin": "^0.9.1", 80 | "url-loader": "^0.5.8", 81 | "webpack": "^2.4.1", 82 | "webpack-bundle-analyzer": "^2.4.0", 83 | "webpack-dashboard": "^0.3.0", 84 | "webpack-dev-server": "^2.4.2" 85 | } 86 | } 87 | -------------------------------------------------------------------------------- /server/.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "presets": [ 3 | [ 4 | "env", 5 | { 6 | "targets": { 7 | "node": 7.9 8 | } 9 | } 10 | ] 11 | ], 12 | "plugins": [ 13 | [ 14 | "transform-object-rest-spread", 15 | { 16 | "useBuiltIns": true 17 | } 18 | ], 19 | "transform-flow-strip-types" 20 | ] 21 | } 22 | -------------------------------------------------------------------------------- /server/config/db.js: -------------------------------------------------------------------------------- 1 | /** @flow */ 2 | import mongoose from 'mongoose'; 3 | 4 | export default (conf: string) => { 5 | // We pass ur Promise to mongodb cause they have 6 | // a depracated message 7 | mongoose.Promise = global.Promise; 8 | // The conf come from the index.js file 9 | mongoose.connect(conf); 10 | // Connected mongoose to mongodb 11 | mongoose.connection 12 | .once('open', () => console.log(`Connected to MongoDb`)) // eslint-disable-line 13 | .on('error', err => console.warn('Warning', err)); // eslint-disable-line 14 | }; 15 | -------------------------------------------------------------------------------- /server/config/index.js: -------------------------------------------------------------------------------- 1 | /** @flow */ 2 | import dbConfig from './db'; 3 | import middlewaresConfig from './middlewares'; 4 | 5 | export { 6 | dbConfig, 7 | middlewaresConfig, 8 | }; 9 | -------------------------------------------------------------------------------- /server/config/middlewares.js: -------------------------------------------------------------------------------- 1 | /** @flow */ 2 | import { type $Application } from 'express'; 3 | import bodyParser from 'body-parser'; 4 | import morgan from 'morgan'; 5 | import compression from 'compression'; 6 | 7 | const isProd = process.env.NODE_ENV === 'production'; 8 | 9 | export default (app: $Application) => { 10 | if (isProd) { 11 | // Make a gzip with the server 12 | // Better perf with that 13 | // Only use in production 14 | app.use(compression()); 15 | } 16 | // We use morgan here for get the request in the console 17 | app.use(morgan('dev')); 18 | // This is for parse the req.body to a json format 19 | app.use(bodyParser.json()); 20 | app.use(bodyParser.urlencoded({ extended: true })); 21 | }; 22 | -------------------------------------------------------------------------------- /server/index.js: -------------------------------------------------------------------------------- 1 | /** @flow */ 2 | import express, { type $Request, type $Response, type $Application } from 'express'; 3 | import { join } from 'path'; 4 | import { dbConfig, middlewaresConfig } from './config'; 5 | import { PostRoutes } from './modules'; 6 | 7 | const app: $Application = express(); 8 | 9 | const PORT: string | number = process.env.PORT || 3000; 10 | 11 | middlewaresConfig(app); 12 | 13 | app.use('/api/v1', PostRoutes); 14 | 15 | if (process.env.NODE_ENV !== 'production') { 16 | /** 17 | * Database on dev 18 | */ 19 | const mongoConf: string = 'mongodb://localhost/myblog'; 20 | dbConfig(mongoConf); 21 | } else { 22 | require('dotenv').config(); 23 | 24 | app.use(express.static('dist')); 25 | app.get('*', (req: $Request, res: $Response) => { 26 | res.sendFile(join(__dirname, '../dist/index.html')); 27 | }); 28 | 29 | const mongoConf = process.env.MONGODB; 30 | if (!mongoConf) { 31 | throw new Error('Error with mongodb Process'); 32 | } else { 33 | dbConfig(mongoConf); 34 | } 35 | } 36 | 37 | app.listen(PORT, err => { 38 | if (err) { return console.error(err); } // eslint-disable-line 39 | 40 | console.log(`App running to port: ${PORT}`); // eslint-disable-line 41 | }); 42 | -------------------------------------------------------------------------------- /server/modules/index.js: -------------------------------------------------------------------------------- 1 | /** @flow */ 2 | export * from './posts'; 3 | -------------------------------------------------------------------------------- /server/modules/posts/controller.js: -------------------------------------------------------------------------------- 1 | /** @flow */ 2 | import { type $Request, type $Response } from 'express'; 3 | import Post, { type PostType } from './model'; 4 | 5 | /** 6 | * Create 7 | */ 8 | export const createPost = async (req: $Request, res: $Response) => { 9 | const { title, text } : { title: string, text: string } = req.body; 10 | 11 | if (!title) { 12 | return res.status(401).json({ error: true, message: 'Title required' }); 13 | } else if (typeof title !== 'string') { 14 | return res.status(401).json({ error: true, message: 'Title must be a string' }); 15 | } else if (title.length < 6) { 16 | return res.status(401).json({ error: true, message: 'Title must be 5 characters long' }); 17 | } 18 | 19 | if (!text) { 20 | return res.status(401).json({ error: true, message: 'Text required' }); 21 | } else if (typeof text !== 'string') { 22 | return res.status(401).json({ error: true, message: 'Text must be a string' }); 23 | } else if (text.length < 31) { 24 | return res.status(401).json({ error: true, message: 'Text must be 30 characters long' }); 25 | } 26 | 27 | const newPost: PostType = new Post({ title, text }); 28 | 29 | try { 30 | return res.status(200).json({ error: false, post: await newPost.save() }); 31 | } catch (e) { 32 | return res.status(500).json({ error: true, message: 'Error Server' }); 33 | } 34 | }; 35 | 36 | /** 37 | * GET ALL 38 | */ 39 | export const fetchPosts = async (req: $Request, res: $Response) => { 40 | try { 41 | return res.status(200).json({ error: false, posts: await Post.find({}) }); 42 | } catch (e) { 43 | return res.status(500).json({ error: true, message: 'Error server' }); 44 | } 45 | }; 46 | 47 | /** 48 | * GET BY ID 49 | */ 50 | export const fetchPostById = async (req: $Request, res: $Response) => { 51 | try { 52 | return res.status(200).json({ error: false, post: await Post.findById(req.params.id) }); 53 | } catch (e) { 54 | return res.status(500).json({ error: true, message: 'Error server' }); 55 | } 56 | }; 57 | -------------------------------------------------------------------------------- /server/modules/posts/index.js: -------------------------------------------------------------------------------- 1 | /** @flow */ 2 | import PostRoutes from './routes'; 3 | 4 | export { PostRoutes }; 5 | -------------------------------------------------------------------------------- /server/modules/posts/model.js: -------------------------------------------------------------------------------- 1 | /** @flow */ 2 | import mongoose, { Schema } from 'mongoose'; 3 | 4 | export type PostType = { 5 | title: string, 6 | text: string, 7 | }; 8 | 9 | const PostSchema: PostType = new Schema({ 10 | title: { 11 | type: String, 12 | unique: true, 13 | minLength: [5, 'Title need to be at least 5 characters'], 14 | required: true, 15 | }, 16 | text: { 17 | type: String, 18 | minLength: [30, 'Title need to be at least 30 characters'], 19 | required: true, 20 | }, 21 | }); 22 | 23 | export default mongoose.model('Post', PostSchema); 24 | -------------------------------------------------------------------------------- /server/modules/posts/routes.js: -------------------------------------------------------------------------------- 1 | /** @flow */ 2 | import { Router } from 'express'; 3 | import * as PostController from './controller'; 4 | 5 | const routes: Router = new Router(); 6 | 7 | routes.post('/posts', PostController.createPost); 8 | routes.get('/posts', PostController.fetchPosts); 9 | routes.get('/posts/:id', PostController.fetchPostById); 10 | 11 | export default routes; 12 | -------------------------------------------------------------------------------- /server/postman/Thinkful-Medium.postman_collection.json: -------------------------------------------------------------------------------- 1 | { 2 | "variables": [], 3 | "info": { 4 | "name": "Thinkful-Medium", 5 | "_postman_id": "158d480b-8f11-4aad-1b05-6b26a4e576a1", 6 | "description": "", 7 | "schema": "https://schema.getpostman.com/json/collection/v2.0.0/collection.json" 8 | }, 9 | "item": [ 10 | { 11 | "name": "GET - Hello", 12 | "event": [ 13 | { 14 | "listen": "test", 15 | "script": { 16 | "type": "text/javascript", 17 | "exec": [ 18 | "tests[\"Hello\"] = responseBody.has(\"hello from the server\");", 19 | "", 20 | "tests[\"Status code is 200\"] = responseCode.code === 200;" 21 | ] 22 | } 23 | } 24 | ], 25 | "request": { 26 | "url": "http://localhost:3000/api/v1/hello", 27 | "method": "GET", 28 | "header": [], 29 | "body": {}, 30 | "description": "" 31 | }, 32 | "response": [] 33 | }, 34 | { 35 | "name": "POST - POSTS", 36 | "request": { 37 | "url": "http://localhost:3000/api/v1/posts", 38 | "method": "POST", 39 | "header": [ 40 | { 41 | "key": "Content-Type", 42 | "value": "application/x-www-form-urlencoded", 43 | "description": "" 44 | } 45 | ], 46 | "body": { 47 | "mode": "urlencoded", 48 | "urlencoded": [ 49 | { 50 | "key": "title", 51 | "value": "Title 1", 52 | "type": "text", 53 | "enabled": true 54 | }, 55 | { 56 | "key": "text", 57 | "value": "Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.", 58 | "type": "text", 59 | "enabled": true 60 | } 61 | ] 62 | }, 63 | "description": "" 64 | }, 65 | "response": [] 66 | }, 67 | { 68 | "name": "GET - POSTS", 69 | "event": [ 70 | { 71 | "listen": "test", 72 | "script": { 73 | "type": "text/javascript", 74 | "exec": [ 75 | "tests[\"Status code is 200\"] = responseCode.code === 200;" 76 | ] 77 | } 78 | } 79 | ], 80 | "request": { 81 | "url": "http://localhost:3000/api/v1/posts", 82 | "method": "GET", 83 | "header": [], 84 | "body": {}, 85 | "description": "" 86 | }, 87 | "response": [] 88 | }, 89 | { 90 | "name": "GET BY ID - POSTS", 91 | "event": [ 92 | { 93 | "listen": "test", 94 | "script": { 95 | "type": "text/javascript", 96 | "exec": [ 97 | "tests[\"Status code is 200\"] = responseCode.code === 200;", 98 | "", 99 | "var jsonData = JSON.parse(responseBody);", 100 | "tests[\"Post Title\"] = jsonData.post.title === \"Title 1\";", 101 | "tests[\"Post id\"] = jsonData.post._id === \"588ce463f4741431c918a04b\";" 102 | ] 103 | } 104 | } 105 | ], 106 | "request": { 107 | "url": "http://localhost:3000/api/v1/posts/588ce463f4741431c918a04b", 108 | "method": "GET", 109 | "header": [], 110 | "body": {}, 111 | "description": "" 112 | }, 113 | "response": [] 114 | } 115 | ] 116 | } -------------------------------------------------------------------------------- /src/Root.js: -------------------------------------------------------------------------------- 1 | /** @flow */ 2 | import React from 'react'; 3 | import Routes from './Routes'; 4 | 5 | const Root = (): React.Element<*> => ; 6 | 7 | export default Root; 8 | -------------------------------------------------------------------------------- /src/Routes.js: -------------------------------------------------------------------------------- 1 | /** @flow */ 2 | import React from 'react'; 3 | import { Router, browserHistory } from 'react-router'; 4 | 5 | import App from './layout/App'; 6 | 7 | const errorLoading = (err: Object): void => 8 | console.error('Dynamic page loading failed', err); // eslint-disable-line 9 | 10 | const componentRoutes = { 11 | component: App, 12 | path: '/', 13 | childRoutes: [ 14 | { 15 | path: '/posts', 16 | async getComponent(location: string, cb: Function) { 17 | try { 18 | const module = await import('./modules/posts/Posts'); 19 | cb(null, module.default); 20 | } catch (e) { 21 | errorLoading(e); 22 | } 23 | }, 24 | }, 25 | { 26 | path: '/posts/:id', 27 | async getComponent(location: string, cb: Function) { 28 | try { 29 | const module = await import('./modules/posts/SinglePost'); 30 | cb(null, module.default); 31 | } catch (e) { 32 | errorLoading(e); 33 | } 34 | }, 35 | }, 36 | ], 37 | }; 38 | 39 | export default () => ( 40 | 41 | ); 42 | -------------------------------------------------------------------------------- /src/__test__/layout/App.test.js: -------------------------------------------------------------------------------- 1 | // import React from 'react'; 2 | // import { shallow } from 'enzyme'; 3 | // import App from '../../layout/App'; 4 | 5 | // describe('', () => { 6 | // // const wrapper = shallow(); 7 | // // it('should be mount', () => { 8 | // // expect(wrapper.length).toBe(1); 9 | // // }); 10 | // // it('should have 1 div', () => { 11 | // // expect(wrapper.find('div').length).toBe(1); 12 | // // }); 13 | // // it('should have initial state loading false', () => { 14 | // // expect(wrapper.state('loading')).toBe(false); 15 | // // }); 16 | // // it('should have initial state dots empty', () => { 17 | // // expect(wrapper.state('dots')).toEqual([]); 18 | // // }); 19 | // // it('should have initial state message null', () => { 20 | // // expect(wrapper.state('message')).toBeNull(); 21 | // // }); 22 | // // it('should have props name to equal Thinkful', () => { 23 | // // expect(wrapper.instance().props).toEqual({ name: 'Thinkful' }); 24 | // // }); 25 | // }); 26 | -------------------------------------------------------------------------------- /src/components/Button.js: -------------------------------------------------------------------------------- 1 | import styled from 'styled-components'; 2 | 3 | const Button = styled.div` 4 | background-color: #6799FF; 5 | height: 40px; 6 | width: 100px; 7 | border-radius: 10px; 8 | color: #fff; 9 | box-shadow: rgba(0, 0, 0, 0.117647) 0px 1px 6px, rgba(0, 0, 0, 0.117647) 0px 1px 4px; 10 | display: flex; 11 | justify-content: center; 12 | align-items: center; 13 | cursor: pointer; 14 | `; 15 | 16 | export default Button; 17 | -------------------------------------------------------------------------------- /src/components/Card.js: -------------------------------------------------------------------------------- 1 | import styled from 'styled-components'; 2 | 3 | const Card = styled.div` 4 | height: 25em; 5 | width: 25em; 6 | background-color: #fff; 7 | display: flex; 8 | flex-direction: column; 9 | align-items: center; 10 | box-shadow: rgba(0, 0, 0, 0.117647) 0px 1px 6px, rgba(0, 0, 0, 0.117647) 0px 1px 4px; 11 | `; 12 | 13 | export default Card; 14 | -------------------------------------------------------------------------------- /src/components/ContainerFluidCenter.js: -------------------------------------------------------------------------------- 1 | import styled from 'styled-components'; 2 | 3 | const ContainerFluidCenter = styled.div` 4 | height: 100vh; 5 | width: 100%; 6 | display: flex; 7 | justify-content: center; 8 | align-items: center; 9 | flex-direction: column; 10 | `; 11 | 12 | export default ContainerFluidCenter; 13 | -------------------------------------------------------------------------------- /src/components/LoadingScreen.js: -------------------------------------------------------------------------------- 1 | /** @flow */ 2 | import React from 'react'; 3 | 4 | import ContainerFluidCenter from './ContainerFluidCenter'; 5 | 6 | const LoadingScreen = () => ( 7 | 8 |

9 |
10 |
11 |
12 |
13 |
14 | 15 | ); 16 | 17 | export default LoadingScreen; 18 | -------------------------------------------------------------------------------- /src/components/Title.js: -------------------------------------------------------------------------------- 1 | import styled from 'styled-components'; 2 | 3 | const Title = styled.h1` 4 | font-size: 1.5em; 5 | text-align: center; 6 | color: blue; 7 | `; 8 | 9 | export default Title; 10 | -------------------------------------------------------------------------------- /src/helpers/api.js: -------------------------------------------------------------------------------- 1 | /** @flow */ 2 | import axios from 'axios'; 3 | 4 | axios.defaults.baseURL = '/api/v1'; 5 | 6 | export class PostApi { 7 | async fetchPosts(): Promise { 8 | try { 9 | const { data } = await axios.get('/posts'); 10 | return data; 11 | } catch (e) { 12 | console.log(e); // eslint-disable-line 13 | } 14 | } 15 | async fetchSinglePost(id: string): Promise { 16 | try { 17 | const { data } = await axios.get(`posts/${id}`); 18 | return data; 19 | } catch (e) { 20 | console.log(e); // eslint-disable-line 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /src/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | Thinkful Workshop 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /src/index.js: -------------------------------------------------------------------------------- 1 | /** @flow */ 2 | import React from 'react'; 3 | import { render } from 'react-dom'; 4 | import { Provider } from 'react-redux'; 5 | import { AppContainer } from 'react-hot-loader'; 6 | import Root from './Root'; 7 | import store from './redux/store'; 8 | import './styles/styles.css'; 9 | 10 | if (process.env.NODE_ENV === 'production') { 11 | (() => { 12 | if ('serviceWorker' in navigator) { 13 | navigator.serviceWorker.register('/service-worker.js'); 14 | } 15 | })(); 16 | require('offline-plugin/runtime').install(); 17 | } 18 | 19 | const renderApp = Component => { 20 | render( 21 | 22 | 23 | 24 | 25 | , 26 | document.getElementById('app') 27 | ); 28 | }; 29 | 30 | renderApp(Root); 31 | 32 | // Hot Module Replacement API 33 | if (module.hot) { 34 | module.hot.accept('./Root', () => { 35 | const NewApp = require('./Root').default; 36 | 37 | renderApp(NewApp); 38 | }); 39 | } 40 | -------------------------------------------------------------------------------- /src/layout/App.js: -------------------------------------------------------------------------------- 1 | /** @flow */ 2 | import React from 'react'; 3 | import { browserHistory } from 'react-router'; 4 | import Title from '../components/Title'; 5 | import Button from '../components/Button'; 6 | import ContainerFluidCenter from '../components/ContainerFluidCenter'; 7 | 8 | type Props = { 9 | location: Object, 10 | children?: React.Element<*> 11 | } 12 | 13 | const App = ({ children, location }: Props) => { 14 | const _goToPosts = (): () => void => browserHistory.push('/posts'); 15 | 16 | const _renderWithoutChildren = () => ( 17 | 18 | This is a title 19 | 22 | 23 | ); 24 | 25 | if (location.pathname === '/') { 26 | return _renderWithoutChildren(); 27 | } 28 | 29 | return ( 30 |
31 | {children} 32 |
33 | ); 34 | }; 35 | 36 | export default App; 37 | -------------------------------------------------------------------------------- /src/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "short_name": "ThinkfulWor", 3 | "version": "1.0.0", 4 | "name": "Thinkful Workshop", 5 | "display": "standalone", 6 | "orientation": "portrait", 7 | "start_url": "/", 8 | "icons": [ 9 | { 10 | "src": "../assets/96.png", 11 | "sizes": "96x96", 12 | "type": "image/png" 13 | }, 14 | { 15 | "src": "../assets/144.png", 16 | "sizes": "144x144", 17 | "type": "image/png" 18 | }, 19 | { 20 | "src": "../assets/192.png", 21 | "sizes": "192x192", 22 | "type": "image/png" 23 | } 24 | ], 25 | "background_color": "#6799FF", 26 | "theme_color": "#6799FF" 27 | } 28 | -------------------------------------------------------------------------------- /src/modules/posts/Posts.js: -------------------------------------------------------------------------------- 1 | /** @flow */ 2 | /** 3 | * Fetch the posts from the server in the componentDidMount. Show the list of posts 4 | * and make it able to be click and see the post in details. 5 | */ 6 | import React, { Component } from 'react'; 7 | import { connect } from 'react-redux'; 8 | import { browserHistory } from 'react-router'; 9 | 10 | import Card from '../../components/Card'; 11 | import Button from '../../components/Button'; 12 | import LoadingScreen from '../../components/LoadingScreen'; 13 | 14 | import { getFetchAllPosts, selectPost } from './actions'; 15 | import type { Post } from '../../types/Data'; 16 | 17 | type Props = { 18 | posts: Array; 19 | getFetchAllPosts: () => Promise; 20 | selectPost: (id: string) => string; 21 | } 22 | 23 | type State = { 24 | loading: boolean; 25 | } 26 | 27 | @connect( 28 | state => ({ 29 | posts: state.posts.posts, 30 | }), 31 | { getFetchAllPosts, selectPost } 32 | ) 33 | class Posts extends Component { 34 | state = { loading: false } 35 | 36 | componentDidMount() { 37 | (async () => { 38 | if (this.props.posts.length < 1) { 39 | await this.props.getFetchAllPosts(); 40 | this.setState({ loading: false }); 41 | } else { 42 | this.setState({ loading: false }); 43 | } 44 | })(); 45 | } 46 | 47 | _goToHome = (): void => browserHistory.push('/'); 48 | 49 | _onClick = (id: string): void => { 50 | this.props.selectPost(id); 51 | browserHistory.push(`/posts/${id}`); 52 | } 53 | 54 | render() { 55 | if (this.state.loading) { 56 | return ; 57 | } else if (!this.props.posts) { 58 | return ( 59 |

No post yet

60 | ); 61 | } 62 | return ( 63 |
64 | {this.props.posts.map((post: Post, i: number) => ( 65 |
  • 66 | 67 |

    {post.title}

    68 |
    69 |

    {post.text}

    70 |
    71 |
    72 | 75 |
    76 |
    77 |
    78 |
  • 79 | ))} 80 | 81 |
    82 | ); 83 | } 84 | } 85 | 86 | export default Posts; 87 | -------------------------------------------------------------------------------- /src/modules/posts/SinglePost.js: -------------------------------------------------------------------------------- 1 | /** @flow */ 2 | /** 3 | * Show a single post who maybe came from the selector or from a server request. 4 | * If the post have been fetch from the /posts we show this one. 5 | * If the post didn't get fetch from the /posts we make 6 | * an api request for fetching the data of this one. 7 | */ 8 | import React, { Component } from 'react'; 9 | import { connect } from 'react-redux'; 10 | import { browserHistory } from 'react-router'; 11 | 12 | import Button from '../../components/Button'; 13 | import LoadingScreen from '../../components/LoadingScreen'; 14 | 15 | import type { Post } from '../../types/Data'; 16 | 17 | import SinglePostSelector from './single_post_selector'; 18 | import { getFetchSinglePost } from './actions'; 19 | 20 | type Props = { 21 | post: Array; 22 | postDomains: { 23 | post: Post; 24 | }, 25 | getFetchSinglePost: (id: string) => void; 26 | params: { 27 | id: string; 28 | } 29 | } 30 | 31 | type State = { 32 | loading: boolean; 33 | error: boolean; 34 | post: ?Post; 35 | } 36 | 37 | @connect( 38 | state => ({ 39 | post: SinglePostSelector(state), 40 | postDomains: state.posts, 41 | }), 42 | { getFetchSinglePost } 43 | ) 44 | class SinglePost extends Component { 45 | state = { 46 | loading: true, 47 | error: false, 48 | post: null, 49 | } 50 | 51 | componentDidMount() { 52 | (async () => { 53 | if (this.props.post.length < 1) { 54 | await this.props.getFetchSinglePost(this.props.params.id); 55 | if (this.props.postDomains.error) { 56 | this.setState({ loading: false, error: true }); 57 | } else { 58 | this.setState({ post: this.props.postDomains.post, loading: false }); 59 | } 60 | } else { 61 | this.setState({ loading: false, post: this.props.post[0] }); 62 | } 63 | })(); 64 | } 65 | 66 | render() { 67 | if (this.state.loading) { 68 | return ; 69 | } else if (this.state.error) { 70 | return ( 71 |
    72 |

    Post not exist

    73 | 76 |
    77 | ); 78 | } 79 | 80 | return ( 81 |
    82 |

    {this.state.post.title}

    83 |

    {this.state.post.text}

    84 |
    85 | 88 |
    89 | ); 90 | } 91 | } 92 | 93 | export default SinglePost; 94 | -------------------------------------------------------------------------------- /src/modules/posts/actions.js: -------------------------------------------------------------------------------- 1 | /** @flow */ 2 | import { PostApi } from '../../helpers/api'; 3 | import type { Post } from '../../types/Data'; 4 | import type { Action } from '../../types/Action'; 5 | import type { Dispatch } from '../../types/Store'; 6 | 7 | const postApi: PostApi = new PostApi(); 8 | 9 | export const FETCH_ALL_POSTS = 'FETCH_ALL_POSTS'; 10 | export const FETCH_SINGLE_POST = 'FETCH_SINGLE_POST'; 11 | export const FETCH_SINGLE_POST_ERROR = 'FETCH_SINGLE_POST_ERROR'; 12 | export const SELECTED_POST = 'SELECTED_POST'; 13 | 14 | /** 15 | * FETCH ALL POSTS 16 | */ 17 | export const fetchAllPosts = (posts: Array): Action => ({ 18 | type: FETCH_ALL_POSTS, 19 | posts, 20 | }); 21 | /** 22 | * Dispatch the fetch allPost afte the fetchPost promise call 23 | */ 24 | export const getFetchAllPosts = () => async (dispatch: Dispatch) => { 25 | const { posts }: { posts: Array } = await postApi.fetchPosts(); 26 | return dispatch(fetchAllPosts(posts)); 27 | }; 28 | 29 | /** 30 | * FETCH SINGLE POST WITH HIS ID 31 | */ 32 | export const fetchPost = (post: Post): Action => ({ 33 | type: FETCH_SINGLE_POST, 34 | post, 35 | }); 36 | 37 | /** 38 | * WHEN FETCH RECEIVE AN ERROR 39 | */ 40 | export const fetchPostError = (): Action => ({ 41 | type: FETCH_SINGLE_POST_ERROR, 42 | }); 43 | 44 | /** 45 | * Fetch a single Post with id 46 | */ 47 | export const getFetchSinglePost = (id: string) => async (dispatch: Dispatch) => { 48 | const { post }: { post: Post } = await postApi.fetchSinglePost(id); 49 | if (!post) { 50 | return dispatch(fetchPostError()); 51 | } 52 | return dispatch(fetchPost(post)); 53 | }; 54 | 55 | /** 56 | * SELECTED ID FOR RESELECT 57 | */ 58 | export const selectPost = (id: string): Action => ({ 59 | type: SELECTED_POST, 60 | id, 61 | }); 62 | -------------------------------------------------------------------------------- /src/modules/posts/actions.test.js: -------------------------------------------------------------------------------- 1 | import { 2 | FETCH_SINGLE_POST, 3 | fetchPost, 4 | } from './actions'; 5 | 6 | describe('Post Actions', () => { 7 | describe('#fetchPost()', () => { 8 | it('should return a type of FETCH_SINGLE_POST and a post', () => { 9 | const post = { title: 'Hello' }; 10 | const expected = { 11 | type: FETCH_SINGLE_POST, 12 | post, 13 | }; 14 | expect(fetchPost(post)).toEqual(expected); 15 | }); 16 | }); 17 | }); 18 | -------------------------------------------------------------------------------- /src/modules/posts/actionsTypes.js: -------------------------------------------------------------------------------- 1 | /** @flow */ 2 | export type FetchAllPostsAction = { 3 | type: 'FETCH_ALL_POSTS'; 4 | posts: Array; 5 | } 6 | 7 | export type FetchPostAction = { 8 | type: 'FETCH_SINGLE_POST'; 9 | post: Object; 10 | } 11 | 12 | export type FetchSinglePostErrorAction = { 13 | type: 'FETCH_SINGLE_POST_ERROR'; 14 | } 15 | 16 | export type SelectPostAction = { 17 | type: 'SELECTED_POST'; 18 | id: string; 19 | } 20 | -------------------------------------------------------------------------------- /src/modules/posts/reducer.js: -------------------------------------------------------------------------------- 1 | /** @flow */ 2 | import { 3 | FETCH_ALL_POSTS, 4 | FETCH_SINGLE_POST, 5 | FETCH_SINGLE_POST_ERROR, 6 | SELECTED_POST, 7 | } from './actions'; 8 | import { type Action } from '../../types/Action'; 9 | import { type Post } from '../../types/Data'; 10 | 11 | type State = { 12 | posts: ?Array; 13 | post: ?Post; 14 | selectPostId: ?string; 15 | error: boolean; 16 | } 17 | 18 | const INITIAL_STATE = { 19 | posts: [], 20 | post: null, 21 | selectPostId: null, 22 | error: false, 23 | }; 24 | 25 | export default (state: State = INITIAL_STATE, action: Action): Object => { 26 | switch (action.type) { 27 | case FETCH_ALL_POSTS: 28 | return { 29 | ...state, 30 | error: false, 31 | posts: action.posts, 32 | }; 33 | case FETCH_SINGLE_POST: 34 | return { 35 | ...state, 36 | error: false, 37 | post: action.post, 38 | }; 39 | case FETCH_SINGLE_POST_ERROR: 40 | return { 41 | ...state, 42 | error: true, 43 | }; 44 | case SELECTED_POST: 45 | return { 46 | ...state, 47 | error: false, 48 | selectPostId: action.id, 49 | }; 50 | default: 51 | return state; 52 | } 53 | }; 54 | -------------------------------------------------------------------------------- /src/modules/posts/single_post_selector.js: -------------------------------------------------------------------------------- 1 | /** @flow */ 2 | /** 3 | * Create a selector who take the posts from the state and return an array 4 | * of one post. This is for remove the server request when we have 5 | * already all the info in the state. 6 | */ 7 | import { createSelector } from 'reselect'; 8 | 9 | import type { Post } from '../../types/Data'; 10 | 11 | /** 12 | * GET THE ARRAY OF POSTS IN THE STATE 13 | */ 14 | const postsSelector = (state: Object): Array => state.posts.posts; 15 | /** 16 | * GET THE ID FOR MAKE THE SELECTION 17 | */ 18 | const selectPostId = (state: Object): string => state.posts.selectPostId; 19 | /** 20 | * DO THE LOGIC ABOUT FILTER THE POSTS ARRAY AND RETURN AN ARRAY WITH 1 ITEM 21 | */ 22 | const getPost = (posts: Array, id: string): Array => 23 | posts.filter(p => p._id === id); 24 | 25 | export default createSelector( 26 | postsSelector, 27 | selectPostId, 28 | getPost 29 | ); 30 | -------------------------------------------------------------------------------- /src/redux/reducers.js: -------------------------------------------------------------------------------- 1 | /** @flow */ 2 | import { combineReducers } from 'redux'; 3 | import PostsReducer from '../modules/posts/reducer'; 4 | 5 | const reducers = { 6 | posts: PostsReducer, 7 | }; 8 | 9 | export type Reducers = typeof reducers; 10 | 11 | export default combineReducers(reducers); 12 | -------------------------------------------------------------------------------- /src/redux/store.js: -------------------------------------------------------------------------------- 1 | // @flow 2 | 3 | import { applyMiddleware, compose, createStore } from 'redux'; 4 | import { createLogger } from 'redux-logger'; 5 | import thunk from 'redux-thunk'; 6 | 7 | import rootReducer from './reducers'; 8 | 9 | let middlewares: Array = [thunk]; 10 | 11 | if (process.env.NODE_ENV !== 'production') { 12 | middlewares = [...middlewares, createLogger()]; 13 | } 14 | 15 | const enhancers = compose( 16 | applyMiddleware(...middlewares), 17 | window.devToolsExtension && process.env.NODE_ENV !== 'production' 18 | ? window.devToolsExtension() 19 | : f => f, 20 | ); 21 | 22 | // $FlowFixMe 23 | const store = createStore(rootReducer, {}, enhancers); 24 | 25 | export default store; 26 | -------------------------------------------------------------------------------- /src/styles/styles.css: -------------------------------------------------------------------------------- 1 | @import "~normalize.css"; 2 | 3 | body { 4 | display: flex; 5 | justify-content: center; 6 | align-items: center; 7 | height: auto; 8 | text-align: center; 9 | } 10 | 11 | .card-list { 12 | list-style: none; 13 | padding: 30px 0; 14 | } 15 | 16 | .card-text { 17 | width: 90%; 18 | } 19 | 20 | .sk-folding-cube { 21 | margin: 40px auto; 22 | width: 40px; 23 | height: 40px; 24 | position: relative; 25 | -webkit-transform: rotateZ(45deg); 26 | transform: rotateZ(45deg); 27 | } 28 | 29 | .sk-folding-cube .sk-cube { 30 | float: left; 31 | width: 50%; 32 | height: 50%; 33 | position: relative; 34 | -webkit-transform: scale(1.1); 35 | -ms-transform: scale(1.1); 36 | transform: scale(1.1); 37 | } 38 | 39 | .sk-folding-cube .sk-cube:before { 40 | content: ''; 41 | position: absolute; 42 | top: 0; 43 | left: 0; 44 | width: 100%; 45 | height: 100%; 46 | background-color: #333; 47 | -webkit-animation: sk-foldCubeAngle 2.4s infinite linear both; 48 | animation: sk-foldCubeAngle 2.4s infinite linear both; 49 | -webkit-transform-origin: 100% 100%; 50 | -ms-transform-origin: 100% 100%; 51 | transform-origin: 100% 100%; 52 | } 53 | 54 | .sk-folding-cube .sk-cube2 { 55 | -webkit-transform: scale(1.1) rotateZ(90deg); 56 | transform: scale(1.1) rotateZ(90deg); 57 | } 58 | 59 | .sk-folding-cube .sk-cube3 { 60 | -webkit-transform: scale(1.1) rotateZ(180deg); 61 | transform: scale(1.1) rotateZ(180deg); 62 | } 63 | 64 | .sk-folding-cube .sk-cube4 { 65 | -webkit-transform: scale(1.1) rotateZ(270deg); 66 | transform: scale(1.1) rotateZ(270deg); 67 | } 68 | 69 | .sk-folding-cube .sk-cube2:before { 70 | -webkit-animation-delay: 0.3s; 71 | animation-delay: 0.3s; 72 | } 73 | 74 | .sk-folding-cube .sk-cube3:before { 75 | -webkit-animation-delay: 0.6s; 76 | animation-delay: 0.6s; 77 | } 78 | 79 | .sk-folding-cube .sk-cube4:before { 80 | -webkit-animation-delay: 0.9s; 81 | animation-delay: 0.9s; 82 | } 83 | 84 | @-webkit-keyframes sk-foldCubeAngle { 85 | 0%, 10% { 86 | -webkit-transform: perspective(140px) rotateX(-180deg); 87 | transform: perspective(140px) rotateX(-180deg); 88 | opacity: 0; 89 | } 90 | 91 | 25%, 75% { 92 | -webkit-transform: perspective(140px) rotateX(0deg); 93 | transform: perspective(140px) rotateX(0deg); 94 | opacity: 1; 95 | } 96 | 97 | 90%, 100% { 98 | -webkit-transform: perspective(140px) rotateY(180deg); 99 | transform: perspective(140px) rotateY(180deg); 100 | opacity: 0; 101 | } 102 | } 103 | 104 | @keyframes sk-foldCubeAngle { 105 | 0%, 10% { 106 | -webkit-transform: perspective(140px) rotateX(-180deg); 107 | transform: perspective(140px) rotateX(-180deg); 108 | opacity: 0; 109 | } 110 | 111 | 25%, 75% { 112 | -webkit-transform: perspective(140px) rotateX(0deg); 113 | transform: perspective(140px) rotateX(0deg); 114 | opacity: 1; 115 | } 116 | 117 | 90%, 100% { 118 | -webkit-transform: perspective(140px) rotateY(180deg); 119 | transform: perspective(140px) rotateY(180deg); 120 | opacity: 0; 121 | } 122 | } 123 | -------------------------------------------------------------------------------- /src/types/Action.js: -------------------------------------------------------------------------------- 1 | /** @flow */ 2 | import type { Post } from './Data'; 3 | 4 | // POSTS 5 | type FetchPostAction = { 6 | type: 'FETCH_SINGLE_POST'; 7 | post: Post; 8 | } 9 | 10 | type FetchAllPostsAction = { 11 | type: 'FETCH_ALL_POSTS'; 12 | posts: Array; 13 | } 14 | 15 | type FetchSinglePostErrorAction = { 16 | type: 'FETCH_SINGLE_POST_ERROR'; 17 | } 18 | 19 | type SelectPostAction = { 20 | type: 'SELECTED_POST'; 21 | id: string; 22 | } 23 | 24 | export type Action = 25 | | FetchPostAction 26 | | FetchAllPostsAction 27 | | FetchSinglePostErrorAction 28 | | SelectPostAction 29 | -------------------------------------------------------------------------------- /src/types/Data.js: -------------------------------------------------------------------------------- 1 | /** @flow */ 2 | 3 | export type Post = { 4 | title: string; 5 | text: string; 6 | _id: string; 7 | } 8 | -------------------------------------------------------------------------------- /src/types/State.js: -------------------------------------------------------------------------------- 1 | // @flow 2 | 3 | import type { Reducers } from '../redux/reducers'; 4 | 5 | type $ExtractFunctionReturn = (v: (...args: any) => V) => V; // eslint-disable-line 6 | 7 | export type State = $ObjMap; // eslint-disable-line 8 | -------------------------------------------------------------------------------- /src/types/Store.js: -------------------------------------------------------------------------------- 1 | /** @flow */ 2 | import type { 3 | Store as ReduxStore, 4 | Dispatch as ReduxDispatch, 5 | } from 'redux'; 6 | import type { Action } from './Action'; 7 | import type { State } from './State'; 8 | 9 | export type Store = ReduxStore; 10 | 11 | export type GetState = () => State; 12 | 13 | export type Dispatch = 14 | & ReduxDispatch 15 | & Thunk 16 | 17 | export type Thunk = ((Dispatch, GetState) => Promise | void) => A; 18 | -------------------------------------------------------------------------------- /webpack.dev.config.js: -------------------------------------------------------------------------------- 1 | /** @flow */ 2 | const webpack = require('webpack'); 3 | const { join } = require('path'); 4 | const HtmlWebpackPlugin = require('html-webpack-plugin'); 5 | const ExtractTextPlugin = require('extract-text-webpack-plugin'); 6 | 7 | const VENDOR_LIBS = [ 8 | 'react', 'react-dom', 'styled-components', 'react-redux', 'redux', 'reselect', 9 | 'axios', 'react-router' 10 | ]; 11 | 12 | module.exports = { 13 | devtool: 'eval', 14 | target: 'web', 15 | entry: { 16 | bundle: [ 17 | 'babel-polyfill', 18 | 'react-hot-loader/patch', 19 | 'webpack-dev-server/client?http://localhost:9000', 20 | 'webpack/hot/only-dev-server', 21 | './src/index.js' 22 | ], 23 | vendor: VENDOR_LIBS 24 | }, 25 | output: { 26 | path: join(__dirname, 'dist'), 27 | filename: '[name].js', 28 | publicPath: '/' 29 | }, 30 | module: { 31 | rules: [ 32 | { 33 | use: 'babel-loader', 34 | test: /\.js$/, 35 | exclude: /node_modules/ 36 | }, 37 | { 38 | loader: ExtractTextPlugin.extract({ 39 | loader: 'css-loader' 40 | }), 41 | test: /\.css$/ 42 | }, 43 | { 44 | test: /\.(jpe?g|png|gif|svg)$/, 45 | use: [ 46 | { 47 | loader: 'url-loader', 48 | options: { limit: 40000 } 49 | }, 50 | 'image-webpack-loader' // first one append 51 | ] 52 | } 53 | ] 54 | }, 55 | devServer: { 56 | contentBase: join(__dirname, './dist'), 57 | port: 9000, 58 | hot: true, 59 | historyApiFallback: true, 60 | open: true, 61 | proxy: { 62 | '/api': { 63 | target: 'http://localhost:3000' 64 | } 65 | } 66 | }, 67 | plugins: [ 68 | new webpack.HotModuleReplacementPlugin(), 69 | new webpack.NamedModulesPlugin(), 70 | new HtmlWebpackPlugin({ 71 | template: 'src/index.html' 72 | }), 73 | new ExtractTextPlugin('style.css'), 74 | ] 75 | }; 76 | -------------------------------------------------------------------------------- /webpack.prod.config.js: -------------------------------------------------------------------------------- 1 | /** @flow */ 2 | const webpack = require('webpack'); 3 | const { join } = require('path'); 4 | const HtmlWebpackPlugin = require('html-webpack-plugin'); 5 | const ExtractTextPlugin = require('extract-text-webpack-plugin'); 6 | const SWPrecacheWebpackPlugin = require('sw-precache-webpack-plugin'); 7 | const OfflinePlugin = require('offline-plugin'); 8 | const autoprefixer = require('autoprefixer'); 9 | const CopyWebpackPlugin = require('copy-webpack-plugin'); 10 | 11 | const VENDOR_LIBS = [ 12 | 'react', 'react-dom', 'styled-components', 'react-redux', 'redux', 'reselect', 13 | 'axios', 'react-router' 14 | ]; 15 | 16 | module.exports = { 17 | devtool: 'source-map', 18 | entry: { 19 | bundle: [ 20 | 'babel-polyfill', 21 | './src/index.js' 22 | ], 23 | vendor: VENDOR_LIBS 24 | }, 25 | target: 'web', 26 | output: { 27 | path: join(__dirname, 'dist'), 28 | filename: '[name].[chunkhash].js', 29 | chunkFilename: '[id].[chunkhash].js', 30 | publicPath: '/' 31 | }, 32 | module: { 33 | rules: [ 34 | { 35 | use: 'babel-loader', 36 | test: /\.js$/, 37 | exclude: /node_modules/ 38 | }, 39 | { 40 | loader: ExtractTextPlugin.extract({ 41 | fallback: 'style-loader', 42 | loader: ['css-loader', 'postcss-loader'] 43 | }), 44 | test: /\.css$/ 45 | }, 46 | { 47 | test: /\.(jpe?g|png|gif|svg)$/, 48 | use: [ 49 | { 50 | loader: 'url-loader', 51 | options: { limit: 40000 } 52 | }, 53 | 'image-webpack-loader' // first one append 54 | ] 55 | } 56 | ] 57 | }, 58 | plugins: [ 59 | new webpack.DefinePlugin({ 60 | 'process.env': { 61 | NODE_ENV: JSON.stringify('production') 62 | } 63 | }), 64 | new webpack.LoaderOptionsPlugin({ 65 | minimize: true, 66 | debug: false, 67 | options: { 68 | postcss: [ 69 | autoprefixer() 70 | ] 71 | } 72 | }), 73 | new webpack.optimize.CommonsChunkPlugin({ 74 | names: ['vendor', 'manifest'], 75 | minChunks: Infinity 76 | }), 77 | new webpack.NamedModulesPlugin(), 78 | new HtmlWebpackPlugin({ 79 | template: 'src/index.html' 80 | }), 81 | new CopyWebpackPlugin([ 82 | { from: './src/manifest.json', to: 'manifest.json' } 83 | ]), 84 | new ExtractTextPlugin('[name].[chunkhash].css'), 85 | new SWPrecacheWebpackPlugin({ 86 | staticFileGlobs: [ 87 | 'client/styles.css', 88 | ], 89 | stripPrefix: 'src/static/', 90 | mergeStaticsConfig: true, 91 | staticFileGlobsIgnorePatterns: [/\.map$/], // use this to ignore sourcemap files 92 | }), 93 | new OfflinePlugin() 94 | ] 95 | }; 96 | --------------------------------------------------------------------------------