diff --git a/package-lock.json b/package-lock.json index 64f8f91..20d8045 100644 --- a/package-lock.json +++ b/package-lock.json @@ -68,12 +68,13 @@ } }, "ajv": { - "version": "4.11.8", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz", - "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=", - "dev": true, + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.2.2.tgz", + "integrity": "sha1-R8aNaehvXZUxA7AHSpQw3GPaXjk=", "requires": { "co": "4.6.0", + "fast-deep-equal": "1.0.0", + "json-schema-traverse": "0.3.1", "json-stable-stringify": "1.0.1" } }, @@ -101,18 +102,18 @@ "dev": true }, "ansi-align": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-1.1.0.tgz", - "integrity": "sha1-LwwWWIKXOa3V67FeawxuNCPwFro=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz", + "integrity": "sha1-w2rsy6VjuJzrVW82kPCx2eNUf38=", "dev": true, "requires": { - "string-width": "1.0.2" + "string-width": "2.1.0" } }, "ansi-escapes": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz", - "integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-2.0.0.tgz", + "integrity": "sha1-W65SvkJIeN2Xg+iRDj/Cki6DyBs=", "dev": true }, "ansi-regex": { @@ -1036,20 +1037,55 @@ } }, "boxen": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-0.6.0.tgz", - "integrity": "sha1-g2TUJIrDT/DvGy8r9JpsYM4NgbY=", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-1.2.0.tgz", + "integrity": "sha512-tfKK3nq0qXXOxvXEYW1k1XNRrDuQzO2oFPvLD3Fs1I58n0leuTNlftBmu3seUCyZvDfiqgRaxlqZs9WJAbSA7g==", "dev": true, "requires": { - "ansi-align": "1.1.0", - "camelcase": "2.1.1", - "chalk": "1.1.3", + "ansi-align": "2.0.0", + "camelcase": "4.1.0", + "chalk": "2.0.1", "cli-boxes": "1.0.0", - "filled-array": "1.1.0", - "object-assign": "4.1.1", - "repeating": "2.0.1", - "string-width": "1.0.2", + "string-width": "2.1.0", + "term-size": "1.2.0", "widest-line": "1.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.1.0.tgz", + "integrity": "sha1-CcIC1ckX7CMYjKpcnLkXnNlUd1A=", + "dev": true, + "requires": { + "color-convert": "1.9.0" + } + }, + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "chalk": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.0.1.tgz", + "integrity": "sha512-Mp+FXEI+FrwY/XYV45b2YD3E8i3HwnEAoFcM0qlZzq/RZ9RwWitt2Y/c7cqRAz70U7hfekqx6qNYthuKFO6K0g==", + "dev": true, + "requires": { + "ansi-styles": "3.1.0", + "escape-string-regexp": "1.0.5", + "supports-color": "4.2.0" + } + }, + "supports-color": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.2.0.tgz", + "integrity": "sha512-Ts0Mu/A1S1aZxEJNG88I4Oc9rcZSBFNac5e27yh4j2mqbhZSSzR1Ah79EYwSn9Zuh7lrlGD2cVGzw1RKGzyLSg==", + "dev": true, + "requires": { + "has-flag": "2.0.0" + } + } } }, "brace-expansion": { @@ -1171,7 +1207,7 @@ "integrity": "sha1-6IJVDfPRzW1IHBo+ADjyuvE6RxE=", "dev": true, "requires": { - "caniuse-lite": "1.0.30000697", + "caniuse-lite": "1.0.30000700", "electron-to-chromium": "1.3.15" } }, @@ -1290,9 +1326,9 @@ } }, "caniuse-lite": { - "version": "1.0.30000697", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000697.tgz", - "integrity": "sha1-El+wBgS2P7sYjblqZnziki3NbN0=", + "version": "1.0.30000700", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000700.tgz", + "integrity": "sha1-YISHHsdcb6YjJ96XYiUU+V2dsmo=", "dev": true }, "capture-stack-trace": { @@ -1375,12 +1411,12 @@ "dev": true }, "cli-cursor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz", - "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", "dev": true, "requires": { - "restore-cursor": "1.0.1" + "restore-cursor": "2.0.0" } }, "cli-spinners": { @@ -1397,6 +1433,28 @@ "requires": { "slice-ansi": "0.0.4", "string-width": "1.0.2" + }, + "dependencies": { + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "1.0.1" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + } } }, "cli-width": { @@ -1427,8 +1485,7 @@ "co": { "version": "4.6.0", "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", - "dev": true + "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=" }, "code-point-at": { "version": "1.1.0", @@ -1480,6 +1537,17 @@ "requires": { "array-ify": "1.0.0", "dot-prop": "3.0.0" + }, + "dependencies": { + "dot-prop": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-3.0.0.tgz", + "integrity": "sha1-G3CK8JSknJoOfbyteQq6U52sEXc=", + "dev": true, + "requires": { + "is-obj": "1.0.1" + } + } } }, "concat-map": { @@ -1500,20 +1568,17 @@ } }, "configstore": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/configstore/-/configstore-2.1.0.tgz", - "integrity": "sha1-c3o6cDbpiGECqmCZ5HuzOrGroaE=", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.0.tgz", + "integrity": "sha1-Rd+QcHPibfoc9LLVL1tgVF6qEdE=", "dev": true, "requires": { - "dot-prop": "3.0.0", + "dot-prop": "4.1.1", "graceful-fs": "4.1.11", - "mkdirp": "0.5.1", - "object-assign": "4.1.1", - "os-tmpdir": "1.0.2", - "osenv": "0.1.4", - "uuid": "2.0.3", - "write-file-atomic": "1.3.4", - "xdg-basedir": "2.0.0" + "make-dir": "1.0.0", + "unique-string": "1.0.0", + "write-file-atomic": "2.1.0", + "xdg-basedir": "3.0.0" } }, "console-browserify": { @@ -1682,17 +1747,6 @@ "semver": "5.3.0", "split": "1.0.0", "through2": "2.0.3" - }, - "dependencies": { - "split": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/split/-/split-1.0.0.tgz", - "integrity": "sha1-xDlc5oOrzSVLwo/h2rtuXCfc/64=", - "dev": true, - "requires": { - "through": "2.3.8" - } - } } }, "conventional-commits-filter": { @@ -1786,17 +1840,6 @@ "nested-error-stacks": "2.0.0", "pify": "2.3.0", "safe-buffer": "5.1.1" - }, - "dependencies": { - "nested-error-stacks": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/nested-error-stacks/-/nested-error-stacks-2.0.0.tgz", - "integrity": "sha1-mLL/rvtGEPo5NvHnFDXTBwDeKEA=", - "dev": true, - "requires": { - "inherits": "2.0.3" - } - } } }, "create-ecdh": { @@ -1845,9 +1888,9 @@ } }, "cross-env": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-3.2.4.tgz", - "integrity": "sha1-ngWF8neGTtQhznVvgamA/w1piro=", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-5.0.1.tgz", + "integrity": "sha1-/05y6kO0faJIa0On8gQ7JgnkSRM=", "dev": true, "requires": { "cross-spawn": "5.1.0", @@ -1875,9 +1918,9 @@ } }, "crypto-browserify": { - "version": "3.11.0", - "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.11.0.tgz", - "integrity": "sha1-NlKgkGq5sqfgw85mpAjpV6JIVSI=", + "version": "3.11.1", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.11.1.tgz", + "integrity": "sha512-Na7ZlwCOqoaW5RwUK1WpXws2kv8mNhWdTlzob0UXulk6G9BDbyiJaGTYBIX61Ozn9l1EPPJpICZb4DaOpT9NlQ==", "dev": true, "requires": { "browserify-cipher": "1.0.0", @@ -1892,6 +1935,12 @@ "randombytes": "2.0.5" } }, + "crypto-random-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz", + "integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=", + "dev": true + }, "cssom": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.2.tgz", @@ -1922,7 +1971,7 @@ "integrity": "sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8=", "dev": true, "requires": { - "es5-ext": "0.10.23" + "es5-ext": "0.10.24" } }, "dargs": { @@ -2009,29 +2058,36 @@ } }, "del": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz", - "integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/del/-/del-3.0.0.tgz", + "integrity": "sha1-U+z2mf/LyzljdpGrE7rxYIGXZuU=", "dev": true, "requires": { - "globby": "5.0.0", + "globby": "6.1.0", "is-path-cwd": "1.0.0", "is-path-in-cwd": "1.0.0", - "object-assign": "4.1.1", - "pify": "2.3.0", - "pinkie-promise": "2.0.1", + "p-map": "1.1.1", + "pify": "3.0.0", "rimraf": "2.6.1" + }, + "dependencies": { + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + } } }, "del-cli": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/del-cli/-/del-cli-0.2.1.tgz", - "integrity": "sha1-1fjKVA6KuJstkDB1rkcRPHKm2Tc=", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/del-cli/-/del-cli-1.1.0.tgz", + "integrity": "sha1-J1V9aaC335ncuqHjSgnmrGWR0sQ=", "dev": true, "requires": { - "del": "2.2.2", + "del": "3.0.0", "meow": "3.7.0", - "update-notifier": "1.0.3" + "update-notifier": "2.2.0" } }, "delayed-stream": { @@ -2092,22 +2148,19 @@ "dev": true }, "dot-prop": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-3.0.0.tgz", - "integrity": "sha1-G3CK8JSknJoOfbyteQq6U52sEXc=", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.1.1.tgz", + "integrity": "sha1-qEk/C3te7sglJbXHWH+n3nyoWcE=", "dev": true, "requires": { "is-obj": "1.0.1" } }, - "duplexer2": { + "duplexer3": { "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", - "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=", - "dev": true, - "requires": { - "readable-stream": "2.3.3" - } + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", + "dev": true }, "ecc-jsbn": { "version": "0.1.1", @@ -2182,9 +2235,9 @@ } }, "es5-ext": { - "version": "0.10.23", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.23.tgz", - "integrity": "sha1-dXi1G+l0IHpUh4IbVlOMIk5Oezg=", + "version": "0.10.24", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.24.tgz", + "integrity": "sha1-pVh3yZJLwMjZvTwsvhdJWsFwmxQ=", "dev": true, "requires": { "es6-iterator": "2.0.1", @@ -2198,7 +2251,7 @@ "dev": true, "requires": { "d": "1.0.0", - "es5-ext": "0.10.23", + "es5-ext": "0.10.24", "es6-symbol": "3.1.1" } }, @@ -2209,7 +2262,7 @@ "dev": true, "requires": { "d": "1.0.0", - "es5-ext": "0.10.23", + "es5-ext": "0.10.24", "es6-iterator": "2.0.1", "es6-set": "0.1.5", "es6-symbol": "3.1.1", @@ -2223,7 +2276,7 @@ "dev": true, "requires": { "d": "1.0.0", - "es5-ext": "0.10.23", + "es5-ext": "0.10.24", "es6-iterator": "2.0.1", "es6-symbol": "3.1.1", "event-emitter": "0.3.5" @@ -2236,7 +2289,7 @@ "dev": true, "requires": { "d": "1.0.0", - "es5-ext": "0.10.23" + "es5-ext": "0.10.24" } }, "es6-weak-map": { @@ -2246,7 +2299,7 @@ "dev": true, "requires": { "d": "1.0.0", - "es5-ext": "0.10.23", + "es5-ext": "0.10.24", "es6-iterator": "2.0.1", "es6-symbol": "3.1.1" } @@ -2306,17 +2359,18 @@ } }, "eslint": { - "version": "3.19.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-3.19.0.tgz", - "integrity": "sha1-yPxiAcf0DdCJQbh8CFdnOGpnmsw=", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-4.2.0.tgz", + "integrity": "sha1-orMYQRGxmOAunH88ymJaXgHFaz0=", "dev": true, "requires": { + "ajv": "5.2.2", "babel-code-frame": "6.22.0", "chalk": "1.1.3", "concat-stream": "1.6.0", "debug": "2.6.8", "doctrine": "2.0.0", - "escope": "3.6.0", + "eslint-scope": "3.7.1", "espree": "3.4.3", "esquery": "1.0.0", "estraverse": "4.2.0", @@ -2326,43 +2380,23 @@ "globals": "9.18.0", "ignore": "3.3.3", "imurmurhash": "0.1.4", - "inquirer": "0.12.0", - "is-my-json-valid": "2.16.0", + "inquirer": "3.2.0", "is-resolvable": "1.0.0", "js-yaml": "3.9.0", "json-stable-stringify": "1.0.1", "levn": "0.3.0", "lodash": "4.17.4", + "minimatch": "3.0.4", "mkdirp": "0.5.1", "natural-compare": "1.4.0", "optionator": "0.8.2", "path-is-inside": "1.0.2", - "pluralize": "1.2.1", - "progress": "1.1.8", + "pluralize": "4.0.0", + "progress": "2.0.0", "require-uncached": "1.0.3", - "shelljs": "0.7.8", - "strip-bom": "3.0.0", "strip-json-comments": "2.0.1", - "table": "3.8.3", - "text-table": "0.2.0", - "user-home": "2.0.0" - }, - "dependencies": { - "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", - "dev": true - }, - "user-home": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/user-home/-/user-home-2.0.0.tgz", - "integrity": "sha1-nHC/2Babwdy/SGBODwS4tJzenp8=", - "dev": true, - "requires": { - "os-homedir": "1.0.2" - } - } + "table": "4.0.1", + "text-table": "0.2.0" } }, "eslint-config-webpack": { @@ -2389,6 +2423,36 @@ "requires": { "debug": "2.6.8", "pkg-dir": "1.0.0" + }, + "dependencies": { + "find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "dev": true, + "requires": { + "path-exists": "2.1.0", + "pinkie-promise": "2.0.1" + } + }, + "path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "dev": true, + "requires": { + "pinkie-promise": "2.0.1" + } + }, + "pkg-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-1.0.0.tgz", + "integrity": "sha1-ektQio1bstYp1EcFb/TpyTFM89Q=", + "dev": true, + "requires": { + "find-up": "1.1.2" + } + } } }, "eslint-plugin-import": { @@ -2469,6 +2533,16 @@ } } }, + "eslint-scope": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-3.7.1.tgz", + "integrity": "sha1-PWPD7f2gLgbgGkUq2IyqzHzctug=", + "dev": true, + "requires": { + "esrecurse": "4.2.0", + "estraverse": "4.2.0" + } + }, "espree": { "version": "3.4.3", "resolved": "https://registry.npmjs.org/espree/-/espree-3.4.3.tgz", @@ -2522,7 +2596,7 @@ "dev": true, "requires": { "d": "1.0.0", - "es5-ext": "0.10.23" + "es5-ext": "0.10.24" } }, "events": { @@ -2594,6 +2668,17 @@ "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=", "dev": true }, + "external-editor": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.0.4.tgz", + "integrity": "sha1-HtkZnanL/i7y96MbL96LDRI2iXI=", + "dev": true, + "requires": { + "iconv-lite": "0.4.18", + "jschardet": "1.4.2", + "tmp": "0.0.31" + } + }, "extglob": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", @@ -2612,8 +2697,7 @@ "fast-deep-equal": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.0.0.tgz", - "integrity": "sha1-liVqO8l1WV6zbYLpkp0GDYk0Of8=", - "dev": true + "integrity": "sha1-liVqO8l1WV6zbYLpkp0GDYk0Of8=" }, "fast-levenshtein": { "version": "2.0.6", @@ -2631,13 +2715,12 @@ } }, "figures": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", - "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", + "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", "dev": true, "requires": { - "escape-string-regexp": "1.0.5", - "object-assign": "4.1.1" + "escape-string-regexp": "1.0.5" } }, "file-entry-cache": { @@ -2679,12 +2762,6 @@ "repeat-string": "1.6.1" } }, - "filled-array": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/filled-array/-/filled-array-1.1.0.tgz", - "integrity": "sha1-w8T2xmO5I0WamqKZEtLQMfFQf4Q=", - "dev": true - }, "find-cache-dir": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", @@ -2694,17 +2771,6 @@ "commondir": "1.0.1", "make-dir": "1.0.0", "pkg-dir": "2.0.0" - }, - "dependencies": { - "pkg-dir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", - "dev": true, - "requires": { - "find-up": "2.1.0" - } - } } }, "find-up": { @@ -2726,6 +2792,37 @@ "del": "2.2.2", "graceful-fs": "4.1.11", "write": "0.2.1" + }, + "dependencies": { + "del": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz", + "integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=", + "dev": true, + "requires": { + "globby": "5.0.0", + "is-path-cwd": "1.0.0", + "is-path-in-cwd": "1.0.0", + "object-assign": "4.1.1", + "pify": "2.3.0", + "pinkie-promise": "2.0.1", + "rimraf": "2.6.1" + } + }, + "globby": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz", + "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=", + "dev": true, + "requires": { + "array-union": "1.0.2", + "arrify": "1.0.1", + "glob": "7.1.2", + "object-assign": "4.1.1", + "pify": "2.3.0", + "pinkie-promise": "2.0.1" + } + } } }, "for-in": { @@ -3686,21 +3783,6 @@ "integrity": "sha1-FhdnFMgBeY5Ojyz391KUZ7tKV3E=", "dev": true }, - "generate-function": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.0.0.tgz", - "integrity": "sha1-aFj+fAlpt9TpCTM3ZHrHn2DfvnQ=", - "dev": true - }, - "generate-object-property": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz", - "integrity": "sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA=", - "dev": true, - "requires": { - "is-property": "1.0.2" - } - }, "get-caller-file": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.2.tgz", @@ -3836,13 +3918,12 @@ "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==" }, "globby": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz", - "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", + "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", "dev": true, "requires": { "array-union": "1.0.2", - "arrify": "1.0.1", "glob": "7.1.2", "object-assign": "4.1.1", "pify": "2.3.0", @@ -3850,25 +3931,21 @@ } }, "got": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/got/-/got-5.7.1.tgz", - "integrity": "sha1-X4FjWmHkplifGAVp6k44FoClHzU=", + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/got/-/got-6.7.1.tgz", + "integrity": "sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA=", "dev": true, "requires": { "create-error-class": "3.0.2", - "duplexer2": "0.1.4", + "duplexer3": "0.1.4", + "get-stream": "3.0.0", "is-redirect": "1.0.0", "is-retry-allowed": "1.1.0", "is-stream": "1.1.0", "lowercase-keys": "1.0.0", - "node-status-codes": "1.0.0", - "object-assign": "4.1.1", - "parse-json": "2.2.0", - "pinkie-promise": "2.0.1", - "read-all-stream": "3.1.0", - "readable-stream": "2.3.3", - "timed-out": "3.1.3", - "unzip-response": "1.0.2", + "safe-buffer": "5.1.1", + "timed-out": "4.0.1", + "unzip-response": "2.0.1", "url-parse-lax": "1.0.0" } }, @@ -3927,6 +4004,18 @@ "requires": { "ajv": "4.11.8", "har-schema": "1.0.5" + }, + "dependencies": { + "ajv": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz", + "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=", + "dev": true, + "requires": { + "co": "4.6.0", + "json-stable-stringify": "1.0.1" + } + } } }, "has": { @@ -3947,9 +4036,9 @@ } }, "has-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", - "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", + "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", "dev": true }, "hash-base": { @@ -4043,9 +4132,9 @@ "dev": true }, "iconv-lite": { - "version": "0.4.13", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.13.tgz", - "integrity": "sha1-H4irpKsLFQjoMSrMOTRfNumS4vI=", + "version": "0.4.18", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.18.tgz", + "integrity": "sha512-sr1ZQph3UwHTR0XftSbK85OvBbxe/abLGzEnPENCQwmHf7sck8Oyu4ob3LgBxWWxRoM+QszeUyl7jbqapu2TqA==", "dev": true }, "ieee754": { @@ -4060,6 +4149,12 @@ "integrity": "sha1-QyNS5XrM2HqzEQ6C0/6g5HgSFW0=", "dev": true }, + "import-lazy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", + "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=", + "dev": true + }, "imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", @@ -4104,36 +4199,83 @@ "dev": true }, "inquirer": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-0.12.0.tgz", - "integrity": "sha1-HvK/1jUE3wvHV4X/+MLEHfEvB34=", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.2.0.tgz", + "integrity": "sha512-4CyUYMP7lOBkiUU1rR24WGrfRX6SucwbY2Mqb1PdApU24wnTIk4TsnkQwV72dDdIKZ2ycLP+fWCV+tA7wwgoew==", "dev": true, "requires": { - "ansi-escapes": "1.4.0", - "ansi-regex": "2.1.1", - "chalk": "1.1.3", - "cli-cursor": "1.0.2", + "ansi-escapes": "2.0.0", + "chalk": "2.0.1", + "cli-cursor": "2.1.0", "cli-width": "2.1.0", - "figures": "1.7.0", + "external-editor": "2.0.4", + "figures": "2.0.0", "lodash": "4.17.4", - "readline2": "1.0.1", - "run-async": "0.1.0", - "rx-lite": "3.1.2", - "string-width": "1.0.2", - "strip-ansi": "3.0.1", + "mute-stream": "0.0.7", + "run-async": "2.3.0", + "rx-lite": "4.0.8", + "rx-lite-aggregates": "4.0.8", + "string-width": "2.1.0", + "strip-ansi": "4.0.0", "through": "2.3.8" - } - }, - "interpret": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.0.3.tgz", - "integrity": "sha1-y8NcYu7uc/Gat7EKgBURQBr8D5A=", - "dev": true - }, - "invariant": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", - "integrity": "sha1-nh9WrArNtr8wMwbzOL47IErmA2A=", + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "ansi-styles": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.1.0.tgz", + "integrity": "sha1-CcIC1ckX7CMYjKpcnLkXnNlUd1A=", + "dev": true, + "requires": { + "color-convert": "1.9.0" + } + }, + "chalk": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.0.1.tgz", + "integrity": "sha512-Mp+FXEI+FrwY/XYV45b2YD3E8i3HwnEAoFcM0qlZzq/RZ9RwWitt2Y/c7cqRAz70U7hfekqx6qNYthuKFO6K0g==", + "dev": true, + "requires": { + "ansi-styles": "3.1.0", + "escape-string-regexp": "1.0.5", + "supports-color": "4.2.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "3.0.0" + } + }, + "supports-color": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.2.0.tgz", + "integrity": "sha512-Ts0Mu/A1S1aZxEJNG88I4Oc9rcZSBFNac5e27yh4j2mqbhZSSzR1Ah79EYwSn9Zuh7lrlGD2cVGzw1RKGzyLSg==", + "dev": true, + "requires": { + "has-flag": "2.0.0" + } + } + } + }, + "interpret": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.0.3.tgz", + "integrity": "sha1-y8NcYu7uc/Gat7EKgBURQBr8D5A=", + "dev": true + }, + "invariant": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", + "integrity": "sha1-nh9WrArNtr8wMwbzOL47IErmA2A=", "requires": { "loose-envify": "1.3.1" } @@ -4219,13 +4361,10 @@ } }, "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "requires": { - "number-is-nan": "1.0.1" - } + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true }, "is-glob": { "version": "2.0.1", @@ -4236,18 +4375,6 @@ "is-extglob": "1.0.0" } }, - "is-my-json-valid": { - "version": "2.16.0", - "resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.16.0.tgz", - "integrity": "sha1-8Hndm/2uZe4gOKrorLyGqxCeNpM=", - "dev": true, - "requires": { - "generate-function": "2.0.0", - "generate-object-property": "1.2.0", - "jsonpointer": "4.0.1", - "xtend": "4.0.1" - } - }, "is-npm": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-1.0.0.tgz", @@ -4311,12 +4438,6 @@ "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", "dev": true }, - "is-property": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz", - "integrity": "sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ=", - "dev": true - }, "is-redirect": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", @@ -4463,6 +4584,12 @@ "supports-color": "3.2.3" }, "dependencies": { + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, "supports-color": { "version": "3.2.3", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", @@ -4505,6 +4632,12 @@ "jest-cli": "20.0.4" }, "dependencies": { + "ansi-escapes": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz", + "integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4=", + "dev": true + }, "callsites": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz", @@ -4804,6 +4937,12 @@ "dev": true, "optional": true }, + "jschardet": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/jschardet/-/jschardet-1.4.2.tgz", + "integrity": "sha1-KqEH8UKvQSHRRWWdRPUIMJYeaZo=", + "dev": true + }, "jsdom": { "version": "9.12.0", "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-9.12.0.tgz", @@ -4859,14 +4998,12 @@ "json-schema-traverse": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", - "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=", - "dev": true + "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=" }, "json-stable-stringify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", - "dev": true, "requires": { "jsonify": "0.0.0" } @@ -4885,8 +5022,7 @@ "jsonify": { "version": "0.0.0", "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", - "dev": true + "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=" }, "jsonparse": { "version": "1.3.1", @@ -4894,12 +5030,6 @@ "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=", "dev": true }, - "jsonpointer": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-4.0.1.tgz", - "integrity": "sha1-T9kss04OnbPInIYi7PUfm5eMbLk=", - "dev": true - }, "JSONStream": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.1.tgz", @@ -4940,12 +5070,12 @@ } }, "latest-version": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-2.0.0.tgz", - "integrity": "sha1-VvjWE5YghHuAF/jx9NeOIRMkFos=", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-3.1.0.tgz", + "integrity": "sha1-ogU4P+oyKzO1rjsYq+4NwvNW7hU=", "dev": true, "requires": { - "package-json": "2.4.0" + "package-json": "4.0.1" } }, "lazy-cache": { @@ -4954,12 +5084,6 @@ "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=", "dev": true }, - "lazy-req": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/lazy-req/-/lazy-req-1.1.0.tgz", - "integrity": "sha1-va6+rTD42CQDnODOFJ1Nqge6H6w=", - "dev": true - }, "lcid": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", @@ -4986,9 +5110,9 @@ } }, "lint-staged": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-3.6.1.tgz", - "integrity": "sha1-JEI8i3vZnZbhWs0ayMs5KnjlhYI=", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-4.0.1.tgz", + "integrity": "sha1-BTZUaYmEOdut6KRViTzxHiTRKw8=", "dev": true, "requires": { "app-root-path": "2.0.1", @@ -5024,6 +5148,18 @@ "rxjs": "5.4.2", "stream-to-observable": "0.1.0", "strip-ansi": "3.0.1" + }, + "dependencies": { + "figures": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", + "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", + "dev": true, + "requires": { + "escape-string-regexp": "1.0.5", + "object-assign": "4.1.1" + } + } } }, "listr-silent-renderer": { @@ -5048,6 +5184,16 @@ "strip-ansi": "3.0.1" }, "dependencies": { + "figures": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", + "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", + "dev": true, + "requires": { + "escape-string-regexp": "1.0.5", + "object-assign": "4.1.1" + } + }, "indent-string": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.1.0.tgz", @@ -5066,6 +5212,43 @@ "cli-cursor": "1.0.2", "date-fns": "1.28.5", "figures": "1.7.0" + }, + "dependencies": { + "cli-cursor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz", + "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", + "dev": true, + "requires": { + "restore-cursor": "1.0.1" + } + }, + "figures": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", + "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", + "dev": true, + "requires": { + "escape-string-regexp": "1.0.5", + "object-assign": "4.1.1" + } + }, + "onetime": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", + "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=", + "dev": true + }, + "restore-cursor": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz", + "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", + "dev": true, + "requires": { + "exit-hook": "1.1.1", + "onetime": "1.1.0" + } + } } }, "load-json-file": { @@ -5166,6 +5349,39 @@ "requires": { "ansi-escapes": "1.4.0", "cli-cursor": "1.0.2" + }, + "dependencies": { + "ansi-escapes": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz", + "integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4=", + "dev": true + }, + "cli-cursor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz", + "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", + "dev": true, + "requires": { + "restore-cursor": "1.0.1" + } + }, + "onetime": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", + "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=", + "dev": true + }, + "restore-cursor": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz", + "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", + "dev": true, + "requires": { + "exit-hook": "1.1.1", + "onetime": "1.1.0" + } + } } }, "longest": { @@ -5412,9 +5628,9 @@ "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" }, "mute-stream": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.5.tgz", - "integrity": "sha1-j7+rsKmKJT0xhDMfno3rc3L6xsA=", + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", + "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", "dev": true }, "nan": { @@ -5430,6 +5646,15 @@ "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", "dev": true }, + "nested-error-stacks": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/nested-error-stacks/-/nested-error-stacks-2.0.0.tgz", + "integrity": "sha1-mLL/rvtGEPo5NvHnFDXTBwDeKEA=", + "dev": true, + "requires": { + "inherits": "2.0.3" + } + }, "node-int64": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", @@ -5447,7 +5672,7 @@ "buffer": "4.9.1", "console-browserify": "1.1.0", "constants-browserify": "1.0.0", - "crypto-browserify": "3.11.0", + "crypto-browserify": "3.11.1", "domain-browser": "1.1.7", "events": "1.1.1", "https-browserify": "0.0.1", @@ -5487,12 +5712,6 @@ "which": "1.2.14" } }, - "node-status-codes": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/node-status-codes/-/node-status-codes-1.0.0.tgz", - "integrity": "sha1-WuVUHQJGRdMqWPzdyc7s6nrjrC8=", - "dev": true - }, "normalize-package-data": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", @@ -5930,10 +6149,13 @@ } }, "onetime": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", - "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=", - "dev": true + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", + "dev": true, + "requires": { + "mimic-fn": "1.1.0" + } }, "optimist": { "version": "0.6.1", @@ -5977,6 +6199,33 @@ "cli-cursor": "1.0.2", "cli-spinners": "0.1.2", "object-assign": "4.1.1" + }, + "dependencies": { + "cli-cursor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz", + "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", + "dev": true, + "requires": { + "restore-cursor": "1.0.1" + } + }, + "onetime": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", + "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=", + "dev": true + }, + "restore-cursor": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz", + "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", + "dev": true, + "requires": { + "exit-hook": "1.1.1", + "onetime": "1.1.0" + } + } } }, "os-browserify": { @@ -6012,16 +6261,6 @@ "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", "dev": true }, - "osenv": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.4.tgz", - "integrity": "sha1-Qv5tWVPfBsgGS+bxdsPQWqqjRkQ=", - "dev": true, - "requires": { - "os-homedir": "1.0.2", - "os-tmpdir": "1.0.2" - } - }, "output-file-sync": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/output-file-sync/-/output-file-sync-1.1.2.tgz", @@ -6061,12 +6300,12 @@ "dev": true }, "package-json": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/package-json/-/package-json-2.4.0.tgz", - "integrity": "sha1-DRW9Z9HLvduyyiIv8u24a8sxqLs=", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-4.0.1.tgz", + "integrity": "sha1-iGmgQBJTZhxMTKPabCEh7VVfXu0=", "dev": true, "requires": { - "got": "5.7.1", + "got": "6.7.1", "registry-auth-token": "3.3.1", "registry-url": "3.1.0", "semver": "5.3.0" @@ -6212,39 +6451,18 @@ } }, "pkg-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-1.0.0.tgz", - "integrity": "sha1-ektQio1bstYp1EcFb/TpyTFM89Q=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", + "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", "dev": true, "requires": { - "find-up": "1.1.2" - }, - "dependencies": { - "find-up": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", - "dev": true, - "requires": { - "path-exists": "2.1.0", - "pinkie-promise": "2.0.1" - } - }, - "path-exists": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", - "dev": true, - "requires": { - "pinkie-promise": "2.0.1" - } - } + "find-up": "2.1.0" } }, "pluralize": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-1.2.1.tgz", - "integrity": "sha1-0aIUg/0iu0HlihL6NCGCMUCJfEU=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-4.0.0.tgz", + "integrity": "sha1-WbcIwcAZCi9pLxx2GMRGsFL9F2I=", "dev": true }, "pre-commit": { @@ -6316,9 +6534,9 @@ "dev": true }, "progress": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/progress/-/progress-1.1.8.tgz", - "integrity": "sha1-4mDHj2Fhzdmw5WzD4Khd4Xx6V74=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.0.tgz", + "integrity": "sha1-ihvjZr+Pwj2yvSPxDG/pILQ4nR8=", "dev": true }, "prop-ini": { @@ -6455,16 +6673,6 @@ } } }, - "read-all-stream": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/read-all-stream/-/read-all-stream-3.1.0.tgz", - "integrity": "sha1-NcPhd/IHjveJ7kv6+kNzB06u9Po=", - "dev": true, - "requires": { - "pinkie-promise": "2.0.1", - "readable-stream": "2.3.3" - } - }, "read-pkg": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", @@ -6534,32 +6742,12 @@ "set-immediate-shim": "1.0.1" } }, - "readline2": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/readline2/-/readline2-1.0.1.tgz", - "integrity": "sha1-QQWWCP/BVHV7cV2ZidGZ/783LjU=", - "dev": true, - "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "mute-stream": "0.0.5" - } - }, "readme-badger": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/readme-badger/-/readme-badger-0.1.2.tgz", "integrity": "sha1-gbE435cjxzPfaifHvZyuvTg+CKU=", "dev": true }, - "rechoir": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", - "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=", - "dev": true, - "requires": { - "resolve": "1.3.3" - } - }, "redent": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", @@ -6709,14 +6897,6 @@ "tough-cookie": "2.3.2", "tunnel-agent": "0.6.0", "uuid": "3.1.0" - }, - "dependencies": { - "uuid": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.1.0.tgz", - "integrity": "sha512-DIWtzUkw04M4k3bf1IcpS2tngXEL26YUD2M0tMDUpnUrz2hgzUBlD55a4FjdLGPvfHxS6uluGWvaVEqgBcVa+g==", - "dev": true - } } }, "require-directory": { @@ -6763,13 +6943,13 @@ "dev": true }, "restore-cursor": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz", - "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", "dev": true, "requires": { - "exit-hook": "1.1.1", - "onetime": "1.1.0" + "onetime": "2.0.1", + "signal-exit": "3.0.2" } }, "right-align": { @@ -6801,20 +6981,29 @@ } }, "run-async": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-0.1.0.tgz", - "integrity": "sha1-yK1KXhEGYeQCp9IbUw4AnyX444k=", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", + "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", "dev": true, "requires": { - "once": "1.4.0" + "is-promise": "2.1.0" } }, "rx-lite": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-3.1.2.tgz", - "integrity": "sha1-Gc5QLKVyZl87ZHsQk5+X/RYV8QI=", + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz", + "integrity": "sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ=", "dev": true }, + "rx-lite-aggregates": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz", + "integrity": "sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74=", + "dev": true, + "requires": { + "rx-lite": "4.0.8" + } + }, "rxjs": { "version": "5.4.2", "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-5.4.2.tgz", @@ -6877,6 +7066,14 @@ "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", "dev": true }, + "schema-utils": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.3.0.tgz", + "integrity": "sha1-9YdyIs4+kx7a4DnxfrNxbnE3+M8=", + "requires": { + "ajv": "5.2.2" + } + }, "semver": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz", @@ -6933,17 +7130,6 @@ "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", "dev": true }, - "shelljs": { - "version": "0.7.8", - "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.7.8.tgz", - "integrity": "sha1-3svPh0sNHl+3LhSxZKloMEjprLM=", - "dev": true, - "requires": { - "glob": "7.1.2", - "interpret": "1.0.3", - "rechoir": "0.6.2" - } - }, "shellwords": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.0.tgz", @@ -7034,6 +7220,15 @@ "integrity": "sha1-yd96NCRZSt5r0RkA1ZZpbcBrrFc=", "dev": true }, + "split": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/split/-/split-1.0.0.tgz", + "integrity": "sha1-xDlc5oOrzSVLwo/h2rtuXCfc/64=", + "dev": true, + "requires": { + "through": "2.3.8" + } + }, "split-lines": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/split-lines/-/split-lines-1.1.0.tgz", @@ -7100,12 +7295,6 @@ "yargs": "8.0.2" }, "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, "camelcase": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", @@ -7161,6 +7350,16 @@ "strip-eof": "1.0.0" } }, + "figures": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", + "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", + "dev": true, + "requires": { + "escape-string-regexp": "1.0.5", + "object-assign": "4.1.1" + } + }, "get-stream": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-2.3.1.tgz", @@ -7171,6 +7370,15 @@ "pinkie-promise": "2.0.1" } }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "1.0.1" + } + }, "load-json-file": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", @@ -7224,33 +7432,6 @@ "read-pkg": "2.0.0" } }, - "string-width": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.0.tgz", - "integrity": "sha1-AwZkVh/BRslCPsfZeP4kV0N/5tA=", - "dev": true, - "requires": { - "is-fullwidth-code-point": "2.0.0", - "strip-ansi": "4.0.0" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "3.0.0" - } - } - } - }, "strip-bom": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", @@ -7343,14 +7524,30 @@ } }, "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.0.tgz", + "integrity": "sha1-AwZkVh/BRslCPsfZeP4kV0N/5tA=", "dev": true, "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" + "is-fullwidth-code-point": "2.0.0", + "strip-ansi": "4.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "3.0.0" + } + } } }, "stringstream": { @@ -7421,9 +7618,9 @@ "dev": true }, "table": { - "version": "3.8.3", - "resolved": "https://registry.npmjs.org/table/-/table-3.8.3.tgz", - "integrity": "sha1-K7xULw/amGGnVdOUf+/Ys/UThV8=", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/table/-/table-4.0.1.tgz", + "integrity": "sha1-qBFsEz+sLGH0pCCrbN9cTWHw5DU=", "dev": true, "requires": { "ajv": "4.11.8", @@ -7434,35 +7631,14 @@ "string-width": "2.1.0" }, "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "string-width": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.0.tgz", - "integrity": "sha1-AwZkVh/BRslCPsfZeP4kV0N/5tA=", - "dev": true, - "requires": { - "is-fullwidth-code-point": "2.0.0", - "strip-ansi": "4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "ajv": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz", + "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=", "dev": true, "requires": { - "ansi-regex": "3.0.0" + "co": "4.6.0", + "json-stable-stringify": "1.0.1" } } } @@ -7473,6 +7649,15 @@ "integrity": "sha1-IGvo4YiGC1FEJTdebxrom/sB/Y0=", "dev": true }, + "term-size": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz", + "integrity": "sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk=", + "dev": true, + "requires": { + "execa": "0.7.0" + } + }, "test-exclude": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-4.1.1.tgz", @@ -7521,9 +7706,9 @@ } }, "timed-out": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-3.1.3.tgz", - "integrity": "sha1-lYYL/MXHbCd/j4Mm/Q9bLiDrohc=", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", + "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", "dev": true }, "timers-browserify": { @@ -7535,6 +7720,15 @@ "setimmediate": "1.0.5" } }, + "tmp": { + "version": "0.0.31", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.31.tgz", + "integrity": "sha1-jzirlDjhcxXl29izZX6L+yd65Kc=", + "dev": true, + "requires": { + "os-tmpdir": "1.0.2" + } + }, "tmpl": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.4.tgz", @@ -7676,26 +7870,35 @@ "webpack-sources": "1.0.1" } }, + "unique-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz", + "integrity": "sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=", + "dev": true, + "requires": { + "crypto-random-string": "1.0.0" + } + }, "unzip-response": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-1.0.2.tgz", - "integrity": "sha1-uYTwh3/AqJwsdzzB73tbIytbBv4=", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-2.0.1.tgz", + "integrity": "sha1-0vD3N9FrBhXnKmk17QQhRXLVb5c=", "dev": true }, "update-notifier": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-1.0.3.tgz", - "integrity": "sha1-j5LFFUgr1oMbfJMBPnD4dVLHz1o=", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-2.2.0.tgz", + "integrity": "sha1-G1g3z5DAc22IYncytmHBOPht5y8=", "dev": true, "requires": { - "boxen": "0.6.0", + "boxen": "1.2.0", "chalk": "1.1.3", - "configstore": "2.1.0", + "configstore": "3.1.0", + "import-lazy": "2.1.0", "is-npm": "1.0.0", - "latest-version": "2.0.0", - "lazy-req": "1.1.0", + "latest-version": "3.1.0", "semver-diff": "2.1.0", - "xdg-basedir": "2.0.0" + "xdg-basedir": "3.0.0" } }, "url": { @@ -7755,9 +7958,9 @@ "dev": true }, "uuid": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz", - "integrity": "sha1-Z+LoY3lyFVMN/zGOW/nc6/1Hsho=", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.1.0.tgz", + "integrity": "sha512-DIWtzUkw04M4k3bf1IcpS2tngXEL26YUD2M0tMDUpnUrz2hgzUBlD55a4FjdLGPvfHxS6uluGWvaVEqgBcVa+g==", "dev": true }, "v8flags": { @@ -7830,14 +8033,14 @@ "dev": true }, "webpack": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-3.1.0.tgz", - "integrity": "sha512-BWF3vW30ZpqscTpIsqUi6gTnXdvoeS+uEcmoAjtg5Yq0xtxebjz8xjDl3AWV4P5Mi3RqS5Xhq+Q5vvcjU3iUAw==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-3.2.0.tgz", + "integrity": "sha512-eqCVdO0QMlkhwKr6CmIt0va3XbDhcoeC3SjVhMjJWIL3Rh/nEDC3L49osJxtSw0FelbEs7IXbftWYw2DKGS0cw==", "dev": true, "requires": { "acorn": "5.1.1", "acorn-dynamic-import": "2.0.2", - "ajv": "5.2.1", + "ajv": "5.2.2", "ajv-keywords": "2.1.0", "async": "2.5.0", "enhanced-resolve": "3.3.0", @@ -7859,18 +8062,6 @@ "yargs": "6.6.0" }, "dependencies": { - "ajv": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.2.1.tgz", - "integrity": "sha1-3NAwRRdYg7obY25a6ew9+auFMjo=", - "dev": true, - "requires": { - "co": "4.6.0", - "fast-deep-equal": "1.0.0", - "json-schema-traverse": "0.3.1", - "json-stable-stringify": "1.0.1" - } - }, "ajv-keywords": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-2.1.0.tgz", @@ -7894,6 +8085,32 @@ "wrap-ansi": "2.1.0" } }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "1.0.1" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + }, "supports-color": { "version": "3.2.3", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", @@ -7971,6 +8188,14 @@ "dev": true, "requires": { "iconv-lite": "0.4.13" + }, + "dependencies": { + "iconv-lite": { + "version": "0.4.13", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.13.tgz", + "integrity": "sha1-H4irpKsLFQjoMSrMOTRfNumS4vI=", + "dev": true + } } }, "whatwg-url": { @@ -8013,6 +8238,28 @@ "dev": true, "requires": { "string-width": "1.0.2" + }, + "dependencies": { + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "1.0.1" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + } } }, "window-size": { @@ -8045,6 +8292,28 @@ "requires": { "string-width": "1.0.2", "strip-ansi": "3.0.1" + }, + "dependencies": { + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "1.0.1" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + } } }, "wrappy": { @@ -8063,9 +8332,9 @@ } }, "write-file-atomic": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-1.3.4.tgz", - "integrity": "sha1-+Aek8LHZ6ROuekgRLmzDrxmRtF8=", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.1.0.tgz", + "integrity": "sha512-0TZ20a+xcIl4u0+Mj5xDH2yOWdmQiXlKf9Hm+TgDXjTMsEYb+gDrmb8e8UNAzMCitX8NBqG4Z/FUQIyzv/R1JQ==", "dev": true, "requires": { "graceful-fs": "4.1.11", @@ -8074,13 +8343,10 @@ } }, "xdg-basedir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-2.0.0.tgz", - "integrity": "sha1-7byQPMOF/ARSPZZqM1UEtVBNG9I=", - "dev": true, - "requires": { - "os-homedir": "1.0.2" - } + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz", + "integrity": "sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ=", + "dev": true }, "xml-name-validator": { "version": "2.0.1", @@ -8143,6 +8409,26 @@ "strip-ansi": "3.0.1", "wrap-ansi": "2.1.0" } + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "1.0.1" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } } } }, diff --git a/package.json b/package.json index d030e9b..782a2d9 100644 --- a/package.json +++ b/package.json @@ -10,7 +10,8 @@ "dependencies": { "convert-source-map": "^1.5.0", "istanbul-lib-instrument": "^1.7.3", - "loader-utils": "^1.1.0" + "loader-utils": "^1.1.0", + "schema-utils": "^0.3.0" }, "engines": { "node": ">= 4.3 < 5.0.0 || >= 5.10" @@ -18,7 +19,7 @@ "license": "MIT", "scripts": { "start": "npm run build -- -w", - "build": "cross-env NODE_ENV=production babel src -d dist --ignore 'src/**/*.test.js'", + "build": "cross-env NODE_ENV=production babel src -d dist --ignore 'src/**/*.test.js' --copy-files", "clean": "del-cli dist", "clean:dist": "del-cli dist", "lint": "eslint --cache src test", @@ -27,15 +28,14 @@ "prepublish": "npm run build", "release": "standard-version", "security": "nsp check", - "serve:dev": "nodemon $2 --exec babel-node", "test": "jest", "test:watch": "jest --watch", "test:coverage": "jest --collectCoverageFrom='src/**/*.js' --coverage", "travis:coverage": "npm run test:coverage -- --runInBand", "travis:lint": "npm run lint && npm run security", "travis:test": "npm run test -- --runInBand", - "webpack-defaults": "webpack-defaults", - "appveyor:test": "npm run test" + "appveyor:test": "npm run test", + "webpack-defaults": "webpack-defaults" }, "devDependencies": { "babel-cli": "^6.24.0", @@ -44,13 +44,13 @@ "babel-plugin-transform-object-rest-spread": "^6.23.0", "babel-polyfill": "^6.23.0", "babel-preset-env": "^1.6.0", - "cross-env": "^3.2.4", - "del-cli": "^0.2.1", - "eslint": "^3.18.0", + "cross-env": "^5.0.1", + "del-cli": "^1.1.0", + "eslint": "^4.2.0", "eslint-config-webpack": "^1.2.5", "eslint-plugin-import": "^2.7.0", "jest": "^20.0.4", - "lint-staged": "^3.6.1", + "lint-staged": "^4.0.1", "memory-fs": "^0.4.1", "nsp": "^2.6.3", "pre-commit": "^1.2.2", diff --git a/src/index.js b/src/index.js index 194f367..1685cac 100644 --- a/src/index.js +++ b/src/index.js @@ -1,8 +1,15 @@ import { createInstrumenter } from 'istanbul-lib-instrument'; import loaderUtils from 'loader-utils'; +import validateOptions from 'schema-utils'; import convert from 'convert-source-map'; +/* eslint-disable-line */ +const schema = require('./options'); export default function (source, sourceMap) { + const options = Object.assign({ produceSourceMap: true }, loaderUtils.getOptions(this)); + + validateOptions(schema, options, 'Istanbul Instrumenter Loader'); + let srcMap = sourceMap; // use inline source map, if any if (!srcMap) { @@ -12,7 +19,6 @@ export default function (source, sourceMap) { } } - const options = Object.assign({ produceSourceMap: true }, loaderUtils.getOptions(this)); const instrumenter = createInstrumenter(options); instrumenter.instrument(source, this.resourcePath, (error, instrumentedSource) => { diff --git a/src/options.json b/src/options.json new file mode 100644 index 0000000..5944cd0 --- /dev/null +++ b/src/options.json @@ -0,0 +1,27 @@ +{ + "type": "object", + "properties": { + "debug": { + "type": "boolean" + }, + "compact": { + "type": "boolean" + }, + "autoWrap": { + "type": "boolean" + }, + "esModules": { + "type": "boolean" + }, + "coverageVariable": { + "type": "string" + }, + "preserveComments": { + "type": "boolean" + }, + "produceSourceMap": { + "type": "boolean" + } + }, + "additionalProperties": true +} diff --git a/test/Errors.test.js b/test/Errors.test.js new file mode 100644 index 0000000..6f3dcd6 --- /dev/null +++ b/test/Errors.test.js @@ -0,0 +1,10 @@ +import loader from '../src'; + +describe('Errors', () => { + test('Options Validation Error', () => { + const err = () => loader.call({ query: { debug: 'foo' } }); + + expect(err).toThrow(); + expect(err).toThrowErrorMatchingSnapshot(); + }); +}); diff --git a/test/__snapshots__/Errors.test.js.snap b/test/__snapshots__/Errors.test.js.snap new file mode 100644 index 0000000..f696d95 --- /dev/null +++ b/test/__snapshots__/Errors.test.js.snap @@ -0,0 +1,10 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`Errors Options Validation Error 1`] = ` +"Validation Error + +Istanbul Instrumenter Loader Invalid Options + +options.debug should be boolean +" +`; diff --git a/test/__snapshots__/index.test.js.snap b/test/__snapshots__/index.test.js.snap index c2b479b..de7d8e6 100644 --- a/test/__snapshots__/index.test.js.snap +++ b/test/__snapshots__/index.test.js.snap @@ -1,6 +1,6 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP -exports[`disabled sourcemaps 1`] = `"{\\"version\\":3,\\"sources\\":[\\"webpack:///./test/fixtures/basic.js\\"],\\"names\\":[],\\"mappings\\":\\";;;;;AAAa,8BAA8B,oJAAoJ,wCAAwC,KAAK,OAAO,iBAAiB,MAAM,mBAAmB,MAAM,OAAO,iBAAiB,MAAM,mBAAmB,MAAM,OAAO,kBAAkB,MAAM,mBAAmB,MAAM,OAAO,kBAAkB,MAAM,mBAAmB,MAAM,OAAO,kBAAkB,MAAM,mBAAmB,MAAM,OAAO,kBAAkB,MAAM,mBAAmB,MAAM,OAAO,kBAAkB,MAAM,mBAAmB,MAAM,OAAO,kBAAkB,MAAM,mBAAmB,MAAM,OAAO,kBAAkB,MAAM,mBAAmB,MAAM,OAAO,kBAAkB,MAAM,mBAAmB,OAAO,OAAO,kBAAkB,MAAM,mBAAmB,OAAO,OAAO,kBAAkB,MAAM,mBAAmB,OAAO,OAAO,kBAAkB,MAAM,mBAAmB,OAAO,OAAO,kBAAkB,MAAM,mBAAmB,OAAO,OAAO,iBAAiB,MAAM,mBAAmB,OAAO,OAAO,iBAAiB,MAAM,mBAAmB,OAAO,OAAO,gBAAgB,MAAM,kBAAkB,OAAO,OAAO,gBAAgB,MAAM,kBAAkB,OAAO,OAAO,iBAAiB,MAAM,kBAAkB,OAAO,OAAO,iBAAiB,MAAM,mBAAmB,OAAO,OAAO,iBAAiB,MAAM,oBAAoB,QAAQ,KAAK,2BAA2B,OAAO,iBAAiB,MAAM,kBAAkB,MAAM,OAAO,iBAAiB,MAAM,mBAAmB,QAAQ,MAAM,8BAA8B,OAAO,iBAAiB,MAAM,kBAAkB,MAAM,OAAO,iBAAiB,MAAM,mBAAmB,QAAQ,MAAM,2BAA2B,OAAO,kBAAkB,MAAM,mBAAmB,MAAM,OAAO,kBAAkB,MAAM,mBAAmB,QAAQ,MAAM,6BAA6B,OAAO,gBAAgB,MAAM,kBAAkB,MAAM,OAAO,iBAAiB,MAAM,mBAAmB,QAAQ,MAAM,2BAA2B,OAAO,iBAAiB,MAAM,kBAAkB,MAAM,OAAO,iBAAiB,MAAM,kBAAkB,QAAQ,MAAM,iBAAiB,OAAO,iBAAiB,MAAM,kBAAkB,MAAM,OAAO,iBAAiB,MAAM,kBAAkB,QAAQ,MAAM,iBAAiB,OAAO,kBAAkB,MAAM,mBAAmB,MAAM,OAAO,kBAAkB,MAAM,kBAAkB,UAAU,YAAY,KAAK,KAAK,OAAO,kBAAkB,MAAM,mBAAmB,gCAAgC,OAAO,kBAAkB,MAAM,mBAAmB,EAAE,OAAO,kBAAkB,MAAM,mBAAmB,SAAS,MAAM,KAAK,OAAO,kBAAkB,MAAM,mBAAmB,uBAAuB,OAAO,kBAAkB,MAAM,mBAAmB,EAAE,OAAO,kBAAkB,MAAM,mBAAmB,SAAS,MAAM,KAAK,OAAO,kBAAkB,MAAM,mBAAmB,uBAAuB,OAAO,kBAAkB,MAAM,mBAAmB,EAAE,OAAO,kBAAkB,MAAM,mBAAmB,SAAS,MAAM,KAAK,OAAO,kBAAkB,MAAM,mBAAmB,uBAAuB,OAAO,kBAAkB,MAAM,mBAAmB,EAAE,OAAO,kBAAkB,MAAM,mBAAmB,SAAS,MAAM,KAAK,OAAO,iBAAiB,MAAM,mBAAmB,uBAAuB,OAAO,iBAAiB,MAAM,mBAAmB,EAAE,OAAO,iBAAiB,MAAM,mBAAmB,UAAU,IAAI,yIAAyI,IAAI,0CAA0C,IAAI,kDAAkD,iBAAiB,wFAAwF,iBAAiB,KAAK,KAAK,MAAM,KAAK,KAAK,WAAW,yBAAyB,KAAK,MAAM,KAAK,iFAAiF,aAAa,oBAAoB,KAAK,MAAM,KAAK,4DAA4D,sCAAsC,EAAE,+CAA+C,uBAAuB,uBAAuB,oCAAoC,GAAG,mDAAmD,sBAAsB,wCAAwC,sBAAsB,sBAAsB,YAAY,eAAe,KAAK,gDAAgD,sBAAsB,yGAAyG,sBAAsB,6BAA6B,sBAAsB,yBAAyB,yBAAyB,sBAAsB,0BAA0B,KAAK,0BAA0B,sBAAsB,0DAA0D,sBAAsB,oDAAoD,sBAAsB,sBAAsB,eAAe,yBAAyB,uBAAuB,oDAAoD,KAAK,0BAA0B,uBAAuB,gBAAgB,yBAAyB,uBAAuB,2CAA2C,KAAK,0BAA0B,uBAAuB,sBAAsB,IAAI,+CAA+C,sBAAsB,uBAAuB,uCAAuC,yBAAyB,uBAAuB,0DAA0D,KAAK,2BAA2B,uBAAuB,0BAA0B,sBAAsB,eAAe,sBAAsB,uBAAuB,2BAA2B,uBAAuB,mBAAmB,+BAA+B,sBAAsB,uBAAuB,eAAe,GAAG,uBAAuB,YAAY,G\\",\\"file\\":\\"main.js\\",\\"sourcesContent\\":[\\"\\\\\\"use strict\\\\\\";var cov_1v2zerd2hz=function(){var path=\\\\\\"/fixtures/basic.js\\\\\\",hash=\\\\\\"9f43b4cb30c68c93d6983a04852457a950700587\\\\\\",global=new Function('return this')(),gcv=\\\\\\"__coverage__\\\\\\",coverageData={path:\\\\\\"/fixtures/basic.js\\\\\\",statementMap:{\\\\\\"0\\\\\\":{start:{line:3,column:19},end:{line:3,column:563}},\\\\\\"1\\\\\\":{start:{line:3,column:76},end:{line:3,column:347}},\\\\\\"2\\\\\\":{start:{line:3,column:134},end:{line:3,column:142}},\\\\\\"3\\\\\\":{start:{line:3,column:144},end:{line:3,column:199}},\\\\\\"4\\\\\\":{start:{line:3,column:200},end:{line:3,column:231}},\\\\\\"5\\\\\\":{start:{line:3,column:232},end:{line:3,column:286}},\\\\\\"6\\\\\\":{start:{line:3,column:259},end:{line:3,column:286}},\\\\\\"7\\\\\\":{start:{line:3,column:287},end:{line:3,column:345}},\\\\\\"8\\\\\\":{start:{line:3,column:350},end:{line:3,column:559}},\\\\\\"9\\\\\\":{start:{line:3,column:407},end:{line:3,column:475}},\\\\\\"10\\\\\\":{start:{line:3,column:423},end:{line:3,column:475}},\\\\\\"11\\\\\\":{start:{line:3,column:476},end:{line:3,column:536}},\\\\\\"12\\\\\\":{start:{line:3,column:493},end:{line:3,column:536}},\\\\\\"13\\\\\\":{start:{line:3,column:537},end:{line:3,column:556}},\\\\\\"14\\\\\\":{start:{line:5,column:50},end:{line:5,column:151}},\\\\\\"15\\\\\\":{start:{line:5,column:92},end:{line:5,column:149}},\\\\\\"16\\\\\\":{start:{line:7,column:0},end:{line:20,column:4}},\\\\\\"17\\\\\\":{start:{line:9,column:4},end:{line:9,column:31}},\\\\\\"18\\\\\\":{start:{line:12,column:2},end:{line:17,column:6}},\\\\\\"19\\\\\\":{start:{line:15,column:6},end:{line:15,column:20}},\\\\\\"20\\\\\\":{start:{line:19,column:2},end:{line:19,column:13}}},fnMap:{\\\\\\"0\\\\\\":{name:\\\\\\"(anonymous_0)\\\\\\",decl:{start:{line:3,column:19},end:{line:3,column:20}},loc:{start:{line:3,column:31},end:{line:3,column:561}},line:3},\\\\\\"1\\\\\\":{name:\\\\\\"defineProperties\\\\\\",decl:{start:{line:3,column:42},end:{line:3,column:58}},loc:{start:{line:3,column:74},end:{line:3,column:349}},line:3},\\\\\\"2\\\\\\":{name:\\\\\\"(anonymous_2)\\\\\\",decl:{start:{line:3,column:357},end:{line:3,column:358}},loc:{start:{line:3,column:405},end:{line:3,column:558}},line:3},\\\\\\"3\\\\\\":{name:\\\\\\"_classCallCheck\\\\\\",decl:{start:{line:5,column:9},end:{line:5,column:24}},loc:{start:{line:5,column:48},end:{line:5,column:153}},line:5},\\\\\\"4\\\\\\":{name:\\\\\\"(anonymous_4)\\\\\\",decl:{start:{line:7,column:17},end:{line:7,column:18}},loc:{start:{line:7,column:29},end:{line:20,column:1}},line:7},\\\\\\"5\\\\\\":{name:\\\\\\"Foo\\\\\\",decl:{start:{line:8,column:11},end:{line:8,column:14}},loc:{start:{line:8,column:17},end:{line:10,column:3}},line:8},\\\\\\"6\\\\\\":{name:\\\\\\"bar\\\\\\",decl:{start:{line:14,column:20},end:{line:14,column:23}},loc:{start:{line:14,column:26},end:{line:16,column:5}},line:14}},branchMap:{\\\\\\"0\\\\\\":{loc:{start:{line:3,column:168},end:{line:3,column:198}},type:\\\\\\"binary-expr\\\\\\",locations:[{start:{line:3,column:168},end:{line:3,column:189}},{start:{line:3,column:193},end:{line:3,column:198}}],line:3},\\\\\\"1\\\\\\":{loc:{start:{line:3,column:232},end:{line:3,column:286}},type:\\\\\\"if\\\\\\",locations:[{start:{line:3,column:232},end:{line:3,column:286}},{start:{line:3,column:232},end:{line:3,column:286}}],line:3},\\\\\\"2\\\\\\":{loc:{start:{line:3,column:407},end:{line:3,column:475}},type:\\\\\\"if\\\\\\",locations:[{start:{line:3,column:407},end:{line:3,column:475}},{start:{line:3,column:407},end:{line:3,column:475}}],line:3},\\\\\\"3\\\\\\":{loc:{start:{line:3,column:476},end:{line:3,column:536}},type:\\\\\\"if\\\\\\",locations:[{start:{line:3,column:476},end:{line:3,column:536}},{start:{line:3,column:476},end:{line:3,column:536}}],line:3},\\\\\\"4\\\\\\":{loc:{start:{line:5,column:50},end:{line:5,column:151}},type:\\\\\\"if\\\\\\",locations:[{start:{line:5,column:50},end:{line:5,column:151}},{start:{line:5,column:50},end:{line:5,column:151}}],line:5}},s:{\\\\\\"0\\\\\\":0,\\\\\\"1\\\\\\":0,\\\\\\"2\\\\\\":0,\\\\\\"3\\\\\\":0,\\\\\\"4\\\\\\":0,\\\\\\"5\\\\\\":0,\\\\\\"6\\\\\\":0,\\\\\\"7\\\\\\":0,\\\\\\"8\\\\\\":0,\\\\\\"9\\\\\\":0,\\\\\\"10\\\\\\":0,\\\\\\"11\\\\\\":0,\\\\\\"12\\\\\\":0,\\\\\\"13\\\\\\":0,\\\\\\"14\\\\\\":0,\\\\\\"15\\\\\\":0,\\\\\\"16\\\\\\":0,\\\\\\"17\\\\\\":0,\\\\\\"18\\\\\\":0,\\\\\\"19\\\\\\":0,\\\\\\"20\\\\\\":0},f:{\\\\\\"0\\\\\\":0,\\\\\\"1\\\\\\":0,\\\\\\"2\\\\\\":0,\\\\\\"3\\\\\\":0,\\\\\\"4\\\\\\":0,\\\\\\"5\\\\\\":0,\\\\\\"6\\\\\\":0},b:{\\\\\\"0\\\\\\":[0,0],\\\\\\"1\\\\\\":[0,0],\\\\\\"2\\\\\\":[0,0],\\\\\\"3\\\\\\":[0,0],\\\\\\"4\\\\\\":[0,0]},inputSourceMap:{version:3,sources:[\\\\\\"test/fixtures/basic.js\\\\\\"],names:[\\\\\\"module\\\\\\",\\\\\\"exports\\\\\\"],mappings:\\\\\\";;;;;;AAAAA,OAAOC,OAAP;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA,0BAEQ;AACJ,aAAO,CAAC,CAAC,IAAT;AACD;AAJH;;AAAA;AAAA\\\\\\",file:\\\\\\"basic.js\\\\\\",sourceRoot:\\\\\\"\\\\\\",sourcesContent:[\\\\\\"module.exports = class Foo {\\\\\\\\n\\\\\\\\n bar() {\\\\\\\\n return !!this;\\\\\\\\n }\\\\\\\\n\\\\\\\\n};\\\\\\\\n\\\\\\"]},_coverageSchema:\\\\\\"332fd63041d2c1bcb487cc26dd0d5f7d97098a6c\\\\\\"},coverage=global[gcv]||(global[gcv]={});if(coverage[path]&&coverage[path].hash===hash){return coverage[path];}coverageData.hash=hash;return coverage[path]=coverageData;}();var _createClass=(++cov_1v2zerd2hz.s[0],function(){++cov_1v2zerd2hz.f[0];function defineProperties(target,props){++cov_1v2zerd2hz.f[1];++cov_1v2zerd2hz.s[1];for(var i=0;i str.split(path.sep).join('/'); -module.exports = function (source, map, ...args) { +module.exports = function wrapper(source, map, ...args) { // hack the resourcePath to be consistent across systems so that tests always work this.resourcePath = normalize(this.resourcePath.replace(path.resolve(__dirname, '..'), ''));