├── .eslintrc.js ├── .gitignore ├── .prettierignore ├── README.md ├── config ├── default.json └── test.json ├── package-lock.json ├── package.json ├── src ├── booksController.js ├── models.js └── server.js ├── test ├── models.test.js └── requests.test.js └── yarn.lock /.eslintrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | extends: ['standard', 'prettier'], 3 | env: { 4 | node: true, 5 | mocha: true, 6 | }, 7 | } 8 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | 6 | # Runtime data 7 | pids 8 | *.pid 9 | *.seed 10 | 11 | # Directory for instrumented libs generated by jscoverage/JSCover 12 | lib-cov 13 | 14 | # Coverage directory used by tools like istanbul 15 | coverage 16 | 17 | # nyc test coverage 18 | .nyc_output 19 | 20 | # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) 21 | .grunt 22 | 23 | # node-waf configuration 24 | .lock-wscript 25 | 26 | # Compiled binary addons (http://nodejs.org/api/addons.html) 27 | build/Release 28 | 29 | # Dependency directories 30 | node_modules 31 | jspm_packages 32 | 33 | # Optional npm cache directory 34 | .npm 35 | 36 | # Optional REPL history 37 | .node_repl_history 38 | -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | package-lock.json 3 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Node.js Integration Testing 2 | 3 | A Express.js and Sequelize based REST API, tested with Mocha and Chai. 4 | -------------------------------------------------------------------------------- /config/default.json: -------------------------------------------------------------------------------- 1 | { 2 | "port": 8080, 3 | "databaseUrl": "postgres://stefan:@localhost:5432/sequelize_development" 4 | } 5 | -------------------------------------------------------------------------------- /config/test.json: -------------------------------------------------------------------------------- 1 | { 2 | "port": 8081, 3 | "databaseUrl": "postgres://stefan:@localhost:5432/sequelize_test" 4 | } 5 | -------------------------------------------------------------------------------- /package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "nodejs-integration-testing", 3 | "version": "1.0.0", 4 | "lockfileVersion": 1, 5 | "requires": true, 6 | "dependencies": { 7 | "balanced-match": { 8 | "version": "1.0.0", 9 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", 10 | "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", 11 | "dev": true 12 | }, 13 | "brace-expansion": { 14 | "version": "1.1.8", 15 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", 16 | "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=", 17 | "dev": true, 18 | "requires": { 19 | "balanced-match": "1.0.0", 20 | "concat-map": "0.0.1" 21 | } 22 | }, 23 | "builtin-modules": { 24 | "version": "1.1.1", 25 | "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", 26 | "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", 27 | "dev": true 28 | }, 29 | "concat-map": { 30 | "version": "0.0.1", 31 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", 32 | "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", 33 | "dev": true 34 | }, 35 | "contains-path": { 36 | "version": "0.1.0", 37 | "resolved": "https://registry.npmjs.org/contains-path/-/contains-path-0.1.0.tgz", 38 | "integrity": "sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo=", 39 | "dev": true 40 | }, 41 | "debug": { 42 | "version": "2.6.8", 43 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.8.tgz", 44 | "integrity": "sha1-5zFTHKLt4n0YgiJCfaF4IdaP9Pw=", 45 | "dev": true, 46 | "requires": { 47 | "ms": "2.0.0" 48 | } 49 | }, 50 | "doctrine": { 51 | "version": "1.5.0", 52 | "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz", 53 | "integrity": "sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=", 54 | "dev": true, 55 | "requires": { 56 | "esutils": "2.0.2", 57 | "isarray": "1.0.0" 58 | } 59 | }, 60 | "error-ex": { 61 | "version": "1.3.1", 62 | "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz", 63 | "integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=", 64 | "dev": true, 65 | "requires": { 66 | "is-arrayish": "0.2.1" 67 | } 68 | }, 69 | "eslint-config-standard": { 70 | "version": "10.2.1", 71 | "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-10.2.1.tgz", 72 | "integrity": "sha1-wGHk0GbzedwXzVYsZOgZtN1FRZE=", 73 | "dev": true 74 | }, 75 | "eslint-import-resolver-node": { 76 | "version": "0.3.1", 77 | "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.1.tgz", 78 | "integrity": "sha512-yUtXS15gIcij68NmXmP9Ni77AQuCN0itXbCc/jWd8C6/yKZaSNXicpC8cgvjnxVdmfsosIXrjpzFq7GcDryb6A==", 79 | "dev": true, 80 | "requires": { 81 | "debug": "2.6.8", 82 | "resolve": "1.4.0" 83 | } 84 | }, 85 | "eslint-module-utils": { 86 | "version": "2.1.1", 87 | "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.1.1.tgz", 88 | "integrity": "sha512-jDI/X5l/6D1rRD/3T43q8Qgbls2nq5km5KSqiwlyUbGo5+04fXhMKdCPhjwbqAa6HXWaMxj8Q4hQDIh7IadJQw==", 89 | "dev": true, 90 | "requires": { 91 | "debug": "2.6.8", 92 | "pkg-dir": "1.0.0" 93 | } 94 | }, 95 | "eslint-plugin-import": { 96 | "version": "2.7.0", 97 | "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.7.0.tgz", 98 | "integrity": "sha512-HGYmpU9f/zJaQiKNQOVfHUh2oLWW3STBrCgH0sHTX1xtsxYlH1zjLh8FlQGEIdZSdTbUMaV36WaZ6ImXkenGxQ==", 99 | "dev": true, 100 | "requires": { 101 | "builtin-modules": "1.1.1", 102 | "contains-path": "0.1.0", 103 | "debug": "2.6.8", 104 | "doctrine": "1.5.0", 105 | "eslint-import-resolver-node": "0.3.1", 106 | "eslint-module-utils": "2.1.1", 107 | "has": "1.0.1", 108 | "lodash.cond": "4.5.2", 109 | "minimatch": "3.0.4", 110 | "read-pkg-up": "2.0.0" 111 | } 112 | }, 113 | "eslint-plugin-node": { 114 | "version": "5.1.1", 115 | "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-5.1.1.tgz", 116 | "integrity": "sha512-3xdoEbPyyQNyGhhqttjgSO3cU/non8QDBJF8ttGaHM2h8CaY5zFIngtqW6ZbLEIvhpoFPDVwiQg61b8zanx5zQ==", 117 | "dev": true, 118 | "requires": { 119 | "ignore": "3.3.5", 120 | "minimatch": "3.0.4", 121 | "resolve": "1.4.0", 122 | "semver": "5.3.0" 123 | }, 124 | "dependencies": { 125 | "semver": { 126 | "version": "5.3.0", 127 | "resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz", 128 | "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=", 129 | "dev": true 130 | } 131 | } 132 | }, 133 | "eslint-plugin-promise": { 134 | "version": "3.5.0", 135 | "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-3.5.0.tgz", 136 | "integrity": "sha1-ePu2/+BHIBYnVp6FpsU3OvKmj8o=", 137 | "dev": true 138 | }, 139 | "eslint-plugin-standard": { 140 | "version": "3.0.1", 141 | "resolved": "https://registry.npmjs.org/eslint-plugin-standard/-/eslint-plugin-standard-3.0.1.tgz", 142 | "integrity": "sha1-NNDJFbRe3G8BA5PH7vOCOwhWXPI=", 143 | "dev": true 144 | }, 145 | "esutils": { 146 | "version": "2.0.2", 147 | "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", 148 | "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", 149 | "dev": true 150 | }, 151 | "find-up": { 152 | "version": "1.1.2", 153 | "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", 154 | "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", 155 | "dev": true, 156 | "requires": { 157 | "path-exists": "2.1.0", 158 | "pinkie-promise": "2.0.1" 159 | } 160 | }, 161 | "function-bind": { 162 | "version": "1.1.1", 163 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", 164 | "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", 165 | "dev": true 166 | }, 167 | "graceful-fs": { 168 | "version": "4.1.11", 169 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", 170 | "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", 171 | "dev": true 172 | }, 173 | "has": { 174 | "version": "1.0.1", 175 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.1.tgz", 176 | "integrity": "sha1-hGFzP1OLCDfJNh45qauelwTcLyg=", 177 | "dev": true, 178 | "requires": { 179 | "function-bind": "1.1.1" 180 | } 181 | }, 182 | "hosted-git-info": { 183 | "version": "2.5.0", 184 | "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.5.0.tgz", 185 | "integrity": "sha512-pNgbURSuab90KbTqvRPsseaTxOJCZBD0a7t+haSN33piP9cCM4l0CqdzAif2hUqm716UovKB2ROmiabGAKVXyg==", 186 | "dev": true 187 | }, 188 | "ignore": { 189 | "version": "3.3.5", 190 | "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.5.tgz", 191 | "integrity": "sha512-JLH93mL8amZQhh/p6mfQgVBH3M6epNq3DfsXsTSuSrInVjwyYlFE1nv2AgfRCC8PoOhM0jwQ5v8s9LgbK7yGDw==", 192 | "dev": true 193 | }, 194 | "is-arrayish": { 195 | "version": "0.2.1", 196 | "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", 197 | "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", 198 | "dev": true 199 | }, 200 | "is-builtin-module": { 201 | "version": "1.0.0", 202 | "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", 203 | "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", 204 | "dev": true, 205 | "requires": { 206 | "builtin-modules": "1.1.1" 207 | } 208 | }, 209 | "isarray": { 210 | "version": "1.0.0", 211 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", 212 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", 213 | "dev": true 214 | }, 215 | "load-json-file": { 216 | "version": "2.0.0", 217 | "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", 218 | "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", 219 | "dev": true, 220 | "requires": { 221 | "graceful-fs": "4.1.11", 222 | "parse-json": "2.2.0", 223 | "pify": "2.3.0", 224 | "strip-bom": "3.0.0" 225 | } 226 | }, 227 | "locate-path": { 228 | "version": "2.0.0", 229 | "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", 230 | "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", 231 | "dev": true, 232 | "requires": { 233 | "p-locate": "2.0.0", 234 | "path-exists": "3.0.0" 235 | }, 236 | "dependencies": { 237 | "path-exists": { 238 | "version": "3.0.0", 239 | "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", 240 | "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", 241 | "dev": true 242 | } 243 | } 244 | }, 245 | "lodash.cond": { 246 | "version": "4.5.2", 247 | "resolved": "https://registry.npmjs.org/lodash.cond/-/lodash.cond-4.5.2.tgz", 248 | "integrity": "sha1-9HGh2khr5g9quVXRcRVSPdHSVdU=", 249 | "dev": true 250 | }, 251 | "minimatch": { 252 | "version": "3.0.4", 253 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", 254 | "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", 255 | "dev": true, 256 | "requires": { 257 | "brace-expansion": "1.1.8" 258 | } 259 | }, 260 | "ms": { 261 | "version": "2.0.0", 262 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", 263 | "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", 264 | "dev": true 265 | }, 266 | "normalize-package-data": { 267 | "version": "2.4.0", 268 | "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", 269 | "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==", 270 | "dev": true, 271 | "requires": { 272 | "hosted-git-info": "2.5.0", 273 | "is-builtin-module": "1.0.0", 274 | "semver": "5.4.1", 275 | "validate-npm-package-license": "3.0.1" 276 | } 277 | }, 278 | "p-limit": { 279 | "version": "1.1.0", 280 | "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.1.0.tgz", 281 | "integrity": "sha1-sH/y2aXYi+yAYDWJWiurZqJ5iLw=", 282 | "dev": true 283 | }, 284 | "p-locate": { 285 | "version": "2.0.0", 286 | "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", 287 | "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", 288 | "dev": true, 289 | "requires": { 290 | "p-limit": "1.1.0" 291 | } 292 | }, 293 | "parse-json": { 294 | "version": "2.2.0", 295 | "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", 296 | "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", 297 | "dev": true, 298 | "requires": { 299 | "error-ex": "1.3.1" 300 | } 301 | }, 302 | "path-exists": { 303 | "version": "2.1.0", 304 | "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", 305 | "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", 306 | "dev": true, 307 | "requires": { 308 | "pinkie-promise": "2.0.1" 309 | } 310 | }, 311 | "path-parse": { 312 | "version": "1.0.5", 313 | "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.5.tgz", 314 | "integrity": "sha1-PBrfhx6pzWyUMbbqK9dKD/BVxME=", 315 | "dev": true 316 | }, 317 | "path-type": { 318 | "version": "2.0.0", 319 | "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", 320 | "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", 321 | "dev": true, 322 | "requires": { 323 | "pify": "2.3.0" 324 | } 325 | }, 326 | "pify": { 327 | "version": "2.3.0", 328 | "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", 329 | "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", 330 | "dev": true 331 | }, 332 | "pinkie": { 333 | "version": "2.0.4", 334 | "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", 335 | "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", 336 | "dev": true 337 | }, 338 | "pinkie-promise": { 339 | "version": "2.0.1", 340 | "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", 341 | "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", 342 | "dev": true, 343 | "requires": { 344 | "pinkie": "2.0.4" 345 | } 346 | }, 347 | "pkg-dir": { 348 | "version": "1.0.0", 349 | "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-1.0.0.tgz", 350 | "integrity": "sha1-ektQio1bstYp1EcFb/TpyTFM89Q=", 351 | "dev": true, 352 | "requires": { 353 | "find-up": "1.1.2" 354 | } 355 | }, 356 | "read-pkg": { 357 | "version": "2.0.0", 358 | "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", 359 | "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", 360 | "dev": true, 361 | "requires": { 362 | "load-json-file": "2.0.0", 363 | "normalize-package-data": "2.4.0", 364 | "path-type": "2.0.0" 365 | } 366 | }, 367 | "read-pkg-up": { 368 | "version": "2.0.0", 369 | "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", 370 | "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", 371 | "dev": true, 372 | "requires": { 373 | "find-up": "2.1.0", 374 | "read-pkg": "2.0.0" 375 | }, 376 | "dependencies": { 377 | "find-up": { 378 | "version": "2.1.0", 379 | "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", 380 | "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", 381 | "dev": true, 382 | "requires": { 383 | "locate-path": "2.0.0" 384 | } 385 | } 386 | } 387 | }, 388 | "resolve": { 389 | "version": "1.4.0", 390 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.4.0.tgz", 391 | "integrity": "sha512-aW7sVKPufyHqOmyyLzg/J+8606v5nevBgaliIlV7nUpVMsDnoBGV/cbSLNjZAg9q0Cfd/+easKVKQ8vOu8fn1Q==", 392 | "dev": true, 393 | "requires": { 394 | "path-parse": "1.0.5" 395 | } 396 | }, 397 | "semver": { 398 | "version": "5.4.1", 399 | "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", 400 | "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==", 401 | "dev": true 402 | }, 403 | "spdx-correct": { 404 | "version": "1.0.2", 405 | "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-1.0.2.tgz", 406 | "integrity": "sha1-SzBz2TP/UfORLwOsVRlJikFQ20A=", 407 | "dev": true, 408 | "requires": { 409 | "spdx-license-ids": "1.2.2" 410 | } 411 | }, 412 | "spdx-expression-parse": { 413 | "version": "1.0.4", 414 | "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz", 415 | "integrity": "sha1-m98vIOH0DtRH++JzJmGR/O1RYmw=", 416 | "dev": true 417 | }, 418 | "spdx-license-ids": { 419 | "version": "1.2.2", 420 | "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz", 421 | "integrity": "sha1-yd96NCRZSt5r0RkA1ZZpbcBrrFc=", 422 | "dev": true 423 | }, 424 | "strip-bom": { 425 | "version": "3.0.0", 426 | "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", 427 | "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", 428 | "dev": true 429 | }, 430 | "validate-npm-package-license": { 431 | "version": "3.0.1", 432 | "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz", 433 | "integrity": "sha1-KAS6vnEq0zeUWaz74kdGqywwP7w=", 434 | "dev": true, 435 | "requires": { 436 | "spdx-correct": "1.0.2", 437 | "spdx-expression-parse": "1.0.4" 438 | } 439 | } 440 | } 441 | } 442 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "nodejs-integration-testing", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "index.js", 6 | "scripts": { 7 | "start": "NODE_ENV=development nodemon src/server.js", 8 | "test": "NODE_ENV=test mocha", 9 | "prettier": 10 | "prettier --write --print-width 100 --trailing-comma es5 --no-semi --single-quote '**/*.{js,json}'", 11 | "lint": "eslint src test" 12 | }, 13 | "repository": { 14 | "type": "git", 15 | "url": "git+https://github.com/stefanwille/nodejs-integration-testing.git" 16 | }, 17 | "keywords": [], 18 | "author": "Stefan Wille", 19 | "license": "ISC", 20 | "bugs": { 21 | "url": "https://github.com/stefanwille/nodejs-integration-testing/issues" 22 | }, 23 | "homepage": "https://github.com/stefanwille/nodejs-integration-testing#readme", 24 | "devDependencies": { 25 | "chai": "^3.5.0", 26 | "eslint": "^4.7.2", 27 | "eslint-config-prettier": "^2.5.0", 28 | "eslint-config-standard": "^10.2.1", 29 | "eslint-plugin-import": "^2.7.0", 30 | "eslint-plugin-node": "^5.1.1", 31 | "eslint-plugin-promise": "^3.5.0", 32 | "eslint-plugin-standard": "^3.0.1", 33 | "mocha": "^3.2.0", 34 | "nodemon": "^1.11.0", 35 | "prettier": "^1.7.0", 36 | "supertest": "^3.0.0" 37 | }, 38 | "dependencies": { 39 | "body-parser": "^1.16.1", 40 | "config": "^1.25.1", 41 | "express": "^4.14.1", 42 | "morgan": "^1.8.1", 43 | "pg": "^6.1.2", 44 | "pg-hstore": "^2.3.2", 45 | "ramda": "^0.23.0", 46 | "sequelize": "^3.30.2", 47 | "winston": "^2.3.1" 48 | } 49 | } 50 | -------------------------------------------------------------------------------- /src/booksController.js: -------------------------------------------------------------------------------- 1 | const express = require('express'); 2 | const R = require('ramda'); 3 | const { Book } = require('./models'); 4 | 5 | async function index(request, response) { 6 | const books = await Book.findAll({ 7 | attributes: ['title', 'author'], 8 | }); 9 | response.json({ books: books }); 10 | } 11 | 12 | async function show(request, response) { 13 | const id = request.params.id; 14 | const book = await Book.findById(id, { attributes: ['title', 'author'] }); 15 | if (book) { 16 | response.json({ book: book }); 17 | } else { 18 | response.status(404).json({ error: 'NOT_FOUND' }); 19 | } 20 | } 21 | 22 | async function create(request, response) { 23 | const attributes = R.pick(['title', 'author'], request.body.book); 24 | const book = await Book.create(attributes); 25 | if (book) { 26 | response.json({ book }); 27 | } else { 28 | response.status(500); 29 | } 30 | } 31 | 32 | async function update(request, response) { 33 | const book = await Book.findById(request.params.id); 34 | if (!book) { 35 | response.status(404); 36 | return; 37 | } 38 | 39 | const attributes = R.pick(['title', 'author'], request.body.book); 40 | Object.assign(book, attributes); 41 | await book.save(); 42 | response.json({ book }); 43 | } 44 | 45 | async function destroy(request, response) { 46 | const book = await Book.findById(request.params.id); 47 | if (!book) { 48 | response.status(404); 49 | return; 50 | } 51 | 52 | await book.destroy(); 53 | response.json({}); 54 | } 55 | 56 | function getRouter() { 57 | const router = express.Router(); 58 | router 59 | .route('/books') 60 | .get(index) 61 | .post(create); 62 | router 63 | .route('/books/:id') 64 | .get(show) 65 | .patch(update) 66 | .delete(destroy); 67 | return router; 68 | } 69 | 70 | module.exports = { 71 | getRouter, 72 | }; 73 | -------------------------------------------------------------------------------- /src/models.js: -------------------------------------------------------------------------------- 1 | const config = require('config'); 2 | const Sequelize = require('sequelize'); 3 | const winston = require('winston'); 4 | 5 | const logToWinston = function(str) { 6 | winston.info(str); 7 | }; 8 | 9 | const databaseUrl = config.databaseUrl; 10 | const sequelize = new Sequelize(databaseUrl, { 11 | logging: logToWinston, 12 | underscoredAll: true, 13 | }); 14 | 15 | const Book = sequelize.define( 16 | 'books', 17 | { 18 | title: { 19 | type: Sequelize.STRING, 20 | }, 21 | 22 | author: { 23 | type: Sequelize.STRING, 24 | allowNull: false, 25 | }, 26 | }, 27 | { 28 | freezeTableName: true, 29 | } 30 | ); 31 | 32 | function resetDatabase() { 33 | return Book.truncate(); 34 | } 35 | 36 | function syncDatabase() { 37 | return Book.sync({ force: true }); 38 | } 39 | 40 | module.exports = { 41 | resetDatabase, 42 | syncDatabase, 43 | Book, 44 | }; 45 | -------------------------------------------------------------------------------- /src/server.js: -------------------------------------------------------------------------------- 1 | const express = require('express'); 2 | const bodyParser = require('body-parser'); 3 | const morgan = require('morgan'); 4 | const config = require('config'); 5 | const winston = require('winston'); 6 | 7 | const booksController = require('./booksController'); 8 | 9 | winston.add(winston.transports.File, { 10 | filename: `logs/${process.env['NODE_ENV']}.log`, 11 | }); 12 | 13 | process.on('unhandledRejection', (error, promise) => { 14 | console.error('##### Unhandled Promise Rejection: #####'); 15 | console.error((error && error.stack) || error); 16 | console.error(promise); 17 | throw error; 18 | }); 19 | 20 | // Don't show the log when in test env 21 | if (process.env['NODE_ENV'] === 'test') { 22 | winston.remove(winston.transports.Console); 23 | } 24 | 25 | const winstonStream = { 26 | write: function(message, encoding) { 27 | winston.info(message); 28 | }, 29 | }; 30 | 31 | const app = express(); 32 | app.use(morgan('combined', { stream: winstonStream })); 33 | 34 | app.use(bodyParser.json()); 35 | app.use(bodyParser.urlencoded({ extended: true })); 36 | app.use(bodyParser.text()); 37 | 38 | app.use(booksController.getRouter()); 39 | 40 | const port = config.port; 41 | app.listen(port); 42 | winston.info('Listening on port ' + port); 43 | 44 | module.exports = app; // for testing 45 | -------------------------------------------------------------------------------- /test/models.test.js: -------------------------------------------------------------------------------- 1 | const chai = require('chai') 2 | const expect = chai.expect 3 | 4 | const { resetDatabase, syncDatabase, Book } = require('../src/models') 5 | 6 | describe('Book model', function() { 7 | before(syncDatabase) 8 | beforeEach(resetDatabase) 9 | 10 | describe('save and findOne', function() { 11 | it('works', async function() { 12 | const createdBook = await Book.create({ author: 'Ben Bekler', title: 'Soy el Señor' }) 13 | expect(createdBook.author).to.equal('Ben Bekler') 14 | expect(createdBook.title).to.equal('Soy el Señor') 15 | const foundBook = await Book.findOne() 16 | expect(foundBook.author).to.equal('Ben Bekler') 17 | expect(foundBook.title).to.equal('Soy el Señor') 18 | expect(foundBook.id).to.equal(createdBook.id) 19 | }) 20 | }) 21 | 22 | describe('where', function() { 23 | it('finds only rows for the given condition', async function() { 24 | // eslint-disable-next-line no-unused-vars 25 | const [book1, book2] = await Promise.all([ 26 | Book.create({ author: 'AAA', title: 'BBB' }), 27 | Book.create({ author: 'CCC', title: 'DDD' }), 28 | ]) 29 | const bookCount = await Book.count() 30 | expect(bookCount).to.equal(2) 31 | const books = await Book.findAll({ where: { author: 'CCC' } }) 32 | expect(books.length).to.equal(1) 33 | }) 34 | }) 35 | 36 | describe('validation', function() { 37 | it('rejects invalid attributes', async function() { 38 | try { 39 | await Book.create({ author: null, title: 'Soy el Señor' }) 40 | throw new Error('Should have raised a validation error') 41 | } catch (error) { 42 | expect(error.errors).to.deep.equal([ 43 | { 44 | message: 'author cannot be null', 45 | type: 'notNull Violation', 46 | path: 'author', 47 | value: null, 48 | }, 49 | ]) 50 | } 51 | }) 52 | }) 53 | }) 54 | -------------------------------------------------------------------------------- /test/requests.test.js: -------------------------------------------------------------------------------- 1 | const chai = require('chai'); 2 | const expect = chai.expect; 3 | const request = require('supertest'); 4 | 5 | const server = require('../src/server'); 6 | const { resetDatabase, Book } = require('../src/models'); 7 | 8 | describe('/books requests', () => { 9 | beforeEach(resetDatabase); 10 | 11 | describe('GET /books', () => { 12 | beforeEach(async () => { 13 | await Book.create({ title: 'Some title', author: 'Algun author' }); 14 | }); 15 | 16 | it('works', async () => { 17 | const response = await request(server).get('/books'); 18 | expect(response.body.books).to.deep.equal([{ title: 'Some title', author: 'Algun author' }]); 19 | }); 20 | }); 21 | 22 | describe('GET /books/:id', () => { 23 | let book; 24 | 25 | beforeEach(async () => { 26 | book = await Book.create({ title: 'Other title', author: 'Other author' }); 27 | }); 28 | 29 | it('works', async () => { 30 | const response = await request(server).get(`/books/${book.id}`); 31 | expect(response.body.book).to.deep.equal({ title: 'Other title', author: 'Other author' }); 32 | }); 33 | 34 | it('returns status 404 when not found', async () => { 35 | const response = await request(server).get('/books/12345'); 36 | expect(response.status).to.equal(404); 37 | expect(response.body).to.deep.equal({ error: 'NOT_FOUND' }); 38 | }); 39 | }); 40 | 41 | describe('POST /books (= create)', () => { 42 | it('works', async () => { 43 | const response = await request(server) 44 | .post('/books') 45 | .send({ book: { title: 'Creator title', author: 'Creator author' } }); 46 | // eslint-disable-next-line no-unused-expressions 47 | expect(response.body.book.id).not.to.be.null; 48 | expect(response.body.book).to.deep.include({ 49 | title: 'Creator title', 50 | author: 'Creator author', 51 | }); 52 | const loadedBook = await Book.findById(response.body.book.id); 53 | expect(loadedBook).to.deep.include({ 54 | title: 'Creator title', 55 | author: 'Creator author', 56 | }); 57 | }); 58 | }); 59 | 60 | describe('PATCH /books/:id (= update)', () => { 61 | let book; 62 | 63 | beforeEach(async () => { 64 | book = await Book.create({ title: 'Original title', author: 'Original author' }); 65 | }); 66 | 67 | it('works', async () => { 68 | const response = await request(server) 69 | .patch(`/books/${book.id}`) 70 | .send({ book: { title: 'Updated title' } }); 71 | expect(response.status).to.equal(200); 72 | expect(response.body.book).to.deep.include({ 73 | title: 'Updated title', 74 | author: 'Original author', 75 | }); 76 | await book.reload(); 77 | expect(book).to.deep.include({ 78 | title: 'Updated title', 79 | author: 'Original author', 80 | }); 81 | }); 82 | }); 83 | 84 | describe('DELETE /books/:id (= destroy)', () => { 85 | let book; 86 | 87 | beforeEach(async () => { 88 | book = await Book.create({ title: 'Original title', author: 'Original author' }); 89 | }); 90 | 91 | it('works', async () => { 92 | const response = await request(server) 93 | .delete(`/books/${book.id}`) 94 | .send({ book: { title: 'Updated title' } }); 95 | expect(response.status).to.equal(200); 96 | expect(response.body).to.deep.equal({}); 97 | const loadedBook = await Book.findById(book.id); 98 | // eslint-disable-next-line no-unused-expressions 99 | expect(loadedBook).to.be.null; 100 | }); 101 | }); 102 | }); 103 | -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | 4 | 5 | "@types/geojson@^1.0.0": 6 | version "1.0.3" 7 | resolved "https://registry.yarnpkg.com/@types/geojson/-/geojson-1.0.3.tgz#fbcf7fa5eb6dd108d51385cc6987ec1f24214523" 8 | 9 | abbrev@1: 10 | version "1.1.0" 11 | resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.0.tgz#d0554c2256636e2f56e7c2e5ad183f859428d81f" 12 | 13 | accepts@~1.3.3: 14 | version "1.3.4" 15 | resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.4.tgz#86246758c7dd6d21a6474ff084a4740ec05eb21f" 16 | dependencies: 17 | mime-types "~2.1.16" 18 | negotiator "0.6.1" 19 | 20 | acorn-jsx@^3.0.0: 21 | version "3.0.1" 22 | resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-3.0.1.tgz#afdf9488fb1ecefc8348f6fb22f464e32a58b36b" 23 | dependencies: 24 | acorn "^3.0.4" 25 | 26 | acorn@^3.0.4: 27 | version "3.3.0" 28 | resolved "https://registry.yarnpkg.com/acorn/-/acorn-3.3.0.tgz#45e37fb39e8da3f25baee3ff5369e2bb5f22017a" 29 | 30 | acorn@^5.1.1: 31 | version "5.1.2" 32 | resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.1.2.tgz#911cb53e036807cf0fa778dc5d370fbd864246d7" 33 | 34 | ajv-keywords@^1.0.0: 35 | version "1.5.1" 36 | resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-1.5.1.tgz#314dd0a4b3368fad3dfcdc54ede6171b886daf3c" 37 | 38 | ajv@^4.7.0: 39 | version "4.11.8" 40 | resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.8.tgz#82ffb02b29e662ae53bdc20af15947706739c536" 41 | dependencies: 42 | co "^4.6.0" 43 | json-stable-stringify "^1.0.1" 44 | 45 | ajv@^5.1.0, ajv@^5.2.0: 46 | version "5.2.2" 47 | resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.2.2.tgz#47c68d69e86f5d953103b0074a9430dc63da5e39" 48 | dependencies: 49 | co "^4.6.0" 50 | fast-deep-equal "^1.0.0" 51 | json-schema-traverse "^0.3.0" 52 | json-stable-stringify "^1.0.1" 53 | 54 | ansi-align@^2.0.0: 55 | version "2.0.0" 56 | resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-2.0.0.tgz#c36aeccba563b89ceb556f3690f0b1d9e3547f7f" 57 | dependencies: 58 | string-width "^2.0.0" 59 | 60 | ansi-escapes@^3.0.0: 61 | version "3.0.0" 62 | resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.0.0.tgz#ec3e8b4e9f8064fc02c3ac9b65f1c275bda8ef92" 63 | 64 | ansi-regex@^2.0.0: 65 | version "2.1.1" 66 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" 67 | 68 | ansi-regex@^3.0.0: 69 | version "3.0.0" 70 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" 71 | 72 | ansi-styles@^2.2.1: 73 | version "2.2.1" 74 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" 75 | 76 | ansi-styles@^3.1.0: 77 | version "3.2.0" 78 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.0.tgz#c159b8d5be0f9e5a6f346dab94f16ce022161b88" 79 | dependencies: 80 | color-convert "^1.9.0" 81 | 82 | anymatch@^1.3.0: 83 | version "1.3.2" 84 | resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-1.3.2.tgz#553dcb8f91e3c889845dfdba34c77721b90b9d7a" 85 | dependencies: 86 | micromatch "^2.1.5" 87 | normalize-path "^2.0.0" 88 | 89 | aproba@^1.0.3: 90 | version "1.2.0" 91 | resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" 92 | 93 | are-we-there-yet@~1.1.2: 94 | version "1.1.4" 95 | resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz#bb5dca382bb94f05e15194373d16fd3ba1ca110d" 96 | dependencies: 97 | delegates "^1.0.0" 98 | readable-stream "^2.0.6" 99 | 100 | argparse@^1.0.7: 101 | version "1.0.9" 102 | resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.9.tgz#73d83bc263f86e97f8cc4f6bae1b0e90a7d22c86" 103 | dependencies: 104 | sprintf-js "~1.0.2" 105 | 106 | arr-diff@^2.0.0: 107 | version "2.0.0" 108 | resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-2.0.0.tgz#8f3b827f955a8bd669697e4a4256ac3ceae356cf" 109 | dependencies: 110 | arr-flatten "^1.0.1" 111 | 112 | arr-flatten@^1.0.1: 113 | version "1.1.0" 114 | resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" 115 | 116 | array-flatten@1.1.1: 117 | version "1.1.1" 118 | resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" 119 | 120 | array-union@^1.0.1: 121 | version "1.0.2" 122 | resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" 123 | dependencies: 124 | array-uniq "^1.0.1" 125 | 126 | array-uniq@^1.0.1: 127 | version "1.0.3" 128 | resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" 129 | 130 | array-unique@^0.2.1: 131 | version "0.2.1" 132 | resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53" 133 | 134 | arrify@^1.0.0: 135 | version "1.0.1" 136 | resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" 137 | 138 | asn1@~0.2.3: 139 | version "0.2.3" 140 | resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.3.tgz#dac8787713c9966849fc8180777ebe9c1ddf3b86" 141 | 142 | assert-plus@1.0.0, assert-plus@^1.0.0: 143 | version "1.0.0" 144 | resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" 145 | 146 | assertion-error@^1.0.1: 147 | version "1.0.2" 148 | resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.0.2.tgz#13ca515d86206da0bac66e834dd397d87581094c" 149 | 150 | async-each@^1.0.0: 151 | version "1.0.1" 152 | resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d" 153 | 154 | async@~1.0.0: 155 | version "1.0.0" 156 | resolved "https://registry.yarnpkg.com/async/-/async-1.0.0.tgz#f8fc04ca3a13784ade9e1641af98578cfbd647a9" 157 | 158 | asynckit@^0.4.0: 159 | version "0.4.0" 160 | resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" 161 | 162 | aws-sign2@~0.7.0: 163 | version "0.7.0" 164 | resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" 165 | 166 | aws4@^1.6.0: 167 | version "1.6.0" 168 | resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e" 169 | 170 | babel-code-frame@^6.22.0: 171 | version "6.26.0" 172 | resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" 173 | dependencies: 174 | chalk "^1.1.3" 175 | esutils "^2.0.2" 176 | js-tokens "^3.0.2" 177 | 178 | balanced-match@^1.0.0: 179 | version "1.0.0" 180 | resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" 181 | 182 | basic-auth@~1.1.0: 183 | version "1.1.0" 184 | resolved "https://registry.yarnpkg.com/basic-auth/-/basic-auth-1.1.0.tgz#45221ee429f7ee1e5035be3f51533f1cdfd29884" 185 | 186 | bcrypt-pbkdf@^1.0.0: 187 | version "1.0.1" 188 | resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz#63bc5dcb61331b92bc05fd528953c33462a06f8d" 189 | dependencies: 190 | tweetnacl "^0.14.3" 191 | 192 | binary-extensions@^1.0.0: 193 | version "1.10.0" 194 | resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.10.0.tgz#9aeb9a6c5e88638aad171e167f5900abe24835d0" 195 | 196 | block-stream@*: 197 | version "0.0.9" 198 | resolved "https://registry.yarnpkg.com/block-stream/-/block-stream-0.0.9.tgz#13ebfe778a03205cfe03751481ebb4b3300c126a" 199 | dependencies: 200 | inherits "~2.0.0" 201 | 202 | bluebird@^3.3.4, bluebird@^3.4.6: 203 | version "3.5.0" 204 | resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.0.tgz#791420d7f551eea2897453a8a77653f96606d67c" 205 | 206 | body-parser@^1.16.1: 207 | version "1.18.1" 208 | resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.18.1.tgz#9c1629370bcfd42917f30641a2dcbe2ec50d4c26" 209 | dependencies: 210 | bytes "3.0.0" 211 | content-type "~1.0.4" 212 | debug "2.6.8" 213 | depd "~1.1.1" 214 | http-errors "~1.6.2" 215 | iconv-lite "0.4.19" 216 | on-finished "~2.3.0" 217 | qs "6.5.1" 218 | raw-body "2.3.2" 219 | type-is "~1.6.15" 220 | 221 | boom@4.x.x: 222 | version "4.3.1" 223 | resolved "https://registry.yarnpkg.com/boom/-/boom-4.3.1.tgz#4f8a3005cb4a7e3889f749030fd25b96e01d2e31" 224 | dependencies: 225 | hoek "4.x.x" 226 | 227 | boom@5.x.x: 228 | version "5.2.0" 229 | resolved "https://registry.yarnpkg.com/boom/-/boom-5.2.0.tgz#5dd9da6ee3a5f302077436290cb717d3f4a54e02" 230 | dependencies: 231 | hoek "4.x.x" 232 | 233 | boxen@^1.0.0: 234 | version "1.2.1" 235 | resolved "https://registry.yarnpkg.com/boxen/-/boxen-1.2.1.tgz#0f11e7fe344edb9397977fc13ede7f64d956481d" 236 | dependencies: 237 | ansi-align "^2.0.0" 238 | camelcase "^4.0.0" 239 | chalk "^2.0.1" 240 | cli-boxes "^1.0.0" 241 | string-width "^2.0.0" 242 | term-size "^1.2.0" 243 | widest-line "^1.0.0" 244 | 245 | brace-expansion@^1.1.7: 246 | version "1.1.8" 247 | resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.8.tgz#c07b211c7c952ec1f8efd51a77ef0d1d3990a292" 248 | dependencies: 249 | balanced-match "^1.0.0" 250 | concat-map "0.0.1" 251 | 252 | braces@^1.8.2: 253 | version "1.8.5" 254 | resolved "https://registry.yarnpkg.com/braces/-/braces-1.8.5.tgz#ba77962e12dff969d6b76711e914b737857bf6a7" 255 | dependencies: 256 | expand-range "^1.8.1" 257 | preserve "^0.2.0" 258 | repeat-element "^1.1.2" 259 | 260 | browser-stdout@1.3.0: 261 | version "1.3.0" 262 | resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.0.tgz#f351d32969d32fa5d7a5567154263d928ae3bd1f" 263 | 264 | buffer-writer@1.0.1: 265 | version "1.0.1" 266 | resolved "https://registry.yarnpkg.com/buffer-writer/-/buffer-writer-1.0.1.tgz#22a936901e3029afcd7547eb4487ceb697a3bf08" 267 | 268 | builtin-modules@^1.0.0, builtin-modules@^1.1.1: 269 | version "1.1.1" 270 | resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" 271 | 272 | bytes@3.0.0: 273 | version "3.0.0" 274 | resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" 275 | 276 | caller-path@^0.1.0: 277 | version "0.1.0" 278 | resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-0.1.0.tgz#94085ef63581ecd3daa92444a8fe94e82577751f" 279 | dependencies: 280 | callsites "^0.2.0" 281 | 282 | callsites@^0.2.0: 283 | version "0.2.0" 284 | resolved "https://registry.yarnpkg.com/callsites/-/callsites-0.2.0.tgz#afab96262910a7f33c19a5775825c69f34e350ca" 285 | 286 | camelcase@^4.0.0: 287 | version "4.1.0" 288 | resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" 289 | 290 | capture-stack-trace@^1.0.0: 291 | version "1.0.0" 292 | resolved "https://registry.yarnpkg.com/capture-stack-trace/-/capture-stack-trace-1.0.0.tgz#4a6fa07399c26bba47f0b2496b4d0fb408c5550d" 293 | 294 | caseless@~0.12.0: 295 | version "0.12.0" 296 | resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" 297 | 298 | chai@^3.5.0: 299 | version "3.5.0" 300 | resolved "https://registry.yarnpkg.com/chai/-/chai-3.5.0.tgz#4d02637b067fe958bdbfdd3a40ec56fef7373247" 301 | dependencies: 302 | assertion-error "^1.0.1" 303 | deep-eql "^0.1.3" 304 | type-detect "^1.0.0" 305 | 306 | chalk@^1.0.0, chalk@^1.1.1, chalk@^1.1.3: 307 | version "1.1.3" 308 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" 309 | dependencies: 310 | ansi-styles "^2.2.1" 311 | escape-string-regexp "^1.0.2" 312 | has-ansi "^2.0.0" 313 | strip-ansi "^3.0.0" 314 | supports-color "^2.0.0" 315 | 316 | chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0: 317 | version "2.1.0" 318 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.1.0.tgz#ac5becf14fa21b99c6c92ca7a7d7cfd5b17e743e" 319 | dependencies: 320 | ansi-styles "^3.1.0" 321 | escape-string-regexp "^1.0.5" 322 | supports-color "^4.0.0" 323 | 324 | chokidar@^1.7.0: 325 | version "1.7.0" 326 | resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-1.7.0.tgz#798e689778151c8076b4b360e5edd28cda2bb468" 327 | dependencies: 328 | anymatch "^1.3.0" 329 | async-each "^1.0.0" 330 | glob-parent "^2.0.0" 331 | inherits "^2.0.1" 332 | is-binary-path "^1.0.0" 333 | is-glob "^2.0.0" 334 | path-is-absolute "^1.0.0" 335 | readdirp "^2.0.0" 336 | optionalDependencies: 337 | fsevents "^1.0.0" 338 | 339 | circular-json@^0.3.1: 340 | version "0.3.3" 341 | resolved "https://registry.yarnpkg.com/circular-json/-/circular-json-0.3.3.tgz#815c99ea84f6809529d2f45791bdf82711352d66" 342 | 343 | cli-boxes@^1.0.0: 344 | version "1.0.0" 345 | resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-1.0.0.tgz#4fa917c3e59c94a004cd61f8ee509da651687143" 346 | 347 | cli-cursor@^2.1.0: 348 | version "2.1.0" 349 | resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" 350 | dependencies: 351 | restore-cursor "^2.0.0" 352 | 353 | cli-width@^2.0.0: 354 | version "2.2.0" 355 | resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.0.tgz#ff19ede8a9a5e579324147b0c11f0fbcbabed639" 356 | 357 | co@^4.6.0: 358 | version "4.6.0" 359 | resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" 360 | 361 | code-point-at@^1.0.0: 362 | version "1.1.0" 363 | resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" 364 | 365 | color-convert@^1.9.0: 366 | version "1.9.0" 367 | resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.0.tgz#1accf97dd739b983bf994d56fec8f95853641b7a" 368 | dependencies: 369 | color-name "^1.1.1" 370 | 371 | color-name@^1.1.1: 372 | version "1.1.3" 373 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" 374 | 375 | colors@1.0.x: 376 | version "1.0.3" 377 | resolved "https://registry.yarnpkg.com/colors/-/colors-1.0.3.tgz#0433f44d809680fdeb60ed260f1b0c262e82a40b" 378 | 379 | combined-stream@^1.0.5, combined-stream@~1.0.5: 380 | version "1.0.5" 381 | resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.5.tgz#938370a57b4a51dea2c77c15d5c5fdf895164009" 382 | dependencies: 383 | delayed-stream "~1.0.0" 384 | 385 | commander@2.9.0: 386 | version "2.9.0" 387 | resolved "https://registry.yarnpkg.com/commander/-/commander-2.9.0.tgz#9c99094176e12240cb22d6c5146098400fe0f7d4" 388 | dependencies: 389 | graceful-readlink ">= 1.0.0" 390 | 391 | component-emitter@^1.2.0: 392 | version "1.2.1" 393 | resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6" 394 | 395 | concat-map@0.0.1: 396 | version "0.0.1" 397 | resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" 398 | 399 | concat-stream@^1.6.0: 400 | version "1.6.0" 401 | resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.0.tgz#0aac662fd52be78964d5532f694784e70110acf7" 402 | dependencies: 403 | inherits "^2.0.3" 404 | readable-stream "^2.2.2" 405 | typedarray "^0.0.6" 406 | 407 | config@^1.25.1: 408 | version "1.26.2" 409 | resolved "https://registry.yarnpkg.com/config/-/config-1.26.2.tgz#2466291168d8afae0aae8ab99ea4d4272f520cae" 410 | dependencies: 411 | json5 "0.4.0" 412 | os-homedir "1.0.2" 413 | 414 | configstore@^3.0.0: 415 | version "3.1.1" 416 | resolved "https://registry.yarnpkg.com/configstore/-/configstore-3.1.1.tgz#094ee662ab83fad9917678de114faaea8fcdca90" 417 | dependencies: 418 | dot-prop "^4.1.0" 419 | graceful-fs "^4.1.2" 420 | make-dir "^1.0.0" 421 | unique-string "^1.0.0" 422 | write-file-atomic "^2.0.0" 423 | xdg-basedir "^3.0.0" 424 | 425 | console-control-strings@^1.0.0, console-control-strings@~1.1.0: 426 | version "1.1.0" 427 | resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" 428 | 429 | contains-path@^0.1.0: 430 | version "0.1.0" 431 | resolved "https://registry.yarnpkg.com/contains-path/-/contains-path-0.1.0.tgz#fe8cf184ff6670b6baef01a9d4861a5cbec4120a" 432 | 433 | content-disposition@0.5.2: 434 | version "0.5.2" 435 | resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.2.tgz#0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4" 436 | 437 | content-type@~1.0.2, content-type@~1.0.4: 438 | version "1.0.4" 439 | resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" 440 | 441 | cookie-signature@1.0.6: 442 | version "1.0.6" 443 | resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" 444 | 445 | cookie@0.3.1: 446 | version "0.3.1" 447 | resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.3.1.tgz#e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb" 448 | 449 | cookiejar@^2.1.0: 450 | version "2.1.1" 451 | resolved "https://registry.yarnpkg.com/cookiejar/-/cookiejar-2.1.1.tgz#41ad57b1b555951ec171412a81942b1e8200d34a" 452 | 453 | core-util-is@1.0.2, core-util-is@~1.0.0: 454 | version "1.0.2" 455 | resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" 456 | 457 | create-error-class@^3.0.0: 458 | version "3.0.2" 459 | resolved "https://registry.yarnpkg.com/create-error-class/-/create-error-class-3.0.2.tgz#06be7abef947a3f14a30fd610671d401bca8b7b6" 460 | dependencies: 461 | capture-stack-trace "^1.0.0" 462 | 463 | cross-spawn@^5.0.1, cross-spawn@^5.1.0: 464 | version "5.1.0" 465 | resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" 466 | dependencies: 467 | lru-cache "^4.0.1" 468 | shebang-command "^1.2.0" 469 | which "^1.2.9" 470 | 471 | cryptiles@3.x.x: 472 | version "3.1.2" 473 | resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-3.1.2.tgz#a89fbb220f5ce25ec56e8c4aa8a4fd7b5b0d29fe" 474 | dependencies: 475 | boom "5.x.x" 476 | 477 | crypto-random-string@^1.0.0: 478 | version "1.0.0" 479 | resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-1.0.0.tgz#a230f64f568310e1498009940790ec99545bca7e" 480 | 481 | cycle@1.0.x: 482 | version "1.0.3" 483 | resolved "https://registry.yarnpkg.com/cycle/-/cycle-1.0.3.tgz#21e80b2be8580f98b468f379430662b046c34ad2" 484 | 485 | dashdash@^1.12.0: 486 | version "1.14.1" 487 | resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" 488 | dependencies: 489 | assert-plus "^1.0.0" 490 | 491 | debug@2.6.8, debug@^2.2.0, debug@^2.6.8: 492 | version "2.6.8" 493 | resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.8.tgz#e731531ca2ede27d188222427da17821d68ff4fc" 494 | dependencies: 495 | ms "2.0.0" 496 | 497 | debug@^2.6.0: 498 | version "2.6.9" 499 | resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" 500 | dependencies: 501 | ms "2.0.0" 502 | 503 | debug@^3.0.1: 504 | version "3.0.1" 505 | resolved "https://registry.yarnpkg.com/debug/-/debug-3.0.1.tgz#0564c612b521dc92d9f2988f0549e34f9c98db64" 506 | dependencies: 507 | ms "2.0.0" 508 | 509 | deep-eql@^0.1.3: 510 | version "0.1.3" 511 | resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-0.1.3.tgz#ef558acab8de25206cd713906d74e56930eb69f2" 512 | dependencies: 513 | type-detect "0.1.1" 514 | 515 | deep-equal@~1.0.1: 516 | version "1.0.1" 517 | resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" 518 | 519 | deep-extend@~0.4.0: 520 | version "0.4.2" 521 | resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.4.2.tgz#48b699c27e334bf89f10892be432f6e4c7d34a7f" 522 | 523 | deep-is@~0.1.3: 524 | version "0.1.3" 525 | resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" 526 | 527 | define-properties@^1.1.2: 528 | version "1.1.2" 529 | resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.2.tgz#83a73f2fea569898fb737193c8f873caf6d45c94" 530 | dependencies: 531 | foreach "^2.0.5" 532 | object-keys "^1.0.8" 533 | 534 | defined@~1.0.0: 535 | version "1.0.0" 536 | resolved "https://registry.yarnpkg.com/defined/-/defined-1.0.0.tgz#c98d9bcef75674188e110969151199e39b1fa693" 537 | 538 | del@^2.0.2: 539 | version "2.2.2" 540 | resolved "https://registry.yarnpkg.com/del/-/del-2.2.2.tgz#c12c981d067846c84bcaf862cff930d907ffd1a8" 541 | dependencies: 542 | globby "^5.0.0" 543 | is-path-cwd "^1.0.0" 544 | is-path-in-cwd "^1.0.0" 545 | object-assign "^4.0.1" 546 | pify "^2.0.0" 547 | pinkie-promise "^2.0.0" 548 | rimraf "^2.2.8" 549 | 550 | delayed-stream@~1.0.0: 551 | version "1.0.0" 552 | resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" 553 | 554 | delegates@^1.0.0: 555 | version "1.0.0" 556 | resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" 557 | 558 | depd@1.1.1, depd@^1.1.0, depd@~1.1.0, depd@~1.1.1: 559 | version "1.1.1" 560 | resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.1.tgz#5783b4e1c459f06fa5ca27f991f3d06e7a310359" 561 | 562 | destroy@~1.0.4: 563 | version "1.0.4" 564 | resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" 565 | 566 | diff@3.2.0: 567 | version "3.2.0" 568 | resolved "https://registry.yarnpkg.com/diff/-/diff-3.2.0.tgz#c9ce393a4b7cbd0b058a725c93df299027868ff9" 569 | 570 | doctrine@1.5.0: 571 | version "1.5.0" 572 | resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa" 573 | dependencies: 574 | esutils "^2.0.2" 575 | isarray "^1.0.0" 576 | 577 | doctrine@^2.0.0: 578 | version "2.0.0" 579 | resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.0.0.tgz#c73d8d2909d22291e1a007a395804da8b665fe63" 580 | dependencies: 581 | esutils "^2.0.2" 582 | isarray "^1.0.0" 583 | 584 | dot-prop@^4.1.0: 585 | version "4.2.0" 586 | resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-4.2.0.tgz#1f19e0c2e1aa0e32797c49799f2837ac6af69c57" 587 | dependencies: 588 | is-obj "^1.0.0" 589 | 590 | dottie@^1.0.0: 591 | version "1.1.1" 592 | resolved "https://registry.yarnpkg.com/dottie/-/dottie-1.1.1.tgz#45c2a3f48bd6528eeed267a69a848eaaca6faa6a" 593 | 594 | duplexer3@^0.1.4: 595 | version "0.1.4" 596 | resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" 597 | 598 | duplexer@~0.1.1: 599 | version "0.1.1" 600 | resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.1.tgz#ace6ff808c1ce66b57d1ebf97977acb02334cfc1" 601 | 602 | ecc-jsbn@~0.1.1: 603 | version "0.1.1" 604 | resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505" 605 | dependencies: 606 | jsbn "~0.1.0" 607 | 608 | ee-first@1.1.1: 609 | version "1.1.1" 610 | resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" 611 | 612 | encodeurl@~1.0.1: 613 | version "1.0.1" 614 | resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.1.tgz#79e3d58655346909fe6f0f45a5de68103b294d20" 615 | 616 | error-ex@^1.2.0: 617 | version "1.3.1" 618 | resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.1.tgz#f855a86ce61adc4e8621c3cda21e7a7612c3a8dc" 619 | dependencies: 620 | is-arrayish "^0.2.1" 621 | 622 | es-abstract@^1.5.0: 623 | version "1.8.2" 624 | resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.8.2.tgz#25103263dc4decbda60e0c737ca32313518027ee" 625 | dependencies: 626 | es-to-primitive "^1.1.1" 627 | function-bind "^1.1.1" 628 | has "^1.0.1" 629 | is-callable "^1.1.3" 630 | is-regex "^1.0.4" 631 | 632 | es-to-primitive@^1.1.1: 633 | version "1.1.1" 634 | resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.1.1.tgz#45355248a88979034b6792e19bb81f2b7975dd0d" 635 | dependencies: 636 | is-callable "^1.1.1" 637 | is-date-object "^1.0.1" 638 | is-symbol "^1.0.1" 639 | 640 | es6-promise@^3.3.1: 641 | version "3.3.1" 642 | resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-3.3.1.tgz#a08cdde84ccdbf34d027a1451bc91d4bcd28a613" 643 | 644 | escape-html@~1.0.3: 645 | version "1.0.3" 646 | resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" 647 | 648 | escape-string-regexp@1.0.5, escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: 649 | version "1.0.5" 650 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" 651 | 652 | eslint-config-prettier@^2.5.0: 653 | version "2.5.0" 654 | resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-2.5.0.tgz#9ecb9296bae4e2e59a3ce361a96c9f825fe67b75" 655 | dependencies: 656 | get-stdin "^5.0.1" 657 | 658 | eslint-config-standard@^10.2.1: 659 | version "10.2.1" 660 | resolved "https://registry.yarnpkg.com/eslint-config-standard/-/eslint-config-standard-10.2.1.tgz#c061e4d066f379dc17cd562c64e819b4dd454591" 661 | 662 | eslint-import-resolver-node@^0.3.1: 663 | version "0.3.1" 664 | resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.1.tgz#4422574cde66a9a7b099938ee4d508a199e0e3cc" 665 | dependencies: 666 | debug "^2.6.8" 667 | resolve "^1.2.0" 668 | 669 | eslint-module-utils@^2.1.1: 670 | version "2.1.1" 671 | resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.1.1.tgz#abaec824177613b8a95b299639e1b6facf473449" 672 | dependencies: 673 | debug "^2.6.8" 674 | pkg-dir "^1.0.0" 675 | 676 | eslint-plugin-import@^2.7.0: 677 | version "2.7.0" 678 | resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.7.0.tgz#21de33380b9efb55f5ef6d2e210ec0e07e7fa69f" 679 | dependencies: 680 | builtin-modules "^1.1.1" 681 | contains-path "^0.1.0" 682 | debug "^2.6.8" 683 | doctrine "1.5.0" 684 | eslint-import-resolver-node "^0.3.1" 685 | eslint-module-utils "^2.1.1" 686 | has "^1.0.1" 687 | lodash.cond "^4.3.0" 688 | minimatch "^3.0.3" 689 | read-pkg-up "^2.0.0" 690 | 691 | eslint-plugin-node@^5.1.1: 692 | version "5.1.1" 693 | resolved "https://registry.yarnpkg.com/eslint-plugin-node/-/eslint-plugin-node-5.1.1.tgz#a7ed956e780c22aef6afd1116005acd82f26eac6" 694 | dependencies: 695 | ignore "^3.3.3" 696 | minimatch "^3.0.4" 697 | resolve "^1.3.3" 698 | semver "5.3.0" 699 | 700 | eslint-plugin-promise@^3.5.0: 701 | version "3.5.0" 702 | resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-3.5.0.tgz#78fbb6ffe047201627569e85a6c5373af2a68fca" 703 | 704 | eslint-plugin-standard@^3.0.1: 705 | version "3.0.1" 706 | resolved "https://registry.yarnpkg.com/eslint-plugin-standard/-/eslint-plugin-standard-3.0.1.tgz#34d0c915b45edc6f010393c7eef3823b08565cf2" 707 | 708 | eslint-scope@^3.7.1: 709 | version "3.7.1" 710 | resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-3.7.1.tgz#3d63c3edfda02e06e01a452ad88caacc7cdcb6e8" 711 | dependencies: 712 | esrecurse "^4.1.0" 713 | estraverse "^4.1.1" 714 | 715 | eslint@^4.7.2: 716 | version "4.7.2" 717 | resolved "https://registry.yarnpkg.com/eslint/-/eslint-4.7.2.tgz#ff6f5f5193848a27ee9b627be3e73fb9cb5e662e" 718 | dependencies: 719 | ajv "^5.2.0" 720 | babel-code-frame "^6.22.0" 721 | chalk "^2.1.0" 722 | concat-stream "^1.6.0" 723 | cross-spawn "^5.1.0" 724 | debug "^3.0.1" 725 | doctrine "^2.0.0" 726 | eslint-scope "^3.7.1" 727 | espree "^3.5.1" 728 | esquery "^1.0.0" 729 | estraverse "^4.2.0" 730 | esutils "^2.0.2" 731 | file-entry-cache "^2.0.0" 732 | functional-red-black-tree "^1.0.1" 733 | glob "^7.1.2" 734 | globals "^9.17.0" 735 | ignore "^3.3.3" 736 | imurmurhash "^0.1.4" 737 | inquirer "^3.0.6" 738 | is-resolvable "^1.0.0" 739 | js-yaml "^3.9.1" 740 | json-stable-stringify "^1.0.1" 741 | levn "^0.3.0" 742 | lodash "^4.17.4" 743 | minimatch "^3.0.2" 744 | mkdirp "^0.5.1" 745 | natural-compare "^1.4.0" 746 | optionator "^0.8.2" 747 | path-is-inside "^1.0.2" 748 | pluralize "^7.0.0" 749 | progress "^2.0.0" 750 | require-uncached "^1.0.3" 751 | semver "^5.3.0" 752 | strip-ansi "^4.0.0" 753 | strip-json-comments "~2.0.1" 754 | table "^4.0.1" 755 | text-table "~0.2.0" 756 | 757 | espree@^3.5.1: 758 | version "3.5.1" 759 | resolved "https://registry.yarnpkg.com/espree/-/espree-3.5.1.tgz#0c988b8ab46db53100a1954ae4ba995ddd27d87e" 760 | dependencies: 761 | acorn "^5.1.1" 762 | acorn-jsx "^3.0.0" 763 | 764 | esprima@^4.0.0: 765 | version "4.0.0" 766 | resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.0.tgz#4499eddcd1110e0b218bacf2fa7f7f59f55ca804" 767 | 768 | esquery@^1.0.0: 769 | version "1.0.0" 770 | resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.0.0.tgz#cfba8b57d7fba93f17298a8a006a04cda13d80fa" 771 | dependencies: 772 | estraverse "^4.0.0" 773 | 774 | esrecurse@^4.1.0: 775 | version "4.2.0" 776 | resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.0.tgz#fa9568d98d3823f9a41d91e902dcab9ea6e5b163" 777 | dependencies: 778 | estraverse "^4.1.0" 779 | object-assign "^4.0.1" 780 | 781 | estraverse@^4.0.0, estraverse@^4.1.0, estraverse@^4.1.1, estraverse@^4.2.0: 782 | version "4.2.0" 783 | resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" 784 | 785 | esutils@^2.0.2: 786 | version "2.0.2" 787 | resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" 788 | 789 | etag@~1.8.0: 790 | version "1.8.1" 791 | resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" 792 | 793 | event-stream@~3.3.0: 794 | version "3.3.4" 795 | resolved "https://registry.yarnpkg.com/event-stream/-/event-stream-3.3.4.tgz#4ab4c9a0f5a54db9338b4c34d86bfce8f4b35571" 796 | dependencies: 797 | duplexer "~0.1.1" 798 | from "~0" 799 | map-stream "~0.1.0" 800 | pause-stream "0.0.11" 801 | split "0.3" 802 | stream-combiner "~0.0.4" 803 | through "~2.3.1" 804 | 805 | execa@^0.7.0: 806 | version "0.7.0" 807 | resolved "https://registry.yarnpkg.com/execa/-/execa-0.7.0.tgz#944becd34cc41ee32a63a9faf27ad5a65fc59777" 808 | dependencies: 809 | cross-spawn "^5.0.1" 810 | get-stream "^3.0.0" 811 | is-stream "^1.1.0" 812 | npm-run-path "^2.0.0" 813 | p-finally "^1.0.0" 814 | signal-exit "^3.0.0" 815 | strip-eof "^1.0.0" 816 | 817 | expand-brackets@^0.1.4: 818 | version "0.1.5" 819 | resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b" 820 | dependencies: 821 | is-posix-bracket "^0.1.0" 822 | 823 | expand-range@^1.8.1: 824 | version "1.8.2" 825 | resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-1.8.2.tgz#a299effd335fe2721ebae8e257ec79644fc85337" 826 | dependencies: 827 | fill-range "^2.1.0" 828 | 829 | express@^4.14.1: 830 | version "4.15.4" 831 | resolved "https://registry.yarnpkg.com/express/-/express-4.15.4.tgz#032e2253489cf8fce02666beca3d11ed7a2daed1" 832 | dependencies: 833 | accepts "~1.3.3" 834 | array-flatten "1.1.1" 835 | content-disposition "0.5.2" 836 | content-type "~1.0.2" 837 | cookie "0.3.1" 838 | cookie-signature "1.0.6" 839 | debug "2.6.8" 840 | depd "~1.1.1" 841 | encodeurl "~1.0.1" 842 | escape-html "~1.0.3" 843 | etag "~1.8.0" 844 | finalhandler "~1.0.4" 845 | fresh "0.5.0" 846 | merge-descriptors "1.0.1" 847 | methods "~1.1.2" 848 | on-finished "~2.3.0" 849 | parseurl "~1.3.1" 850 | path-to-regexp "0.1.7" 851 | proxy-addr "~1.1.5" 852 | qs "6.5.0" 853 | range-parser "~1.2.0" 854 | send "0.15.4" 855 | serve-static "1.12.4" 856 | setprototypeof "1.0.3" 857 | statuses "~1.3.1" 858 | type-is "~1.6.15" 859 | utils-merge "1.0.0" 860 | vary "~1.1.1" 861 | 862 | extend@^3.0.0, extend@~3.0.1: 863 | version "3.0.1" 864 | resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.1.tgz#a755ea7bc1adfcc5a31ce7e762dbaadc5e636444" 865 | 866 | external-editor@^2.0.4: 867 | version "2.0.5" 868 | resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-2.0.5.tgz#52c249a3981b9ba187c7cacf5beb50bf1d91a6bc" 869 | dependencies: 870 | iconv-lite "^0.4.17" 871 | jschardet "^1.4.2" 872 | tmp "^0.0.33" 873 | 874 | extglob@^0.3.1: 875 | version "0.3.2" 876 | resolved "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1" 877 | dependencies: 878 | is-extglob "^1.0.0" 879 | 880 | extsprintf@1.3.0, extsprintf@^1.2.0: 881 | version "1.3.0" 882 | resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" 883 | 884 | eyes@0.1.x: 885 | version "0.1.8" 886 | resolved "https://registry.yarnpkg.com/eyes/-/eyes-0.1.8.tgz#62cf120234c683785d902348a800ef3e0cc20bc0" 887 | 888 | fast-deep-equal@^1.0.0: 889 | version "1.0.0" 890 | resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.0.0.tgz#96256a3bc975595eb36d82e9929d060d893439ff" 891 | 892 | fast-levenshtein@~2.0.4: 893 | version "2.0.6" 894 | resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" 895 | 896 | figures@^2.0.0: 897 | version "2.0.0" 898 | resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" 899 | dependencies: 900 | escape-string-regexp "^1.0.5" 901 | 902 | file-entry-cache@^2.0.0: 903 | version "2.0.0" 904 | resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-2.0.0.tgz#c392990c3e684783d838b8c84a45d8a048458361" 905 | dependencies: 906 | flat-cache "^1.2.1" 907 | object-assign "^4.0.1" 908 | 909 | filename-regex@^2.0.0: 910 | version "2.0.1" 911 | resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.1.tgz#c1c4b9bee3e09725ddb106b75c1e301fe2f18b26" 912 | 913 | fill-range@^2.1.0: 914 | version "2.2.3" 915 | resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-2.2.3.tgz#50b77dfd7e469bc7492470963699fe7a8485a723" 916 | dependencies: 917 | is-number "^2.1.0" 918 | isobject "^2.0.0" 919 | randomatic "^1.1.3" 920 | repeat-element "^1.1.2" 921 | repeat-string "^1.5.2" 922 | 923 | finalhandler@~1.0.4: 924 | version "1.0.5" 925 | resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.0.5.tgz#a701303d257a1bc82fea547a33e5ae89531723df" 926 | dependencies: 927 | debug "2.6.8" 928 | encodeurl "~1.0.1" 929 | escape-html "~1.0.3" 930 | on-finished "~2.3.0" 931 | parseurl "~1.3.2" 932 | statuses "~1.3.1" 933 | unpipe "~1.0.0" 934 | 935 | find-up@^1.0.0: 936 | version "1.1.2" 937 | resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" 938 | dependencies: 939 | path-exists "^2.0.0" 940 | pinkie-promise "^2.0.0" 941 | 942 | find-up@^2.0.0: 943 | version "2.1.0" 944 | resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" 945 | dependencies: 946 | locate-path "^2.0.0" 947 | 948 | flat-cache@^1.2.1: 949 | version "1.2.2" 950 | resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-1.2.2.tgz#fa86714e72c21db88601761ecf2f555d1abc6b96" 951 | dependencies: 952 | circular-json "^0.3.1" 953 | del "^2.0.2" 954 | graceful-fs "^4.1.2" 955 | write "^0.2.1" 956 | 957 | for-each@~0.3.2: 958 | version "0.3.2" 959 | resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.2.tgz#2c40450b9348e97f281322593ba96704b9abd4d4" 960 | dependencies: 961 | is-function "~1.0.0" 962 | 963 | for-in@^1.0.1: 964 | version "1.0.2" 965 | resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" 966 | 967 | for-own@^0.1.4: 968 | version "0.1.5" 969 | resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.5.tgz#5265c681a4f294dabbf17c9509b6763aa84510ce" 970 | dependencies: 971 | for-in "^1.0.1" 972 | 973 | foreach@^2.0.5: 974 | version "2.0.5" 975 | resolved "https://registry.yarnpkg.com/foreach/-/foreach-2.0.5.tgz#0bee005018aeb260d0a3af3ae658dd0136ec1b99" 976 | 977 | forever-agent@~0.6.1: 978 | version "0.6.1" 979 | resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" 980 | 981 | form-data@^2.1.1, form-data@~2.3.1: 982 | version "2.3.1" 983 | resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.1.tgz#6fb94fbd71885306d73d15cc497fe4cc4ecd44bf" 984 | dependencies: 985 | asynckit "^0.4.0" 986 | combined-stream "^1.0.5" 987 | mime-types "^2.1.12" 988 | 989 | formidable@^1.1.1: 990 | version "1.1.1" 991 | resolved "https://registry.yarnpkg.com/formidable/-/formidable-1.1.1.tgz#96b8886f7c3c3508b932d6bd70c4d3a88f35f1a9" 992 | 993 | forwarded@~0.1.0: 994 | version "0.1.2" 995 | resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.2.tgz#98c23dab1175657b8c0573e8ceccd91b0ff18c84" 996 | 997 | fresh@0.5.0: 998 | version "0.5.0" 999 | resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.0.tgz#f474ca5e6a9246d6fd8e0953cfa9b9c805afa78e" 1000 | 1001 | from@~0: 1002 | version "0.1.7" 1003 | resolved "https://registry.yarnpkg.com/from/-/from-0.1.7.tgz#83c60afc58b9c56997007ed1a768b3ab303a44fe" 1004 | 1005 | fs.realpath@^1.0.0: 1006 | version "1.0.0" 1007 | resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" 1008 | 1009 | fsevents@^1.0.0: 1010 | version "1.1.2" 1011 | resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.1.2.tgz#3282b713fb3ad80ede0e9fcf4611b5aa6fc033f4" 1012 | dependencies: 1013 | nan "^2.3.0" 1014 | node-pre-gyp "^0.6.36" 1015 | 1016 | fstream-ignore@^1.0.5: 1017 | version "1.0.5" 1018 | resolved "https://registry.yarnpkg.com/fstream-ignore/-/fstream-ignore-1.0.5.tgz#9c31dae34767018fe1d249b24dada67d092da105" 1019 | dependencies: 1020 | fstream "^1.0.0" 1021 | inherits "2" 1022 | minimatch "^3.0.0" 1023 | 1024 | fstream@^1.0.0, fstream@^1.0.10, fstream@^1.0.2: 1025 | version "1.0.11" 1026 | resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.11.tgz#5c1fb1f117477114f0632a0eb4b71b3cb0fd3171" 1027 | dependencies: 1028 | graceful-fs "^4.1.2" 1029 | inherits "~2.0.0" 1030 | mkdirp ">=0.5 0" 1031 | rimraf "2" 1032 | 1033 | function-bind@^1.0.2, function-bind@^1.1.1, function-bind@~1.1.0: 1034 | version "1.1.1" 1035 | resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" 1036 | 1037 | functional-red-black-tree@^1.0.1: 1038 | version "1.0.1" 1039 | resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" 1040 | 1041 | gauge@~2.7.3: 1042 | version "2.7.4" 1043 | resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" 1044 | dependencies: 1045 | aproba "^1.0.3" 1046 | console-control-strings "^1.0.0" 1047 | has-unicode "^2.0.0" 1048 | object-assign "^4.1.0" 1049 | signal-exit "^3.0.0" 1050 | string-width "^1.0.1" 1051 | strip-ansi "^3.0.1" 1052 | wide-align "^1.1.0" 1053 | 1054 | generic-pool@2.4.2: 1055 | version "2.4.2" 1056 | resolved "https://registry.yarnpkg.com/generic-pool/-/generic-pool-2.4.2.tgz#886bc5bf0beb7db96e81bcbba078818de5a62683" 1057 | 1058 | generic-pool@2.4.3: 1059 | version "2.4.3" 1060 | resolved "https://registry.yarnpkg.com/generic-pool/-/generic-pool-2.4.3.tgz#780c36f69dfad05a5a045dd37be7adca11a4f6ff" 1061 | 1062 | get-stdin@^5.0.1: 1063 | version "5.0.1" 1064 | resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-5.0.1.tgz#122e161591e21ff4c52530305693f20e6393a398" 1065 | 1066 | get-stream@^3.0.0: 1067 | version "3.0.0" 1068 | resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" 1069 | 1070 | getpass@^0.1.1: 1071 | version "0.1.7" 1072 | resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" 1073 | dependencies: 1074 | assert-plus "^1.0.0" 1075 | 1076 | glob-base@^0.3.0: 1077 | version "0.3.0" 1078 | resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4" 1079 | dependencies: 1080 | glob-parent "^2.0.0" 1081 | is-glob "^2.0.0" 1082 | 1083 | glob-parent@^2.0.0: 1084 | version "2.0.0" 1085 | resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-2.0.0.tgz#81383d72db054fcccf5336daa902f182f6edbb28" 1086 | dependencies: 1087 | is-glob "^2.0.0" 1088 | 1089 | glob@7.1.1: 1090 | version "7.1.1" 1091 | resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.1.tgz#805211df04faaf1c63a3600306cdf5ade50b2ec8" 1092 | dependencies: 1093 | fs.realpath "^1.0.0" 1094 | inflight "^1.0.4" 1095 | inherits "2" 1096 | minimatch "^3.0.2" 1097 | once "^1.3.0" 1098 | path-is-absolute "^1.0.0" 1099 | 1100 | glob@^7.0.3, glob@^7.0.5, glob@^7.1.2, glob@~7.1.2: 1101 | version "7.1.2" 1102 | resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" 1103 | dependencies: 1104 | fs.realpath "^1.0.0" 1105 | inflight "^1.0.4" 1106 | inherits "2" 1107 | minimatch "^3.0.4" 1108 | once "^1.3.0" 1109 | path-is-absolute "^1.0.0" 1110 | 1111 | globals@^9.17.0: 1112 | version "9.18.0" 1113 | resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" 1114 | 1115 | globby@^5.0.0: 1116 | version "5.0.0" 1117 | resolved "https://registry.yarnpkg.com/globby/-/globby-5.0.0.tgz#ebd84667ca0dbb330b99bcfc68eac2bc54370e0d" 1118 | dependencies: 1119 | array-union "^1.0.1" 1120 | arrify "^1.0.0" 1121 | glob "^7.0.3" 1122 | object-assign "^4.0.1" 1123 | pify "^2.0.0" 1124 | pinkie-promise "^2.0.0" 1125 | 1126 | got@^6.7.1: 1127 | version "6.7.1" 1128 | resolved "https://registry.yarnpkg.com/got/-/got-6.7.1.tgz#240cd05785a9a18e561dc1b44b41c763ef1e8db0" 1129 | dependencies: 1130 | create-error-class "^3.0.0" 1131 | duplexer3 "^0.1.4" 1132 | get-stream "^3.0.0" 1133 | is-redirect "^1.0.0" 1134 | is-retry-allowed "^1.0.0" 1135 | is-stream "^1.0.0" 1136 | lowercase-keys "^1.0.0" 1137 | safe-buffer "^5.0.1" 1138 | timed-out "^4.0.0" 1139 | unzip-response "^2.0.1" 1140 | url-parse-lax "^1.0.0" 1141 | 1142 | graceful-fs@^4.1.11, graceful-fs@^4.1.2: 1143 | version "4.1.11" 1144 | resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" 1145 | 1146 | "graceful-readlink@>= 1.0.0": 1147 | version "1.0.1" 1148 | resolved "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz#4cafad76bc62f02fa039b2f94e9a3dd3a391a725" 1149 | 1150 | growl@1.9.2: 1151 | version "1.9.2" 1152 | resolved "https://registry.yarnpkg.com/growl/-/growl-1.9.2.tgz#0ea7743715db8d8de2c5ede1775e1b45ac85c02f" 1153 | 1154 | har-schema@^2.0.0: 1155 | version "2.0.0" 1156 | resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" 1157 | 1158 | har-validator@~5.0.3: 1159 | version "5.0.3" 1160 | resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.0.3.tgz#ba402c266194f15956ef15e0fcf242993f6a7dfd" 1161 | dependencies: 1162 | ajv "^5.1.0" 1163 | har-schema "^2.0.0" 1164 | 1165 | has-ansi@^2.0.0: 1166 | version "2.0.0" 1167 | resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" 1168 | dependencies: 1169 | ansi-regex "^2.0.0" 1170 | 1171 | has-flag@^1.0.0: 1172 | version "1.0.0" 1173 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-1.0.0.tgz#9d9e793165ce017a00f00418c43f942a7b1d11fa" 1174 | 1175 | has-flag@^2.0.0: 1176 | version "2.0.0" 1177 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51" 1178 | 1179 | has-unicode@^2.0.0: 1180 | version "2.0.1" 1181 | resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" 1182 | 1183 | has@^1.0.1, has@~1.0.1: 1184 | version "1.0.1" 1185 | resolved "https://registry.yarnpkg.com/has/-/has-1.0.1.tgz#8461733f538b0837c9361e39a9ab9e9704dc2f28" 1186 | dependencies: 1187 | function-bind "^1.0.2" 1188 | 1189 | hawk@~6.0.2: 1190 | version "6.0.2" 1191 | resolved "https://registry.yarnpkg.com/hawk/-/hawk-6.0.2.tgz#af4d914eb065f9b5ce4d9d11c1cb2126eecc3038" 1192 | dependencies: 1193 | boom "4.x.x" 1194 | cryptiles "3.x.x" 1195 | hoek "4.x.x" 1196 | sntp "2.x.x" 1197 | 1198 | he@1.1.1: 1199 | version "1.1.1" 1200 | resolved "https://registry.yarnpkg.com/he/-/he-1.1.1.tgz#93410fd21b009735151f8868c2f271f3427e23fd" 1201 | 1202 | hoek@4.x.x: 1203 | version "4.2.0" 1204 | resolved "https://registry.yarnpkg.com/hoek/-/hoek-4.2.0.tgz#72d9d0754f7fe25ca2d01ad8f8f9a9449a89526d" 1205 | 1206 | hosted-git-info@^2.1.4: 1207 | version "2.5.0" 1208 | resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.5.0.tgz#6d60e34b3abbc8313062c3b798ef8d901a07af3c" 1209 | 1210 | http-errors@1.6.2, http-errors@~1.6.2: 1211 | version "1.6.2" 1212 | resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.2.tgz#0a002cc85707192a7e7946ceedc11155f60ec736" 1213 | dependencies: 1214 | depd "1.1.1" 1215 | inherits "2.0.3" 1216 | setprototypeof "1.0.3" 1217 | statuses ">= 1.3.1 < 2" 1218 | 1219 | http-signature@~1.2.0: 1220 | version "1.2.0" 1221 | resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" 1222 | dependencies: 1223 | assert-plus "^1.0.0" 1224 | jsprim "^1.2.2" 1225 | sshpk "^1.7.0" 1226 | 1227 | iconv-lite@0.4.19, iconv-lite@^0.4.17: 1228 | version "0.4.19" 1229 | resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.19.tgz#f7468f60135f5e5dad3399c0a81be9a1603a082b" 1230 | 1231 | ignore-by-default@^1.0.1: 1232 | version "1.0.1" 1233 | resolved "https://registry.yarnpkg.com/ignore-by-default/-/ignore-by-default-1.0.1.tgz#48ca6d72f6c6a3af00a9ad4ae6876be3889e2b09" 1234 | 1235 | ignore@^3.3.3: 1236 | version "3.3.5" 1237 | resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.5.tgz#c4e715455f6073a8d7e5dae72d2fc9d71663dba6" 1238 | 1239 | import-lazy@^2.1.0: 1240 | version "2.1.0" 1241 | resolved "https://registry.yarnpkg.com/import-lazy/-/import-lazy-2.1.0.tgz#05698e3d45c88e8d7e9d92cb0584e77f096f3e43" 1242 | 1243 | imurmurhash@^0.1.4: 1244 | version "0.1.4" 1245 | resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" 1246 | 1247 | inflection@^1.6.0: 1248 | version "1.12.0" 1249 | resolved "https://registry.yarnpkg.com/inflection/-/inflection-1.12.0.tgz#a200935656d6f5f6bc4dc7502e1aecb703228416" 1250 | 1251 | inflight@^1.0.4: 1252 | version "1.0.6" 1253 | resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" 1254 | dependencies: 1255 | once "^1.3.0" 1256 | wrappy "1" 1257 | 1258 | inherits@2, inherits@2.0.3, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.3: 1259 | version "2.0.3" 1260 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" 1261 | 1262 | ini@~1.3.0: 1263 | version "1.3.4" 1264 | resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.4.tgz#0537cb79daf59b59a1a517dff706c86ec039162e" 1265 | 1266 | inquirer@^3.0.6: 1267 | version "3.3.0" 1268 | resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-3.3.0.tgz#9dd2f2ad765dcab1ff0443b491442a20ba227dc9" 1269 | dependencies: 1270 | ansi-escapes "^3.0.0" 1271 | chalk "^2.0.0" 1272 | cli-cursor "^2.1.0" 1273 | cli-width "^2.0.0" 1274 | external-editor "^2.0.4" 1275 | figures "^2.0.0" 1276 | lodash "^4.3.0" 1277 | mute-stream "0.0.7" 1278 | run-async "^2.2.0" 1279 | rx-lite "^4.0.8" 1280 | rx-lite-aggregates "^4.0.8" 1281 | string-width "^2.1.0" 1282 | strip-ansi "^4.0.0" 1283 | through "^2.3.6" 1284 | 1285 | ipaddr.js@1.4.0: 1286 | version "1.4.0" 1287 | resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.4.0.tgz#296aca878a821816e5b85d0a285a99bcff4582f0" 1288 | 1289 | is-arrayish@^0.2.1: 1290 | version "0.2.1" 1291 | resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" 1292 | 1293 | is-binary-path@^1.0.0: 1294 | version "1.0.1" 1295 | resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" 1296 | dependencies: 1297 | binary-extensions "^1.0.0" 1298 | 1299 | is-buffer@^1.1.5: 1300 | version "1.1.5" 1301 | resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.5.tgz#1f3b26ef613b214b88cbca23cc6c01d87961eecc" 1302 | 1303 | is-builtin-module@^1.0.0: 1304 | version "1.0.0" 1305 | resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe" 1306 | dependencies: 1307 | builtin-modules "^1.0.0" 1308 | 1309 | is-callable@^1.1.1, is-callable@^1.1.3: 1310 | version "1.1.3" 1311 | resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.3.tgz#86eb75392805ddc33af71c92a0eedf74ee7604b2" 1312 | 1313 | is-date-object@^1.0.1: 1314 | version "1.0.1" 1315 | resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16" 1316 | 1317 | is-dotfile@^1.0.0: 1318 | version "1.0.3" 1319 | resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1" 1320 | 1321 | is-equal-shallow@^0.1.3: 1322 | version "0.1.3" 1323 | resolved "https://registry.yarnpkg.com/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz#2238098fc221de0bcfa5d9eac4c45d638aa1c534" 1324 | dependencies: 1325 | is-primitive "^2.0.0" 1326 | 1327 | is-extendable@^0.1.1: 1328 | version "0.1.1" 1329 | resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" 1330 | 1331 | is-extglob@^1.0.0: 1332 | version "1.0.0" 1333 | resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0" 1334 | 1335 | is-fullwidth-code-point@^1.0.0: 1336 | version "1.0.0" 1337 | resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" 1338 | dependencies: 1339 | number-is-nan "^1.0.0" 1340 | 1341 | is-fullwidth-code-point@^2.0.0: 1342 | version "2.0.0" 1343 | resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" 1344 | 1345 | is-function@~1.0.0: 1346 | version "1.0.1" 1347 | resolved "https://registry.yarnpkg.com/is-function/-/is-function-1.0.1.tgz#12cfb98b65b57dd3d193a3121f5f6e2f437602b5" 1348 | 1349 | is-glob@^2.0.0, is-glob@^2.0.1: 1350 | version "2.0.1" 1351 | resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-2.0.1.tgz#d096f926a3ded5600f3fdfd91198cb0888c2d863" 1352 | dependencies: 1353 | is-extglob "^1.0.0" 1354 | 1355 | is-npm@^1.0.0: 1356 | version "1.0.0" 1357 | resolved "https://registry.yarnpkg.com/is-npm/-/is-npm-1.0.0.tgz#f2fb63a65e4905b406c86072765a1a4dc793b9f4" 1358 | 1359 | is-number@^2.1.0: 1360 | version "2.1.0" 1361 | resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f" 1362 | dependencies: 1363 | kind-of "^3.0.2" 1364 | 1365 | is-number@^3.0.0: 1366 | version "3.0.0" 1367 | resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" 1368 | dependencies: 1369 | kind-of "^3.0.2" 1370 | 1371 | is-obj@^1.0.0: 1372 | version "1.0.1" 1373 | resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" 1374 | 1375 | is-path-cwd@^1.0.0: 1376 | version "1.0.0" 1377 | resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d" 1378 | 1379 | is-path-in-cwd@^1.0.0: 1380 | version "1.0.0" 1381 | resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz#6477582b8214d602346094567003be8a9eac04dc" 1382 | dependencies: 1383 | is-path-inside "^1.0.0" 1384 | 1385 | is-path-inside@^1.0.0: 1386 | version "1.0.0" 1387 | resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.0.tgz#fc06e5a1683fbda13de667aff717bbc10a48f37f" 1388 | dependencies: 1389 | path-is-inside "^1.0.1" 1390 | 1391 | is-posix-bracket@^0.1.0: 1392 | version "0.1.1" 1393 | resolved "https://registry.yarnpkg.com/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz#3334dc79774368e92f016e6fbc0a88f5cd6e6bc4" 1394 | 1395 | is-primitive@^2.0.0: 1396 | version "2.0.0" 1397 | resolved "https://registry.yarnpkg.com/is-primitive/-/is-primitive-2.0.0.tgz#207bab91638499c07b2adf240a41a87210034575" 1398 | 1399 | is-promise@^2.1.0: 1400 | version "2.1.0" 1401 | resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" 1402 | 1403 | is-redirect@^1.0.0: 1404 | version "1.0.0" 1405 | resolved "https://registry.yarnpkg.com/is-redirect/-/is-redirect-1.0.0.tgz#1d03dded53bd8db0f30c26e4f95d36fc7c87dc24" 1406 | 1407 | is-regex@^1.0.4: 1408 | version "1.0.4" 1409 | resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491" 1410 | dependencies: 1411 | has "^1.0.1" 1412 | 1413 | is-resolvable@^1.0.0: 1414 | version "1.0.0" 1415 | resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.0.0.tgz#8df57c61ea2e3c501408d100fb013cf8d6e0cc62" 1416 | dependencies: 1417 | tryit "^1.0.1" 1418 | 1419 | is-retry-allowed@^1.0.0: 1420 | version "1.1.0" 1421 | resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz#11a060568b67339444033d0125a61a20d564fb34" 1422 | 1423 | is-stream@^1.0.0, is-stream@^1.1.0: 1424 | version "1.1.0" 1425 | resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" 1426 | 1427 | is-symbol@^1.0.1: 1428 | version "1.0.1" 1429 | resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.1.tgz#3cc59f00025194b6ab2e38dbae6689256b660572" 1430 | 1431 | is-typedarray@~1.0.0: 1432 | version "1.0.0" 1433 | resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" 1434 | 1435 | isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: 1436 | version "1.0.0" 1437 | resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" 1438 | 1439 | isexe@^2.0.0: 1440 | version "2.0.0" 1441 | resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" 1442 | 1443 | isobject@^2.0.0: 1444 | version "2.1.0" 1445 | resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" 1446 | dependencies: 1447 | isarray "1.0.0" 1448 | 1449 | isstream@0.1.x, isstream@~0.1.2: 1450 | version "0.1.2" 1451 | resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" 1452 | 1453 | js-string-escape@1.0.1: 1454 | version "1.0.1" 1455 | resolved "https://registry.yarnpkg.com/js-string-escape/-/js-string-escape-1.0.1.tgz#e2625badbc0d67c7533e9edc1068c587ae4137ef" 1456 | 1457 | js-tokens@^3.0.2: 1458 | version "3.0.2" 1459 | resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" 1460 | 1461 | js-yaml@^3.9.1: 1462 | version "3.10.0" 1463 | resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.10.0.tgz#2e78441646bd4682e963f22b6e92823c309c62dc" 1464 | dependencies: 1465 | argparse "^1.0.7" 1466 | esprima "^4.0.0" 1467 | 1468 | jsbn@~0.1.0: 1469 | version "0.1.1" 1470 | resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" 1471 | 1472 | jschardet@^1.4.2: 1473 | version "1.5.1" 1474 | resolved "https://registry.yarnpkg.com/jschardet/-/jschardet-1.5.1.tgz#c519f629f86b3a5bedba58a88d311309eec097f9" 1475 | 1476 | json-schema-traverse@^0.3.0: 1477 | version "0.3.1" 1478 | resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340" 1479 | 1480 | json-schema@0.2.3: 1481 | version "0.2.3" 1482 | resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" 1483 | 1484 | json-stable-stringify@^1.0.1: 1485 | version "1.0.1" 1486 | resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af" 1487 | dependencies: 1488 | jsonify "~0.0.0" 1489 | 1490 | json-stringify-safe@~5.0.1: 1491 | version "5.0.1" 1492 | resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" 1493 | 1494 | json3@3.3.2: 1495 | version "3.3.2" 1496 | resolved "https://registry.yarnpkg.com/json3/-/json3-3.3.2.tgz#3c0434743df93e2f5c42aee7b19bcb483575f4e1" 1497 | 1498 | json5@0.4.0: 1499 | version "0.4.0" 1500 | resolved "https://registry.yarnpkg.com/json5/-/json5-0.4.0.tgz#054352e4c4c80c86c0923877d449de176a732c8d" 1501 | 1502 | jsonify@~0.0.0: 1503 | version "0.0.0" 1504 | resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" 1505 | 1506 | jsprim@^1.2.2: 1507 | version "1.4.1" 1508 | resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" 1509 | dependencies: 1510 | assert-plus "1.0.0" 1511 | extsprintf "1.3.0" 1512 | json-schema "0.2.3" 1513 | verror "1.10.0" 1514 | 1515 | kind-of@^3.0.2: 1516 | version "3.2.2" 1517 | resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" 1518 | dependencies: 1519 | is-buffer "^1.1.5" 1520 | 1521 | kind-of@^4.0.0: 1522 | version "4.0.0" 1523 | resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" 1524 | dependencies: 1525 | is-buffer "^1.1.5" 1526 | 1527 | latest-version@^3.0.0: 1528 | version "3.1.0" 1529 | resolved "https://registry.yarnpkg.com/latest-version/-/latest-version-3.1.0.tgz#a205383fea322b33b5ae3b18abee0dc2f356ee15" 1530 | dependencies: 1531 | package-json "^4.0.0" 1532 | 1533 | levn@^0.3.0, levn@~0.3.0: 1534 | version "0.3.0" 1535 | resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" 1536 | dependencies: 1537 | prelude-ls "~1.1.2" 1538 | type-check "~0.3.2" 1539 | 1540 | load-json-file@^2.0.0: 1541 | version "2.0.0" 1542 | resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8" 1543 | dependencies: 1544 | graceful-fs "^4.1.2" 1545 | parse-json "^2.2.0" 1546 | pify "^2.0.0" 1547 | strip-bom "^3.0.0" 1548 | 1549 | locate-path@^2.0.0: 1550 | version "2.0.0" 1551 | resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" 1552 | dependencies: 1553 | p-locate "^2.0.0" 1554 | path-exists "^3.0.0" 1555 | 1556 | lodash._baseassign@^3.0.0: 1557 | version "3.2.0" 1558 | resolved "https://registry.yarnpkg.com/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz#8c38a099500f215ad09e59f1722fd0c52bfe0a4e" 1559 | dependencies: 1560 | lodash._basecopy "^3.0.0" 1561 | lodash.keys "^3.0.0" 1562 | 1563 | lodash._basecopy@^3.0.0: 1564 | version "3.0.1" 1565 | resolved "https://registry.yarnpkg.com/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz#8da0e6a876cf344c0ad8a54882111dd3c5c7ca36" 1566 | 1567 | lodash._basecreate@^3.0.0: 1568 | version "3.0.3" 1569 | resolved "https://registry.yarnpkg.com/lodash._basecreate/-/lodash._basecreate-3.0.3.tgz#1bc661614daa7fc311b7d03bf16806a0213cf821" 1570 | 1571 | lodash._bindcallback@^3.0.0: 1572 | version "3.0.1" 1573 | resolved "https://registry.yarnpkg.com/lodash._bindcallback/-/lodash._bindcallback-3.0.1.tgz#e531c27644cf8b57a99e17ed95b35c748789392e" 1574 | 1575 | lodash._createassigner@^3.0.0: 1576 | version "3.1.1" 1577 | resolved "https://registry.yarnpkg.com/lodash._createassigner/-/lodash._createassigner-3.1.1.tgz#838a5bae2fdaca63ac22dee8e19fa4e6d6970b11" 1578 | dependencies: 1579 | lodash._bindcallback "^3.0.0" 1580 | lodash._isiterateecall "^3.0.0" 1581 | lodash.restparam "^3.0.0" 1582 | 1583 | lodash._getnative@^3.0.0: 1584 | version "3.9.1" 1585 | resolved "https://registry.yarnpkg.com/lodash._getnative/-/lodash._getnative-3.9.1.tgz#570bc7dede46d61cdcde687d65d3eecbaa3aaff5" 1586 | 1587 | lodash._isiterateecall@^3.0.0: 1588 | version "3.0.9" 1589 | resolved "https://registry.yarnpkg.com/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz#5203ad7ba425fae842460e696db9cf3e6aac057c" 1590 | 1591 | lodash.assign@^3.0.0: 1592 | version "3.2.0" 1593 | resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-3.2.0.tgz#3ce9f0234b4b2223e296b8fa0ac1fee8ebca64fa" 1594 | dependencies: 1595 | lodash._baseassign "^3.0.0" 1596 | lodash._createassigner "^3.0.0" 1597 | lodash.keys "^3.0.0" 1598 | 1599 | lodash.cond@^4.3.0: 1600 | version "4.5.2" 1601 | resolved "https://registry.yarnpkg.com/lodash.cond/-/lodash.cond-4.5.2.tgz#f471a1da486be60f6ab955d17115523dd1d255d5" 1602 | 1603 | lodash.create@3.1.1: 1604 | version "3.1.1" 1605 | resolved "https://registry.yarnpkg.com/lodash.create/-/lodash.create-3.1.1.tgz#d7f2849f0dbda7e04682bb8cd72ab022461debe7" 1606 | dependencies: 1607 | lodash._baseassign "^3.0.0" 1608 | lodash._basecreate "^3.0.0" 1609 | lodash._isiterateecall "^3.0.0" 1610 | 1611 | lodash.defaults@^3.1.2: 1612 | version "3.1.2" 1613 | resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-3.1.2.tgz#c7308b18dbf8bc9372d701a73493c61192bd2e2c" 1614 | dependencies: 1615 | lodash.assign "^3.0.0" 1616 | lodash.restparam "^3.0.0" 1617 | 1618 | lodash.isarguments@^3.0.0: 1619 | version "3.1.0" 1620 | resolved "https://registry.yarnpkg.com/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz#2f573d85c6a24289ff00663b491c1d338ff3458a" 1621 | 1622 | lodash.isarray@^3.0.0: 1623 | version "3.0.4" 1624 | resolved "https://registry.yarnpkg.com/lodash.isarray/-/lodash.isarray-3.0.4.tgz#79e4eb88c36a8122af86f844aa9bcd851b5fbb55" 1625 | 1626 | lodash.keys@^3.0.0: 1627 | version "3.1.2" 1628 | resolved "https://registry.yarnpkg.com/lodash.keys/-/lodash.keys-3.1.2.tgz#4dbc0472b156be50a0b286855d1bd0b0c656098a" 1629 | dependencies: 1630 | lodash._getnative "^3.0.0" 1631 | lodash.isarguments "^3.0.0" 1632 | lodash.isarray "^3.0.0" 1633 | 1634 | lodash.restparam@^3.0.0: 1635 | version "3.6.1" 1636 | resolved "https://registry.yarnpkg.com/lodash.restparam/-/lodash.restparam-3.6.1.tgz#936a4e309ef330a7645ed4145986c85ae5b20805" 1637 | 1638 | lodash@4.12.0: 1639 | version "4.12.0" 1640 | resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.12.0.tgz#2bd6dc46a040f59e686c972ed21d93dc59053258" 1641 | 1642 | lodash@^4.0.0, lodash@^4.17.4, lodash@^4.3.0: 1643 | version "4.17.4" 1644 | resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" 1645 | 1646 | lowercase-keys@^1.0.0: 1647 | version "1.0.0" 1648 | resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.0.tgz#4e3366b39e7f5457e35f1324bdf6f88d0bfc7306" 1649 | 1650 | lru-cache@^4.0.1: 1651 | version "4.1.1" 1652 | resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.1.tgz#622e32e82488b49279114a4f9ecf45e7cd6bba55" 1653 | dependencies: 1654 | pseudomap "^1.0.2" 1655 | yallist "^2.1.2" 1656 | 1657 | make-dir@^1.0.0: 1658 | version "1.0.0" 1659 | resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.0.0.tgz#97a011751e91dd87cfadef58832ebb04936de978" 1660 | dependencies: 1661 | pify "^2.3.0" 1662 | 1663 | map-stream@~0.1.0: 1664 | version "0.1.0" 1665 | resolved "https://registry.yarnpkg.com/map-stream/-/map-stream-0.1.0.tgz#e56aa94c4c8055a16404a0674b78f215f7c8e194" 1666 | 1667 | media-typer@0.3.0: 1668 | version "0.3.0" 1669 | resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" 1670 | 1671 | merge-descriptors@1.0.1: 1672 | version "1.0.1" 1673 | resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" 1674 | 1675 | methods@^1.1.1, methods@~1.1.2: 1676 | version "1.1.2" 1677 | resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" 1678 | 1679 | micromatch@^2.1.5: 1680 | version "2.3.11" 1681 | resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565" 1682 | dependencies: 1683 | arr-diff "^2.0.0" 1684 | array-unique "^0.2.1" 1685 | braces "^1.8.2" 1686 | expand-brackets "^0.1.4" 1687 | extglob "^0.3.1" 1688 | filename-regex "^2.0.0" 1689 | is-extglob "^1.0.0" 1690 | is-glob "^2.0.1" 1691 | kind-of "^3.0.2" 1692 | normalize-path "^2.0.1" 1693 | object.omit "^2.0.0" 1694 | parse-glob "^3.0.4" 1695 | regex-cache "^0.4.2" 1696 | 1697 | mime-db@~1.30.0: 1698 | version "1.30.0" 1699 | resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.30.0.tgz#74c643da2dd9d6a45399963465b26d5ca7d71f01" 1700 | 1701 | mime-types@^2.1.12, mime-types@~2.1.15, mime-types@~2.1.16, mime-types@~2.1.17: 1702 | version "2.1.17" 1703 | resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.17.tgz#09d7a393f03e995a79f8af857b70a9e0ab16557a" 1704 | dependencies: 1705 | mime-db "~1.30.0" 1706 | 1707 | mime@1.3.4: 1708 | version "1.3.4" 1709 | resolved "https://registry.yarnpkg.com/mime/-/mime-1.3.4.tgz#115f9e3b6b3daf2959983cb38f149a2d40eb5d53" 1710 | 1711 | mime@^1.3.6: 1712 | version "1.4.0" 1713 | resolved "https://registry.yarnpkg.com/mime/-/mime-1.4.0.tgz#69e9e0db51d44f2a3b56e48b7817d7d137f1a343" 1714 | 1715 | mimic-fn@^1.0.0: 1716 | version "1.1.0" 1717 | resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.1.0.tgz#e667783d92e89dbd342818b5230b9d62a672ad18" 1718 | 1719 | minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4: 1720 | version "3.0.4" 1721 | resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" 1722 | dependencies: 1723 | brace-expansion "^1.1.7" 1724 | 1725 | minimist@0.0.8: 1726 | version "0.0.8" 1727 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" 1728 | 1729 | minimist@^1.2.0, minimist@~1.2.0: 1730 | version "1.2.0" 1731 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" 1732 | 1733 | mkdirp@0.5.1, "mkdirp@>=0.5 0", mkdirp@^0.5.1: 1734 | version "0.5.1" 1735 | resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" 1736 | dependencies: 1737 | minimist "0.0.8" 1738 | 1739 | mocha@^3.2.0: 1740 | version "3.5.3" 1741 | resolved "https://registry.yarnpkg.com/mocha/-/mocha-3.5.3.tgz#1e0480fe36d2da5858d1eb6acc38418b26eaa20d" 1742 | dependencies: 1743 | browser-stdout "1.3.0" 1744 | commander "2.9.0" 1745 | debug "2.6.8" 1746 | diff "3.2.0" 1747 | escape-string-regexp "1.0.5" 1748 | glob "7.1.1" 1749 | growl "1.9.2" 1750 | he "1.1.1" 1751 | json3 "3.3.2" 1752 | lodash.create "3.1.1" 1753 | mkdirp "0.5.1" 1754 | supports-color "3.1.2" 1755 | 1756 | moment-timezone@^0.5.4: 1757 | version "0.5.13" 1758 | resolved "https://registry.yarnpkg.com/moment-timezone/-/moment-timezone-0.5.13.tgz#99ce5c7d827262eb0f1f702044177f60745d7b90" 1759 | dependencies: 1760 | moment ">= 2.9.0" 1761 | 1762 | "moment@>= 2.9.0", moment@^2.13.0: 1763 | version "2.18.1" 1764 | resolved "https://registry.yarnpkg.com/moment/-/moment-2.18.1.tgz#c36193dd3ce1c2eed2adb7c802dbbc77a81b1c0f" 1765 | 1766 | morgan@^1.8.1: 1767 | version "1.8.2" 1768 | resolved "https://registry.yarnpkg.com/morgan/-/morgan-1.8.2.tgz#784ac7734e4a453a9c6e6e8680a9329275c8b687" 1769 | dependencies: 1770 | basic-auth "~1.1.0" 1771 | debug "2.6.8" 1772 | depd "~1.1.0" 1773 | on-finished "~2.3.0" 1774 | on-headers "~1.0.1" 1775 | 1776 | ms@2.0.0: 1777 | version "2.0.0" 1778 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" 1779 | 1780 | mute-stream@0.0.7: 1781 | version "0.0.7" 1782 | resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" 1783 | 1784 | nan@^2.3.0: 1785 | version "2.7.0" 1786 | resolved "https://registry.yarnpkg.com/nan/-/nan-2.7.0.tgz#d95bf721ec877e08db276ed3fc6eb78f9083ad46" 1787 | 1788 | natural-compare@^1.4.0: 1789 | version "1.4.0" 1790 | resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" 1791 | 1792 | negotiator@0.6.1: 1793 | version "0.6.1" 1794 | resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.1.tgz#2b327184e8992101177b28563fb5e7102acd0ca9" 1795 | 1796 | node-pre-gyp@^0.6.36: 1797 | version "0.6.37" 1798 | resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.37.tgz#3c872b236b2e266e4140578fe1ee88f693323a05" 1799 | dependencies: 1800 | mkdirp "^0.5.1" 1801 | nopt "^4.0.1" 1802 | npmlog "^4.0.2" 1803 | rc "^1.1.7" 1804 | request "^2.81.0" 1805 | rimraf "^2.6.1" 1806 | semver "^5.3.0" 1807 | tape "^4.6.3" 1808 | tar "^2.2.1" 1809 | tar-pack "^3.4.0" 1810 | 1811 | nodemon@^1.11.0: 1812 | version "1.12.1" 1813 | resolved "https://registry.yarnpkg.com/nodemon/-/nodemon-1.12.1.tgz#996a56dc49d9f16bbf1b78a4de08f13634b3878d" 1814 | dependencies: 1815 | chokidar "^1.7.0" 1816 | debug "^2.6.8" 1817 | es6-promise "^3.3.1" 1818 | ignore-by-default "^1.0.1" 1819 | lodash.defaults "^3.1.2" 1820 | minimatch "^3.0.4" 1821 | ps-tree "^1.1.0" 1822 | touch "^3.1.0" 1823 | undefsafe "0.0.3" 1824 | update-notifier "^2.2.0" 1825 | 1826 | nopt@^4.0.1: 1827 | version "4.0.1" 1828 | resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" 1829 | dependencies: 1830 | abbrev "1" 1831 | osenv "^0.1.4" 1832 | 1833 | nopt@~1.0.10: 1834 | version "1.0.10" 1835 | resolved "https://registry.yarnpkg.com/nopt/-/nopt-1.0.10.tgz#6ddd21bd2a31417b92727dd585f8a6f37608ebee" 1836 | dependencies: 1837 | abbrev "1" 1838 | 1839 | normalize-package-data@^2.3.2: 1840 | version "2.4.0" 1841 | resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f" 1842 | dependencies: 1843 | hosted-git-info "^2.1.4" 1844 | is-builtin-module "^1.0.0" 1845 | semver "2 || 3 || 4 || 5" 1846 | validate-npm-package-license "^3.0.1" 1847 | 1848 | normalize-path@^2.0.0, normalize-path@^2.0.1: 1849 | version "2.1.1" 1850 | resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" 1851 | dependencies: 1852 | remove-trailing-separator "^1.0.1" 1853 | 1854 | npm-run-path@^2.0.0: 1855 | version "2.0.2" 1856 | resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" 1857 | dependencies: 1858 | path-key "^2.0.0" 1859 | 1860 | npmlog@^4.0.2: 1861 | version "4.1.2" 1862 | resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" 1863 | dependencies: 1864 | are-we-there-yet "~1.1.2" 1865 | console-control-strings "~1.1.0" 1866 | gauge "~2.7.3" 1867 | set-blocking "~2.0.0" 1868 | 1869 | number-is-nan@^1.0.0: 1870 | version "1.0.1" 1871 | resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" 1872 | 1873 | oauth-sign@~0.8.2: 1874 | version "0.8.2" 1875 | resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43" 1876 | 1877 | object-assign@4.1.0: 1878 | version "4.1.0" 1879 | resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.0.tgz#7a3b3d0e98063d43f4c03f2e8ae6cd51a86883a0" 1880 | 1881 | object-assign@^4.0.1, object-assign@^4.1.0: 1882 | version "4.1.1" 1883 | resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" 1884 | 1885 | object-inspect@~1.3.0: 1886 | version "1.3.0" 1887 | resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.3.0.tgz#5b1eb8e6742e2ee83342a637034d844928ba2f6d" 1888 | 1889 | object-keys@^1.0.8: 1890 | version "1.0.11" 1891 | resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.11.tgz#c54601778ad560f1142ce0e01bcca8b56d13426d" 1892 | 1893 | object.omit@^2.0.0: 1894 | version "2.0.1" 1895 | resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa" 1896 | dependencies: 1897 | for-own "^0.1.4" 1898 | is-extendable "^0.1.1" 1899 | 1900 | on-finished@~2.3.0: 1901 | version "2.3.0" 1902 | resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" 1903 | dependencies: 1904 | ee-first "1.1.1" 1905 | 1906 | on-headers@~1.0.1: 1907 | version "1.0.1" 1908 | resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.1.tgz#928f5d0f470d49342651ea6794b0857c100693f7" 1909 | 1910 | once@^1.3.0, once@^1.3.3: 1911 | version "1.4.0" 1912 | resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" 1913 | dependencies: 1914 | wrappy "1" 1915 | 1916 | onetime@^2.0.0: 1917 | version "2.0.1" 1918 | resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4" 1919 | dependencies: 1920 | mimic-fn "^1.0.0" 1921 | 1922 | optionator@^0.8.2: 1923 | version "0.8.2" 1924 | resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz#364c5e409d3f4d6301d6c0b4c05bba50180aeb64" 1925 | dependencies: 1926 | deep-is "~0.1.3" 1927 | fast-levenshtein "~2.0.4" 1928 | levn "~0.3.0" 1929 | prelude-ls "~1.1.2" 1930 | type-check "~0.3.2" 1931 | wordwrap "~1.0.0" 1932 | 1933 | os-homedir@1.0.2, os-homedir@^1.0.0: 1934 | version "1.0.2" 1935 | resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" 1936 | 1937 | os-tmpdir@^1.0.0, os-tmpdir@~1.0.2: 1938 | version "1.0.2" 1939 | resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" 1940 | 1941 | osenv@^0.1.4: 1942 | version "0.1.4" 1943 | resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.4.tgz#42fe6d5953df06c8064be6f176c3d05aaaa34644" 1944 | dependencies: 1945 | os-homedir "^1.0.0" 1946 | os-tmpdir "^1.0.0" 1947 | 1948 | p-finally@^1.0.0: 1949 | version "1.0.0" 1950 | resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" 1951 | 1952 | p-limit@^1.1.0: 1953 | version "1.1.0" 1954 | resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.1.0.tgz#b07ff2d9a5d88bec806035895a2bab66a27988bc" 1955 | 1956 | p-locate@^2.0.0: 1957 | version "2.0.0" 1958 | resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" 1959 | dependencies: 1960 | p-limit "^1.1.0" 1961 | 1962 | package-json@^4.0.0: 1963 | version "4.0.1" 1964 | resolved "https://registry.yarnpkg.com/package-json/-/package-json-4.0.1.tgz#8869a0401253661c4c4ca3da6c2121ed555f5eed" 1965 | dependencies: 1966 | got "^6.7.1" 1967 | registry-auth-token "^3.0.1" 1968 | registry-url "^3.0.3" 1969 | semver "^5.1.0" 1970 | 1971 | packet-reader@0.3.1: 1972 | version "0.3.1" 1973 | resolved "https://registry.yarnpkg.com/packet-reader/-/packet-reader-0.3.1.tgz#cd62e60af8d7fea8a705ec4ff990871c46871f27" 1974 | 1975 | parse-glob@^3.0.4: 1976 | version "3.0.4" 1977 | resolved "https://registry.yarnpkg.com/parse-glob/-/parse-glob-3.0.4.tgz#b2c376cfb11f35513badd173ef0bb6e3a388391c" 1978 | dependencies: 1979 | glob-base "^0.3.0" 1980 | is-dotfile "^1.0.0" 1981 | is-extglob "^1.0.0" 1982 | is-glob "^2.0.0" 1983 | 1984 | parse-json@^2.2.0: 1985 | version "2.2.0" 1986 | resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" 1987 | dependencies: 1988 | error-ex "^1.2.0" 1989 | 1990 | parseurl@~1.3.1, parseurl@~1.3.2: 1991 | version "1.3.2" 1992 | resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.2.tgz#fc289d4ed8993119460c156253262cdc8de65bf3" 1993 | 1994 | path-exists@^2.0.0: 1995 | version "2.1.0" 1996 | resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" 1997 | dependencies: 1998 | pinkie-promise "^2.0.0" 1999 | 2000 | path-exists@^3.0.0: 2001 | version "3.0.0" 2002 | resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" 2003 | 2004 | path-is-absolute@^1.0.0: 2005 | version "1.0.1" 2006 | resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" 2007 | 2008 | path-is-inside@^1.0.1, path-is-inside@^1.0.2: 2009 | version "1.0.2" 2010 | resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" 2011 | 2012 | path-key@^2.0.0: 2013 | version "2.0.1" 2014 | resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" 2015 | 2016 | path-parse@^1.0.5: 2017 | version "1.0.5" 2018 | resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.5.tgz#3c1adf871ea9cd6c9431b6ea2bd74a0ff055c4c1" 2019 | 2020 | path-to-regexp@0.1.7: 2021 | version "0.1.7" 2022 | resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" 2023 | 2024 | path-type@^2.0.0: 2025 | version "2.0.0" 2026 | resolved "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73" 2027 | dependencies: 2028 | pify "^2.0.0" 2029 | 2030 | pause-stream@0.0.11: 2031 | version "0.0.11" 2032 | resolved "https://registry.yarnpkg.com/pause-stream/-/pause-stream-0.0.11.tgz#fe5a34b0cbce12b5aa6a2b403ee2e73b602f1445" 2033 | dependencies: 2034 | through "~2.3" 2035 | 2036 | performance-now@^2.1.0: 2037 | version "2.1.0" 2038 | resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" 2039 | 2040 | pg-connection-string@0.1.3: 2041 | version "0.1.3" 2042 | resolved "https://registry.yarnpkg.com/pg-connection-string/-/pg-connection-string-0.1.3.tgz#da1847b20940e42ee1492beaf65d49d91b245df7" 2043 | 2044 | pg-hstore@^2.3.2: 2045 | version "2.3.2" 2046 | resolved "https://registry.yarnpkg.com/pg-hstore/-/pg-hstore-2.3.2.tgz#f7ef053e7b9b892ae986af2f7cbe86432dfcf24f" 2047 | dependencies: 2048 | underscore "^1.7.0" 2049 | 2050 | pg-pool@1.*: 2051 | version "1.8.0" 2052 | resolved "https://registry.yarnpkg.com/pg-pool/-/pg-pool-1.8.0.tgz#f7ec73824c37a03f076f51bfdf70e340147c4f37" 2053 | dependencies: 2054 | generic-pool "2.4.3" 2055 | object-assign "4.1.0" 2056 | 2057 | pg-types@1.*: 2058 | version "1.12.1" 2059 | resolved "https://registry.yarnpkg.com/pg-types/-/pg-types-1.12.1.tgz#d64087e3903b58ffaad279e7595c52208a14c3d2" 2060 | dependencies: 2061 | postgres-array "~1.0.0" 2062 | postgres-bytea "~1.0.0" 2063 | postgres-date "~1.0.0" 2064 | postgres-interval "^1.1.0" 2065 | 2066 | pg@^6.1.2: 2067 | version "6.4.2" 2068 | resolved "https://registry.yarnpkg.com/pg/-/pg-6.4.2.tgz#c364011060eac7a507a2ae063eb857ece910e27f" 2069 | dependencies: 2070 | buffer-writer "1.0.1" 2071 | js-string-escape "1.0.1" 2072 | packet-reader "0.3.1" 2073 | pg-connection-string "0.1.3" 2074 | pg-pool "1.*" 2075 | pg-types "1.*" 2076 | pgpass "1.*" 2077 | semver "4.3.2" 2078 | 2079 | pgpass@1.*: 2080 | version "1.0.2" 2081 | resolved "https://registry.yarnpkg.com/pgpass/-/pgpass-1.0.2.tgz#2a7bb41b6065b67907e91da1b07c1847c877b306" 2082 | dependencies: 2083 | split "^1.0.0" 2084 | 2085 | pify@^2.0.0, pify@^2.3.0: 2086 | version "2.3.0" 2087 | resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" 2088 | 2089 | pinkie-promise@^2.0.0: 2090 | version "2.0.1" 2091 | resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" 2092 | dependencies: 2093 | pinkie "^2.0.0" 2094 | 2095 | pinkie@^2.0.0: 2096 | version "2.0.4" 2097 | resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" 2098 | 2099 | pkg-dir@^1.0.0: 2100 | version "1.0.0" 2101 | resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-1.0.0.tgz#7a4b508a8d5bb2d629d447056ff4e9c9314cf3d4" 2102 | dependencies: 2103 | find-up "^1.0.0" 2104 | 2105 | pluralize@^7.0.0: 2106 | version "7.0.0" 2107 | resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-7.0.0.tgz#298b89df8b93b0221dbf421ad2b1b1ea23fc6777" 2108 | 2109 | postgres-array@~1.0.0: 2110 | version "1.0.2" 2111 | resolved "https://registry.yarnpkg.com/postgres-array/-/postgres-array-1.0.2.tgz#8e0b32eb03bf77a5c0a7851e0441c169a256a238" 2112 | 2113 | postgres-bytea@~1.0.0: 2114 | version "1.0.0" 2115 | resolved "https://registry.yarnpkg.com/postgres-bytea/-/postgres-bytea-1.0.0.tgz#027b533c0aa890e26d172d47cf9ccecc521acd35" 2116 | 2117 | postgres-date@~1.0.0: 2118 | version "1.0.3" 2119 | resolved "https://registry.yarnpkg.com/postgres-date/-/postgres-date-1.0.3.tgz#e2d89702efdb258ff9d9cee0fe91bd06975257a8" 2120 | 2121 | postgres-interval@^1.1.0: 2122 | version "1.1.1" 2123 | resolved "https://registry.yarnpkg.com/postgres-interval/-/postgres-interval-1.1.1.tgz#acdb0f897b4b1c6e496d9d4e0a853e1c428f06f0" 2124 | dependencies: 2125 | xtend "^4.0.0" 2126 | 2127 | prelude-ls@~1.1.2: 2128 | version "1.1.2" 2129 | resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" 2130 | 2131 | prepend-http@^1.0.1: 2132 | version "1.0.4" 2133 | resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" 2134 | 2135 | preserve@^0.2.0: 2136 | version "0.2.0" 2137 | resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b" 2138 | 2139 | prettier@^1.7.0: 2140 | version "1.7.0" 2141 | resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.7.0.tgz#47481588f41f7c90f63938feb202ac82554e7150" 2142 | 2143 | process-nextick-args@~1.0.6: 2144 | version "1.0.7" 2145 | resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3" 2146 | 2147 | progress@^2.0.0: 2148 | version "2.0.0" 2149 | resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.0.tgz#8a1be366bf8fc23db2bd23f10c6fe920b4389d1f" 2150 | 2151 | proxy-addr@~1.1.5: 2152 | version "1.1.5" 2153 | resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-1.1.5.tgz#71c0ee3b102de3f202f3b64f608d173fcba1a918" 2154 | dependencies: 2155 | forwarded "~0.1.0" 2156 | ipaddr.js "1.4.0" 2157 | 2158 | ps-tree@^1.1.0: 2159 | version "1.1.0" 2160 | resolved "https://registry.yarnpkg.com/ps-tree/-/ps-tree-1.1.0.tgz#b421b24140d6203f1ed3c76996b4427b08e8c014" 2161 | dependencies: 2162 | event-stream "~3.3.0" 2163 | 2164 | pseudomap@^1.0.2: 2165 | version "1.0.2" 2166 | resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" 2167 | 2168 | punycode@^1.4.1: 2169 | version "1.4.1" 2170 | resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" 2171 | 2172 | qs@6.5.0: 2173 | version "6.5.0" 2174 | resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.0.tgz#8d04954d364def3efc55b5a0793e1e2c8b1e6e49" 2175 | 2176 | qs@6.5.1, qs@^6.4.0, qs@~6.5.1: 2177 | version "6.5.1" 2178 | resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.1.tgz#349cdf6eef89ec45c12d7d5eb3fc0c870343a6d8" 2179 | 2180 | ramda@^0.23.0: 2181 | version "0.23.0" 2182 | resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.23.0.tgz#ccd13fff73497a93974e3e86327bfd87bd6e8e2b" 2183 | 2184 | randomatic@^1.1.3: 2185 | version "1.1.7" 2186 | resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-1.1.7.tgz#c7abe9cc8b87c0baa876b19fde83fd464797e38c" 2187 | dependencies: 2188 | is-number "^3.0.0" 2189 | kind-of "^4.0.0" 2190 | 2191 | range-parser@~1.2.0: 2192 | version "1.2.0" 2193 | resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.0.tgz#f49be6b487894ddc40dcc94a322f611092e00d5e" 2194 | 2195 | raw-body@2.3.2: 2196 | version "2.3.2" 2197 | resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.3.2.tgz#bcd60c77d3eb93cde0050295c3f379389bc88f89" 2198 | dependencies: 2199 | bytes "3.0.0" 2200 | http-errors "1.6.2" 2201 | iconv-lite "0.4.19" 2202 | unpipe "1.0.0" 2203 | 2204 | rc@^1.0.1, rc@^1.1.6, rc@^1.1.7: 2205 | version "1.2.1" 2206 | resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.1.tgz#2e03e8e42ee450b8cb3dce65be1bf8974e1dfd95" 2207 | dependencies: 2208 | deep-extend "~0.4.0" 2209 | ini "~1.3.0" 2210 | minimist "^1.2.0" 2211 | strip-json-comments "~2.0.1" 2212 | 2213 | read-pkg-up@^2.0.0: 2214 | version "2.0.0" 2215 | resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be" 2216 | dependencies: 2217 | find-up "^2.0.0" 2218 | read-pkg "^2.0.0" 2219 | 2220 | read-pkg@^2.0.0: 2221 | version "2.0.0" 2222 | resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8" 2223 | dependencies: 2224 | load-json-file "^2.0.0" 2225 | normalize-package-data "^2.3.2" 2226 | path-type "^2.0.0" 2227 | 2228 | readable-stream@^2.0.2, readable-stream@^2.0.5, readable-stream@^2.0.6, readable-stream@^2.1.4, readable-stream@^2.2.2: 2229 | version "2.3.3" 2230 | resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.3.tgz#368f2512d79f9d46fdfc71349ae7878bbc1eb95c" 2231 | dependencies: 2232 | core-util-is "~1.0.0" 2233 | inherits "~2.0.3" 2234 | isarray "~1.0.0" 2235 | process-nextick-args "~1.0.6" 2236 | safe-buffer "~5.1.1" 2237 | string_decoder "~1.0.3" 2238 | util-deprecate "~1.0.1" 2239 | 2240 | readdirp@^2.0.0: 2241 | version "2.1.0" 2242 | resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.1.0.tgz#4ed0ad060df3073300c48440373f72d1cc642d78" 2243 | dependencies: 2244 | graceful-fs "^4.1.2" 2245 | minimatch "^3.0.2" 2246 | readable-stream "^2.0.2" 2247 | set-immediate-shim "^1.0.1" 2248 | 2249 | regex-cache@^0.4.2: 2250 | version "0.4.4" 2251 | resolved "https://registry.yarnpkg.com/regex-cache/-/regex-cache-0.4.4.tgz#75bdc58a2a1496cec48a12835bc54c8d562336dd" 2252 | dependencies: 2253 | is-equal-shallow "^0.1.3" 2254 | 2255 | registry-auth-token@^3.0.1: 2256 | version "3.3.1" 2257 | resolved "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-3.3.1.tgz#fb0d3289ee0d9ada2cbb52af5dfe66cb070d3006" 2258 | dependencies: 2259 | rc "^1.1.6" 2260 | safe-buffer "^5.0.1" 2261 | 2262 | registry-url@^3.0.3: 2263 | version "3.1.0" 2264 | resolved "https://registry.yarnpkg.com/registry-url/-/registry-url-3.1.0.tgz#3d4ef870f73dde1d77f0cf9a381432444e174942" 2265 | dependencies: 2266 | rc "^1.0.1" 2267 | 2268 | remove-trailing-separator@^1.0.1: 2269 | version "1.1.0" 2270 | resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" 2271 | 2272 | repeat-element@^1.1.2: 2273 | version "1.1.2" 2274 | resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.2.tgz#ef089a178d1483baae4d93eb98b4f9e4e11d990a" 2275 | 2276 | repeat-string@^1.5.2: 2277 | version "1.6.1" 2278 | resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" 2279 | 2280 | request@^2.81.0: 2281 | version "2.82.0" 2282 | resolved "https://registry.yarnpkg.com/request/-/request-2.82.0.tgz#2ba8a92cd7ac45660ea2b10a53ae67cd247516ea" 2283 | dependencies: 2284 | aws-sign2 "~0.7.0" 2285 | aws4 "^1.6.0" 2286 | caseless "~0.12.0" 2287 | combined-stream "~1.0.5" 2288 | extend "~3.0.1" 2289 | forever-agent "~0.6.1" 2290 | form-data "~2.3.1" 2291 | har-validator "~5.0.3" 2292 | hawk "~6.0.2" 2293 | http-signature "~1.2.0" 2294 | is-typedarray "~1.0.0" 2295 | isstream "~0.1.2" 2296 | json-stringify-safe "~5.0.1" 2297 | mime-types "~2.1.17" 2298 | oauth-sign "~0.8.2" 2299 | performance-now "^2.1.0" 2300 | qs "~6.5.1" 2301 | safe-buffer "^5.1.1" 2302 | stringstream "~0.0.5" 2303 | tough-cookie "~2.3.2" 2304 | tunnel-agent "^0.6.0" 2305 | uuid "^3.1.0" 2306 | 2307 | require-uncached@^1.0.3: 2308 | version "1.0.3" 2309 | resolved "https://registry.yarnpkg.com/require-uncached/-/require-uncached-1.0.3.tgz#4e0d56d6c9662fd31e43011c4b95aa49955421d3" 2310 | dependencies: 2311 | caller-path "^0.1.0" 2312 | resolve-from "^1.0.0" 2313 | 2314 | resolve-from@^1.0.0: 2315 | version "1.0.1" 2316 | resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-1.0.1.tgz#26cbfe935d1aeeeabb29bc3fe5aeb01e93d44226" 2317 | 2318 | resolve@^1.2.0, resolve@^1.3.3, resolve@~1.4.0: 2319 | version "1.4.0" 2320 | resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.4.0.tgz#a75be01c53da25d934a98ebd0e4c4a7312f92a86" 2321 | dependencies: 2322 | path-parse "^1.0.5" 2323 | 2324 | restore-cursor@^2.0.0: 2325 | version "2.0.0" 2326 | resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" 2327 | dependencies: 2328 | onetime "^2.0.0" 2329 | signal-exit "^3.0.2" 2330 | 2331 | resumer@~0.0.0: 2332 | version "0.0.0" 2333 | resolved "https://registry.yarnpkg.com/resumer/-/resumer-0.0.0.tgz#f1e8f461e4064ba39e82af3cdc2a8c893d076759" 2334 | dependencies: 2335 | through "~2.3.4" 2336 | 2337 | retry-as-promised@^2.0.0: 2338 | version "2.3.1" 2339 | resolved "https://registry.yarnpkg.com/retry-as-promised/-/retry-as-promised-2.3.1.tgz#f75059183f9730771c09bad1eed57537931cbc9d" 2340 | dependencies: 2341 | bluebird "^3.4.6" 2342 | debug "^2.2.0" 2343 | 2344 | rimraf@2, rimraf@^2.2.8, rimraf@^2.5.1, rimraf@^2.6.1: 2345 | version "2.6.2" 2346 | resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36" 2347 | dependencies: 2348 | glob "^7.0.5" 2349 | 2350 | run-async@^2.2.0: 2351 | version "2.3.0" 2352 | resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.3.0.tgz#0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0" 2353 | dependencies: 2354 | is-promise "^2.1.0" 2355 | 2356 | rx-lite-aggregates@^4.0.8: 2357 | version "4.0.8" 2358 | resolved "https://registry.yarnpkg.com/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz#753b87a89a11c95467c4ac1626c4efc4e05c67be" 2359 | dependencies: 2360 | rx-lite "*" 2361 | 2362 | rx-lite@*, rx-lite@^4.0.8: 2363 | version "4.0.8" 2364 | resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-4.0.8.tgz#0b1e11af8bc44836f04a6407e92da42467b79444" 2365 | 2366 | safe-buffer@^5.0.1, safe-buffer@^5.1.1, safe-buffer@~5.1.0, safe-buffer@~5.1.1: 2367 | version "5.1.1" 2368 | resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" 2369 | 2370 | semver-diff@^2.0.0: 2371 | version "2.1.0" 2372 | resolved "https://registry.yarnpkg.com/semver-diff/-/semver-diff-2.1.0.tgz#4bbb8437c8d37e4b0cf1a68fd726ec6d645d6d36" 2373 | dependencies: 2374 | semver "^5.0.3" 2375 | 2376 | "semver@2 || 3 || 4 || 5", semver@^5.0.1, semver@^5.0.3, semver@^5.1.0, semver@^5.3.0: 2377 | version "5.4.1" 2378 | resolved "https://registry.yarnpkg.com/semver/-/semver-5.4.1.tgz#e059c09d8571f0540823733433505d3a2f00b18e" 2379 | 2380 | semver@4.3.2: 2381 | version "4.3.2" 2382 | resolved "https://registry.yarnpkg.com/semver/-/semver-4.3.2.tgz#c7a07158a80bedd052355b770d82d6640f803be7" 2383 | 2384 | semver@5.3.0: 2385 | version "5.3.0" 2386 | resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" 2387 | 2388 | send@0.15.4: 2389 | version "0.15.4" 2390 | resolved "https://registry.yarnpkg.com/send/-/send-0.15.4.tgz#985faa3e284b0273c793364a35c6737bd93905b9" 2391 | dependencies: 2392 | debug "2.6.8" 2393 | depd "~1.1.1" 2394 | destroy "~1.0.4" 2395 | encodeurl "~1.0.1" 2396 | escape-html "~1.0.3" 2397 | etag "~1.8.0" 2398 | fresh "0.5.0" 2399 | http-errors "~1.6.2" 2400 | mime "1.3.4" 2401 | ms "2.0.0" 2402 | on-finished "~2.3.0" 2403 | range-parser "~1.2.0" 2404 | statuses "~1.3.1" 2405 | 2406 | sequelize@^3.30.2: 2407 | version "3.30.4" 2408 | resolved "https://registry.yarnpkg.com/sequelize/-/sequelize-3.30.4.tgz#bda2df1e31854b099e4149a111e9fc0a5ca1d1a4" 2409 | dependencies: 2410 | bluebird "^3.3.4" 2411 | depd "^1.1.0" 2412 | dottie "^1.0.0" 2413 | generic-pool "2.4.2" 2414 | inflection "^1.6.0" 2415 | lodash "4.12.0" 2416 | moment "^2.13.0" 2417 | moment-timezone "^0.5.4" 2418 | retry-as-promised "^2.0.0" 2419 | semver "^5.0.1" 2420 | shimmer "1.1.0" 2421 | terraformer-wkt-parser "^1.1.0" 2422 | toposort-class "^1.0.1" 2423 | uuid "^3.0.0" 2424 | validator "^5.2.0" 2425 | wkx "0.2.0" 2426 | 2427 | serve-static@1.12.4: 2428 | version "1.12.4" 2429 | resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.12.4.tgz#9b6aa98eeb7253c4eedc4c1f6fdbca609901a961" 2430 | dependencies: 2431 | encodeurl "~1.0.1" 2432 | escape-html "~1.0.3" 2433 | parseurl "~1.3.1" 2434 | send "0.15.4" 2435 | 2436 | set-blocking@~2.0.0: 2437 | version "2.0.0" 2438 | resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" 2439 | 2440 | set-immediate-shim@^1.0.1: 2441 | version "1.0.1" 2442 | resolved "https://registry.yarnpkg.com/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz#4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61" 2443 | 2444 | setprototypeof@1.0.3: 2445 | version "1.0.3" 2446 | resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.0.3.tgz#66567e37043eeb4f04d91bd658c0cbefb55b8e04" 2447 | 2448 | shebang-command@^1.2.0: 2449 | version "1.2.0" 2450 | resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" 2451 | dependencies: 2452 | shebang-regex "^1.0.0" 2453 | 2454 | shebang-regex@^1.0.0: 2455 | version "1.0.0" 2456 | resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" 2457 | 2458 | shimmer@1.1.0: 2459 | version "1.1.0" 2460 | resolved "https://registry.yarnpkg.com/shimmer/-/shimmer-1.1.0.tgz#97d7377137ffbbab425522e429fe0aa89a488b35" 2461 | 2462 | signal-exit@^3.0.0, signal-exit@^3.0.2: 2463 | version "3.0.2" 2464 | resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" 2465 | 2466 | slice-ansi@0.0.4: 2467 | version "0.0.4" 2468 | resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-0.0.4.tgz#edbf8903f66f7ce2f8eafd6ceed65e264c831b35" 2469 | 2470 | sntp@2.x.x: 2471 | version "2.0.2" 2472 | resolved "https://registry.yarnpkg.com/sntp/-/sntp-2.0.2.tgz#5064110f0af85f7cfdb7d6b67a40028ce52b4b2b" 2473 | dependencies: 2474 | hoek "4.x.x" 2475 | 2476 | spdx-correct@~1.0.0: 2477 | version "1.0.2" 2478 | resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-1.0.2.tgz#4b3073d933ff51f3912f03ac5519498a4150db40" 2479 | dependencies: 2480 | spdx-license-ids "^1.0.2" 2481 | 2482 | spdx-expression-parse@~1.0.0: 2483 | version "1.0.4" 2484 | resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz#9bdf2f20e1f40ed447fbe273266191fced51626c" 2485 | 2486 | spdx-license-ids@^1.0.2: 2487 | version "1.2.2" 2488 | resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz#c9df7a3424594ade6bd11900d596696dc06bac57" 2489 | 2490 | split@0.3: 2491 | version "0.3.3" 2492 | resolved "https://registry.yarnpkg.com/split/-/split-0.3.3.tgz#cd0eea5e63a211dfff7eb0f091c4133e2d0dd28f" 2493 | dependencies: 2494 | through "2" 2495 | 2496 | split@^1.0.0: 2497 | version "1.0.1" 2498 | resolved "https://registry.yarnpkg.com/split/-/split-1.0.1.tgz#605bd9be303aa59fb35f9229fbea0ddec9ea07d9" 2499 | dependencies: 2500 | through "2" 2501 | 2502 | sprintf-js@~1.0.2: 2503 | version "1.0.3" 2504 | resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" 2505 | 2506 | sshpk@^1.7.0: 2507 | version "1.13.1" 2508 | resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.13.1.tgz#512df6da6287144316dc4c18fe1cf1d940739be3" 2509 | dependencies: 2510 | asn1 "~0.2.3" 2511 | assert-plus "^1.0.0" 2512 | dashdash "^1.12.0" 2513 | getpass "^0.1.1" 2514 | optionalDependencies: 2515 | bcrypt-pbkdf "^1.0.0" 2516 | ecc-jsbn "~0.1.1" 2517 | jsbn "~0.1.0" 2518 | tweetnacl "~0.14.0" 2519 | 2520 | stack-trace@0.0.x: 2521 | version "0.0.10" 2522 | resolved "https://registry.yarnpkg.com/stack-trace/-/stack-trace-0.0.10.tgz#547c70b347e8d32b4e108ea1a2a159e5fdde19c0" 2523 | 2524 | "statuses@>= 1.3.1 < 2", statuses@~1.3.1: 2525 | version "1.3.1" 2526 | resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.3.1.tgz#faf51b9eb74aaef3b3acf4ad5f61abf24cb7b93e" 2527 | 2528 | stream-combiner@~0.0.4: 2529 | version "0.0.4" 2530 | resolved "https://registry.yarnpkg.com/stream-combiner/-/stream-combiner-0.0.4.tgz#4d5e433c185261dde623ca3f44c586bcf5c4ad14" 2531 | dependencies: 2532 | duplexer "~0.1.1" 2533 | 2534 | string-width@^1.0.1, string-width@^1.0.2: 2535 | version "1.0.2" 2536 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" 2537 | dependencies: 2538 | code-point-at "^1.0.0" 2539 | is-fullwidth-code-point "^1.0.0" 2540 | strip-ansi "^3.0.0" 2541 | 2542 | string-width@^2.0.0, string-width@^2.1.0: 2543 | version "2.1.1" 2544 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" 2545 | dependencies: 2546 | is-fullwidth-code-point "^2.0.0" 2547 | strip-ansi "^4.0.0" 2548 | 2549 | string.prototype.trim@~1.1.2: 2550 | version "1.1.2" 2551 | resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.1.2.tgz#d04de2c89e137f4d7d206f086b5ed2fae6be8cea" 2552 | dependencies: 2553 | define-properties "^1.1.2" 2554 | es-abstract "^1.5.0" 2555 | function-bind "^1.0.2" 2556 | 2557 | string_decoder@~1.0.3: 2558 | version "1.0.3" 2559 | resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.0.3.tgz#0fc67d7c141825de94282dd536bec6b9bce860ab" 2560 | dependencies: 2561 | safe-buffer "~5.1.0" 2562 | 2563 | stringstream@~0.0.5: 2564 | version "0.0.5" 2565 | resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.5.tgz#4e484cd4de5a0bbbee18e46307710a8a81621878" 2566 | 2567 | strip-ansi@^3.0.0, strip-ansi@^3.0.1: 2568 | version "3.0.1" 2569 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" 2570 | dependencies: 2571 | ansi-regex "^2.0.0" 2572 | 2573 | strip-ansi@^4.0.0: 2574 | version "4.0.0" 2575 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" 2576 | dependencies: 2577 | ansi-regex "^3.0.0" 2578 | 2579 | strip-bom@^3.0.0: 2580 | version "3.0.0" 2581 | resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" 2582 | 2583 | strip-eof@^1.0.0: 2584 | version "1.0.0" 2585 | resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" 2586 | 2587 | strip-json-comments@~2.0.1: 2588 | version "2.0.1" 2589 | resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" 2590 | 2591 | superagent@^3.0.0: 2592 | version "3.6.0" 2593 | resolved "https://registry.yarnpkg.com/superagent/-/superagent-3.6.0.tgz#eb679651057c3462199c7b902b696c25350e1b87" 2594 | dependencies: 2595 | component-emitter "^1.2.0" 2596 | cookiejar "^2.1.0" 2597 | debug "^2.6.0" 2598 | extend "^3.0.0" 2599 | form-data "^2.1.1" 2600 | formidable "^1.1.1" 2601 | methods "^1.1.1" 2602 | mime "^1.3.6" 2603 | qs "^6.4.0" 2604 | readable-stream "^2.0.5" 2605 | 2606 | supertest@^3.0.0: 2607 | version "3.0.0" 2608 | resolved "https://registry.yarnpkg.com/supertest/-/supertest-3.0.0.tgz#8d4bb68fd1830ee07033b1c5a5a9a4021c965296" 2609 | dependencies: 2610 | methods "~1.1.2" 2611 | superagent "^3.0.0" 2612 | 2613 | supports-color@3.1.2: 2614 | version "3.1.2" 2615 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.1.2.tgz#72a262894d9d408b956ca05ff37b2ed8a6e2a2d5" 2616 | dependencies: 2617 | has-flag "^1.0.0" 2618 | 2619 | supports-color@^2.0.0: 2620 | version "2.0.0" 2621 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" 2622 | 2623 | supports-color@^4.0.0: 2624 | version "4.4.0" 2625 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.4.0.tgz#883f7ddabc165142b2a61427f3352ded195d1a3e" 2626 | dependencies: 2627 | has-flag "^2.0.0" 2628 | 2629 | table@^4.0.1: 2630 | version "4.0.1" 2631 | resolved "https://registry.yarnpkg.com/table/-/table-4.0.1.tgz#a8116c133fac2c61f4a420ab6cdf5c4d61f0e435" 2632 | dependencies: 2633 | ajv "^4.7.0" 2634 | ajv-keywords "^1.0.0" 2635 | chalk "^1.1.1" 2636 | lodash "^4.0.0" 2637 | slice-ansi "0.0.4" 2638 | string-width "^2.0.0" 2639 | 2640 | tape@^4.6.3: 2641 | version "4.8.0" 2642 | resolved "https://registry.yarnpkg.com/tape/-/tape-4.8.0.tgz#f6a9fec41cc50a1de50fa33603ab580991f6068e" 2643 | dependencies: 2644 | deep-equal "~1.0.1" 2645 | defined "~1.0.0" 2646 | for-each "~0.3.2" 2647 | function-bind "~1.1.0" 2648 | glob "~7.1.2" 2649 | has "~1.0.1" 2650 | inherits "~2.0.3" 2651 | minimist "~1.2.0" 2652 | object-inspect "~1.3.0" 2653 | resolve "~1.4.0" 2654 | resumer "~0.0.0" 2655 | string.prototype.trim "~1.1.2" 2656 | through "~2.3.8" 2657 | 2658 | tar-pack@^3.4.0: 2659 | version "3.4.0" 2660 | resolved "https://registry.yarnpkg.com/tar-pack/-/tar-pack-3.4.0.tgz#23be2d7f671a8339376cbdb0b8fe3fdebf317984" 2661 | dependencies: 2662 | debug "^2.2.0" 2663 | fstream "^1.0.10" 2664 | fstream-ignore "^1.0.5" 2665 | once "^1.3.3" 2666 | readable-stream "^2.1.4" 2667 | rimraf "^2.5.1" 2668 | tar "^2.2.1" 2669 | uid-number "^0.0.6" 2670 | 2671 | tar@^2.2.1: 2672 | version "2.2.1" 2673 | resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.1.tgz#8e4d2a256c0e2185c6b18ad694aec968b83cb1d1" 2674 | dependencies: 2675 | block-stream "*" 2676 | fstream "^1.0.2" 2677 | inherits "2" 2678 | 2679 | term-size@^1.2.0: 2680 | version "1.2.0" 2681 | resolved "https://registry.yarnpkg.com/term-size/-/term-size-1.2.0.tgz#458b83887f288fc56d6fffbfad262e26638efa69" 2682 | dependencies: 2683 | execa "^0.7.0" 2684 | 2685 | terraformer-wkt-parser@^1.1.0: 2686 | version "1.1.2" 2687 | resolved "https://registry.yarnpkg.com/terraformer-wkt-parser/-/terraformer-wkt-parser-1.1.2.tgz#336a0c8fc82094a5aff83288f69aedecd369bf0c" 2688 | dependencies: 2689 | terraformer "~1.0.5" 2690 | 2691 | terraformer@~1.0.5: 2692 | version "1.0.8" 2693 | resolved "https://registry.yarnpkg.com/terraformer/-/terraformer-1.0.8.tgz#51e0ad89746fcf2161dc6f65aa70e42377c8b593" 2694 | dependencies: 2695 | "@types/geojson" "^1.0.0" 2696 | 2697 | text-table@~0.2.0: 2698 | version "0.2.0" 2699 | resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" 2700 | 2701 | through@2, through@^2.3.6, through@~2.3, through@~2.3.1, through@~2.3.4, through@~2.3.8: 2702 | version "2.3.8" 2703 | resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" 2704 | 2705 | timed-out@^4.0.0: 2706 | version "4.0.1" 2707 | resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-4.0.1.tgz#f32eacac5a175bea25d7fab565ab3ed8741ef56f" 2708 | 2709 | tmp@^0.0.33: 2710 | version "0.0.33" 2711 | resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" 2712 | dependencies: 2713 | os-tmpdir "~1.0.2" 2714 | 2715 | toposort-class@^1.0.1: 2716 | version "1.0.1" 2717 | resolved "https://registry.yarnpkg.com/toposort-class/-/toposort-class-1.0.1.tgz#7ffd1f78c8be28c3ba45cd4e1a3f5ee193bd9988" 2718 | 2719 | touch@^3.1.0: 2720 | version "3.1.0" 2721 | resolved "https://registry.yarnpkg.com/touch/-/touch-3.1.0.tgz#fe365f5f75ec9ed4e56825e0bb76d24ab74af83b" 2722 | dependencies: 2723 | nopt "~1.0.10" 2724 | 2725 | tough-cookie@~2.3.2: 2726 | version "2.3.3" 2727 | resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.3.tgz#0b618a5565b6dea90bf3425d04d55edc475a7561" 2728 | dependencies: 2729 | punycode "^1.4.1" 2730 | 2731 | tryit@^1.0.1: 2732 | version "1.0.3" 2733 | resolved "https://registry.yarnpkg.com/tryit/-/tryit-1.0.3.tgz#393be730a9446fd1ead6da59a014308f36c289cb" 2734 | 2735 | tunnel-agent@^0.6.0: 2736 | version "0.6.0" 2737 | resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" 2738 | dependencies: 2739 | safe-buffer "^5.0.1" 2740 | 2741 | tweetnacl@^0.14.3, tweetnacl@~0.14.0: 2742 | version "0.14.5" 2743 | resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" 2744 | 2745 | type-check@~0.3.2: 2746 | version "0.3.2" 2747 | resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" 2748 | dependencies: 2749 | prelude-ls "~1.1.2" 2750 | 2751 | type-detect@0.1.1: 2752 | version "0.1.1" 2753 | resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-0.1.1.tgz#0ba5ec2a885640e470ea4e8505971900dac58822" 2754 | 2755 | type-detect@^1.0.0: 2756 | version "1.0.0" 2757 | resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-1.0.0.tgz#762217cc06db258ec48908a1298e8b95121e8ea2" 2758 | 2759 | type-is@~1.6.15: 2760 | version "1.6.15" 2761 | resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.15.tgz#cab10fb4909e441c82842eafe1ad646c81804410" 2762 | dependencies: 2763 | media-typer "0.3.0" 2764 | mime-types "~2.1.15" 2765 | 2766 | typedarray@^0.0.6: 2767 | version "0.0.6" 2768 | resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" 2769 | 2770 | uid-number@^0.0.6: 2771 | version "0.0.6" 2772 | resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81" 2773 | 2774 | undefsafe@0.0.3: 2775 | version "0.0.3" 2776 | resolved "https://registry.yarnpkg.com/undefsafe/-/undefsafe-0.0.3.tgz#ecca3a03e56b9af17385baac812ac83b994a962f" 2777 | 2778 | underscore@^1.7.0: 2779 | version "1.8.3" 2780 | resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.8.3.tgz#4f3fb53b106e6097fcf9cb4109f2a5e9bdfa5022" 2781 | 2782 | unique-string@^1.0.0: 2783 | version "1.0.0" 2784 | resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-1.0.0.tgz#9e1057cca851abb93398f8b33ae187b99caec11a" 2785 | dependencies: 2786 | crypto-random-string "^1.0.0" 2787 | 2788 | unpipe@1.0.0, unpipe@~1.0.0: 2789 | version "1.0.0" 2790 | resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" 2791 | 2792 | unzip-response@^2.0.1: 2793 | version "2.0.1" 2794 | resolved "https://registry.yarnpkg.com/unzip-response/-/unzip-response-2.0.1.tgz#d2f0f737d16b0615e72a6935ed04214572d56f97" 2795 | 2796 | update-notifier@^2.2.0: 2797 | version "2.2.0" 2798 | resolved "https://registry.yarnpkg.com/update-notifier/-/update-notifier-2.2.0.tgz#1b5837cf90c0736d88627732b661c138f86de72f" 2799 | dependencies: 2800 | boxen "^1.0.0" 2801 | chalk "^1.0.0" 2802 | configstore "^3.0.0" 2803 | import-lazy "^2.1.0" 2804 | is-npm "^1.0.0" 2805 | latest-version "^3.0.0" 2806 | semver-diff "^2.0.0" 2807 | xdg-basedir "^3.0.0" 2808 | 2809 | url-parse-lax@^1.0.0: 2810 | version "1.0.0" 2811 | resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-1.0.0.tgz#7af8f303645e9bd79a272e7a14ac68bc0609da73" 2812 | dependencies: 2813 | prepend-http "^1.0.1" 2814 | 2815 | util-deprecate@~1.0.1: 2816 | version "1.0.2" 2817 | resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" 2818 | 2819 | utils-merge@1.0.0: 2820 | version "1.0.0" 2821 | resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.0.tgz#0294fb922bb9375153541c4f7096231f287c8af8" 2822 | 2823 | uuid@^3.0.0, uuid@^3.1.0: 2824 | version "3.1.0" 2825 | resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.1.0.tgz#3dd3d3e790abc24d7b0d3a034ffababe28ebbc04" 2826 | 2827 | validate-npm-package-license@^3.0.1: 2828 | version "3.0.1" 2829 | resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz#2804babe712ad3379459acfbe24746ab2c303fbc" 2830 | dependencies: 2831 | spdx-correct "~1.0.0" 2832 | spdx-expression-parse "~1.0.0" 2833 | 2834 | validator@^5.2.0: 2835 | version "5.7.0" 2836 | resolved "https://registry.yarnpkg.com/validator/-/validator-5.7.0.tgz#7a87a58146b695ac486071141c0c49d67da05e5c" 2837 | 2838 | vary@~1.1.1: 2839 | version "1.1.1" 2840 | resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.1.tgz#67535ebb694c1d52257457984665323f587e8d37" 2841 | 2842 | verror@1.10.0: 2843 | version "1.10.0" 2844 | resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" 2845 | dependencies: 2846 | assert-plus "^1.0.0" 2847 | core-util-is "1.0.2" 2848 | extsprintf "^1.2.0" 2849 | 2850 | which@^1.2.9: 2851 | version "1.3.0" 2852 | resolved "https://registry.yarnpkg.com/which/-/which-1.3.0.tgz#ff04bdfc010ee547d780bec38e1ac1c2777d253a" 2853 | dependencies: 2854 | isexe "^2.0.0" 2855 | 2856 | wide-align@^1.1.0: 2857 | version "1.1.2" 2858 | resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.2.tgz#571e0f1b0604636ebc0dfc21b0339bbe31341710" 2859 | dependencies: 2860 | string-width "^1.0.2" 2861 | 2862 | widest-line@^1.0.0: 2863 | version "1.0.0" 2864 | resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-1.0.0.tgz#0c09c85c2a94683d0d7eaf8ee097d564bf0e105c" 2865 | dependencies: 2866 | string-width "^1.0.1" 2867 | 2868 | winston@^2.3.1: 2869 | version "2.3.1" 2870 | resolved "https://registry.yarnpkg.com/winston/-/winston-2.3.1.tgz#0b48420d978c01804cf0230b648861598225a119" 2871 | dependencies: 2872 | async "~1.0.0" 2873 | colors "1.0.x" 2874 | cycle "1.0.x" 2875 | eyes "0.1.x" 2876 | isstream "0.1.x" 2877 | stack-trace "0.0.x" 2878 | 2879 | wkx@0.2.0: 2880 | version "0.2.0" 2881 | resolved "https://registry.yarnpkg.com/wkx/-/wkx-0.2.0.tgz#76c24f16acd0cd8f93cd34aa331e0f7961256e84" 2882 | 2883 | wordwrap@~1.0.0: 2884 | version "1.0.0" 2885 | resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" 2886 | 2887 | wrappy@1: 2888 | version "1.0.2" 2889 | resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" 2890 | 2891 | write-file-atomic@^2.0.0: 2892 | version "2.3.0" 2893 | resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.3.0.tgz#1ff61575c2e2a4e8e510d6fa4e243cce183999ab" 2894 | dependencies: 2895 | graceful-fs "^4.1.11" 2896 | imurmurhash "^0.1.4" 2897 | signal-exit "^3.0.2" 2898 | 2899 | write@^0.2.1: 2900 | version "0.2.1" 2901 | resolved "https://registry.yarnpkg.com/write/-/write-0.2.1.tgz#5fc03828e264cea3fe91455476f7a3c566cb0757" 2902 | dependencies: 2903 | mkdirp "^0.5.1" 2904 | 2905 | xdg-basedir@^3.0.0: 2906 | version "3.0.0" 2907 | resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-3.0.0.tgz#496b2cc109eca8dbacfe2dc72b603c17c5870ad4" 2908 | 2909 | xtend@^4.0.0: 2910 | version "4.0.1" 2911 | resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" 2912 | 2913 | yallist@^2.1.2: 2914 | version "2.1.2" 2915 | resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" 2916 | --------------------------------------------------------------------------------