From 13fa5bc29da5eaf225b0e5b24fa70888e5ca1038 Mon Sep 17 00:00:00 2001 From: Myer Nore Date: Tue, 19 Sep 2017 10:50:51 -0400 Subject: [PATCH 01/24] initial commit --- README.md | 1 + 1 file changed, 1 insertion(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..fce90e4 --- /dev/null +++ b/README.md @@ -0,0 +1 @@ +# nwsign - test signing nw.js app From 77e61160294c67e84389f52ccfba4eec477c056c Mon Sep 17 00:00:00 2001 From: Myer Nore Date: Thu, 21 Sep 2017 11:08:22 -0400 Subject: [PATCH 02/24] add npm package lock --- package-lock.json | 5516 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 5516 insertions(+) create mode 100644 package-lock.json diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..db7b431 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,5516 @@ +{ + "name": "nwjs-builder-phoenix", + "version": "1.14.5", + "lockfileVersion": 1, + "dependencies": { + "@ava/babel-preset-stage-4": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@ava/babel-preset-stage-4/-/babel-preset-stage-4-1.1.0.tgz", + "integrity": "sha512-oWqTnIGXW3k72UFidXzW0ONlO7hnO9x02S/QReJ7NBGeiBH9cUHY9+EfV6C8PXC6YJH++WrliEq03wMSJGNZFg==", + "dev": true + }, + "@ava/babel-preset-transform-test-files": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@ava/babel-preset-transform-test-files/-/babel-preset-transform-test-files-2.0.1.tgz", + "integrity": "sha1-11IyzG1x3Jx+rkt2qQBP2BUB0ME=", + "dev": true + }, + "@ava/pretty-format": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@ava/pretty-format/-/pretty-format-1.1.0.tgz", + "integrity": "sha1-0KV9Jeua6rlkO90aAwZCuRwSPig=", + "dev": true + }, + "@types/bluebird": { + "version": "3.5.11", + "resolved": "https://registry.npmjs.org/@types/bluebird/-/bluebird-3.5.11.tgz", + "integrity": "sha512-tL3ySMpaih/6mJqP8NLfIhQ+qxXvU1Lb+AP+fQ46ZA6/gAQm09GfDiS+C32UgP05kbA2tA4M3B6+oXfkRDpKMQ==", + "dev": true + }, + "@types/debug": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-0.0.29.tgz", + "integrity": "sha1-oeUUrfvZLwOiJLpU1pMRHb8fN1Q=", + "dev": true + }, + "@types/es6-shim": { + "version": "0.31.35", + "resolved": "https://registry.npmjs.org/@types/es6-shim/-/es6-shim-0.31.35.tgz", + "integrity": "sha512-jecKfIChNeUKKaQ5tWSzK69FDhW/hegDdJIkLXHJfLVDNjoJOdDtNbCnmK8V2IPTgVVEOi+FLhljbvDix8EDtA==", + "dev": true + }, + "@types/form-data": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@types/form-data/-/form-data-2.2.0.tgz", + "integrity": "sha512-vm5OGsKc61Sx/GTRMQ9d0H0PYCDebT78/bdIBPCoPEHdgp0etaH1RzMmkDygymUmyXTj3rdWQn0sRUpYKZzljA==", + "dev": true + }, + "@types/fs-extra": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-3.0.3.tgz", + "integrity": "sha512-o2qkg/J2LWK+sr007+KFBBOrxzxpr9kiP0gMFC75gQJXhUn/E3pQA0kSVdxrQ3lf+rOwsRnuH0wnR5MNTotEKg==", + "dev": true + }, + "@types/node": { + "version": "7.0.43", + "resolved": "https://registry.npmjs.org/@types/node/-/node-7.0.43.tgz", + "integrity": "sha512-7scYwwfHNppXvH/9JzakbVxk0o0QUILVk1Lv64GRaxwPuGpnF1QBiwdvhDpLcymb8BpomQL3KYoWKq3wUdDMhQ==", + "dev": true + }, + "@types/progress": { + "version": "1.1.28", + "resolved": "https://registry.npmjs.org/@types/progress/-/progress-1.1.28.tgz", + "integrity": "sha1-ucm9n5hcFKFHrOmaAX/Y8gjhGII=", + "dev": true + }, + "@types/request": { + "version": "0.0.45", + "resolved": "https://registry.npmjs.org/@types/request/-/request-0.0.45.tgz", + "integrity": "sha512-OIIREjT58pnpfJjEY5PeBEuRtRR2ED4DF1Ez3Dj9474kCqEKfE+iNAYyM/P3RxxDjNxBhipo+peNBW0S/7Wrzg==", + "dev": true + }, + "@types/semver": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-5.4.0.tgz", + "integrity": "sha512-PBHCvO98hNec9A491vBbh0ZNDOVxccwKL1u2pm6fs9oDgm7SEnw0lEHqHfjsYryDxnE3zaf7LvERWEXjOp1hig==", + "dev": true + }, + "@types/tmp": { + "version": "0.0.32", + "resolved": "https://registry.npmjs.org/@types/tmp/-/tmp-0.0.32.tgz", + "integrity": "sha1-DTyzECL4Qn6ljACK8yuA2hJspOM=", + "dev": true + }, + "@types/yargs": { + "version": "6.6.0", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-6.6.0.tgz", + "integrity": "sha1-kfjiWAqAgwSfeDEcBZqlfWlJ32s=", + "dev": true + }, + "7zip-bin": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/7zip-bin/-/7zip-bin-2.2.4.tgz", + "integrity": "sha512-vs1IkxmbdYv0K8rPBXLl/qicRRF7CDjpOWHY1m+CUVByMkepJtWVlxtnszyY1rAWWL71IGc2JWRzJgUbHpzGDw==" + }, + "7zip-bin-linux": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/7zip-bin-linux/-/7zip-bin-linux-1.1.0.tgz", + "integrity": "sha512-BfW7XsUWNV/j723el3gGbiNWdmvLrnTB9VD0BondfCinxCwz4RQ60W4c3UxRpfHn1Q4Cn1o/DxYFmLMgHTEKqg==", + "optional": true + }, + "7zip-bin-mac": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/7zip-bin-mac/-/7zip-bin-mac-1.0.1.tgz", + "integrity": "sha1-Pmh3i78JJq3GgVlCcHRQXUdVXAI=", + "optional": true + }, + "7zip-bin-win": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/7zip-bin-win/-/7zip-bin-win-2.1.1.tgz", + "integrity": "sha512-6VGEW7PXGroTsoI2QW3b0ea95HJmbVBHvfANKLLMzSzFA1zKqVX5ybNuhmeGpf6vA0x8FJTt6twpprDANsY5WQ==", + "optional": true + }, + "add-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/add-stream/-/add-stream-1.0.0.tgz", + "integrity": "sha1-anmQQ3ynNtXhKI25K9MmbV9csqo=", + "dev": true + }, + "ajv": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.2.2.tgz", + "integrity": "sha1-R8aNaehvXZUxA7AHSpQw3GPaXjk=" + }, + "align-text": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", + "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", + "dev": true + }, + "amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", + "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", + "dev": true + }, + "ansi-align": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-1.1.0.tgz", + "integrity": "sha1-LwwWWIKXOa3V67FeawxuNCPwFro=", + "dev": true + }, + "ansi-escapes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.0.0.tgz", + "integrity": "sha512-O/klc27mWNUigtv0F8NJWbLF00OcegQalkqKURWdosW08YZKi4m6CnSUSvIZG1otNJbTWhN01Hhz389DW7mvDQ==", + "dev": true + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "anymatch": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", + "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==", + "dev": true + }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "dev": true + }, + "are-we-there-yet": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz", + "integrity": "sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0=", + "dev": true + }, + "arr-diff": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", + "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", + "dev": true + }, + "arr-exclude": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/arr-exclude/-/arr-exclude-1.0.0.tgz", + "integrity": "sha1-38fC5VKicHI8zaBM8xKMjL/lxjE=", + "dev": true + }, + "arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", + "dev": true + }, + "array-differ": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz", + "integrity": "sha1-7/UuN1gknTO+QCuLuOVkuytdQDE=", + "dev": true + }, + "array-find-index": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", + "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", + "dev": true + }, + "array-ify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-ify/-/array-ify-1.0.0.tgz", + "integrity": "sha1-nlKHYrSpBmrRY6aWKjZEGOlibs4=", + "dev": true + }, + "array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=" + }, + "array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=" + }, + "array-unique": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", + "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", + "dev": true + }, + "arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "dev": true + }, + "asn1": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz", + "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=" + }, + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" + }, + "async": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", + "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", + "dev": true + }, + "async-each": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz", + "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=", + "dev": true + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + }, + "auto-bind": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/auto-bind/-/auto-bind-1.1.0.tgz", + "integrity": "sha1-k7hk3H7gGjJigXddXHXKCnUeWWE=", + "dev": true + }, + "ava": { + "version": "0.18.2", + "resolved": "https://registry.npmjs.org/ava/-/ava-0.18.2.tgz", + "integrity": "sha1-eSU9FjYHcDSieAu1W1w+bD1/MS8=", + "dev": true, + "dependencies": { + "ms": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.3.tgz", + "integrity": "sha1-cIFVpeROM/X9D8U+gdDUCpG+H/8=", + "dev": true + } + } + }, + "ava-init": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/ava-init/-/ava-init-0.2.1.tgz", + "integrity": "sha512-lXwK5LM+2g1euDRqW1mcSX/tqzY1QU7EjKpqayFPPtNRmbSYZ8RzPO5tqluTToijmtjp2M+pNpVdbcHssC4glg==", + "dev": true, + "dependencies": { + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true + }, + "load-json-file": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", + "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", + "dev": true + }, + "path-type": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", + "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", + "dev": true + }, + "read-pkg": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", + "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", + "dev": true + }, + "read-pkg-up": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", + "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", + "dev": true + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true + } + } + }, + "aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" + }, + "aws4": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.6.0.tgz", + "integrity": "sha1-g+9cqGCysy5KDe7e6MdxudtXRx4=" + }, + "babel-code-frame": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", + "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", + "dev": true + }, + "babel-core": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.0.tgz", + "integrity": "sha1-rzL3izGm/O8RnIew/Y2XU/A6C7g=", + "dev": true, + "dependencies": { + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true + } + } + }, + "babel-generator": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.0.tgz", + "integrity": "sha1-rBriAHC3n248odMmlhMFN3TyDcU=", + "dev": true, + "dependencies": { + "jsesc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", + "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", + "dev": true + } + } + }, + "babel-helper-builder-binary-assignment-operator-visitor": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz", + "integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=", + "dev": true + }, + "babel-helper-call-delegate": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz", + "integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=", + "dev": true + }, + "babel-helper-explode-assignable-expression": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz", + "integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=", + "dev": true + }, + "babel-helper-function-name": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", + "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", + "dev": true + }, + "babel-helper-get-function-arity": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", + "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", + "dev": true + }, + "babel-helper-hoist-variables": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz", + "integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=", + "dev": true + }, + "babel-helper-regex": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz", + "integrity": "sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI=", + "dev": true + }, + "babel-helper-remap-async-to-generator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", + "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", + "dev": true + }, + "babel-helpers": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", + "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", + "dev": true + }, + "babel-messages": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", + "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", + "dev": true + }, + "babel-plugin-ava-throws-helper": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/babel-plugin-ava-throws-helper/-/babel-plugin-ava-throws-helper-1.0.0.tgz", + "integrity": "sha1-j+bnnS/RmDi1w2Sfic+wP9Vj4kE=", + "dev": true + }, + "babel-plugin-check-es2015-constants": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz", + "integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=", + "dev": true + }, + "babel-plugin-espower": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/babel-plugin-espower/-/babel-plugin-espower-2.3.2.tgz", + "integrity": "sha1-VRa4/NsmyfDh2BYHSfbkxl5xJx4=", + "dev": true + }, + "babel-plugin-syntax-async-functions": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", + "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=", + "dev": true + }, + "babel-plugin-syntax-exponentiation-operator": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz", + "integrity": "sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4=", + "dev": true + }, + "babel-plugin-syntax-trailing-function-commas": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz", + "integrity": "sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM=", + "dev": true + }, + "babel-plugin-transform-async-to-generator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", + "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", + "dev": true + }, + "babel-plugin-transform-es2015-destructuring": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz", + "integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=", + "dev": true + }, + "babel-plugin-transform-es2015-function-name": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz", + "integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=", + "dev": true + }, + "babel-plugin-transform-es2015-modules-commonjs": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.0.tgz", + "integrity": "sha1-DYOUApt9xqvhqX7xgeAHWN0uXYo=", + "dev": true + }, + "babel-plugin-transform-es2015-parameters": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz", + "integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=", + "dev": true + }, + "babel-plugin-transform-es2015-spread": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz", + "integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=", + "dev": true + }, + "babel-plugin-transform-es2015-sticky-regex": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz", + "integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=", + "dev": true + }, + "babel-plugin-transform-es2015-unicode-regex": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz", + "integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=", + "dev": true + }, + "babel-plugin-transform-exponentiation-operator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz", + "integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=", + "dev": true + }, + "babel-plugin-transform-strict-mode": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", + "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=", + "dev": true + }, + "babel-register": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", + "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", + "dev": true + }, + "babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "dev": true + }, + "babel-template": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", + "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", + "dev": true + }, + "babel-traverse": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", + "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", + "dev": true + }, + "babel-types": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", + "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", + "dev": true + }, + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "dev": true + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" + }, + "base64-js": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.2.0.tgz", + "integrity": "sha1-o5mS1yNYSBGYK+XikLtqU9hnAPE=" + }, + "bcrypt-pbkdf": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz", + "integrity": "sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40=", + "optional": true + }, + "binary-extensions": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.10.0.tgz", + "integrity": "sha1-muuabF6IY4qtFx4Wf1kAq+JINdA=", + "dev": true + }, + "bluebird": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.0.tgz", + "integrity": "sha1-eRQg1/VR7qKJdFOop3ZT+WYG1nw=" + }, + "boom": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/boom/-/boom-4.3.1.tgz", + "integrity": "sha1-T4owBctKfjiJ90kDD9JbluAdLjE=" + }, + "boxen": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-0.6.0.tgz", + "integrity": "sha1-g2TUJIrDT/DvGy8r9JpsYM4NgbY=", + "dev": true, + "dependencies": { + "camelcase": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", + "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", + "dev": true + } + } + }, + "brace-expansion": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", + "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=" + }, + "braces": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", + "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", + "dev": true + }, + "buf-compare": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/buf-compare/-/buf-compare-1.0.1.tgz", + "integrity": "sha1-/vKNqLgROgoNtEMLC2Rntpcws0o=", + "dev": true + }, + "buffer-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/buffer-equal/-/buffer-equal-1.0.0.tgz", + "integrity": "sha1-WWFrSYME1Var1GaWayLu2j7KX74=" + }, + "builtin-modules": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", + "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=" + }, + "byline": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/byline/-/byline-5.0.0.tgz", + "integrity": "sha1-dBxSFkaOrcRXsDQQEYrXfejB3bE=", + "dev": true + }, + "caching-transform": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-1.0.1.tgz", + "integrity": "sha1-bb2y8g+Nj7znnz6U6dF0Lc31wKE=", + "dev": true, + "dependencies": { + "md5-hex": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-1.3.0.tgz", + "integrity": "sha1-0sSv6YPENwZiF5uMrRRSGRNQRsQ=", + "dev": true + }, + "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=", + "dev": true + } + } + }, + "call-matcher": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/call-matcher/-/call-matcher-1.0.1.tgz", + "integrity": "sha1-UTTQd5hPcSpU2tPL9i3ijc5BbKg=", + "dev": true + }, + "call-signature": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/call-signature/-/call-signature-0.0.2.tgz", + "integrity": "sha1-qEq8glpV70yysCi9dOIFpluaSZY=", + "dev": true + }, + "camelcase": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", + "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=" + }, + "camelcase-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", + "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", + "dev": true, + "dependencies": { + "camelcase": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", + "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", + "dev": true + } + } + }, + "capture-stack-trace": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.0.tgz", + "integrity": "sha1-Sm+gc5nCa7pH8LJJa00PtAjFVQ0=", + "dev": true + }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" + }, + "center-align": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", + "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", + "dev": true, + "optional": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true + }, + "chokidar": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz", + "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=", + "dev": true + }, + "ci-info": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-1.1.1.tgz", + "integrity": "sha512-vHDDF/bP9RYpTWtUhpJRhCFdvvp3iDWvEbuDbWgvjUrNGV1MXJrE0MPcwGtEled04m61iwdBLUIHZtDgzWS4ZQ==", + "dev": true + }, + "clean-stack": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-1.3.0.tgz", + "integrity": "sha1-noIVAa6XmYbEax1m0tQy2y/UrjE=", + "dev": true + }, + "clean-yaml-object": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/clean-yaml-object/-/clean-yaml-object-0.1.0.tgz", + "integrity": "sha1-Y/sRDcLOGoTcIfbZM0h20BCui2g=", + "dev": true + }, + "cli-boxes": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-1.0.0.tgz", + "integrity": "sha1-T6kXw+WclKAEzWH47lCdplFocUM=", + "dev": true + }, + "cli-cursor": { + "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 + }, + "cli-spinners": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-1.0.0.tgz", + "integrity": "sha1-75h+09SDkaw9q5GAtAanQhgNbmo=", + "dev": true + }, + "cli-truncate": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-0.2.1.tgz", + "integrity": "sha1-nxXPuwcFAFNpIWxiasfQWrkN1XQ=", + "dev": true + }, + "cli-width": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", + "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", + "dev": true + }, + "cliui": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", + "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=" + }, + "clone": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.2.tgz", + "integrity": "sha1-Jgt6meux7f4kdTgXX3gyQ8sZ0Uk=", + "dev": true + }, + "cmd-shim": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/cmd-shim/-/cmd-shim-2.0.2.tgz", + "integrity": "sha1-b8vamUg6j9FdfTChlspp1oii79s=", + "dev": true + }, + "co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=" + }, + "co-with-promise": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co-with-promise/-/co-with-promise-4.6.0.tgz", + "integrity": "sha1-QT59tvWJOmC5Qs9JLEvsk9tBWrc=", + "dev": true, + "dependencies": { + "pinkie": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-1.0.0.tgz", + "integrity": "sha1-Wkfyi6EBXQIBvae/DzWOR77Ix+Q=", + "dev": true + }, + "pinkie-promise": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-1.0.0.tgz", + "integrity": "sha1-0dpn9UglY7t89X8oauKCLs+/NnA=", + "dev": true + } + } + }, + "code-excerpt": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/code-excerpt/-/code-excerpt-2.1.0.tgz", + "integrity": "sha1-XcwIHoj0p+O1VOnjXX7yMtR/gUc=", + "dev": true + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" + }, + "color-convert": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.0.tgz", + "integrity": "sha1-Gsz5fdc5uYO/mU1W/sj5WFNkG3o=", + "dev": true + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "colors": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz", + "integrity": "sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs=" + }, + "columnify": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/columnify/-/columnify-1.5.4.tgz", + "integrity": "sha1-Rzfd8ce2mop8NAVweC6UfuyOeLs=", + "dev": true + }, + "combined-stream": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz", + "integrity": "sha1-k4NwpXtKUd6ix3wV1cX9+JUWQAk=" + }, + "command-join": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/command-join/-/command-join-2.0.0.tgz", + "integrity": "sha1-Uui5hPSHLZUv8b3IuYOX0nxxRM8=", + "dev": true + }, + "commander": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.9.0.tgz", + "integrity": "sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q=" + }, + "common-path-prefix": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-1.0.0.tgz", + "integrity": "sha1-zVL28HEuC6q5fW+XModPIvR3UsA=", + "dev": true + }, + "commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", + "dev": true + }, + "compare-func": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/compare-func/-/compare-func-1.3.2.tgz", + "integrity": "sha1-md0LpFfh+bxyKxLAjsM+6rMfpkg=", + "dev": true, + "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 + } + } + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "concat-stream": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.0.tgz", + "integrity": "sha1-CqxmL9Ur54lk1VMvaUeE5wEQrPc=", + "dev": true + }, + "configstore": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-2.1.0.tgz", + "integrity": "sha1-c3o6cDbpiGECqmCZ5HuzOrGroaE=", + "dev": true, + "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 + }, + "uuid": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz", + "integrity": "sha1-Z+LoY3lyFVMN/zGOW/nc6/1Hsho=", + "dev": true + }, + "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=", + "dev": true + } + } + }, + "console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", + "dev": true + }, + "conventional-changelog": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/conventional-changelog/-/conventional-changelog-1.1.5.tgz", + "integrity": "sha512-DUM0iXhgE11uRCoEQnFuYQA5zJcxfvKn940ZFyXziFl0y05yBCoy5ci2fcQYFWQ+OyyxgE2H02EdgYpuz9XG4w==", + "dev": true + }, + "conventional-changelog-angular": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-1.5.0.tgz", + "integrity": "sha512-Gt0qSf5wdFmLabgdSlqjguDAmPyYTXtUl4WH5W3SlpElHhnU/UiCY3M7xcIkZxrNQfVA1UxUBgu65eBbaJnZVA==", + "dev": true + }, + "conventional-changelog-atom": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/conventional-changelog-atom/-/conventional-changelog-atom-0.1.1.tgz", + "integrity": "sha512-6Nlu/+MiD4gi7k3Z+N1vMJWpaPSdvFPWzPGnH4OXewHAxiAl0L/TT9CGgA01fosPxmYr4hMNtD7kyN0tkg8vIA==", + "dev": true + }, + "conventional-changelog-cli": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/conventional-changelog-cli/-/conventional-changelog-cli-1.3.3.tgz", + "integrity": "sha512-2bsDXAidc7TWErFHl58IDPPkcHvtscDr6a63tpne7OZPu5JAqeDc3iKimvzvhdUfcWLowlXmoei8sBHMQ0sMYw==", + "dev": true + }, + "conventional-changelog-codemirror": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/conventional-changelog-codemirror/-/conventional-changelog-codemirror-0.2.0.tgz", + "integrity": "sha512-jUbY98JoKdAOR5k3pOBiKZ+Iz9t2F84hL7x4WjSRW6x7FdeCEUOjyfml+YClE2h/h62Tf3mwur5jSO8upxxc1g==", + "dev": true + }, + "conventional-changelog-core": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/conventional-changelog-core/-/conventional-changelog-core-1.9.1.tgz", + "integrity": "sha512-Fo0bSeO+NsO6GtuQXts0xQeRpLrxaABTPU8NK4Zij9sJB3zFkU4BObSefJS4F4+EkKujaKCWtfS6Uih+9NpXrQ==", + "dev": true + }, + "conventional-changelog-ember": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/conventional-changelog-ember/-/conventional-changelog-ember-0.2.7.tgz", + "integrity": "sha512-Xj1v9uVcKM8N798hMr7e6yiw8IFyvI6Ik+TdjdmG54uGupqvEEWW37xAbPPbdKvgoitbyZkqUTancj055actEg==", + "dev": true + }, + "conventional-changelog-eslint": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/conventional-changelog-eslint/-/conventional-changelog-eslint-0.2.0.tgz", + "integrity": "sha512-WGKnC0bGPD6BHGiRBfYqNGfy6DZDn2jGs1yxPRT8I2796wYdGqsbDF4477o4fdsxUJvckoW2OFPqkmRMQaCHSA==", + "dev": true + }, + "conventional-changelog-express": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/conventional-changelog-express/-/conventional-changelog-express-0.2.0.tgz", + "integrity": "sha512-ujSEmbWfozC1iIjH5Pl7AKtREowvAl10whs1q6c7nZLnoNZK5CmdB2PQ/V42O6rCgUzaLX+ACRW2+g0A/Htqvw==", + "dev": true + }, + "conventional-changelog-jquery": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/conventional-changelog-jquery/-/conventional-changelog-jquery-0.1.0.tgz", + "integrity": "sha1-Agg5cWLjhGmG5xJztsecW1+A9RA=", + "dev": true + }, + "conventional-changelog-jscs": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/conventional-changelog-jscs/-/conventional-changelog-jscs-0.1.0.tgz", + "integrity": "sha1-BHnrRDzH1yxYvwvPDvHURKkvDlw=", + "dev": true + }, + "conventional-changelog-jshint": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/conventional-changelog-jshint/-/conventional-changelog-jshint-0.2.0.tgz", + "integrity": "sha512-uUP4c0et6F2teapl+YY2JHFAHD401U5CkgI+P8PyU0y1zS8BdBy6EnhqgZEXhFOp9fPzUdic+Wv/9alOqw3agQ==", + "dev": true + }, + "conventional-changelog-writer": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-2.0.1.tgz", + "integrity": "sha512-X4qC758celQOKw0iUPAsH5sJX6fH6N5dboFc3elXb1/SIKhsYMukhhaxWmxRdtVUSqGt9rZg8giwBQG5B2GeKg==", + "dev": true + }, + "conventional-commits-filter": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-1.0.0.tgz", + "integrity": "sha1-b8KmWTcrw/IznPn//34bA0S5MDk=", + "dev": true + }, + "conventional-commits-parser": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-2.0.0.tgz", + "integrity": "sha512-8od6g684Fhi5Vpp4ABRv/RBsW1AY6wSHbJHEK6FGTv+8jvAAnlABniZu/FVmX9TcirkHepaEsa1QGkRvbg0CKw==", + "dev": true + }, + "conventional-recommended-bump": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/conventional-recommended-bump/-/conventional-recommended-bump-1.0.1.tgz", + "integrity": "sha512-2FrE8UJwt2EKpICi/E7P+xqyYUysdfMnFYiGV+7ANzJsixkBOrBKrKlCEV2NllCjR0XOmNfnA/mgozC5jAhhGQ==", + "dev": true + }, + "convert-source-map": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.0.tgz", + "integrity": "sha1-ms1whRxtXf3ZPZKC5e35SgP/RrU=", + "dev": true + }, + "convert-to-spaces": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/convert-to-spaces/-/convert-to-spaces-1.0.2.tgz", + "integrity": "sha1-fj5Iu+bZl7FBfdyihoIEtNPYVxU=", + "dev": true + }, + "core-assert": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/core-assert/-/core-assert-0.2.1.tgz", + "integrity": "sha1-+F4s+b/tKPdzzIs/pcW2m9wC/j8=", + "dev": true + }, + "core-js": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.1.tgz", + "integrity": "sha1-rmh03GaTd4m4B1T/VCjfZoGcpQs=", + "dev": true + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "create-error-class": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz", + "integrity": "sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y=", + "dev": true + }, + "cross-env": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-3.2.4.tgz", + "integrity": "sha1-ngWF8neGTtQhznVvgamA/w1piro=", + "dev": true + }, + "cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "dev": true + }, + "cryptiles": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-3.1.2.tgz", + "integrity": "sha1-qJ+7Ig9c4l7FboxKqKT9e1sNKf4=", + "dependencies": { + "boom": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/boom/-/boom-5.2.0.tgz", + "integrity": "sha512-Z5BTk6ZRe4tXXQlkqftmsAUANpXmuwlsF5Oov8ThoMbQRzdGTA1ngYRW160GexgOgjsFOKJz0LYhoNi+2AMBUw==" + } + } + }, + "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 + }, + "currently-unhandled": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", + "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", + "dev": true + }, + "dargs": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/dargs/-/dargs-4.1.0.tgz", + "integrity": "sha1-A6nbtLXC8Tm/FK5T8LiipqhvThc=", + "dev": true + }, + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=" + }, + "date-time": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/date-time/-/date-time-0.1.1.tgz", + "integrity": "sha1-7S9tk9l5DOL9ZtW1/z7dW7y/Owc=", + "dev": true + }, + "dateformat": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-1.0.12.tgz", + "integrity": "sha1-nxJLZ1lMk3/3BpMuSmQsyo27/uk=", + "dev": true + }, + "debug": { + "version": "2.6.8", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.8.tgz", + "integrity": "sha1-5zFTHKLt4n0YgiJCfaF4IdaP9Pw=" + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" + }, + "dedent": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", + "integrity": "sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=", + "dev": true + }, + "deep-equal": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", + "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=", + "dev": true + }, + "deep-extend": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.4.2.tgz", + "integrity": "sha1-SLaZwn4zS/ifEIkr5DL25MfTSn8=", + "dev": true + }, + "defaults": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", + "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", + "dev": true + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" + }, + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", + "dev": true + }, + "detect-indent": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", + "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", + "dev": true + }, + "diff": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.3.1.tgz", + "integrity": "sha512-MKPHZDMB0o6yHyDryUOScqZibp914ksXwAMYMTHj6KO8UeKsRYNJD3oNCKjTqZon+V488P7N/HzXF8t7ZR95ww==", + "dev": true + }, + "dir-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/dir-compare/-/dir-compare-1.4.0.tgz", + "integrity": "sha1-r6AKuZwPscQStI3GXo9DeNJX8AY=", + "dependencies": { + "bluebird": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.4.1.tgz", + "integrity": "sha1-tzHd9I4t077awudeEhWhG8uR+gc=" + } + } + }, + "dot-prop": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz", + "integrity": "sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==", + "dev": true + }, + "duplexer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz", + "integrity": "sha1-rOb/gIwc5mtX0ev5eXessCM0z8E=", + "dev": true + }, + "duplexer2": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", + "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=", + "dev": true + }, + "duplexer3": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", + "dev": true + }, + "ecc-jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz", + "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=", + "optional": true + }, + "empower-core": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/empower-core/-/empower-core-0.6.2.tgz", + "integrity": "sha1-Wt71ZgiOMfuoC6CjbfR9cJQWkUQ=", + "dev": true + }, + "equal-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/equal-length/-/equal-length-1.0.1.tgz", + "integrity": "sha1-IcoRLUirJLTh5//A5TOdMf38J0w=", + "dev": true + }, + "error-ex": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz", + "integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=" + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "espower-location-detector": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/espower-location-detector/-/espower-location-detector-1.0.0.tgz", + "integrity": "sha1-oXt+zFnTDheeK+9z+0E3cEyzMbU=", + "dev": true + }, + "espurify": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/espurify/-/espurify-1.7.0.tgz", + "integrity": "sha1-HFz2y8zDLm9jk4C9T5kfq5up0iY=", + "dev": true + }, + "estraverse": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", + "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=", + "dev": true + }, + "esutils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", + "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", + "dev": true + }, + "execa": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", + "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", + "dev": true + }, + "expand-brackets": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", + "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", + "dev": true + }, + "expand-range": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", + "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", + "dev": true + }, + "extend": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz", + "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=" + }, + "external-editor": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.0.5.tgz", + "integrity": "sha512-Msjo64WT5W+NhOpQXh0nOHm+n0RfU1QUwDnKYvJ8dEJ8zlwLrqXNTv5mSUTJpepf41PDJGyhueTw2vNZW+Fr/w==", + "dev": true, + "dependencies": { + "tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true + } + } + }, + "extglob": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", + "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", + "dev": true + }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" + }, + "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=" + }, + "figures": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", + "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", + "dev": true + }, + "filename-regex": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", + "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=", + "dev": true + }, + "fill-range": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.3.tgz", + "integrity": "sha1-ULd9/X5Gm8dJJHCWNpn+eoSFpyM=", + "dev": true + }, + "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": "0.1.1", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-0.1.1.tgz", + "integrity": "sha1-yN765XyKUqinhPnjHFfHQumToLk=", + "dev": true + }, + "find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=" + }, + "findup-sync": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.3.0.tgz", + "integrity": "sha1-N5MKpdgWt3fANEXhlmzGeQpMCxY=", + "dev": true, + "dependencies": { + "glob": { + "version": "5.0.15", + "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", + "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", + "dev": true + } + } + }, + "fn-name": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fn-name/-/fn-name-2.0.1.tgz", + "integrity": "sha1-UhTXU3pNBqSjAcDMJi/rhBiAAuc=", + "dev": true + }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", + "dev": true + }, + "for-own": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", + "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", + "dev": true + }, + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" + }, + "form-data": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.1.tgz", + "integrity": "sha1-b7lPvXGIUwbXPRXMSX/kzE7NRL8=" + }, + "fs-access": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/fs-access/-/fs-access-1.0.1.tgz", + "integrity": "sha1-1qh/JiJxzv6+wwxVNAf7mV2od3o=", + "dev": true + }, + "fs-extra": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-3.0.1.tgz", + "integrity": "sha1-N5TzeMWLNC6n27sjCVEJxLO2IpE=" + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + }, + "fsevents": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.1.2.tgz", + "integrity": "sha512-Sn44E5wQW4bTHXvQmvSHwqbuiXtduD6Rrjm2ZtUEGbyrig+nUH3t/QD4M4/ZXViY556TBpRgZkHLDx3JxPwxiw==", + "dev": true, + "optional": true, + "dependencies": { + "abbrev": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "optional": true + }, + "ajv": { + "version": "4.11.8", + "bundled": true, + "dev": true, + "optional": true + }, + "ansi-regex": { + "version": "2.1.1", + "bundled": true, + "dev": true + }, + "aproba": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "are-we-there-yet": { + "version": "1.1.4", + "bundled": true, + "dev": true, + "optional": true + }, + "asn1": { + "version": "0.2.3", + "bundled": true, + "dev": true, + "optional": true + }, + "assert-plus": { + "version": "0.2.0", + "bundled": true, + "dev": true, + "optional": true + }, + "asynckit": { + "version": "0.4.0", + "bundled": true, + "dev": true, + "optional": true + }, + "aws-sign2": { + "version": "0.6.0", + "bundled": true, + "dev": true, + "optional": true + }, + "aws4": { + "version": "1.6.0", + "bundled": true, + "dev": true, + "optional": true + }, + "balanced-match": { + "version": "0.4.2", + "bundled": true, + "dev": true + }, + "bcrypt-pbkdf": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "block-stream": { + "version": "0.0.9", + "bundled": true, + "dev": true + }, + "boom": { + "version": "2.10.1", + "bundled": true, + "dev": true + }, + "brace-expansion": { + "version": "1.1.7", + "bundled": true, + "dev": true + }, + "buffer-shims": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "caseless": { + "version": "0.12.0", + "bundled": true, + "dev": true, + "optional": true + }, + "co": { + "version": "4.6.0", + "bundled": true, + "dev": true, + "optional": true + }, + "code-point-at": { + "version": "1.1.0", + "bundled": true, + "dev": true + }, + "combined-stream": { + "version": "1.0.5", + "bundled": true, + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "bundled": true, + "dev": true + }, + "console-control-strings": { + "version": "1.1.0", + "bundled": true, + "dev": true + }, + "core-util-is": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "cryptiles": { + "version": "2.0.5", + "bundled": true, + "dev": true, + "optional": true + }, + "dashdash": { + "version": "1.14.1", + "bundled": true, + "dev": true, + "optional": true, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "debug": { + "version": "2.6.8", + "bundled": true, + "dev": true, + "optional": true + }, + "deep-extend": { + "version": "0.4.2", + "bundled": true, + "dev": true, + "optional": true + }, + "delayed-stream": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "delegates": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "ecc-jsbn": { + "version": "0.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "extend": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "extsprintf": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "forever-agent": { + "version": "0.6.1", + "bundled": true, + "dev": true, + "optional": true + }, + "form-data": { + "version": "2.1.4", + "bundled": true, + "dev": true, + "optional": true + }, + "fs.realpath": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "fstream": { + "version": "1.0.11", + "bundled": true, + "dev": true + }, + "fstream-ignore": { + "version": "1.0.5", + "bundled": true, + "dev": true, + "optional": true + }, + "gauge": { + "version": "2.7.4", + "bundled": true, + "dev": true, + "optional": true + }, + "getpass": { + "version": "0.1.7", + "bundled": true, + "dev": true, + "optional": true, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "glob": { + "version": "7.1.2", + "bundled": true, + "dev": true + }, + "graceful-fs": { + "version": "4.1.11", + "bundled": true, + "dev": true + }, + "har-schema": { + "version": "1.0.5", + "bundled": true, + "dev": true, + "optional": true + }, + "har-validator": { + "version": "4.2.1", + "bundled": true, + "dev": true, + "optional": true + }, + "has-unicode": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "hawk": { + "version": "3.1.3", + "bundled": true, + "dev": true, + "optional": true + }, + "hoek": { + "version": "2.16.3", + "bundled": true, + "dev": true + }, + "http-signature": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "inflight": { + "version": "1.0.6", + "bundled": true, + "dev": true + }, + "inherits": { + "version": "2.0.3", + "bundled": true, + "dev": true + }, + "ini": { + "version": "1.3.4", + "bundled": true, + "dev": true, + "optional": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "is-typedarray": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "isarray": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "isstream": { + "version": "0.1.2", + "bundled": true, + "dev": true, + "optional": true + }, + "jodid25519": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "jsbn": { + "version": "0.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "json-schema": { + "version": "0.2.3", + "bundled": true, + "dev": true, + "optional": true + }, + "json-stable-stringify": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "json-stringify-safe": { + "version": "5.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "jsonify": { + "version": "0.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "jsprim": { + "version": "1.4.0", + "bundled": true, + "dev": true, + "optional": true, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "mime-db": { + "version": "1.27.0", + "bundled": true, + "dev": true + }, + "mime-types": { + "version": "2.1.15", + "bundled": true, + "dev": true + }, + "minimatch": { + "version": "3.0.4", + "bundled": true, + "dev": true + }, + "minimist": { + "version": "0.0.8", + "bundled": true, + "dev": true + }, + "mkdirp": { + "version": "0.5.1", + "bundled": true, + "dev": true + }, + "ms": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "node-pre-gyp": { + "version": "0.6.36", + "bundled": true, + "dev": true, + "optional": true + }, + "nopt": { + "version": "4.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "npmlog": { + "version": "4.1.0", + "bundled": true, + "dev": true, + "optional": true + }, + "number-is-nan": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "oauth-sign": { + "version": "0.8.2", + "bundled": true, + "dev": true, + "optional": true + }, + "object-assign": { + "version": "4.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "once": { + "version": "1.4.0", + "bundled": true, + "dev": true + }, + "os-homedir": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "os-tmpdir": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "osenv": { + "version": "0.1.4", + "bundled": true, + "dev": true, + "optional": true + }, + "path-is-absolute": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "performance-now": { + "version": "0.2.0", + "bundled": true, + "dev": true, + "optional": true + }, + "process-nextick-args": { + "version": "1.0.7", + "bundled": true, + "dev": true + }, + "punycode": { + "version": "1.4.1", + "bundled": true, + "dev": true, + "optional": true + }, + "qs": { + "version": "6.4.0", + "bundled": true, + "dev": true, + "optional": true + }, + "rc": { + "version": "1.2.1", + "bundled": true, + "dev": true, + "optional": true, + "dependencies": { + "minimist": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "readable-stream": { + "version": "2.2.9", + "bundled": true, + "dev": true + }, + "request": { + "version": "2.81.0", + "bundled": true, + "dev": true, + "optional": true + }, + "rimraf": { + "version": "2.6.1", + "bundled": true, + "dev": true + }, + "safe-buffer": { + "version": "5.0.1", + "bundled": true, + "dev": true + }, + "semver": { + "version": "5.3.0", + "bundled": true, + "dev": true, + "optional": true + }, + "set-blocking": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "signal-exit": { + "version": "3.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "sntp": { + "version": "1.0.9", + "bundled": true, + "dev": true, + "optional": true + }, + "sshpk": { + "version": "1.13.0", + "bundled": true, + "dev": true, + "optional": true, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "string_decoder": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "string-width": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "stringstream": { + "version": "0.0.5", + "bundled": true, + "dev": true, + "optional": true + }, + "strip-ansi": { + "version": "3.0.1", + "bundled": true, + "dev": true + }, + "strip-json-comments": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "tar": { + "version": "2.2.1", + "bundled": true, + "dev": true + }, + "tar-pack": { + "version": "3.4.0", + "bundled": true, + "dev": true, + "optional": true + }, + "tough-cookie": { + "version": "2.3.2", + "bundled": true, + "dev": true, + "optional": true + }, + "tunnel-agent": { + "version": "0.6.0", + "bundled": true, + "dev": true, + "optional": true + }, + "tweetnacl": { + "version": "0.14.5", + "bundled": true, + "dev": true, + "optional": true + }, + "uid-number": { + "version": "0.0.6", + "bundled": true, + "dev": true, + "optional": true + }, + "util-deprecate": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "uuid": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "verror": { + "version": "1.3.6", + "bundled": true, + "dev": true, + "optional": true + }, + "wide-align": { + "version": "1.1.2", + "bundled": true, + "dev": true, + "optional": true + }, + "wrappy": { + "version": "1.0.2", + "bundled": true, + "dev": true + } + } + }, + "gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "dev": true + }, + "get-caller-file": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.2.tgz", + "integrity": "sha1-9wLmMSfn4jHBYKgMFVSstw1QR+U=" + }, + "get-pkg-repo": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/get-pkg-repo/-/get-pkg-repo-1.4.0.tgz", + "integrity": "sha1-xztInAbYDMVTbCyFP54FIyBWly0=", + "dev": true + }, + "get-port": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/get-port/-/get-port-2.1.0.tgz", + "integrity": "sha1-h4P53OvR7qSVozThpqJR54iHqxo=", + "dev": true + }, + "get-stdin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", + "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", + "dev": true + }, + "get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "dev": true + }, + "getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=" + }, + "git-raw-commits": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-1.2.0.tgz", + "integrity": "sha1-DzqL/ZmuDy2LkiTViJKXXppS0Dw=", + "dev": true + }, + "git-remote-origin-url": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/git-remote-origin-url/-/git-remote-origin-url-2.0.0.tgz", + "integrity": "sha1-UoJlna4hBxRaERJhEq0yFuxfpl8=", + "dev": true + }, + "git-semver-tags": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/git-semver-tags/-/git-semver-tags-1.2.1.tgz", + "integrity": "sha512-fFyxtzTHCTQKwB4clA2AInVrlflBbVbbJD4NWwmxKXHUgsU/K9kmHNlkPLqFiuy9xu9q3lNopghR4VXeQwZbTQ==", + "dev": true + }, + "gitconfiglocal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/gitconfiglocal/-/gitconfiglocal-1.0.0.tgz", + "integrity": "sha1-QdBF84UaXqiPA/JMocYXgRRGS5s=", + "dev": true + }, + "glob": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", + "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", + "dependencies": { + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==" + } + } + }, + "glob-base": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", + "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", + "dev": true + }, + "glob-parent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", + "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", + "dev": true + }, + "globals": { + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", + "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", + "dev": true + }, + "globby": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", + "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=" + }, + "got": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/got/-/got-5.7.1.tgz", + "integrity": "sha1-X4FjWmHkplifGAVp6k44FoClHzU=", + "dev": true + }, + "graceful-fs": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", + "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=" + }, + "graceful-readlink": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", + "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=" + }, + "handlebars": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.0.10.tgz", + "integrity": "sha1-PTDHGLCaPZbyPqTMH0A8TTup/08=", + "dev": true, + "dependencies": { + "source-map": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", + "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", + "dev": true + } + } + }, + "har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" + }, + "har-validator": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz", + "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=" + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true + }, + "has-color": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz", + "integrity": "sha1-ZxRKUmDDT8PMpnfQQdr1L+e3iy8=", + "dev": true + }, + "has-flag": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", + "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", + "dev": true + }, + "has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", + "dev": true + }, + "has-yarn": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-1.0.0.tgz", + "integrity": "sha1-ieJdtgS3Jcj1l2//Ct3JIbgopac=", + "dev": true + }, + "hawk": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/hawk/-/hawk-6.0.2.tgz", + "integrity": "sha512-miowhl2+U7Qle4vdLqDdPt9m09K6yZhkLDTWGoUiUzrQCn+mHHSmfJgAyGaLRZbPmTqfFFjRV1QWCW0VWUJBbQ==" + }, + "hoek": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/hoek/-/hoek-4.2.0.tgz", + "integrity": "sha512-v0XCLxICi9nPfYrS9RL8HbYnXi9obYAeLbSP00BmnZwCK9+Ih9WOjoZ8YoHCoav2csqn4FOz4Orldsy2dmDwmQ==" + }, + "home-or-tmp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", + "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", + "dev": true + }, + "hosted-git-info": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.5.0.tgz", + "integrity": "sha512-pNgbURSuab90KbTqvRPsseaTxOJCZBD0a7t+haSN33piP9cCM4l0CqdzAif2hUqm716UovKB2ROmiabGAKVXyg==" + }, + "http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=" + }, + "iconv-lite": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", + "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==", + "dev": true + }, + "ignore-by-default": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", + "integrity": "sha1-SMptcvbGo68Aqa1K5odr44ieKwk=", + "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", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true + }, + "indent-string": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", + "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=" + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "ini": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.4.tgz", + "integrity": "sha1-BTfLedr1m1mhpRff9wbIbsA5Fi4=", + "dev": true + }, + "inquirer": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.3.0.tgz", + "integrity": "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==", + "dev": true, + "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.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", + "integrity": "sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==", + "dev": true + }, + "chalk": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.1.0.tgz", + "integrity": "sha512-LUHGS/dge4ujbXMJrnihYMcL4AoOweGnw9Tp3kQuqy1Kx5c1qKjqvMJZ6nVJPMWJtKCTN72ZogH3oeSO9g9rXQ==", + "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.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "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 + }, + "supports-color": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.4.0.tgz", + "integrity": "sha512-rKC3+DyXWgK0ZLKwmRsrkyHVZAjNkfzeehuFWdGGcqGDTZFH73+RH6S/RDAAxl9GusSjZSUWYLmT9N5pzXFOXQ==", + "dev": true + } + } + }, + "invariant": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", + "integrity": "sha1-nh9WrArNtr8wMwbzOL47IErmA2A=", + "dev": true + }, + "invert-kv": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", + "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=" + }, + "irregular-plurals": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-1.3.0.tgz", + "integrity": "sha512-njf5A+Mxb3kojuHd1DzISjjIl+XhyzovXEOyPPSzdQozq/Lf2tN27mOrAAsxEPZxpn6I4MGzs1oo9TxXxPFpaA==", + "dev": true + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" + }, + "is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "dev": true + }, + "is-buffer": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.5.tgz", + "integrity": "sha1-Hzsm72E7IUuIy8ojzGwB2Hlh7sw=", + "dev": true + }, + "is-builtin-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", + "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=" + }, + "is-ci": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-1.0.10.tgz", + "integrity": "sha1-9zkzayYyNlBhqdSCcM1WrjNpMY4=", + "dev": true + }, + "is-dotfile": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", + "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=", + "dev": true + }, + "is-equal-shallow": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", + "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", + "dev": true + }, + "is-error": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-error/-/is-error-2.2.1.tgz", + "integrity": "sha1-aEqW2EB2V3yY9M20DG0mpRI78Zw=", + "dev": true + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", + "dev": true + }, + "is-extglob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", + "dev": true + }, + "is-finite": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", + "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", + "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=" + }, + "is-generator-fn": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-1.0.0.tgz", + "integrity": "sha1-lp1J4bszKfa7fwkIm+JleLLd1Go=", + "dev": true + }, + "is-glob": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "dev": true + }, + "is-npm": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-1.0.0.tgz", + "integrity": "sha1-8vtjpl5JBbQGyGBydloaTceTufQ=", + "dev": true + }, + "is-number": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", + "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", + "dev": true + }, + "is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", + "dev": true + }, + "is-observable": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/is-observable/-/is-observable-0.2.0.tgz", + "integrity": "sha1-s2ExHYPG5dcmyr9eJQsCNxBvWuI=", + "dev": true + }, + "is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", + "dev": true + }, + "is-posix-bracket": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", + "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=", + "dev": true + }, + "is-primitive": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", + "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=", + "dev": true + }, + "is-promise": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", + "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", + "dev": true + }, + "is-redirect": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", + "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=", + "dev": true + }, + "is-retry-allowed": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz", + "integrity": "sha1-EaBgVotnM5REAz0BJaYaINVk+zQ=", + "dev": true + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true + }, + "is-subset": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-subset/-/is-subset-0.1.1.tgz", + "integrity": "sha1-ilkRfZMt4d4A8kX83TnOQ/HpOaY=", + "dev": true + }, + "is-text-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-text-path/-/is-text-path-1.0.1.tgz", + "integrity": "sha1-Thqg+1G/vLPpJogAE5cgLBd1tm4=", + "dev": true + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" + }, + "is-url": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/is-url/-/is-url-1.2.2.tgz", + "integrity": "sha1-SYkFpZO/R8wtnn9zg3K792lsfyY=", + "dev": true + }, + "is-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=" + }, + "is-windows": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.1.tgz", + "integrity": "sha1-MQ23D3QtJZoWo2kgK1GvhCMzENk=", + "dev": true + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "dev": true + }, + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" + }, + "jest-diff": { + "version": "18.1.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-18.1.0.tgz", + "integrity": "sha1-T/eedN2YjBORlbNl3GXYf2BvSAM=", + "dev": true + }, + "jest-file-exists": { + "version": "17.0.0", + "resolved": "https://registry.npmjs.org/jest-file-exists/-/jest-file-exists-17.0.0.tgz", + "integrity": "sha1-f2Prc6HEOhP0Yb4mF2i0WvLN0Wk=", + "dev": true + }, + "jest-matcher-utils": { + "version": "18.1.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-18.1.0.tgz", + "integrity": "sha1-GsRlGVXuKmDO8ef8yYzf13PA+TI=", + "dev": true + }, + "jest-mock": { + "version": "18.0.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-18.0.0.tgz", + "integrity": "sha1-XCSIRuoz+lWLUm9TEqtKZ2XkibM=", + "dev": true + }, + "jest-snapshot": { + "version": "18.1.0", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-18.1.0.tgz", + "integrity": "sha1-VbltLuY5ybznb4fyo/1Atxx6WRY=", + "dev": true + }, + "jest-util": { + "version": "18.1.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-18.1.0.tgz", + "integrity": "sha1-OpnDIRSrF/hL4JQ4JScAbm1L/Go=", + "dev": true + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", + "dev": true + }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "optional": true + }, + "jschardet": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/jschardet/-/jschardet-1.5.1.tgz", + "integrity": "sha512-vE2hT1D0HLZCLLclfBSfkfTTedhVj0fubHpJBHKwwUWX0nSbhPAfk+SG9rTX95BYNmau8rGFfCeaT6T5OW1C2A==", + "dev": true + }, + "jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", + "dev": true + }, + "json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" + }, + "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=" + }, + "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=" + }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" + }, + "json5": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", + "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", + "dev": true + }, + "jsonfile": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-3.0.1.tgz", + "integrity": "sha1-pezG9l9T9mLEQVx2daAzHQmS7GY=" + }, + "jsonify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", + "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=" + }, + "jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=", + "dev": true + }, + "JSONStream": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.1.tgz", + "integrity": "sha1-cH92HgHa6eFvG8+TcDt4xwlmV5o=", + "dev": true + }, + "jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=" + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true + }, + "last-line-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/last-line-stream/-/last-line-stream-1.0.0.tgz", + "integrity": "sha1-0bZNafhv8kry0EiDos7uFFIKVgA=", + "dev": true + }, + "latest-version": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-2.0.0.tgz", + "integrity": "sha1-VvjWE5YghHuAF/jx9NeOIRMkFos=", + "dev": true + }, + "lazy-cache": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", + "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=", + "dev": true, + "optional": 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", + "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=" + }, + "lerna": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/lerna/-/lerna-2.2.0.tgz", + "integrity": "sha512-TiAoM0uvi+uJ74RhNEjtJE8ghpEZaVw9BUzmJ4oyXhGRiAC59cS61KAL7xFexX6e+rmVEsclxV68xFcAOCfMWg==", + "dev": true, + "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.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", + "integrity": "sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==", + "dev": true + }, + "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.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.1.0.tgz", + "integrity": "sha512-LUHGS/dge4ujbXMJrnihYMcL4AoOweGnw9Tp3kQuqy1Kx5c1qKjqvMJZ6nVJPMWJtKCTN72ZogH3oeSO9g9rXQ==", + "dev": true + }, + "execa": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.8.0.tgz", + "integrity": "sha1-2NdrvBtVIX7RkP1t1J08d07PyNo=", + "dev": true + }, + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true + }, + "fs-extra": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.2.tgz", + "integrity": "sha1-+RcExT0bRh+JNFKwwwfZmXZHq2s=", + "dev": true + }, + "get-port": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/get-port/-/get-port-3.2.0.tgz", + "integrity": "sha1-3Xzn3hh8Bsi/NTeWrHHgmfCYDrw=", + "dev": true + }, + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "dev": true + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "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 + }, + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true + }, + "jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "dev": true + }, + "load-json-file": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-3.0.0.tgz", + "integrity": "sha1-frNzXZg6ftImKt5P92mvU2nFxEA=", + "dev": true + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true + }, + "os-locale": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz", + "integrity": "sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==", + "dev": true, + "dependencies": { + "execa": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", + "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", + "dev": true + } + } + }, + "parse-json": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-3.0.0.tgz", + "integrity": "sha1-+m9HsY4jgm6tMvJj50TQ4ehH+xM=", + "dev": true + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + }, + "path-type": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", + "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", + "dev": true + }, + "read-pkg": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", + "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", + "dev": true, + "dependencies": { + "load-json-file": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", + "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", + "dev": true + }, + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true + } + } + }, + "read-pkg-up": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", + "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "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 + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true + }, + "supports-color": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.4.0.tgz", + "integrity": "sha512-rKC3+DyXWgK0ZLKwmRsrkyHVZAjNkfzeehuFWdGGcqGDTZFH73+RH6S/RDAAxl9GusSjZSUWYLmT9N5pzXFOXQ==", + "dev": true + }, + "which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "dev": true + }, + "yargs": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-8.0.2.tgz", + "integrity": "sha1-YpmpBVsc78lp/355wdkY3Osiw2A=", + "dev": true + }, + "yargs-parser": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-7.0.0.tgz", + "integrity": "sha1-jQrELxbqVd69MyyvTEA4s+P139k=", + "dev": true + } + } + }, + "load-json-file": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=" + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "dependencies": { + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + } + } + }, + "lodash": { + "version": "4.17.4", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", + "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4=", + "dev": true + }, + "lodash._reinterpolate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz", + "integrity": "sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0=", + "dev": true + }, + "lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", + "dev": true + }, + "lodash.difference": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz", + "integrity": "sha1-nMtOUF1Ia5FlE0V3KIWi3yf9AXw=", + "dev": true + }, + "lodash.flatten": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", + "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=", + "dev": true + }, + "lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=", + "dev": true + }, + "lodash.template": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.4.0.tgz", + "integrity": "sha1-5zoDhcg1VZF0bgILmWecaQ5o+6A=", + "dev": true + }, + "lodash.templatesettings": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-4.1.0.tgz", + "integrity": "sha1-K01OlbpEDZFf8IvImeRVNmZxMxY=", + "dev": true + }, + "longest": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", + "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=", + "dev": true + }, + "loose-envify": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", + "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", + "dev": true + }, + "loud-rejection": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", + "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", + "dev": true + }, + "lowercase-keys": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.0.tgz", + "integrity": "sha1-TjNms55/VFfjXxMkvfb4jQv8cwY=", + "dev": true + }, + "lru-cache": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.1.tgz", + "integrity": "sha512-q4spe4KTfsAS1SUHLO0wz8Qiyf1+vMIAgpRYioFYDMNqKfHQbg+AVDH3i4fvpl71/P1L0dBl+fQi+P37UYf0ew==", + "dev": true + }, + "make-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.0.0.tgz", + "integrity": "sha1-l6ARdR6R3YfPre9Ygy67BJNt6Xg=", + "dev": true + }, + "map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", + "dev": true + }, + "matcher": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/matcher/-/matcher-0.1.2.tgz", + "integrity": "sha1-7yDL3mTCTFDMYa9bg+4LG4/wAQE=", + "dev": true + }, + "max-timeout": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/max-timeout/-/max-timeout-1.0.0.tgz", + "integrity": "sha1-to9povmeC0dv1Msj4gWcp1BxXh8=", + "dev": true + }, + "md5-hex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-2.0.0.tgz", + "integrity": "sha1-0FiOnxx0lUSS7NJKwKxs6ZfZLjM=", + "dev": true + }, + "md5-o-matic": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/md5-o-matic/-/md5-o-matic-0.1.1.tgz", + "integrity": "sha1-givM1l4RfFFPqxdrJZRdVBAKA8M=", + "dev": true + }, + "mem": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/mem/-/mem-1.1.0.tgz", + "integrity": "sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y=", + "dev": true + }, + "meow": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", + "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", + "dev": true, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + } + } + }, + "micromatch": { + "version": "2.3.11", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", + "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", + "dev": true + }, + "mime-db": { + "version": "1.30.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.30.0.tgz", + "integrity": "sha1-dMZD2i3Z1qRTmZY0ZbJtXKfXHwE=" + }, + "mime-types": { + "version": "2.1.17", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.17.tgz", + "integrity": "sha1-Cdejk/A+mVp5+K+Fe3Cp4KsWVXo=" + }, + "mimic-fn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.1.0.tgz", + "integrity": "sha1-5md4PZLonb00KBi1IwudYqZyrRg=", + "dev": true + }, + "minimatch": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.2.tgz", + "integrity": "sha1-DzmKcwDqRB6cNIyD2Yq4ydv5xAo=" + }, + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true + }, + "modify-values": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/modify-values/-/modify-values-1.0.0.tgz", + "integrity": "sha1-4rbN65zhn5kxelNyLz2/XfXqqrI=", + "dev": true + }, + "moment": { + "version": "2.18.1", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.18.1.tgz", + "integrity": "sha1-w2GT3Tzhwu7SrbfIAtu8d6gbHA8=", + "dev": true + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "multimatch": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-2.1.0.tgz", + "integrity": "sha1-nHkGoi+0wCkZ4vX3UWG0zb1LKis=", + "dev": true + }, + "mute-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", + "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", + "dev": true + }, + "nan": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.7.0.tgz", + "integrity": "sha1-2Vv3IeyHfgjbJ27T/G63j5CDrUY=", + "dev": true, + "optional": true + }, + "natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "dev": true + }, + "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", + "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==" + }, + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true + }, + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dev": true + }, + "npmlog": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "dev": true + }, + "null-check": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/null-check/-/null-check-1.0.0.tgz", + "integrity": "sha1-l33/1xdgErnsMNKjnbXPcqBDnt0=", + "dev": true + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" + }, + "nyc": { + "version": "10.3.2", + "resolved": "https://registry.npmjs.org/nyc/-/nyc-10.3.2.tgz", + "integrity": "sha1-8n9NkfKp2zbCT1dP9cbv/wIz3kY=", + "dev": true, + "dependencies": { + "align-text": { + "version": "0.1.4", + "bundled": true, + "dev": true + }, + "amdefine": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "ansi-regex": { + "version": "2.1.1", + "bundled": true, + "dev": true + }, + "ansi-styles": { + "version": "2.2.1", + "bundled": true, + "dev": true + }, + "append-transform": { + "version": "0.4.0", + "bundled": true, + "dev": true + }, + "archy": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "arr-diff": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "arr-flatten": { + "version": "1.0.3", + "bundled": true, + "dev": true + }, + "array-unique": { + "version": "0.2.1", + "bundled": true, + "dev": true + }, + "arrify": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "async": { + "version": "1.5.2", + "bundled": true, + "dev": true + }, + "babel-code-frame": { + "version": "6.22.0", + "bundled": true, + "dev": true + }, + "babel-generator": { + "version": "6.24.1", + "bundled": true, + "dev": true + }, + "babel-messages": { + "version": "6.23.0", + "bundled": true, + "dev": true + }, + "babel-runtime": { + "version": "6.23.0", + "bundled": true, + "dev": true + }, + "babel-template": { + "version": "6.24.1", + "bundled": true, + "dev": true + }, + "babel-traverse": { + "version": "6.24.1", + "bundled": true, + "dev": true + }, + "babel-types": { + "version": "6.24.1", + "bundled": true, + "dev": true + }, + "babylon": { + "version": "6.17.0", + "bundled": true, + "dev": true + }, + "balanced-match": { + "version": "0.4.2", + "bundled": true, + "dev": true + }, + "brace-expansion": { + "version": "1.1.7", + "bundled": true, + "dev": true + }, + "braces": { + "version": "1.8.5", + "bundled": true, + "dev": true + }, + "builtin-modules": { + "version": "1.1.1", + "bundled": true, + "dev": true + }, + "caching-transform": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "camelcase": { + "version": "1.2.1", + "bundled": true, + "dev": true, + "optional": true + }, + "center-align": { + "version": "0.1.3", + "bundled": true, + "dev": true, + "optional": true + }, + "chalk": { + "version": "1.1.3", + "bundled": true, + "dev": true + }, + "cliui": { + "version": "2.1.0", + "bundled": true, + "dev": true, + "optional": true, + "dependencies": { + "wordwrap": { + "version": "0.0.2", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "code-point-at": { + "version": "1.1.0", + "bundled": true, + "dev": true + }, + "commondir": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "bundled": true, + "dev": true + }, + "convert-source-map": { + "version": "1.5.0", + "bundled": true, + "dev": true + }, + "core-js": { + "version": "2.4.1", + "bundled": true, + "dev": true + }, + "cross-spawn": { + "version": "4.0.2", + "bundled": true, + "dev": true + }, + "debug": { + "version": "2.6.6", + "bundled": true, + "dev": true + }, + "debug-log": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "decamelize": { + "version": "1.2.0", + "bundled": true, + "dev": true + }, + "default-require-extensions": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "detect-indent": { + "version": "4.0.0", + "bundled": true, + "dev": true + }, + "error-ex": { + "version": "1.3.1", + "bundled": true, + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "bundled": true, + "dev": true + }, + "esutils": { + "version": "2.0.2", + "bundled": true, + "dev": true + }, + "expand-brackets": { + "version": "0.1.5", + "bundled": true, + "dev": true + }, + "expand-range": { + "version": "1.8.2", + "bundled": true, + "dev": true + }, + "extglob": { + "version": "0.3.2", + "bundled": true, + "dev": true + }, + "filename-regex": { + "version": "2.0.1", + "bundled": true, + "dev": true + }, + "fill-range": { + "version": "2.2.3", + "bundled": true, + "dev": true + }, + "find-cache-dir": { + "version": "0.1.1", + "bundled": true, + "dev": true + }, + "find-up": { + "version": "1.1.2", + "bundled": true, + "dev": true + }, + "for-in": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "for-own": { + "version": "0.1.5", + "bundled": true, + "dev": true + }, + "foreground-child": { + "version": "1.5.6", + "bundled": true, + "dev": true + }, + "fs.realpath": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "get-caller-file": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "glob": { + "version": "7.1.1", + "bundled": true, + "dev": true + }, + "glob-base": { + "version": "0.3.0", + "bundled": true, + "dev": true + }, + "glob-parent": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "globals": { + "version": "9.17.0", + "bundled": true, + "dev": true + }, + "graceful-fs": { + "version": "4.1.11", + "bundled": true, + "dev": true + }, + "handlebars": { + "version": "4.0.8", + "bundled": true, + "dev": true, + "dependencies": { + "source-map": { + "version": "0.4.4", + "bundled": true, + "dev": true + } + } + }, + "has-ansi": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "has-flag": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "hosted-git-info": { + "version": "2.4.2", + "bundled": true, + "dev": true + }, + "imurmurhash": { + "version": "0.1.4", + "bundled": true, + "dev": true + }, + "inflight": { + "version": "1.0.6", + "bundled": true, + "dev": true + }, + "inherits": { + "version": "2.0.3", + "bundled": true, + "dev": true + }, + "invariant": { + "version": "2.2.2", + "bundled": true, + "dev": true + }, + "invert-kv": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "is-arrayish": { + "version": "0.2.1", + "bundled": true, + "dev": true + }, + "is-buffer": { + "version": "1.1.5", + "bundled": true, + "dev": true + }, + "is-builtin-module": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "is-dotfile": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "is-equal-shallow": { + "version": "0.1.3", + "bundled": true, + "dev": true + }, + "is-extendable": { + "version": "0.1.1", + "bundled": true, + "dev": true + }, + "is-extglob": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "is-finite": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "is-glob": { + "version": "2.0.1", + "bundled": true, + "dev": true + }, + "is-number": { + "version": "2.1.0", + "bundled": true, + "dev": true + }, + "is-posix-bracket": { + "version": "0.1.1", + "bundled": true, + "dev": true + }, + "is-primitive": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "is-utf8": { + "version": "0.2.1", + "bundled": true, + "dev": true + }, + "isarray": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "isexe": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "isobject": { + "version": "2.1.0", + "bundled": true, + "dev": true + }, + "istanbul-lib-coverage": { + "version": "1.1.0", + "bundled": true, + "dev": true + }, + "istanbul-lib-hook": { + "version": "1.0.6", + "bundled": true, + "dev": true + }, + "istanbul-lib-instrument": { + "version": "1.7.1", + "bundled": true, + "dev": true + }, + "istanbul-lib-report": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "dependencies": { + "supports-color": { + "version": "3.2.3", + "bundled": true, + "dev": true + } + } + }, + "istanbul-lib-source-maps": { + "version": "1.2.0", + "bundled": true, + "dev": true + }, + "istanbul-reports": { + "version": "1.1.0", + "bundled": true, + "dev": true + }, + "js-tokens": { + "version": "3.0.1", + "bundled": true, + "dev": true + }, + "jsesc": { + "version": "1.3.0", + "bundled": true, + "dev": true + }, + "kind-of": { + "version": "3.2.0", + "bundled": true, + "dev": true + }, + "lazy-cache": { + "version": "1.0.4", + "bundled": true, + "dev": true, + "optional": true + }, + "lcid": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "load-json-file": { + "version": "1.1.0", + "bundled": true, + "dev": true + }, + "lodash": { + "version": "4.17.4", + "bundled": true, + "dev": true + }, + "longest": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "loose-envify": { + "version": "1.3.1", + "bundled": true, + "dev": true + }, + "lru-cache": { + "version": "4.0.2", + "bundled": true, + "dev": true + }, + "md5-hex": { + "version": "1.3.0", + "bundled": true, + "dev": true + }, + "md5-o-matic": { + "version": "0.1.1", + "bundled": true, + "dev": true + }, + "merge-source-map": { + "version": "1.0.3", + "bundled": true, + "dev": true + }, + "micromatch": { + "version": "2.3.11", + "bundled": true, + "dev": true + }, + "minimatch": { + "version": "3.0.3", + "bundled": true, + "dev": true + }, + "minimist": { + "version": "0.0.8", + "bundled": true, + "dev": true + }, + "mkdirp": { + "version": "0.5.1", + "bundled": true, + "dev": true + }, + "ms": { + "version": "0.7.3", + "bundled": true, + "dev": true + }, + "normalize-package-data": { + "version": "2.3.8", + "bundled": true, + "dev": true + }, + "normalize-path": { + "version": "2.1.1", + "bundled": true, + "dev": true + }, + "number-is-nan": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "object-assign": { + "version": "4.1.1", + "bundled": true, + "dev": true + }, + "object.omit": { + "version": "2.0.1", + "bundled": true, + "dev": true + }, + "once": { + "version": "1.4.0", + "bundled": true, + "dev": true + }, + "optimist": { + "version": "0.6.1", + "bundled": true, + "dev": true + }, + "os-homedir": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "os-locale": { + "version": "1.4.0", + "bundled": true, + "dev": true + }, + "parse-glob": { + "version": "3.0.4", + "bundled": true, + "dev": true + }, + "parse-json": { + "version": "2.2.0", + "bundled": true, + "dev": true + }, + "path-exists": { + "version": "2.1.0", + "bundled": true, + "dev": true + }, + "path-is-absolute": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "path-parse": { + "version": "1.0.5", + "bundled": true, + "dev": true + }, + "path-type": { + "version": "1.1.0", + "bundled": true, + "dev": true + }, + "pify": { + "version": "2.3.0", + "bundled": true, + "dev": true + }, + "pinkie": { + "version": "2.0.4", + "bundled": true, + "dev": true + }, + "pinkie-promise": { + "version": "2.0.1", + "bundled": true, + "dev": true + }, + "pkg-dir": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "preserve": { + "version": "0.2.0", + "bundled": true, + "dev": true + }, + "pseudomap": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "randomatic": { + "version": "1.1.6", + "bundled": true, + "dev": true + }, + "read-pkg": { + "version": "1.1.0", + "bundled": true, + "dev": true + }, + "read-pkg-up": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "regenerator-runtime": { + "version": "0.10.5", + "bundled": true, + "dev": true + }, + "regex-cache": { + "version": "0.4.3", + "bundled": true, + "dev": true + }, + "remove-trailing-separator": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "repeat-element": { + "version": "1.1.2", + "bundled": true, + "dev": true + }, + "repeat-string": { + "version": "1.6.1", + "bundled": true, + "dev": true + }, + "repeating": { + "version": "2.0.1", + "bundled": true, + "dev": true + }, + "require-directory": { + "version": "2.1.1", + "bundled": true, + "dev": true + }, + "require-main-filename": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "resolve-from": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "right-align": { + "version": "0.1.3", + "bundled": true, + "dev": true, + "optional": true + }, + "rimraf": { + "version": "2.6.1", + "bundled": true, + "dev": true + }, + "semver": { + "version": "5.3.0", + "bundled": true, + "dev": true + }, + "set-blocking": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "signal-exit": { + "version": "3.0.2", + "bundled": true, + "dev": true + }, + "slide": { + "version": "1.1.6", + "bundled": true, + "dev": true + }, + "source-map": { + "version": "0.5.6", + "bundled": true, + "dev": true + }, + "spawn-wrap": { + "version": "1.2.4", + "bundled": true, + "dev": true, + "dependencies": { + "signal-exit": { + "version": "2.1.2", + "bundled": true, + "dev": true + } + } + }, + "spdx-correct": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "spdx-expression-parse": { + "version": "1.0.4", + "bundled": true, + "dev": true + }, + "spdx-license-ids": { + "version": "1.2.2", + "bundled": true, + "dev": true + }, + "string-width": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "strip-ansi": { + "version": "3.0.1", + "bundled": true, + "dev": true + }, + "strip-bom": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "supports-color": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "test-exclude": { + "version": "4.1.0", + "bundled": true, + "dev": true + }, + "to-fast-properties": { + "version": "1.0.3", + "bundled": true, + "dev": true + }, + "trim-right": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "uglify-js": { + "version": "2.8.22", + "bundled": true, + "dev": true, + "optional": true, + "dependencies": { + "yargs": { + "version": "3.10.0", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "uglify-to-browserify": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "validate-npm-package-license": { + "version": "3.0.1", + "bundled": true, + "dev": true + }, + "which": { + "version": "1.2.14", + "bundled": true, + "dev": true + }, + "which-module": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "window-size": { + "version": "0.1.0", + "bundled": true, + "dev": true, + "optional": true + }, + "wordwrap": { + "version": "0.0.3", + "bundled": true, + "dev": true + }, + "wrap-ansi": { + "version": "2.1.0", + "bundled": true, + "dev": true + }, + "wrappy": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "write-file-atomic": { + "version": "1.3.4", + "bundled": true, + "dev": true + }, + "y18n": { + "version": "3.2.1", + "bundled": true, + "dev": true + }, + "yallist": { + "version": "2.1.2", + "bundled": true, + "dev": true + }, + "yargs": { + "version": "7.1.0", + "bundled": true, + "dev": true, + "dependencies": { + "camelcase": { + "version": "3.0.0", + "bundled": true, + "dev": true + }, + "cliui": { + "version": "3.2.0", + "bundled": true, + "dev": true + } + } + }, + "yargs-parser": { + "version": "5.0.0", + "bundled": true, + "dev": true, + "dependencies": { + "camelcase": { + "version": "3.0.0", + "bundled": true, + "dev": true + } + } + } + } + }, + "oauth-sign": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", + "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=" + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "object.omit": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", + "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", + "dev": true + }, + "observable-to-promise": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/observable-to-promise/-/observable-to-promise-0.4.0.tgz", + "integrity": "sha1-KK/nFkUwjy1B1x9HrT/s4aN35Ss=", + "dev": true + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=" + }, + "onetime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", + "dev": true + }, + "optimist": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", + "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", + "dev": true + }, + "option-chain": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/option-chain/-/option-chain-0.1.1.tgz", + "integrity": "sha1-6bgR4AbxwPVIAvKClb/Ilw+Nz70=", + "dev": true + }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "dev": true + }, + "os-locale": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", + "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=" + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" + }, + "osenv": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.4.tgz", + "integrity": "sha1-Qv5tWVPfBsgGS+bxdsPQWqqjRkQ=", + "dev": true + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "dev": true + }, + "p-limit": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.1.0.tgz", + "integrity": "sha1-sH/y2aXYi+yAYDWJWiurZqJ5iLw=", + "dev": true + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true + }, + "package-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-1.2.0.tgz", + "integrity": "sha1-AD5WzVe3NqbtYRTMK4FUJnJ3DkQ=", + "dev": true, + "dependencies": { + "md5-hex": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-1.3.0.tgz", + "integrity": "sha1-0sSv6YPENwZiF5uMrRRSGRNQRsQ=", + "dev": true + } + } + }, + "package-json": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-2.4.0.tgz", + "integrity": "sha1-DRW9Z9HLvduyyiIv8u24a8sxqLs=", + "dev": true + }, + "parse-github-repo-url": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/parse-github-repo-url/-/parse-github-repo-url-1.4.1.tgz", + "integrity": "sha1-nn2LslKmy2ukJZUGC3v23z28H1A=", + "dev": true + }, + "parse-glob": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", + "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", + "dev": true + }, + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=" + }, + "parse-ms": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-1.0.1.tgz", + "integrity": "sha1-VjRtR0nXjyNDDKDHE4UK75GqNh0=", + "dev": true + }, + "path-dirname": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", + "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", + "dev": true + }, + "path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=" + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "dev": true + }, + "path-parse": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.5.tgz", + "integrity": "sha1-PBrfhx6pzWyUMbbqK9dKD/BVxME=", + "dev": true + }, + "path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=" + }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=" + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=" + }, + "pkg-conf": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-2.0.0.tgz", + "integrity": "sha1-BxyHZQQDvM+5xif1h1G/5HwGcnk=", + "dev": true, + "dependencies": { + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true + }, + "load-json-file": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", + "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", + "dev": true + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true + } + } + }, + "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 + }, + "plist": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/plist/-/plist-2.1.0.tgz", + "integrity": "sha1-V8zbeggh3yGDEhejytVOPhRqECU=" + }, + "plur": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/plur/-/plur-2.1.2.tgz", + "integrity": "sha1-dIJFLBoPUI4+NE6uwxLJHCncZVo=", + "dev": true + }, + "prepend-http": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", + "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", + "dev": true + }, + "preserve": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", + "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=", + "dev": true + }, + "pretty-format": { + "version": "18.1.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-18.1.0.tgz", + "integrity": "sha1-+2Wob3p/kZSWPu6RhlwbzxA54oQ=", + "dev": true + }, + "pretty-ms": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-2.1.0.tgz", + "integrity": "sha1-QlfCVt8/sLRR1q/6qwIYhBJpgdw=", + "dev": true, + "dependencies": { + "plur": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/plur/-/plur-1.0.0.tgz", + "integrity": "sha1-24XGgU9eXlo7Se/CjWBP7GKXUVY=", + "dev": true + } + } + }, + "private": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/private/-/private-0.1.7.tgz", + "integrity": "sha1-aM5eih7woju1cMwoU3tTMqumPvE=", + "dev": true + }, + "process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=", + "dev": true + }, + "progress": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/progress/-/progress-1.1.8.tgz", + "integrity": "sha1-4mDHj2Fhzdmw5WzD4Khd4Xx6V74=" + }, + "pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "dev": true + }, + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" + }, + "q": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/q/-/q-1.5.0.tgz", + "integrity": "sha1-3QG6ydBtMObyGa7LglPunr3DCPE=", + "dev": true + }, + "qs": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", + "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==" + }, + "randomatic": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-1.1.7.tgz", + "integrity": "sha512-D5JUjPyJbaJDkuAazpVnSfVkLlpeO3wDlPROTMLGKG1zMFNFRgrciKo1ltz/AzNTkqE0HzDx655QOL51N06how==", + "dev": true, + "dependencies": { + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true + } + } + }, + "kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "dev": true + } + } + }, + "rc": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.1.tgz", + "integrity": "sha1-LgPo5C7kULjLPc5lvhv4l04d/ZU=", + "dev": true, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + } + } + }, + "rcedit": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/rcedit/-/rcedit-0.8.0.tgz", + "integrity": "sha1-3DEwrrAo9KZYrC48jm0EciLayUg=" + }, + "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 + }, + "read-cmd-shim": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-cmd-shim/-/read-cmd-shim-1.0.1.tgz", + "integrity": "sha1-LV0Vd4ajfAVdIgd8MsU/gynpHHs=", + "dev": true + }, + "read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=" + }, + "read-pkg-up": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=" + }, + "readable-stream": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", + "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", + "dev": true + }, + "readdirp": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz", + "integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=", + "dev": true + }, + "redent": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", + "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", + "dev": true, + "dependencies": { + "indent-string": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", + "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", + "dev": true + } + } + }, + "regenerate": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.3.3.tgz", + "integrity": "sha512-jVpo1GadrDAK59t/0jRx5VxYWQEDkkEKi6+HjE3joFVLfDOh9Xrdh0dF1eSq+BI/SwvTQ44gSscJ8N5zYL61sg==", + "dev": true + }, + "regenerator-runtime": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.0.tgz", + "integrity": "sha512-/aA0kLeRb5N9K0d4fw7ooEbI+xDe+DKD499EQqygGqeS8N3xto15p09uY2xj7ixP81sNPXvRLnAQIqdVStgb1A==", + "dev": true + }, + "regex-cache": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", + "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", + "dev": true + }, + "regexpu-core": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz", + "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=", + "dev": true + }, + "registry-auth-token": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.3.1.tgz", + "integrity": "sha1-+w0yie4Nmtosu1KvXf5mywcNMAY=", + "dev": true + }, + "registry-url": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz", + "integrity": "sha1-PU74cPc93h138M+aOBQyRE4XSUI=", + "dev": true + }, + "regjsgen": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", + "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", + "dev": true + }, + "regjsparser": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", + "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", + "dev": true + }, + "remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", + "dev": true + }, + "repeat-element": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz", + "integrity": "sha1-7wiaF40Ug7quTZPrmLT55OEdmQo=", + "dev": true + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", + "dev": true + }, + "repeating": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", + "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", + "dev": true + }, + "request": { + "version": "2.82.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.82.0.tgz", + "integrity": "sha512-/QWqfmyTfQ4OYs6EhB1h2wQsX9ZxbuNePCvCm0Mdz/mxw73mjdg0D4QdIl0TQBFs35CZmMXLjk0iCGK395CUDg==" + }, + "request-progress": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/request-progress/-/request-progress-3.0.0.tgz", + "integrity": "sha1-TKdUCBx/7GP1BeT6qCWqBs1mnb4=" + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" + }, + "require-main-filename": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", + "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=" + }, + "require-precompiled": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/require-precompiled/-/require-precompiled-0.1.0.tgz", + "integrity": "sha1-WhtS63Dr7UPrmC6XTIWrWVceVvo=", + "dev": true + }, + "resolve": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.4.0.tgz", + "integrity": "sha512-aW7sVKPufyHqOmyyLzg/J+8606v5nevBgaliIlV7nUpVMsDnoBGV/cbSLNjZAg9q0Cfd/+easKVKQ8vOu8fn1Q==", + "dev": true + }, + "resolve-cwd": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-1.0.0.tgz", + "integrity": "sha1-Tq7qQe0EDRcCRX32SkKysH0kb58=", + "dev": true + }, + "resolve-from": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-2.0.0.tgz", + "integrity": "sha1-lICrIOlP+h2egKgEx+oUdhGWa1c=", + "dev": true + }, + "restore-cursor": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", + "dev": true + }, + "right-align": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", + "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", + "dev": true, + "optional": true + }, + "rimraf": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", + "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", + "dev": true + }, + "run-async": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", + "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", + "dev": true + }, + "rx-lite": { + "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 + }, + "safe-buffer": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", + "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" + }, + "semver": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", + "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==" + }, + "semver-diff": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-2.1.0.tgz", + "integrity": "sha1-S7uEN8jTfksM8aaP1ybsbWRdbTY=", + "dev": true + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" + }, + "set-immediate-shim": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", + "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=", + "dev": true + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true + }, + "signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", + "dev": true + }, + "slash": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", + "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", + "dev": true + }, + "slice-ansi": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz", + "integrity": "sha1-7b+JA/ZvfOL46v1s7tZeJkyDGzU=", + "dev": true + }, + "slide": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", + "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", + "dev": true + }, + "sntp": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/sntp/-/sntp-2.0.2.tgz", + "integrity": "sha1-UGQRDwr4X3z9t9a2ekACjOUrSys=" + }, + "sort-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz", + "integrity": "sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg=", + "dev": true + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" + }, + "source-map-support": { + "version": "0.4.18", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", + "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==" + }, + "spdx-correct": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-1.0.2.tgz", + "integrity": "sha1-SzBz2TP/UfORLwOsVRlJikFQ20A=" + }, + "spdx-expression-parse": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz", + "integrity": "sha1-m98vIOH0DtRH++JzJmGR/O1RYmw=" + }, + "spdx-license-ids": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz", + "integrity": "sha1-yd96NCRZSt5r0RkA1ZZpbcBrrFc=" + }, + "split": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz", + "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==", + "dev": true + }, + "split2": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/split2/-/split2-2.1.1.tgz", + "integrity": "sha1-eh9VHhdqkOzTNF9yRqDP4XXvT9A=", + "dev": true + }, + "sshpk": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.13.1.tgz", + "integrity": "sha1-US322mKHFEMW3EwY/hzx2UBzm+M=" + }, + "stack-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-1.0.1.tgz", + "integrity": "sha1-1PM6tU6OOHeLDKXP07OvsS22hiA=", + "dev": true + }, + "standard-version": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/standard-version/-/standard-version-4.2.0.tgz", + "integrity": "sha1-MBfoxc7SqS23UBeQJVw7qFFXN10=", + "dev": true, + "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", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "figures": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", + "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", + "dev": true + }, + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "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 + }, + "load-json-file": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", + "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", + "dev": true + }, + "os-locale": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz", + "integrity": "sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==", + "dev": true + }, + "path-type": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", + "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", + "dev": true + }, + "read-pkg": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", + "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", + "dev": true + }, + "read-pkg-up": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", + "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "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 + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true + }, + "which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "dev": true + }, + "yargs": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-8.0.2.tgz", + "integrity": "sha1-YpmpBVsc78lp/355wdkY3Osiw2A=", + "dev": true + }, + "yargs-parser": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-7.0.0.tgz", + "integrity": "sha1-jQrELxbqVd69MyyvTEA4s+P139k=", + "dev": true + } + } + }, + "string_decoder": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", + "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", + "dev": true + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=" + }, + "stringstream": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.5.tgz", + "integrity": "sha1-TkhM1N5aC7vuGORjB3EKioFiGHg=" + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=" + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=" + }, + "strip-bom-buf": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-bom-buf/-/strip-bom-buf-1.0.0.tgz", + "integrity": "sha1-HLRar1dTD0yvhsf3UXnSyaUd1XI=", + "dev": true + }, + "strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "dev": true + }, + "strip-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", + "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", + "dev": true + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "dev": true + }, + "strong-log-transformer": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/strong-log-transformer/-/strong-log-transformer-1.0.6.tgz", + "integrity": "sha1-9/uTdYpppXEUAYEnfuoMLrEwH6M=", + "dev": true, + "dependencies": { + "minimist": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.1.0.tgz", + "integrity": "sha1-md9lelJXTCHJBXSX33QnkLK0wN4=", + "dev": true + } + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + }, + "symbol-observable": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-0.2.4.tgz", + "integrity": "sha1-lag9smGG1q9+ehjb2XYKL4bQj0A=", + "dev": true + }, + "temp-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", + "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=", + "dev": true + }, + "temp-write": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/temp-write/-/temp-write-3.3.0.tgz", + "integrity": "sha1-walt4rNgYTQuroH0T/ABrsj2Fak=", + "dev": true + }, + "tempfile": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/tempfile/-/tempfile-1.1.1.tgz", + "integrity": "sha1-W8xOrsxKsscH2LwR2ZzMmiyyh/I=", + "dev": true, + "dependencies": { + "uuid": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz", + "integrity": "sha1-Z+LoY3lyFVMN/zGOW/nc6/1Hsho=", + "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 + }, + "text-extensions": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/text-extensions/-/text-extensions-1.6.0.tgz", + "integrity": "sha512-U2M04F2rbuYYCNioiTD14cImLTae4ys1rC57tllzKg3dt5DPR2JXs5yFdC017yOBrW6wM6s5gtAlFJ7yye04rA==", + "dev": true + }, + "text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "dev": true + }, + "throttleit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/throttleit/-/throttleit-1.0.0.tgz", + "integrity": "sha1-nnhYNtr0Z0MUWlmEtiaNgoUorGw=" + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true + }, + "through2": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", + "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", + "dev": true + }, + "time-require": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/time-require/-/time-require-0.1.2.tgz", + "integrity": "sha1-+eEss3D8JgXhFARYK6VO9corLZg=", + "dev": true, + "dependencies": { + "ansi-styles": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz", + "integrity": "sha1-yxAt8cVvUSPquLZ817mAJ6AnkXg=", + "dev": true + }, + "chalk": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz", + "integrity": "sha1-UZmj3c0MHv4jvAjBsCewYXbgxk8=", + "dev": true + }, + "parse-ms": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-0.1.2.tgz", + "integrity": "sha1-3T+iXtbC78e93hKtm0bBY6opIk4=", + "dev": true + }, + "pretty-ms": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-0.2.2.tgz", + "integrity": "sha1-2oeaaC/zOjcBEEbxPWJ/Z8c7hPY=", + "dev": true + }, + "strip-ansi": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz", + "integrity": "sha1-OeipjQRNFQZgq+SmgIrPcLt7yZE=", + "dev": true + } + } + }, + "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=", + "dev": true + }, + "tmp": { + "version": "0.0.31", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.31.tgz", + "integrity": "sha1-jzirlDjhcxXl29izZX6L+yd65Kc=" + }, + "to-fast-properties": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", + "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", + "dev": true + }, + "tough-cookie": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.2.tgz", + "integrity": "sha1-8IH3bkyFcg5sN6X6ztc3FQ2EByo=" + }, + "trim-newlines": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", + "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", + "dev": true + }, + "trim-off-newlines": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/trim-off-newlines/-/trim-off-newlines-1.0.1.tgz", + "integrity": "sha1-n5up2e+odkw4dpi8v+sshI8RrbM=", + "dev": true + }, + "trim-right": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", + "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", + "dev": true + }, + "tslint": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/tslint/-/tslint-4.5.1.tgz", + "integrity": "sha1-BTVocb7yOkNJBnNABvwYgza6gks=", + "dev": true, + "dependencies": { + "ansi-align": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz", + "integrity": "sha1-w2rsy6VjuJzrVW82kPCx2eNUf38=", + "dev": true + }, + "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.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", + "integrity": "sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==", + "dev": true + }, + "boxen": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-1.2.1.tgz", + "integrity": "sha1-DxHn/jRO25OXl3/BPt5/ZNlWSB0=", + "dev": true, + "dependencies": { + "chalk": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.1.0.tgz", + "integrity": "sha512-LUHGS/dge4ujbXMJrnihYMcL4AoOweGnw9Tp3kQuqy1Kx5c1qKjqvMJZ6nVJPMWJtKCTN72ZogH3oeSO9g9rXQ==", + "dev": true + } + } + }, + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "colors": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", + "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=", + "dev": true + }, + "configstore": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.1.tgz", + "integrity": "sha512-5oNkD/L++l0O6xGXxb1EWS7SivtjfGQlRyxJsYgE0Z495/L81e2h4/d3r969hoPXuFItzNOKMtsXgYG4c7dYvw==", + "dev": true + }, + "got": { + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/got/-/got-6.7.1.tgz", + "integrity": "sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA=", + "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 + }, + "latest-version": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-3.1.0.tgz", + "integrity": "sha1-ogU4P+oyKzO1rjsYq+4NwvNW7hU=", + "dev": true + }, + "package-json": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-4.0.1.tgz", + "integrity": "sha1-iGmgQBJTZhxMTKPabCEh7VVfXu0=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "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 + }, + "supports-color": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.4.0.tgz", + "integrity": "sha512-rKC3+DyXWgK0ZLKwmRsrkyHVZAjNkfzeehuFWdGGcqGDTZFH73+RH6S/RDAAxl9GusSjZSUWYLmT9N5pzXFOXQ==", + "dev": true + }, + "timed-out": { + "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 + }, + "unzip-response": { + "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": "2.2.0", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-2.2.0.tgz", + "integrity": "sha1-G1g3z5DAc22IYncytmHBOPht5y8=", + "dev": true + }, + "xdg-basedir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz", + "integrity": "sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ=", + "dev": true + } + } + }, + "tsutils": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-1.9.1.tgz", + "integrity": "sha1-ufmrROVa+WgYMdXyjQrur1x1DLA=", + "dev": true + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=" + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "optional": true + }, + "typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", + "dev": true + }, + "typescript": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-2.5.2.tgz", + "integrity": "sha1-A4qV99m7tCCxvzW6MdTFwd0//jQ=", + "dev": true + }, + "uglify-js": { + "version": "2.8.29", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", + "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", + "dev": true, + "optional": true, + "dependencies": { + "camelcase": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", + "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=", + "dev": true, + "optional": true + }, + "cliui": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", + "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", + "dev": true, + "optional": true + }, + "wordwrap": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", + "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=", + "dev": true, + "optional": true + }, + "yargs": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", + "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", + "dev": true, + "optional": true + } + } + }, + "uglify-to-browserify": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", + "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=", + "dev": true, + "optional": true + }, + "uid2": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/uid2/-/uid2-0.0.3.tgz", + "integrity": "sha1-SDEm4Rd03y9xuLY53NeZw3YWK4I=", + "dev": true + }, + "unique-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz", + "integrity": "sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=", + "dev": true + }, + "unique-temp-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unique-temp-dir/-/unique-temp-dir-1.0.0.tgz", + "integrity": "sha1-bc6VsmgcoAPuv7MEpBX5y6vMU4U=", + "dev": true + }, + "universalify": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.1.tgz", + "integrity": "sha1-+nG63UQ3r0wUiEHjs7Fl+enlkLc=" + }, + "unzip-response": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-1.0.2.tgz", + "integrity": "sha1-uYTwh3/AqJwsdzzB73tbIytbBv4=", + "dev": true + }, + "update-notifier": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-1.0.3.tgz", + "integrity": "sha1-j5LFFUgr1oMbfJMBPnD4dVLHz1o=", + "dev": true + }, + "url-parse-lax": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", + "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", + "dev": true + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true + }, + "uuid": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.1.0.tgz", + "integrity": "sha512-DIWtzUkw04M4k3bf1IcpS2tngXEL26YUD2M0tMDUpnUrz2hgzUBlD55a4FjdLGPvfHxS6uluGWvaVEqgBcVa+g==" + }, + "validate-npm-package-license": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz", + "integrity": "sha1-KAS6vnEq0zeUWaz74kdGqywwP7w=" + }, + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=" + }, + "wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=", + "dev": true + }, + "which": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz", + "integrity": "sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==", + "dev": true + }, + "which-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", + "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=" + }, + "wide-align": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.2.tgz", + "integrity": "sha512-ijDLlyQ7s6x1JgCLur53osjm/UXUYD9+0PbYKrBsYisYXzCxN+HC3mYDNy/dWdmf3AwqwU3CXwDCvsNgGK1S0w==", + "dev": true + }, + "widest-line": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-1.0.0.tgz", + "integrity": "sha1-DAnIXCqUaD0Nfq+O4JfVZL8OEFw=", + "dev": true + }, + "window-size": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", + "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=", + "dev": true, + "optional": true + }, + "wordwrap": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", + "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", + "dev": true + }, + "wrap-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=" + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "write-file-atomic": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.3.0.tgz", + "integrity": "sha512-xuPeK4OdjWqtfi59ylvVL0Yn35SF3zgcAcv7rBPFHVaEapaDr4GdGgm3j7ckTwH9wHL7fGmgfAnb0+THrHb8tA==", + "dev": true + }, + "write-json-file": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/write-json-file/-/write-json-file-2.2.0.tgz", + "integrity": "sha1-UYYlBruzthnu+reFnx/WxtBTCHY=", + "dev": true, + "dependencies": { + "detect-indent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-5.0.0.tgz", + "integrity": "sha1-OHHMCmoALow+Wzz38zYmRnXwa50=", + "dev": true + }, + "sort-keys": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz", + "integrity": "sha1-RBttTTRnmPG05J6JIK37oOVD+a0=", + "dev": true + } + } + }, + "write-pkg": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/write-pkg/-/write-pkg-3.1.0.tgz", + "integrity": "sha1-AwqZlMyZk9JbTnWp8aGSNgcpHOk=", + "dev": true + }, + "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 + }, + "xmlbuilder": { + "version": "8.2.2", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-8.2.2.tgz", + "integrity": "sha1-aSSGc0ELS6QuGmE2VR0pIjNap3M=" + }, + "xmldom": { + "version": "0.1.27", + "resolved": "https://registry.npmjs.org/xmldom/-/xmldom-0.1.27.tgz", + "integrity": "sha1-1QH5ezvbQDr4757MIFcxh6rawOk=" + }, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", + "dev": true + }, + "y18n": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", + "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=" + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true + }, + "yargs": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.0.tgz", + "integrity": "sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg=" + }, + "yargs-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0.tgz", + "integrity": "sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo=" + } + } +} From b0818e2feb0ac3e1fc2c9e4f4acc502a7f8c3531 Mon Sep 17 00:00:00 2001 From: Myer Nore Date: Thu, 21 Sep 2017 11:36:39 -0400 Subject: [PATCH 03/24] add spawn debug messages to nsis-gen --- src/lib/nsis-gen/index.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/lib/nsis-gen/index.ts b/src/lib/nsis-gen/index.ts index abe809c..30d5c7d 100644 --- a/src/lib/nsis-gen/index.ts +++ b/src/lib/nsis-gen/index.ts @@ -1,11 +1,13 @@ -import { dirname, resolve, win32 } from 'path'; import { spawn } from 'child_process'; +import * as Debug from 'debug'; +import { dirname, resolve, win32 } from 'path'; export * from './NsisComposer'; export * from './NsisDiffer'; export * from './Nsis7Zipper'; +const debug = Debug('nwjs-builder-phoenix:nsis-gen:downloader'); const DIR_ASSETS = resolve(dirname(module.filename), '../../../assets/'); const DIR_NSIS = resolve(DIR_ASSETS, 'nsis'); @@ -18,6 +20,8 @@ export async function nsisBuild(cwd: string, script: string, options: INsisBuild }) { const args = [ win32.normalize(resolve(DIR_NSIS, 'makensis.exe')), '/NOCD', '/INPUTCHARSET', 'UTF8', win32.normalize(resolve(script)) ]; + + debug(`spawning command ${args.join(' ')}`); if(process.platform != 'win32') { args.unshift('wine'); } From a3365a9f0ab4766635ab82005bb5e59ae59462be Mon Sep 17 00:00:00 2001 From: Myer Nore Date: Mon, 25 Sep 2017 17:05:51 -0400 Subject: [PATCH 04/24] add basic code signing of directly produced .exe, .dll files --- README.md | 2 +- assets/snake/README.md | 9 + assets/snake/app.css | 26 + assets/snake/app.js | 253 ++ assets/snake/assets/pd.icns | Bin 0 -> 32019 bytes assets/snake/assets/pd.ico | Bin 0 -> 370070 bytes assets/snake/assets/pd.png | Bin 0 -> 6388 bytes assets/snake/index.html | 26 + assets/snake/package-lock.json | 6724 ++++++++++++++++++++++++++++++ assets/snake/package.json | 52 + docs/Options.md | 3 + src/lib/Builder.ts | 69 +- src/lib/common/DownloaderBase.ts | 16 +- src/lib/config/WinConfig.ts | 7 + src/lib/util/index.ts | 15 +- 15 files changed, 7176 insertions(+), 26 deletions(-) create mode 100644 assets/snake/README.md create mode 100644 assets/snake/app.css create mode 100644 assets/snake/app.js create mode 100644 assets/snake/assets/pd.icns create mode 100644 assets/snake/assets/pd.ico create mode 100644 assets/snake/assets/pd.png create mode 100644 assets/snake/index.html create mode 100644 assets/snake/package-lock.json create mode 100644 assets/snake/package.json diff --git a/README.md b/README.md index 4f8a12b..0a10665 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,7 @@ Although NW.js has much lesser popularity than Electron, and is really troubled * `nwjs-ffmpeg-prebuilt` integration * [Auto Updater](./packages/nsis-compat-tester/) * TODO Rebuilding native modules -* TODO Code signing +* Code signing (Windows only for now; see [Windows build options](./docs/Options.md#buildwin---winconfig)) * Ideas appreciated :) ## Getting Started diff --git a/assets/snake/README.md b/assets/snake/README.md new file mode 100644 index 0000000..1ed9ea0 --- /dev/null +++ b/assets/snake/README.md @@ -0,0 +1,9 @@ +# Signed Windows Executable Example + +This example illustrates how to use `nwjs-builder-phoenix` to +sign a windows executable. + +Icons from [EasyIcon](https://www.easyicon.net/language.en/567185-Public_Domain_icon.html), +licensed with Creative Commons Attribution 3.0 Unported License, and converted with +[iConvertIcons](https://iconverticons.com/online/). + diff --git a/assets/snake/app.css b/assets/snake/app.css new file mode 100644 index 0000000..431b400 --- /dev/null +++ b/assets/snake/app.css @@ -0,0 +1,26 @@ +body { + margin: 1em; + padding: 0; + background: #111; + color: white; + font-family: helvetica; +} + +canvas { + border: solid 1px red; + width: 800px; + height: 400px; +} + +#scoreboard { + padding-bottom: 1em; +} + +#label, #score, #bar { + float: left; + padding: 8px; +} + +#pause_menu, #restart_menu { + display: none; +} \ No newline at end of file diff --git a/assets/snake/app.js b/assets/snake/app.js new file mode 100644 index 0000000..10d8be4 --- /dev/null +++ b/assets/snake/app.js @@ -0,0 +1,253 @@ +'use strict'; +let currentState; +let canvas, ctx, gridSize, currentPosition, snakeBody, snakeLength, direction, score, suggestedPoint, allowPressKeys, interval, choice; + +function updateScore () { + score = (snakeLength - 3) * 10; + document.getElementById('score').innerText = score; +} + +function hasPoint (element) { + return (element[0] === suggestedPoint[0] && element[1] === suggestedPoint[1]); +} + +function makeFoodItem () { + suggestedPoint = [Math.floor(Math.random()*(canvas.width/gridSize))*gridSize, Math.floor(Math.random()*(canvas.height/gridSize))*gridSize]; + if (snakeBody.some(hasPoint)) { + makeFoodItem(); + } else { + ctx.fillStyle = 'rgb(10,100,0)'; + ctx.fillRect(suggestedPoint[0], suggestedPoint[1], gridSize, gridSize); + } +} + +function hasEatenItself (element) { + return (element[0] === currentPosition.x && element[1] === currentPosition.y); +} + +function leftPosition(){ + return currentPosition.x - gridSize; +} + +function rightPosition(){ + return currentPosition.x + gridSize; +} + +function upPosition(){ + return currentPosition.y - gridSize; +} + +function downPosition(){ + return currentPosition.y + gridSize; +} + +function whichWayToGo (axisType) { + if (axisType === 'x') { + choice = (currentPosition.x > canvas.width / 2) ? moveLeft() : moveRight(); + } else { + choice = (currentPosition.y > canvas.height / 2) ? moveUp() : moveDown(); + } +} + +function moveUp(){ + if (upPosition() >= 0) { + executeMove('up', 'y', upPosition()); + } else { + whichWayToGo('x'); + } +} + +function moveDown(){ + if (downPosition() < canvas.height) { + executeMove('down', 'y', downPosition()); + } else { + whichWayToGo('x'); + } +} + +function moveLeft(){ + if (leftPosition() >= 0) { + executeMove('left', 'x', leftPosition()); + } else { + whichWayToGo('y'); + } +} + +function moveRight(){ + if (rightPosition() < canvas.width) { + executeMove('right', 'x', rightPosition()); + } else { + whichWayToGo('y'); + } +} + +function executeMove(dirValue, axisType, axisValue) { + direction = dirValue; + currentPosition[axisType] = axisValue; + drawSnake(); +} + +function moveSnake(){ + switch (direction) { + case 'up': + moveUp(); + break; + + case 'down': + moveDown(); + break; + + case 'left': + moveLeft(); + break; + + case 'right': + moveRight(); + break; + } +} + +function restart () { + document.getElementById('play_menu').style.display='block'; + document.getElementById('pause_menu').style.display='none'; + document.getElementById('restart_menu').style.display='none'; + pause(); + start(); +} + +function pause(){ + document.getElementById('play_menu').style.display='none'; + document.getElementById('pause_menu').style.display='block'; + clearInterval(interval); + allowPressKeys = false; +} + +function play(){ + document.getElementById('play_menu').style.display='block'; + document.getElementById('pause_menu').style.display='none'; + interval = setInterval(moveSnake,100); + allowPressKeys = true; +} + +function gameOver(){ + pause(); + window.alert('Game Over. Your score was ' + score); + ctx.clearRect(0,0, canvas.width, canvas.height); + document.getElementById('play_menu').style.display='none'; + document.getElementById('restart_menu').style.display='block'; +} + +function drawSnake() { + if (snakeBody.some(hasEatenItself)) { + gameOver(); + return false; + } + snakeBody.push([currentPosition.x, currentPosition.y]); + ctx.fillStyle = 'rgb(200,0,0)'; + ctx.fillRect(currentPosition.x, currentPosition.y, gridSize, gridSize); + if (snakeBody.length > snakeLength) { + let itemToRemove = snakeBody.shift(); + ctx.clearRect(itemToRemove[0], itemToRemove[1], gridSize, gridSize); + } + if (currentPosition.x === suggestedPoint[0] && currentPosition.y === suggestedPoint[1]) { + makeFoodItem(); + snakeLength += 1; + updateScore(); + } +} + +window.document.onkeydown = function(event) { + if (!allowPressKeys){ + return null; + } + let keyCode; + if(!event) + { + keyCode = window.event.keyCode; + } + else + { + keyCode = event.keyCode; + } + + switch(keyCode) + { + case 37: + if (direction !== 'right') { + moveLeft(); + } + break; + + case 38: + if (direction !== 'down'){ + moveUp(); + } + break; + + case 39: + if (direction !== 'left'){ + moveRight(); + } + break; + + case 40: + if (direction !== 'up'){ + moveDown(); + } + break; + + default: + break; + } +}; + +function start () { + ctx.clearRect(0,0, canvas.width, canvas.height); + currentPosition = {'x':50, 'y':50}; + snakeBody = []; + snakeLength = 3; + updateScore(); + makeFoodItem(); + drawSnake(); + direction = 'right'; + play(); +} + +function initialize () { + canvas = document.querySelector('canvas'); + ctx = canvas.getContext('2d'); + gridSize = 10; + start(); +} + +function togglePauseState () { + if (currentState) { + if (currentState === 'play') { + pause(); + currentState = 'pause'; + } else { + play(); + currentState = 'play'; + } + } else { + pause(); + currentState = 'play'; + } +} + +const pauseKeyOptions = { + key:'Ctrl+P', + active: togglePauseState, + failed: () => { + console.log('An error occurred'); +} +}; + +const pauseShortcut = new nw.Shortcut(pauseKeyOptions); +nw.App.registerGlobalHotKey(pauseShortcut); +process.on('exit', () => { + nw.App.unregisterGlobalHotKey(pauseShortcut); +}); + + +window.onload = initialize; \ No newline at end of file diff --git a/assets/snake/assets/pd.icns b/assets/snake/assets/pd.icns new file mode 100644 index 0000000000000000000000000000000000000000..222e3b09a3af57bab63a5ec5c99eb32beef6b737 GIT binary patch literal 32019 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 a^>0MW!;6zF3wK2M_g3VctbNV_H~$|HWvFEU literal 0 HcmV?d00001 diff --git a/assets/snake/assets/pd.ico b/assets/snake/assets/pd.ico new file mode 100644 index 0000000000000000000000000000000000000000..c9871f864a9b34fd4b91cfe58d44057f50d3ab1c GIT binary patch literal 370070 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
    #V!*`}s=)msKUZ z;R%n3KUt%`fu`7uuRi}%CK}#%@!)?Do8sr6KcoXd`tUF=@)^Z}n+8 zU0V;D@#Lf~^sPNsR`2*s^YwK0#$n{zT3STl7@Ou_+4-9sN9$%$E2|m=W&BLgi!(4g zN{no1Bgj1U?lZFeJ2SE^S`R?2H>E(I!-u#0Vo=X=E){2X@z)$c!aoD6n&vw2`Ao$k zxh6`NkF7Cc^>{F{z(ve@-+iW9nQ(Iy9Jf$ifFENa{LY}dx$#MPS2XKR`RUxZo#HTJ z@Q;|a{FEZyqCvnx_shZM+>owtvs}x~kD&p`&6_imYF$j0>I%_Sw0d)Kv{-k*$3vIPDsBy_yX~r>ER9i6Med?^ zULx;Pl)fOpZRQtSZd9nDa8uXv(cYXTLOwAqxh=|72W476Su^>eEXftYC1`eC!kI;3 zeQ(zF&y)rzINyH}qwnSQ>2+n}KIgM8$WcIdMsL@(LFnJ3MKTD)F6B@tWq6RmeACh% zi0mR1X6`OFA41yPt5DGHB`>!Niy5bao2l;N}|7D|FhZ zPq_L2{)uFH4<3o!8a5ZOum`T^3-2Y`wHGi(k=i`Xesz_JE~auxtAq1vmIP}U)k%D# zv5Xg~JQ>L~|J6ISJs(ciSMGG^uDi#u^GNese~GaFz?yt1$_Fdsl|Yl5NBpGe2vPmiq~^{G(m z1!}Rc9HrYK#tp!fbwBJS8-ZCpP#i=~ZoeVDi22*Mw`IssGo4NRUK)-a(Ub(dl?qpI}UV1W1+SUqf z!T+<>s;=yd6!_b=iCTm0jp3UF$3i{8K1%|V5r7;6ga-DkB`TnCMBorE9@ggI0{r70(-=7-kVD^5y6)vyf1saYonT`^lE;-4`-%3uOKHaL}OWR;k zjH7`6jw<~`uCri9Q$aaKSBnDk50eN6zez@YZMObsp*EcEtt&N9Z}Mh$h+h|?3@l69 zap*+SjHINY8oB7|Z>Zzf8G}XT73Vp7wv+<1v=N@ioxD5jqE4c`9vxb`QZ5Z|fNC4= z_8?fuCJdqUd4urUr^fA#?x?H*TM{@8PANBugw^!S(rqn zKdH+vXk~u}VSYO|z&pS@QS!9AxZ!|c+5glVI`$0w3vVnwz8$rSXNtONBR)C&K24i# zG4r-llX!J^{OiPz>tt{~x`eq)WYt`hZ^DDD+{sGp1N|~Hls(jjkHK>8S9{I3d@QGw z8J%+F1lczmU)MqMjW?wik9wk=Ns5ikt!v|QPFNB&B14FHXU6Q|!GRbS)=D$Sq1ck4jFVz10;W7B@JRD%Rri|zn>wRe<9qg4t3 zP5wWdErHC)=9keNK@uO|J_9vOU6-)k?!2ZAP$*X_Qh8lHrAo+!m5x^%rTr97#sSIV zCq-p1McajY__W#<#rT=@7!xOrY=WZr8dnf$xtc~!Rv`cuVpJ$fw6hf7F|Ks^*0m^U&MyZ^Z=aFb1Rg;|to5e<(exwM#rBvEj2R_xCdEU~ z(Dp-gdF@=~#<(L{Mf1SO#Nme6A_j7d9vEJr^*#I3&C9sSlCj00^mm}$mL4Deaq z{7$&A>lnT7`&t`$HUp(UtQNzttI?TJ1NeAf?v`AJhaa9$p<|aYrqldgST#3#+hIOUQP*C`*dFOxPp8Q$EqcGtP zI~(|6j3@c<<3Z;|efi}*V*u#8)hV?t|EujXbqjOc0qxLd*b4Fra#5&WyJmgzkf*g% zgf^dTYJ2&+KX#lCx(E%Xdp9%>CjXl8Ax}@Q>h{hO^WD^jO2I@HTC*B_>)9&X0#iBD zK<8*q#8HvbRZp|fsOQf=25AgSO!D~Ue!O3Vz}k%+nvD-YxnUtoNtza8S*Eoa z>~#BX_){lA$mR4mNtL$`a{j9!gquZRU*IeiSNxL95_ z$FXIhH&0G(&-kizZ;1)z-Tqr*Z4B_3(pvM-Bh|aY#?&Pbziw*0umgvDI#T#Ojdx%v zK~-I3IVjrO=No~WC%@jA7{Jf4tiHFa8Mo^V*rY7X?K$WR$8QFqQY$vQgTe+h@+83q z%TkFvFe~e~t(u=yNUVFX<)hhGerZK*&%D&Q zhd84k)Om7WW$Lxivz@CK-3{N*6m?M*N0>Ek^Qb3aa`K7wYhA$KRUKz$c{(v zm=27!dEjhe;4I;KMuA&pm6w7m0_oW-9fx$<4vh9-kHK5|TxHm0b!qs@+Oj|SxeSg~ zty+Fe>N@R#m<(NvLrC=NVznP;pZ)dDrEsGmgfX~6a6fIt+NMA)&;2N&;lWIO49O=w`?tC9Ho8lrNONZ!;I6OQPIol*?8fRG`=NPWK7I zxbWj9mg(H+>S;*n6T>@I-848U`Hy?u(@*Irz;Rc3MW@eWNkHA4hao-vpNJ0YpDgsw zLrtKj=fMr%OL|KF#*l$C+Sn+-Ird)AATv=#Ds!K!E?=X8is=3rf~!6!1IN+09oDu% zh;;B=!1Ebn6437ghaW~|Gl@hmAO5js@?s?lI3LvcVD(;&9@l>Vi``Jo|0fLy-FQq$VEds&$bH7`TNt2*hRDwht%P$ zV*wF|mTWROI*ZZ1BxeAnNv!!^Z04P60<&&xN;SQG)DH^)xw_26Jf90q;PxtwYz=<+ zvq}`uYA6x>vmjI1(Q+R;ulp@fL29N((MAb7xqlB?FRxxPE^&cp_^9+_uFQ*ofHwhb)AdTp zqax1_UML4mxe#}gHQw3=rF3hN+_1jk{Kcsda{%!CF=#%;WsI*}3HpjHX;hzO1~eJJ z*Q6Tl42W7vq6jxX4KiKtYyp=#19jrVvpC5joDzGf>XU^7JOJ1!^p(iPS7h~O<44&z zG$;Z7w2s#0mrIMUpYpW!()+cp>wc62mkQ>?zF-QDSD)A%!=KmC7Ep@Ev6;~}7(pK2 zW$Ef2+cDsQ2GzzzzDte9JJhT;UXohqGM&L6E*uG>>cmzm7o^n15}juZYmy_$EOgbf zp{vekqh0p|GV5LxNw0?eL{_UZ1Rb;xx1f3H(9u{>o~gZlY_rsaA!4rXp`v$_KYy!! zJPT-SI7=4$N^WPPhvSNnF2Ri>cA`h6u`bWYyQUphcM^9MG)8aE>3)}0X5CERN;yBs zH7j%@UZ^0S+2V^E;%?l|ven|;bht3|g70!_iB~~kj(9^2h+uVZVqKlE7!{WQ4AB5^ zc^E=QURegFWCK%Ffh(%WD@n;CRpjN<7xP8_55dRJ)zj_%KLnTzOkM_#u#uNnk%y_s zEBrTMtlDxqG_Y;a8HCmxak7_$^@w{tzU>5pjk8 zf2;F*V6pxxa&p1J!LpwJkcbbFB`L~X#4G{&v6ky7VipVPng-4!jRYVBmzjUlULotAo z>=mT3b{u^K3o+~Puk3XzL%_|`8$+CcoQIze=AStP`1xVw0zI++S;%6X0`Gge`1#8E yVz6>9uD&v!KJNb;bn%r73~-TCL@2@j^Fk`h5<9&U=yHu%2r$$&)2Y@*Km0F%VS2*= literal 0 HcmV?d00001 diff --git a/assets/snake/index.html b/assets/snake/index.html new file mode 100644 index 0000000..51c011a --- /dev/null +++ b/assets/snake/index.html @@ -0,0 +1,26 @@ + + + Snake + + + + +
    + Score: + +
    +
    + +
    +
    + + +
    +
    + +
    +
    +
    + + + \ No newline at end of file diff --git a/assets/snake/package-lock.json b/assets/snake/package-lock.json new file mode 100644 index 0000000..53d8347 --- /dev/null +++ b/assets/snake/package-lock.json @@ -0,0 +1,6724 @@ +{ + "name": "snake", + "version": "0.1.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "cross-env": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-5.0.5.tgz", + "integrity": "sha1-Q4PTZNlmCHPdGFs5ivO/717//vM=", + "dev": true, + "requires": { + "cross-spawn": "5.1.0", + "is-windows": "1.0.1" + } + }, + "cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "dev": true, + "requires": { + "lru-cache": "4.1.1", + "shebang-command": "1.2.0", + "which": "1.3.0" + } + }, + "dotenv": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-4.0.0.tgz", + "integrity": "sha1-hk7xN5rO1Vzm+V3r7NzhefegzR0=", + "dev": true + }, + "is-windows": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.1.tgz", + "integrity": "sha1-MQ23D3QtJZoWo2kgK1GvhCMzENk=", + "dev": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "lru-cache": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.1.tgz", + "integrity": "sha512-q4spe4KTfsAS1SUHLO0wz8Qiyf1+vMIAgpRYioFYDMNqKfHQbg+AVDH3i4fvpl71/P1L0dBl+fQi+P37UYf0ew==", + "dev": true, + "requires": { + "pseudomap": "1.0.2", + "yallist": "2.1.2" + } + }, + "nwjs-builder-phoenix": { + "version": "file:../..", + "dev": true, + "requires": { + "7zip-bin": "2.2.4", + "bluebird": "3.5.0", + "debug": "2.6.8", + "dir-compare": "1.4.0", + "fs-extra": "3.0.1", + "globby": "6.1.0", + "plist": "2.1.0", + "progress": "1.1.8", + "rcedit": "0.8.0", + "request": "2.82.0", + "request-progress": "3.0.0", + "semver": "5.4.1", + "source-map-support": "0.4.18", + "tmp": "0.0.31", + "yargs": "7.1.0" + }, + "dependencies": { + "7zip-bin": { + "version": "2.2.4", + "bundled": true, + "dev": true, + "requires": { + "7zip-bin-linux": "1.1.0", + "7zip-bin-mac": "1.0.1", + "7zip-bin-win": "2.1.1" + } + }, + "7zip-bin-linux": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "optional": true + }, + "7zip-bin-mac": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "7zip-bin-win": { + "version": "2.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "@ava/babel-preset-stage-4": { + "version": "1.1.0", + "bundled": true, + "requires": { + "babel-plugin-check-es2015-constants": "6.22.0", + "babel-plugin-syntax-trailing-function-commas": "6.22.0", + "babel-plugin-transform-async-to-generator": "6.24.1", + "babel-plugin-transform-es2015-destructuring": "6.23.0", + "babel-plugin-transform-es2015-function-name": "6.24.1", + "babel-plugin-transform-es2015-modules-commonjs": "6.26.0", + "babel-plugin-transform-es2015-parameters": "6.24.1", + "babel-plugin-transform-es2015-spread": "6.22.0", + "babel-plugin-transform-es2015-sticky-regex": "6.24.1", + "babel-plugin-transform-es2015-unicode-regex": "6.24.1", + "babel-plugin-transform-exponentiation-operator": "6.24.1", + "package-hash": "1.2.0" + } + }, + "@ava/babel-preset-transform-test-files": { + "version": "2.0.1", + "bundled": true, + "requires": { + "babel-plugin-ava-throws-helper": "1.0.0", + "babel-plugin-espower": "2.3.2", + "package-hash": "1.2.0" + } + }, + "@ava/pretty-format": { + "version": "1.1.0", + "bundled": true, + "requires": { + "ansi-styles": "2.2.1", + "esutils": "2.0.2" + } + }, + "@types/bluebird": { + "version": "3.5.11", + "bundled": true + }, + "@types/debug": { + "version": "0.0.29", + "bundled": true + }, + "@types/es6-shim": { + "version": "0.31.35", + "bundled": true + }, + "@types/form-data": { + "version": "2.2.0", + "bundled": true, + "requires": { + "@types/node": "7.0.43" + } + }, + "@types/fs-extra": { + "version": "3.0.3", + "bundled": true, + "requires": { + "@types/node": "7.0.43" + } + }, + "@types/node": { + "version": "7.0.43", + "bundled": true + }, + "@types/progress": { + "version": "1.1.28", + "bundled": true, + "requires": { + "@types/node": "7.0.43" + } + }, + "@types/request": { + "version": "0.0.45", + "bundled": true, + "requires": { + "@types/form-data": "2.2.0", + "@types/node": "7.0.43" + } + }, + "@types/semver": { + "version": "5.4.0", + "bundled": true + }, + "@types/tmp": { + "version": "0.0.32", + "bundled": true + }, + "@types/yargs": { + "version": "6.6.0", + "bundled": true + }, + "JSONStream": { + "version": "1.3.1", + "bundled": true, + "requires": { + "jsonparse": "1.3.1", + "through": "2.3.8" + } + }, + "add-stream": { + "version": "1.0.0", + "bundled": true + }, + "ajv": { + "version": "5.2.2", + "bundled": true, + "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" + } + }, + "align-text": { + "version": "0.1.4", + "bundled": true, + "requires": { + "kind-of": "3.2.2", + "longest": "1.0.1", + "repeat-string": "1.6.1" + } + }, + "amdefine": { + "version": "1.0.1", + "bundled": true + }, + "ansi-align": { + "version": "1.1.0", + "bundled": true, + "requires": { + "string-width": "1.0.2" + } + }, + "ansi-escapes": { + "version": "3.0.0", + "bundled": true + }, + "ansi-regex": { + "version": "2.1.1", + "bundled": true + }, + "ansi-styles": { + "version": "2.2.1", + "bundled": true + }, + "anymatch": { + "version": "1.3.2", + "bundled": true, + "requires": { + "micromatch": "2.3.11", + "normalize-path": "2.1.1" + } + }, + "aproba": { + "version": "1.2.0", + "bundled": true + }, + "are-we-there-yet": { + "version": "1.1.4", + "bundled": true, + "requires": { + "delegates": "1.0.0", + "readable-stream": "2.3.3" + } + }, + "arr-diff": { + "version": "2.0.0", + "bundled": true, + "requires": { + "arr-flatten": "1.1.0" + } + }, + "arr-exclude": { + "version": "1.0.0", + "bundled": true + }, + "arr-flatten": { + "version": "1.1.0", + "bundled": true + }, + "array-differ": { + "version": "1.0.0", + "bundled": true + }, + "array-find-index": { + "version": "1.0.2", + "bundled": true + }, + "array-ify": { + "version": "1.0.0", + "bundled": true + }, + "array-union": { + "version": "1.0.2", + "bundled": true, + "requires": { + "array-uniq": "1.0.3" + } + }, + "array-uniq": { + "version": "1.0.3", + "bundled": true + }, + "array-unique": { + "version": "0.2.1", + "bundled": true + }, + "arrify": { + "version": "1.0.1", + "bundled": true + }, + "asn1": { + "version": "0.2.3", + "bundled": true, + "dev": true + }, + "assert-plus": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "async": { + "version": "1.5.2", + "bundled": true + }, + "async-each": { + "version": "1.0.1", + "bundled": true + }, + "asynckit": { + "version": "0.4.0", + "bundled": true, + "dev": true + }, + "auto-bind": { + "version": "1.1.0", + "bundled": true + }, + "ava": { + "version": "0.18.2", + "bundled": true, + "requires": { + "@ava/babel-preset-stage-4": "1.1.0", + "@ava/babel-preset-transform-test-files": "2.0.1", + "@ava/pretty-format": "1.1.0", + "arr-flatten": "1.1.0", + "array-union": "1.0.2", + "array-uniq": "1.0.3", + "arrify": "1.0.1", + "auto-bind": "1.1.0", + "ava-init": "0.2.1", + "babel-code-frame": "6.26.0", + "babel-core": "6.26.0", + "bluebird": "3.5.0", + "caching-transform": "1.0.1", + "chalk": "1.1.3", + "chokidar": "1.7.0", + "clean-stack": "1.3.0", + "clean-yaml-object": "0.1.0", + "cli-cursor": "2.1.0", + "cli-spinners": "1.0.0", + "cli-truncate": "0.2.1", + "co-with-promise": "4.6.0", + "code-excerpt": "2.1.0", + "common-path-prefix": "1.0.0", + "convert-source-map": "1.5.0", + "core-assert": "0.2.1", + "currently-unhandled": "0.4.1", + "debug": "2.6.8", + "diff": "3.3.1", + "dot-prop": "4.2.0", + "empower-core": "0.6.2", + "equal-length": "1.0.1", + "figures": "2.0.0", + "find-cache-dir": "0.1.1", + "fn-name": "2.0.1", + "get-port": "2.1.0", + "globby": "6.1.0", + "has-flag": "2.0.0", + "ignore-by-default": "1.0.1", + "indent-string": "3.2.0", + "is-ci": "1.0.10", + "is-generator-fn": "1.0.0", + "is-obj": "1.0.1", + "is-observable": "0.2.0", + "is-promise": "2.1.0", + "jest-snapshot": "18.1.0", + "last-line-stream": "1.0.0", + "lodash.debounce": "4.0.8", + "lodash.difference": "4.5.0", + "lodash.flatten": "4.4.0", + "lodash.isequal": "4.5.0", + "loud-rejection": "1.6.0", + "matcher": "0.1.2", + "max-timeout": "1.0.0", + "md5-hex": "2.0.0", + "meow": "3.7.0", + "ms": "0.7.3", + "multimatch": "2.1.0", + "observable-to-promise": "0.4.0", + "option-chain": "0.1.1", + "package-hash": "1.2.0", + "pkg-conf": "2.0.0", + "plur": "2.1.2", + "pretty-ms": "2.1.0", + "require-precompiled": "0.1.0", + "resolve-cwd": "1.0.0", + "slash": "1.0.0", + "source-map-support": "0.4.18", + "stack-utils": "1.0.1", + "strip-ansi": "3.0.1", + "strip-bom-buf": "1.0.0", + "time-require": "0.1.2", + "unique-temp-dir": "1.0.0", + "update-notifier": "1.0.3" + }, + "dependencies": { + "ms": { + "version": "0.7.3", + "bundled": true + } + } + }, + "ava-init": { + "version": "0.2.1", + "bundled": true, + "requires": { + "arr-exclude": "1.0.0", + "execa": "0.7.0", + "has-yarn": "1.0.0", + "read-pkg-up": "2.0.0", + "write-pkg": "3.1.0" + }, + "dependencies": { + "find-up": { + "version": "2.1.0", + "bundled": true, + "requires": { + "locate-path": "2.0.0" + } + }, + "load-json-file": { + "version": "2.0.0", + "bundled": true, + "requires": { + "graceful-fs": "4.1.11", + "parse-json": "2.2.0", + "pify": "2.3.0", + "strip-bom": "3.0.0" + } + }, + "path-type": { + "version": "2.0.0", + "bundled": true, + "requires": { + "pify": "2.3.0" + } + }, + "read-pkg": { + "version": "2.0.0", + "bundled": true, + "requires": { + "load-json-file": "2.0.0", + "normalize-package-data": "2.4.0", + "path-type": "2.0.0" + } + }, + "read-pkg-up": { + "version": "2.0.0", + "bundled": true, + "requires": { + "find-up": "2.1.0", + "read-pkg": "2.0.0" + } + }, + "strip-bom": { + "version": "3.0.0", + "bundled": true + } + } + }, + "aws-sign2": { + "version": "0.7.0", + "bundled": true, + "dev": true + }, + "aws4": { + "version": "1.6.0", + "bundled": true, + "dev": true + }, + "babel-code-frame": { + "version": "6.26.0", + "bundled": true, + "requires": { + "chalk": "1.1.3", + "esutils": "2.0.2", + "js-tokens": "3.0.2" + } + }, + "babel-core": { + "version": "6.26.0", + "bundled": true, + "requires": { + "babel-code-frame": "6.26.0", + "babel-generator": "6.26.0", + "babel-helpers": "6.24.1", + "babel-messages": "6.23.0", + "babel-register": "6.26.0", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "convert-source-map": "1.5.0", + "debug": "2.6.8", + "json5": "0.5.1", + "lodash": "4.17.4", + "minimatch": "3.0.4", + "path-is-absolute": "1.0.1", + "private": "0.1.7", + "slash": "1.0.0", + "source-map": "0.5.7" + }, + "dependencies": { + "minimatch": { + "version": "3.0.4", + "bundled": true, + "requires": { + "brace-expansion": "1.1.8" + } + } + } + }, + "babel-generator": { + "version": "6.26.0", + "bundled": true, + "requires": { + "babel-messages": "6.23.0", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "detect-indent": "4.0.0", + "jsesc": "1.3.0", + "lodash": "4.17.4", + "source-map": "0.5.7", + "trim-right": "1.0.1" + }, + "dependencies": { + "jsesc": { + "version": "1.3.0", + "bundled": true + } + } + }, + "babel-helper-builder-binary-assignment-operator-visitor": { + "version": "6.24.1", + "bundled": true, + "requires": { + "babel-helper-explode-assignable-expression": "6.24.1", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-call-delegate": { + "version": "6.24.1", + "bundled": true, + "requires": { + "babel-helper-hoist-variables": "6.24.1", + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-explode-assignable-expression": { + "version": "6.24.1", + "bundled": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-function-name": { + "version": "6.24.1", + "bundled": true, + "requires": { + "babel-helper-get-function-arity": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-get-function-arity": { + "version": "6.24.1", + "bundled": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-hoist-variables": { + "version": "6.24.1", + "bundled": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-regex": { + "version": "6.26.0", + "bundled": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "lodash": "4.17.4" + } + }, + "babel-helper-remap-async-to-generator": { + "version": "6.24.1", + "bundled": true, + "requires": { + "babel-helper-function-name": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helpers": { + "version": "6.24.1", + "bundled": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" + } + }, + "babel-messages": { + "version": "6.23.0", + "bundled": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-ava-throws-helper": { + "version": "1.0.0", + "bundled": true, + "requires": { + "babel-template": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-check-es2015-constants": { + "version": "6.22.0", + "bundled": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-espower": { + "version": "2.3.2", + "bundled": true, + "requires": { + "babel-generator": "6.26.0", + "babylon": "6.18.0", + "call-matcher": "1.0.1", + "core-js": "2.5.1", + "espower-location-detector": "1.0.0", + "espurify": "1.7.0", + "estraverse": "4.2.0" + } + }, + "babel-plugin-syntax-async-functions": { + "version": "6.13.0", + "bundled": true + }, + "babel-plugin-syntax-exponentiation-operator": { + "version": "6.13.0", + "bundled": true + }, + "babel-plugin-syntax-trailing-function-commas": { + "version": "6.22.0", + "bundled": true + }, + "babel-plugin-transform-async-to-generator": { + "version": "6.24.1", + "bundled": true, + "requires": { + "babel-helper-remap-async-to-generator": "6.24.1", + "babel-plugin-syntax-async-functions": "6.13.0", + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-destructuring": { + "version": "6.23.0", + "bundled": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-function-name": { + "version": "6.24.1", + "bundled": true, + "requires": { + "babel-helper-function-name": "6.24.1", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-es2015-modules-commonjs": { + "version": "6.26.0", + "bundled": true, + "requires": { + "babel-plugin-transform-strict-mode": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-es2015-parameters": { + "version": "6.24.1", + "bundled": true, + "requires": { + "babel-helper-call-delegate": "6.24.1", + "babel-helper-get-function-arity": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-es2015-spread": { + "version": "6.22.0", + "bundled": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-sticky-regex": { + "version": "6.24.1", + "bundled": true, + "requires": { + "babel-helper-regex": "6.26.0", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-es2015-unicode-regex": { + "version": "6.24.1", + "bundled": true, + "requires": { + "babel-helper-regex": "6.26.0", + "babel-runtime": "6.26.0", + "regexpu-core": "2.0.0" + } + }, + "babel-plugin-transform-exponentiation-operator": { + "version": "6.24.1", + "bundled": true, + "requires": { + "babel-helper-builder-binary-assignment-operator-visitor": "6.24.1", + "babel-plugin-syntax-exponentiation-operator": "6.13.0", + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-strict-mode": { + "version": "6.24.1", + "bundled": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-register": { + "version": "6.26.0", + "bundled": true, + "requires": { + "babel-core": "6.26.0", + "babel-runtime": "6.26.0", + "core-js": "2.5.1", + "home-or-tmp": "2.0.0", + "lodash": "4.17.4", + "mkdirp": "0.5.1", + "source-map-support": "0.4.18" + } + }, + "babel-runtime": { + "version": "6.26.0", + "bundled": true, + "requires": { + "core-js": "2.5.1", + "regenerator-runtime": "0.11.0" + } + }, + "babel-template": { + "version": "6.26.0", + "bundled": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "lodash": "4.17.4" + } + }, + "babel-traverse": { + "version": "6.26.0", + "bundled": true, + "requires": { + "babel-code-frame": "6.26.0", + "babel-messages": "6.23.0", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "debug": "2.6.8", + "globals": "9.18.0", + "invariant": "2.2.2", + "lodash": "4.17.4" + } + }, + "babel-types": { + "version": "6.26.0", + "bundled": true, + "requires": { + "babel-runtime": "6.26.0", + "esutils": "2.0.2", + "lodash": "4.17.4", + "to-fast-properties": "1.0.3" + } + }, + "babylon": { + "version": "6.18.0", + "bundled": true + }, + "balanced-match": { + "version": "1.0.0", + "bundled": true + }, + "base64-js": { + "version": "1.2.0", + "bundled": true, + "dev": true + }, + "bcrypt-pbkdf": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "tweetnacl": "0.14.5" + } + }, + "binary-extensions": { + "version": "1.10.0", + "bundled": true + }, + "bluebird": { + "version": "3.5.0", + "bundled": true + }, + "boom": { + "version": "4.3.1", + "bundled": true, + "dev": true, + "requires": { + "hoek": "4.2.0" + } + }, + "boxen": { + "version": "0.6.0", + "bundled": true, + "requires": { + "ansi-align": "1.1.0", + "camelcase": "2.1.1", + "chalk": "1.1.3", + "cli-boxes": "1.0.0", + "filled-array": "1.1.0", + "object-assign": "4.1.1", + "repeating": "2.0.1", + "string-width": "1.0.2", + "widest-line": "1.0.0" + }, + "dependencies": { + "camelcase": { + "version": "2.1.1", + "bundled": true + } + } + }, + "brace-expansion": { + "version": "1.1.8", + "bundled": true, + "requires": { + "balanced-match": "1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "1.8.5", + "bundled": true, + "requires": { + "expand-range": "1.8.2", + "preserve": "0.2.0", + "repeat-element": "1.1.2" + } + }, + "buf-compare": { + "version": "1.0.1", + "bundled": true + }, + "buffer-equal": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "builtin-modules": { + "version": "1.1.1", + "bundled": true + }, + "byline": { + "version": "5.0.0", + "bundled": true + }, + "caching-transform": { + "version": "1.0.1", + "bundled": true, + "requires": { + "md5-hex": "1.3.0", + "mkdirp": "0.5.1", + "write-file-atomic": "1.3.4" + }, + "dependencies": { + "md5-hex": { + "version": "1.3.0", + "bundled": true, + "requires": { + "md5-o-matic": "0.1.1" + } + }, + "write-file-atomic": { + "version": "1.3.4", + "bundled": true, + "requires": { + "graceful-fs": "4.1.11", + "imurmurhash": "0.1.4", + "slide": "1.1.6" + } + } + } + }, + "call-matcher": { + "version": "1.0.1", + "bundled": true, + "requires": { + "core-js": "2.5.1", + "deep-equal": "1.0.1", + "espurify": "1.7.0", + "estraverse": "4.2.0" + } + }, + "call-signature": { + "version": "0.0.2", + "bundled": true + }, + "camelcase": { + "version": "3.0.0", + "bundled": true, + "dev": true + }, + "camelcase-keys": { + "version": "2.1.0", + "bundled": true, + "requires": { + "camelcase": "2.1.1", + "map-obj": "1.0.1" + }, + "dependencies": { + "camelcase": { + "version": "2.1.1", + "bundled": true + } + } + }, + "capture-stack-trace": { + "version": "1.0.0", + "bundled": true + }, + "caseless": { + "version": "0.12.0", + "bundled": true, + "dev": true + }, + "center-align": { + "version": "0.1.3", + "bundled": true, + "optional": true, + "requires": { + "align-text": "0.1.4", + "lazy-cache": "1.0.4" + } + }, + "chalk": { + "version": "1.1.3", + "bundled": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + } + }, + "chokidar": { + "version": "1.7.0", + "bundled": true, + "requires": { + "anymatch": "1.3.2", + "async-each": "1.0.1", + "fsevents": "1.1.2", + "glob-parent": "2.0.0", + "inherits": "2.0.3", + "is-binary-path": "1.0.1", + "is-glob": "2.0.1", + "path-is-absolute": "1.0.1", + "readdirp": "2.1.0" + } + }, + "ci-info": { + "version": "1.1.1", + "bundled": true + }, + "clean-stack": { + "version": "1.3.0", + "bundled": true + }, + "clean-yaml-object": { + "version": "0.1.0", + "bundled": true + }, + "cli-boxes": { + "version": "1.0.0", + "bundled": true + }, + "cli-cursor": { + "version": "2.1.0", + "bundled": true, + "requires": { + "restore-cursor": "2.0.0" + } + }, + "cli-spinners": { + "version": "1.0.0", + "bundled": true + }, + "cli-truncate": { + "version": "0.2.1", + "bundled": true, + "requires": { + "slice-ansi": "0.0.4", + "string-width": "1.0.2" + } + }, + "cli-width": { + "version": "2.2.0", + "bundled": true + }, + "cliui": { + "version": "3.2.0", + "bundled": true, + "requires": { + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "wrap-ansi": "2.1.0" + } + }, + "clone": { + "version": "1.0.2", + "bundled": true + }, + "cmd-shim": { + "version": "2.0.2", + "bundled": true, + "requires": { + "graceful-fs": "4.1.11", + "mkdirp": "0.5.1" + } + }, + "co": { + "version": "4.6.0", + "bundled": true, + "dev": true + }, + "co-with-promise": { + "version": "4.6.0", + "bundled": true, + "requires": { + "pinkie-promise": "1.0.0" + }, + "dependencies": { + "pinkie": { + "version": "1.0.0", + "bundled": true + }, + "pinkie-promise": { + "version": "1.0.0", + "bundled": true, + "requires": { + "pinkie": "1.0.0" + } + } + } + }, + "code-excerpt": { + "version": "2.1.0", + "bundled": true, + "requires": { + "convert-to-spaces": "1.0.2" + } + }, + "code-point-at": { + "version": "1.1.0", + "bundled": true + }, + "color-convert": { + "version": "1.9.0", + "bundled": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "bundled": true + }, + "colors": { + "version": "1.0.3", + "bundled": true, + "dev": true + }, + "columnify": { + "version": "1.5.4", + "bundled": true, + "requires": { + "strip-ansi": "3.0.1", + "wcwidth": "1.0.1" + } + }, + "combined-stream": { + "version": "1.0.5", + "bundled": true, + "dev": true, + "requires": { + "delayed-stream": "1.0.0" + } + }, + "command-join": { + "version": "2.0.0", + "bundled": true + }, + "commander": { + "version": "2.9.0", + "bundled": true, + "dev": true, + "requires": { + "graceful-readlink": "1.0.1" + } + }, + "common-path-prefix": { + "version": "1.0.0", + "bundled": true + }, + "commondir": { + "version": "1.0.1", + "bundled": true + }, + "compare-func": { + "version": "1.3.2", + "bundled": true, + "requires": { + "array-ify": "1.0.0", + "dot-prop": "3.0.0" + }, + "dependencies": { + "dot-prop": { + "version": "3.0.0", + "bundled": true, + "requires": { + "is-obj": "1.0.1" + } + } + } + }, + "concat-map": { + "version": "0.0.1", + "bundled": true + }, + "concat-stream": { + "version": "1.6.0", + "bundled": true, + "requires": { + "inherits": "2.0.3", + "readable-stream": "2.3.3", + "typedarray": "0.0.6" + } + }, + "configstore": { + "version": "2.1.0", + "bundled": true, + "requires": { + "dot-prop": "3.0.0", + "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" + }, + "dependencies": { + "dot-prop": { + "version": "3.0.0", + "bundled": true, + "requires": { + "is-obj": "1.0.1" + } + }, + "uuid": { + "version": "2.0.3", + "bundled": true + }, + "write-file-atomic": { + "version": "1.3.4", + "bundled": true, + "requires": { + "graceful-fs": "4.1.11", + "imurmurhash": "0.1.4", + "slide": "1.1.6" + } + } + } + }, + "console-control-strings": { + "version": "1.1.0", + "bundled": true + }, + "conventional-changelog": { + "version": "1.1.5", + "bundled": true, + "requires": { + "conventional-changelog-angular": "1.5.0", + "conventional-changelog-atom": "0.1.1", + "conventional-changelog-codemirror": "0.2.0", + "conventional-changelog-core": "1.9.1", + "conventional-changelog-ember": "0.2.7", + "conventional-changelog-eslint": "0.2.0", + "conventional-changelog-express": "0.2.0", + "conventional-changelog-jquery": "0.1.0", + "conventional-changelog-jscs": "0.1.0", + "conventional-changelog-jshint": "0.2.0" + } + }, + "conventional-changelog-angular": { + "version": "1.5.0", + "bundled": true, + "requires": { + "compare-func": "1.3.2", + "q": "1.5.0" + } + }, + "conventional-changelog-atom": { + "version": "0.1.1", + "bundled": true, + "requires": { + "q": "1.5.0" + } + }, + "conventional-changelog-cli": { + "version": "1.3.3", + "bundled": true, + "requires": { + "add-stream": "1.0.0", + "conventional-changelog": "1.1.5", + "lodash": "4.17.4", + "meow": "3.7.0", + "tempfile": "1.1.1" + } + }, + "conventional-changelog-codemirror": { + "version": "0.2.0", + "bundled": true, + "requires": { + "q": "1.5.0" + } + }, + "conventional-changelog-core": { + "version": "1.9.1", + "bundled": true, + "requires": { + "conventional-changelog-writer": "2.0.1", + "conventional-commits-parser": "2.0.0", + "dateformat": "1.0.12", + "get-pkg-repo": "1.4.0", + "git-raw-commits": "1.2.0", + "git-remote-origin-url": "2.0.0", + "git-semver-tags": "1.2.1", + "lodash": "4.17.4", + "normalize-package-data": "2.4.0", + "q": "1.5.0", + "read-pkg": "1.1.0", + "read-pkg-up": "1.0.1", + "through2": "2.0.3" + } + }, + "conventional-changelog-ember": { + "version": "0.2.7", + "bundled": true, + "requires": { + "q": "1.5.0" + } + }, + "conventional-changelog-eslint": { + "version": "0.2.0", + "bundled": true, + "requires": { + "q": "1.5.0" + } + }, + "conventional-changelog-express": { + "version": "0.2.0", + "bundled": true, + "requires": { + "q": "1.5.0" + } + }, + "conventional-changelog-jquery": { + "version": "0.1.0", + "bundled": true, + "requires": { + "q": "1.5.0" + } + }, + "conventional-changelog-jscs": { + "version": "0.1.0", + "bundled": true, + "requires": { + "q": "1.5.0" + } + }, + "conventional-changelog-jshint": { + "version": "0.2.0", + "bundled": true, + "requires": { + "compare-func": "1.3.2", + "q": "1.5.0" + } + }, + "conventional-changelog-writer": { + "version": "2.0.1", + "bundled": true, + "requires": { + "compare-func": "1.3.2", + "conventional-commits-filter": "1.0.0", + "dateformat": "1.0.12", + "handlebars": "4.0.10", + "json-stringify-safe": "5.0.1", + "lodash": "4.17.4", + "meow": "3.7.0", + "semver": "5.4.1", + "split": "1.0.1", + "through2": "2.0.3" + } + }, + "conventional-commits-filter": { + "version": "1.0.0", + "bundled": true, + "requires": { + "is-subset": "0.1.1", + "modify-values": "1.0.0" + } + }, + "conventional-commits-parser": { + "version": "2.0.0", + "bundled": true, + "requires": { + "JSONStream": "1.3.1", + "is-text-path": "1.0.1", + "lodash": "4.17.4", + "meow": "3.7.0", + "split2": "2.1.1", + "through2": "2.0.3", + "trim-off-newlines": "1.0.1" + } + }, + "conventional-recommended-bump": { + "version": "1.0.1", + "bundled": true, + "requires": { + "concat-stream": "1.6.0", + "conventional-commits-filter": "1.0.0", + "conventional-commits-parser": "2.0.0", + "git-raw-commits": "1.2.0", + "git-semver-tags": "1.2.1", + "meow": "3.7.0", + "object-assign": "4.1.1" + } + }, + "convert-source-map": { + "version": "1.5.0", + "bundled": true + }, + "convert-to-spaces": { + "version": "1.0.2", + "bundled": true + }, + "core-assert": { + "version": "0.2.1", + "bundled": true, + "requires": { + "buf-compare": "1.0.1", + "is-error": "2.2.1" + } + }, + "core-js": { + "version": "2.5.1", + "bundled": true + }, + "core-util-is": { + "version": "1.0.2", + "bundled": true + }, + "create-error-class": { + "version": "3.0.2", + "bundled": true, + "requires": { + "capture-stack-trace": "1.0.0" + } + }, + "cross-env": { + "version": "3.2.4", + "bundled": true, + "requires": { + "cross-spawn": "5.1.0", + "is-windows": "1.0.1" + } + }, + "cross-spawn": { + "version": "5.1.0", + "bundled": true, + "requires": { + "lru-cache": "4.1.1", + "shebang-command": "1.2.0", + "which": "1.3.0" + } + }, + "cryptiles": { + "version": "3.1.2", + "bundled": true, + "dev": true, + "requires": { + "boom": "5.2.0" + }, + "dependencies": { + "boom": { + "version": "5.2.0", + "bundled": true, + "dev": true, + "requires": { + "hoek": "4.2.0" + } + } + } + }, + "crypto-random-string": { + "version": "1.0.0", + "bundled": true + }, + "currently-unhandled": { + "version": "0.4.1", + "bundled": true, + "requires": { + "array-find-index": "1.0.2" + } + }, + "dargs": { + "version": "4.1.0", + "bundled": true, + "requires": { + "number-is-nan": "1.0.1" + } + }, + "dashdash": { + "version": "1.14.1", + "bundled": true, + "dev": true, + "requires": { + "assert-plus": "1.0.0" + } + }, + "date-time": { + "version": "0.1.1", + "bundled": true + }, + "dateformat": { + "version": "1.0.12", + "bundled": true, + "requires": { + "get-stdin": "4.0.1", + "meow": "3.7.0" + } + }, + "debug": { + "version": "2.6.8", + "bundled": true, + "requires": { + "ms": "2.0.0" + } + }, + "decamelize": { + "version": "1.2.0", + "bundled": true + }, + "dedent": { + "version": "0.7.0", + "bundled": true + }, + "deep-equal": { + "version": "1.0.1", + "bundled": true + }, + "deep-extend": { + "version": "0.4.2", + "bundled": true + }, + "defaults": { + "version": "1.0.3", + "bundled": true, + "requires": { + "clone": "1.0.2" + } + }, + "delayed-stream": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "delegates": { + "version": "1.0.0", + "bundled": true + }, + "detect-indent": { + "version": "4.0.0", + "bundled": true, + "requires": { + "repeating": "2.0.1" + } + }, + "diff": { + "version": "3.3.1", + "bundled": true + }, + "dir-compare": { + "version": "1.4.0", + "bundled": true, + "dev": true, + "requires": { + "bluebird": "3.4.1", + "buffer-equal": "1.0.0", + "colors": "1.0.3", + "commander": "2.9.0", + "minimatch": "3.0.2" + }, + "dependencies": { + "bluebird": { + "version": "3.4.1", + "bundled": true, + "dev": true + } + } + }, + "dot-prop": { + "version": "4.2.0", + "bundled": true, + "requires": { + "is-obj": "1.0.1" + } + }, + "duplexer": { + "version": "0.1.1", + "bundled": true + }, + "duplexer2": { + "version": "0.1.4", + "bundled": true, + "requires": { + "readable-stream": "2.3.3" + } + }, + "duplexer3": { + "version": "0.1.4", + "bundled": true + }, + "ecc-jsbn": { + "version": "0.1.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "jsbn": "0.1.1" + } + }, + "empower-core": { + "version": "0.6.2", + "bundled": true, + "requires": { + "call-signature": "0.0.2", + "core-js": "2.5.1" + } + }, + "equal-length": { + "version": "1.0.1", + "bundled": true + }, + "error-ex": { + "version": "1.3.1", + "bundled": true, + "requires": { + "is-arrayish": "0.2.1" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "bundled": true + }, + "espower-location-detector": { + "version": "1.0.0", + "bundled": true, + "requires": { + "is-url": "1.2.2", + "path-is-absolute": "1.0.1", + "source-map": "0.5.7", + "xtend": "4.0.1" + } + }, + "espurify": { + "version": "1.7.0", + "bundled": true, + "requires": { + "core-js": "2.5.1" + } + }, + "estraverse": { + "version": "4.2.0", + "bundled": true + }, + "esutils": { + "version": "2.0.2", + "bundled": true + }, + "execa": { + "version": "0.7.0", + "bundled": true, + "requires": { + "cross-spawn": "5.1.0", + "get-stream": "3.0.0", + "is-stream": "1.1.0", + "npm-run-path": "2.0.2", + "p-finally": "1.0.0", + "signal-exit": "3.0.2", + "strip-eof": "1.0.0" + } + }, + "expand-brackets": { + "version": "0.1.5", + "bundled": true, + "requires": { + "is-posix-bracket": "0.1.1" + } + }, + "expand-range": { + "version": "1.8.2", + "bundled": true, + "requires": { + "fill-range": "2.2.3" + } + }, + "extend": { + "version": "3.0.1", + "bundled": true, + "dev": true + }, + "external-editor": { + "version": "2.0.5", + "bundled": true, + "requires": { + "iconv-lite": "0.4.19", + "jschardet": "1.5.1", + "tmp": "0.0.33" + }, + "dependencies": { + "tmp": { + "version": "0.0.33", + "bundled": true, + "requires": { + "os-tmpdir": "1.0.2" + } + } + } + }, + "extglob": { + "version": "0.3.2", + "bundled": true, + "requires": { + "is-extglob": "1.0.0" + } + }, + "extsprintf": { + "version": "1.3.0", + "bundled": true, + "dev": true + }, + "fast-deep-equal": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "figures": { + "version": "2.0.0", + "bundled": true, + "requires": { + "escape-string-regexp": "1.0.5" + } + }, + "filename-regex": { + "version": "2.0.1", + "bundled": true + }, + "fill-range": { + "version": "2.2.3", + "bundled": true, + "requires": { + "is-number": "2.1.0", + "isobject": "2.1.0", + "randomatic": "1.1.7", + "repeat-element": "1.1.2", + "repeat-string": "1.6.1" + } + }, + "filled-array": { + "version": "1.1.0", + "bundled": true + }, + "find-cache-dir": { + "version": "0.1.1", + "bundled": true, + "requires": { + "commondir": "1.0.1", + "mkdirp": "0.5.1", + "pkg-dir": "1.0.0" + } + }, + "find-up": { + "version": "1.1.2", + "bundled": true, + "requires": { + "path-exists": "2.1.0", + "pinkie-promise": "2.0.1" + } + }, + "findup-sync": { + "version": "0.3.0", + "bundled": true, + "requires": { + "glob": "5.0.15" + }, + "dependencies": { + "glob": { + "version": "5.0.15", + "bundled": true, + "requires": { + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.2", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + } + } + } + }, + "fn-name": { + "version": "2.0.1", + "bundled": true + }, + "for-in": { + "version": "1.0.2", + "bundled": true + }, + "for-own": { + "version": "0.1.5", + "bundled": true, + "requires": { + "for-in": "1.0.2" + } + }, + "forever-agent": { + "version": "0.6.1", + "bundled": true, + "dev": true + }, + "form-data": { + "version": "2.3.1", + "bundled": true, + "dev": true, + "requires": { + "asynckit": "0.4.0", + "combined-stream": "1.0.5", + "mime-types": "2.1.17" + } + }, + "fs-access": { + "version": "1.0.1", + "bundled": true, + "requires": { + "null-check": "1.0.0" + } + }, + "fs-extra": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "requires": { + "graceful-fs": "4.1.11", + "jsonfile": "3.0.1", + "universalify": "0.1.1" + } + }, + "fs.realpath": { + "version": "1.0.0", + "bundled": true + }, + "fsevents": { + "version": "1.1.2", + "bundled": true, + "optional": true, + "requires": { + "nan": "2.7.0", + "node-pre-gyp": "0.6.36" + }, + "dependencies": { + "abbrev": { + "version": "1.1.0", + "bundled": true, + "optional": true + }, + "ajv": { + "version": "4.11.8", + "bundled": true, + "optional": true, + "requires": { + "co": "4.6.0", + "json-stable-stringify": "1.0.1" + } + }, + "ansi-regex": { + "version": "2.1.1", + "bundled": true + }, + "aproba": { + "version": "1.1.1", + "bundled": true, + "optional": true + }, + "are-we-there-yet": { + "version": "1.1.4", + "bundled": true, + "optional": true, + "requires": { + "delegates": "1.0.0", + "readable-stream": "2.2.9" + } + }, + "asn1": { + "version": "0.2.3", + "bundled": true, + "optional": true + }, + "assert-plus": { + "version": "0.2.0", + "bundled": true, + "optional": true + }, + "asynckit": { + "version": "0.4.0", + "bundled": true, + "optional": true + }, + "aws-sign2": { + "version": "0.6.0", + "bundled": true, + "optional": true + }, + "aws4": { + "version": "1.6.0", + "bundled": true, + "optional": true + }, + "balanced-match": { + "version": "0.4.2", + "bundled": true + }, + "bcrypt-pbkdf": { + "version": "1.0.1", + "bundled": true, + "optional": true, + "requires": { + "tweetnacl": "0.14.5" + } + }, + "block-stream": { + "version": "0.0.9", + "bundled": true, + "requires": { + "inherits": "2.0.3" + } + }, + "boom": { + "version": "2.10.1", + "bundled": true, + "requires": { + "hoek": "2.16.3" + } + }, + "brace-expansion": { + "version": "1.1.7", + "bundled": true, + "requires": { + "balanced-match": "0.4.2", + "concat-map": "0.0.1" + } + }, + "buffer-shims": { + "version": "1.0.0", + "bundled": true + }, + "caseless": { + "version": "0.12.0", + "bundled": true, + "optional": true + }, + "co": { + "version": "4.6.0", + "bundled": true, + "optional": true + }, + "code-point-at": { + "version": "1.1.0", + "bundled": true + }, + "combined-stream": { + "version": "1.0.5", + "bundled": true, + "requires": { + "delayed-stream": "1.0.0" + } + }, + "concat-map": { + "version": "0.0.1", + "bundled": true + }, + "console-control-strings": { + "version": "1.1.0", + "bundled": true + }, + "core-util-is": { + "version": "1.0.2", + "bundled": true + }, + "cryptiles": { + "version": "2.0.5", + "bundled": true, + "optional": true, + "requires": { + "boom": "2.10.1" + } + }, + "dashdash": { + "version": "1.14.1", + "bundled": true, + "optional": true, + "requires": { + "assert-plus": "1.0.0" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "bundled": true, + "optional": true + } + } + }, + "debug": { + "version": "2.6.8", + "bundled": true, + "optional": true, + "requires": { + "ms": "2.0.0" + } + }, + "deep-extend": { + "version": "0.4.2", + "bundled": true, + "optional": true + }, + "delayed-stream": { + "version": "1.0.0", + "bundled": true + }, + "delegates": { + "version": "1.0.0", + "bundled": true, + "optional": true + }, + "ecc-jsbn": { + "version": "0.1.1", + "bundled": true, + "optional": true, + "requires": { + "jsbn": "0.1.1" + } + }, + "extend": { + "version": "3.0.1", + "bundled": true, + "optional": true + }, + "extsprintf": { + "version": "1.0.2", + "bundled": true + }, + "forever-agent": { + "version": "0.6.1", + "bundled": true, + "optional": true + }, + "form-data": { + "version": "2.1.4", + "bundled": true, + "optional": true, + "requires": { + "asynckit": "0.4.0", + "combined-stream": "1.0.5", + "mime-types": "2.1.15" + } + }, + "fs.realpath": { + "version": "1.0.0", + "bundled": true + }, + "fstream": { + "version": "1.0.11", + "bundled": true, + "requires": { + "graceful-fs": "4.1.11", + "inherits": "2.0.3", + "mkdirp": "0.5.1", + "rimraf": "2.6.1" + } + }, + "fstream-ignore": { + "version": "1.0.5", + "bundled": true, + "optional": true, + "requires": { + "fstream": "1.0.11", + "inherits": "2.0.3", + "minimatch": "3.0.4" + } + }, + "gauge": { + "version": "2.7.4", + "bundled": true, + "optional": true, + "requires": { + "aproba": "1.1.1", + "console-control-strings": "1.1.0", + "has-unicode": "2.0.1", + "object-assign": "4.1.1", + "signal-exit": "3.0.2", + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "wide-align": "1.1.2" + } + }, + "getpass": { + "version": "0.1.7", + "bundled": true, + "optional": true, + "requires": { + "assert-plus": "1.0.0" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "bundled": true, + "optional": true + } + } + }, + "glob": { + "version": "7.1.2", + "bundled": true, + "requires": { + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + } + }, + "graceful-fs": { + "version": "4.1.11", + "bundled": true + }, + "har-schema": { + "version": "1.0.5", + "bundled": true, + "optional": true + }, + "har-validator": { + "version": "4.2.1", + "bundled": true, + "optional": true, + "requires": { + "ajv": "4.11.8", + "har-schema": "1.0.5" + } + }, + "has-unicode": { + "version": "2.0.1", + "bundled": true, + "optional": true + }, + "hawk": { + "version": "3.1.3", + "bundled": true, + "optional": true, + "requires": { + "boom": "2.10.1", + "cryptiles": "2.0.5", + "hoek": "2.16.3", + "sntp": "1.0.9" + } + }, + "hoek": { + "version": "2.16.3", + "bundled": true + }, + "http-signature": { + "version": "1.1.1", + "bundled": true, + "optional": true, + "requires": { + "assert-plus": "0.2.0", + "jsprim": "1.4.0", + "sshpk": "1.13.0" + } + }, + "inflight": { + "version": "1.0.6", + "bundled": true, + "requires": { + "once": "1.4.0", + "wrappy": "1.0.2" + } + }, + "inherits": { + "version": "2.0.3", + "bundled": true + }, + "ini": { + "version": "1.3.4", + "bundled": true, + "optional": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "bundled": true, + "requires": { + "number-is-nan": "1.0.1" + } + }, + "is-typedarray": { + "version": "1.0.0", + "bundled": true, + "optional": true + }, + "isarray": { + "version": "1.0.0", + "bundled": true + }, + "isstream": { + "version": "0.1.2", + "bundled": true, + "optional": true + }, + "jodid25519": { + "version": "1.0.2", + "bundled": true, + "optional": true, + "requires": { + "jsbn": "0.1.1" + } + }, + "jsbn": { + "version": "0.1.1", + "bundled": true, + "optional": true + }, + "json-schema": { + "version": "0.2.3", + "bundled": true, + "optional": true + }, + "json-stable-stringify": { + "version": "1.0.1", + "bundled": true, + "optional": true, + "requires": { + "jsonify": "0.0.0" + } + }, + "json-stringify-safe": { + "version": "5.0.1", + "bundled": true, + "optional": true + }, + "jsonify": { + "version": "0.0.0", + "bundled": true, + "optional": true + }, + "jsprim": { + "version": "1.4.0", + "bundled": true, + "optional": true, + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.0.2", + "json-schema": "0.2.3", + "verror": "1.3.6" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "bundled": true, + "optional": true + } + } + }, + "mime-db": { + "version": "1.27.0", + "bundled": true + }, + "mime-types": { + "version": "2.1.15", + "bundled": true, + "requires": { + "mime-db": "1.27.0" + } + }, + "minimatch": { + "version": "3.0.4", + "bundled": true, + "requires": { + "brace-expansion": "1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "bundled": true + }, + "mkdirp": { + "version": "0.5.1", + "bundled": true, + "requires": { + "minimist": "0.0.8" + } + }, + "ms": { + "version": "2.0.0", + "bundled": true, + "optional": true + }, + "node-pre-gyp": { + "version": "0.6.36", + "bundled": true, + "optional": true, + "requires": { + "mkdirp": "0.5.1", + "nopt": "4.0.1", + "npmlog": "4.1.0", + "rc": "1.2.1", + "request": "2.81.0", + "rimraf": "2.6.1", + "semver": "5.3.0", + "tar": "2.2.1", + "tar-pack": "3.4.0" + } + }, + "nopt": { + "version": "4.0.1", + "bundled": true, + "optional": true, + "requires": { + "abbrev": "1.1.0", + "osenv": "0.1.4" + } + }, + "npmlog": { + "version": "4.1.0", + "bundled": true, + "optional": true, + "requires": { + "are-we-there-yet": "1.1.4", + "console-control-strings": "1.1.0", + "gauge": "2.7.4", + "set-blocking": "2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "bundled": true + }, + "oauth-sign": { + "version": "0.8.2", + "bundled": true, + "optional": true + }, + "object-assign": { + "version": "4.1.1", + "bundled": true, + "optional": true + }, + "once": { + "version": "1.4.0", + "bundled": true, + "requires": { + "wrappy": "1.0.2" + } + }, + "os-homedir": { + "version": "1.0.2", + "bundled": true, + "optional": true + }, + "os-tmpdir": { + "version": "1.0.2", + "bundled": true, + "optional": true + }, + "osenv": { + "version": "0.1.4", + "bundled": true, + "optional": true, + "requires": { + "os-homedir": "1.0.2", + "os-tmpdir": "1.0.2" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "bundled": true + }, + "performance-now": { + "version": "0.2.0", + "bundled": true, + "optional": true + }, + "process-nextick-args": { + "version": "1.0.7", + "bundled": true + }, + "punycode": { + "version": "1.4.1", + "bundled": true, + "optional": true + }, + "qs": { + "version": "6.4.0", + "bundled": true, + "optional": true + }, + "rc": { + "version": "1.2.1", + "bundled": true, + "optional": true, + "requires": { + "deep-extend": "0.4.2", + "ini": "1.3.4", + "minimist": "1.2.0", + "strip-json-comments": "2.0.1" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "bundled": true, + "optional": true + } + } + }, + "readable-stream": { + "version": "2.2.9", + "bundled": true, + "requires": { + "buffer-shims": "1.0.0", + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "string_decoder": "1.0.1", + "util-deprecate": "1.0.2" + } + }, + "request": { + "version": "2.81.0", + "bundled": true, + "optional": true, + "requires": { + "aws-sign2": "0.6.0", + "aws4": "1.6.0", + "caseless": "0.12.0", + "combined-stream": "1.0.5", + "extend": "3.0.1", + "forever-agent": "0.6.1", + "form-data": "2.1.4", + "har-validator": "4.2.1", + "hawk": "3.1.3", + "http-signature": "1.1.1", + "is-typedarray": "1.0.0", + "isstream": "0.1.2", + "json-stringify-safe": "5.0.1", + "mime-types": "2.1.15", + "oauth-sign": "0.8.2", + "performance-now": "0.2.0", + "qs": "6.4.0", + "safe-buffer": "5.0.1", + "stringstream": "0.0.5", + "tough-cookie": "2.3.2", + "tunnel-agent": "0.6.0", + "uuid": "3.0.1" + } + }, + "rimraf": { + "version": "2.6.1", + "bundled": true, + "requires": { + "glob": "7.1.2" + } + }, + "safe-buffer": { + "version": "5.0.1", + "bundled": true + }, + "semver": { + "version": "5.3.0", + "bundled": true, + "optional": true + }, + "set-blocking": { + "version": "2.0.0", + "bundled": true, + "optional": true + }, + "signal-exit": { + "version": "3.0.2", + "bundled": true, + "optional": true + }, + "sntp": { + "version": "1.0.9", + "bundled": true, + "optional": true, + "requires": { + "hoek": "2.16.3" + } + }, + "sshpk": { + "version": "1.13.0", + "bundled": true, + "optional": true, + "requires": { + "asn1": "0.2.3", + "assert-plus": "1.0.0", + "bcrypt-pbkdf": "1.0.1", + "dashdash": "1.14.1", + "ecc-jsbn": "0.1.1", + "getpass": "0.1.7", + "jodid25519": "1.0.2", + "jsbn": "0.1.1", + "tweetnacl": "0.14.5" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "bundled": true, + "optional": true + } + } + }, + "string-width": { + "version": "1.0.2", + "bundled": true, + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + }, + "string_decoder": { + "version": "1.0.1", + "bundled": true, + "requires": { + "safe-buffer": "5.0.1" + } + }, + "stringstream": { + "version": "0.0.5", + "bundled": true, + "optional": true + }, + "strip-ansi": { + "version": "3.0.1", + "bundled": true, + "requires": { + "ansi-regex": "2.1.1" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "bundled": true, + "optional": true + }, + "tar": { + "version": "2.2.1", + "bundled": true, + "requires": { + "block-stream": "0.0.9", + "fstream": "1.0.11", + "inherits": "2.0.3" + } + }, + "tar-pack": { + "version": "3.4.0", + "bundled": true, + "optional": true, + "requires": { + "debug": "2.6.8", + "fstream": "1.0.11", + "fstream-ignore": "1.0.5", + "once": "1.4.0", + "readable-stream": "2.2.9", + "rimraf": "2.6.1", + "tar": "2.2.1", + "uid-number": "0.0.6" + } + }, + "tough-cookie": { + "version": "2.3.2", + "bundled": true, + "optional": true, + "requires": { + "punycode": "1.4.1" + } + }, + "tunnel-agent": { + "version": "0.6.0", + "bundled": true, + "optional": true, + "requires": { + "safe-buffer": "5.0.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "bundled": true, + "optional": true + }, + "uid-number": { + "version": "0.0.6", + "bundled": true, + "optional": true + }, + "util-deprecate": { + "version": "1.0.2", + "bundled": true + }, + "uuid": { + "version": "3.0.1", + "bundled": true, + "optional": true + }, + "verror": { + "version": "1.3.6", + "bundled": true, + "optional": true, + "requires": { + "extsprintf": "1.0.2" + } + }, + "wide-align": { + "version": "1.1.2", + "bundled": true, + "optional": true, + "requires": { + "string-width": "1.0.2" + } + }, + "wrappy": { + "version": "1.0.2", + "bundled": true + } + } + }, + "gauge": { + "version": "2.7.4", + "bundled": true, + "requires": { + "aproba": "1.2.0", + "console-control-strings": "1.1.0", + "has-unicode": "2.0.1", + "object-assign": "4.1.1", + "signal-exit": "3.0.2", + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "wide-align": "1.1.2" + } + }, + "get-caller-file": { + "version": "1.0.2", + "bundled": true + }, + "get-pkg-repo": { + "version": "1.4.0", + "bundled": true, + "requires": { + "hosted-git-info": "2.5.0", + "meow": "3.7.0", + "normalize-package-data": "2.4.0", + "parse-github-repo-url": "1.4.1", + "through2": "2.0.3" + } + }, + "get-port": { + "version": "2.1.0", + "bundled": true, + "requires": { + "pinkie-promise": "2.0.1" + } + }, + "get-stdin": { + "version": "4.0.1", + "bundled": true + }, + "get-stream": { + "version": "3.0.0", + "bundled": true + }, + "getpass": { + "version": "0.1.7", + "bundled": true, + "dev": true, + "requires": { + "assert-plus": "1.0.0" + } + }, + "git-raw-commits": { + "version": "1.2.0", + "bundled": true, + "requires": { + "dargs": "4.1.0", + "lodash.template": "4.4.0", + "meow": "3.7.0", + "split2": "2.1.1", + "through2": "2.0.3" + } + }, + "git-remote-origin-url": { + "version": "2.0.0", + "bundled": true, + "requires": { + "gitconfiglocal": "1.0.0", + "pify": "2.3.0" + } + }, + "git-semver-tags": { + "version": "1.2.1", + "bundled": true, + "requires": { + "meow": "3.7.0", + "semver": "5.4.1" + } + }, + "gitconfiglocal": { + "version": "1.0.0", + "bundled": true, + "requires": { + "ini": "1.3.4" + } + }, + "glob": { + "version": "7.1.2", + "bundled": true, + "requires": { + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + }, + "dependencies": { + "minimatch": { + "version": "3.0.4", + "bundled": true, + "requires": { + "brace-expansion": "1.1.8" + } + } + } + }, + "glob-base": { + "version": "0.3.0", + "bundled": true, + "requires": { + "glob-parent": "2.0.0", + "is-glob": "2.0.1" + } + }, + "glob-parent": { + "version": "2.0.0", + "bundled": true, + "requires": { + "is-glob": "2.0.1" + } + }, + "globals": { + "version": "9.18.0", + "bundled": true + }, + "globby": { + "version": "6.1.0", + "bundled": true, + "requires": { + "array-union": "1.0.2", + "glob": "7.1.2", + "object-assign": "4.1.1", + "pify": "2.3.0", + "pinkie-promise": "2.0.1" + } + }, + "got": { + "version": "5.7.1", + "bundled": true, + "requires": { + "create-error-class": "3.0.2", + "duplexer2": "0.1.4", + "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", + "url-parse-lax": "1.0.0" + } + }, + "graceful-fs": { + "version": "4.1.11", + "bundled": true + }, + "graceful-readlink": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "handlebars": { + "version": "4.0.10", + "bundled": true, + "requires": { + "async": "1.5.2", + "optimist": "0.6.1", + "source-map": "0.4.4", + "uglify-js": "2.8.29" + }, + "dependencies": { + "source-map": { + "version": "0.4.4", + "bundled": true, + "requires": { + "amdefine": "1.0.1" + } + } + } + }, + "har-schema": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "har-validator": { + "version": "5.0.3", + "bundled": true, + "dev": true, + "requires": { + "ajv": "5.2.2", + "har-schema": "2.0.0" + } + }, + "has-ansi": { + "version": "2.0.0", + "bundled": true, + "requires": { + "ansi-regex": "2.1.1" + } + }, + "has-color": { + "version": "0.1.7", + "bundled": true + }, + "has-flag": { + "version": "2.0.0", + "bundled": true + }, + "has-unicode": { + "version": "2.0.1", + "bundled": true + }, + "has-yarn": { + "version": "1.0.0", + "bundled": true + }, + "hawk": { + "version": "6.0.2", + "bundled": true, + "dev": true, + "requires": { + "boom": "4.3.1", + "cryptiles": "3.1.2", + "hoek": "4.2.0", + "sntp": "2.0.2" + } + }, + "hoek": { + "version": "4.2.0", + "bundled": true, + "dev": true + }, + "home-or-tmp": { + "version": "2.0.0", + "bundled": true, + "requires": { + "os-homedir": "1.0.2", + "os-tmpdir": "1.0.2" + } + }, + "hosted-git-info": { + "version": "2.5.0", + "bundled": true + }, + "http-signature": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "requires": { + "assert-plus": "1.0.0", + "jsprim": "1.4.1", + "sshpk": "1.13.1" + } + }, + "iconv-lite": { + "version": "0.4.19", + "bundled": true + }, + "ignore-by-default": { + "version": "1.0.1", + "bundled": true + }, + "import-lazy": { + "version": "2.1.0", + "bundled": true + }, + "imurmurhash": { + "version": "0.1.4", + "bundled": true + }, + "indent-string": { + "version": "3.2.0", + "bundled": true + }, + "inflight": { + "version": "1.0.6", + "bundled": true, + "requires": { + "once": "1.4.0", + "wrappy": "1.0.2" + } + }, + "inherits": { + "version": "2.0.3", + "bundled": true + }, + "ini": { + "version": "1.3.4", + "bundled": true + }, + "inquirer": { + "version": "3.3.0", + "bundled": true, + "requires": { + "ansi-escapes": "3.0.0", + "chalk": "2.1.0", + "cli-cursor": "2.1.0", + "cli-width": "2.2.0", + "external-editor": "2.0.5", + "figures": "2.0.0", + "lodash": "4.17.4", + "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.1", + "strip-ansi": "4.0.0", + "through": "2.3.8" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "bundled": true + }, + "ansi-styles": { + "version": "3.2.0", + "bundled": true, + "requires": { + "color-convert": "1.9.0" + } + }, + "chalk": { + "version": "2.1.0", + "bundled": true, + "requires": { + "ansi-styles": "3.2.0", + "escape-string-regexp": "1.0.5", + "supports-color": "4.4.0" + } + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "bundled": true + }, + "string-width": { + "version": "2.1.1", + "bundled": true, + "requires": { + "is-fullwidth-code-point": "2.0.0", + "strip-ansi": "4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "bundled": true, + "requires": { + "ansi-regex": "3.0.0" + } + }, + "supports-color": { + "version": "4.4.0", + "bundled": true, + "requires": { + "has-flag": "2.0.0" + } + } + } + }, + "invariant": { + "version": "2.2.2", + "bundled": true, + "requires": { + "loose-envify": "1.3.1" + } + }, + "invert-kv": { + "version": "1.0.0", + "bundled": true + }, + "irregular-plurals": { + "version": "1.3.0", + "bundled": true + }, + "is-arrayish": { + "version": "0.2.1", + "bundled": true + }, + "is-binary-path": { + "version": "1.0.1", + "bundled": true, + "requires": { + "binary-extensions": "1.10.0" + } + }, + "is-buffer": { + "version": "1.1.5", + "bundled": true + }, + "is-builtin-module": { + "version": "1.0.0", + "bundled": true, + "requires": { + "builtin-modules": "1.1.1" + } + }, + "is-ci": { + "version": "1.0.10", + "bundled": true, + "requires": { + "ci-info": "1.1.1" + } + }, + "is-dotfile": { + "version": "1.0.3", + "bundled": true + }, + "is-equal-shallow": { + "version": "0.1.3", + "bundled": true, + "requires": { + "is-primitive": "2.0.0" + } + }, + "is-error": { + "version": "2.2.1", + "bundled": true + }, + "is-extendable": { + "version": "0.1.1", + "bundled": true + }, + "is-extglob": { + "version": "1.0.0", + "bundled": true + }, + "is-finite": { + "version": "1.0.2", + "bundled": true, + "requires": { + "number-is-nan": "1.0.1" + } + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "bundled": true, + "requires": { + "number-is-nan": "1.0.1" + } + }, + "is-generator-fn": { + "version": "1.0.0", + "bundled": true + }, + "is-glob": { + "version": "2.0.1", + "bundled": true, + "requires": { + "is-extglob": "1.0.0" + } + }, + "is-npm": { + "version": "1.0.0", + "bundled": true + }, + "is-number": { + "version": "2.1.0", + "bundled": true, + "requires": { + "kind-of": "3.2.2" + } + }, + "is-obj": { + "version": "1.0.1", + "bundled": true + }, + "is-observable": { + "version": "0.2.0", + "bundled": true, + "requires": { + "symbol-observable": "0.2.4" + } + }, + "is-plain-obj": { + "version": "1.1.0", + "bundled": true + }, + "is-posix-bracket": { + "version": "0.1.1", + "bundled": true + }, + "is-primitive": { + "version": "2.0.0", + "bundled": true + }, + "is-promise": { + "version": "2.1.0", + "bundled": true + }, + "is-redirect": { + "version": "1.0.0", + "bundled": true + }, + "is-retry-allowed": { + "version": "1.1.0", + "bundled": true + }, + "is-stream": { + "version": "1.1.0", + "bundled": true + }, + "is-subset": { + "version": "0.1.1", + "bundled": true + }, + "is-text-path": { + "version": "1.0.1", + "bundled": true, + "requires": { + "text-extensions": "1.6.0" + } + }, + "is-typedarray": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "is-url": { + "version": "1.2.2", + "bundled": true + }, + "is-utf8": { + "version": "0.2.1", + "bundled": true + }, + "is-windows": { + "version": "1.0.1", + "bundled": true + }, + "isarray": { + "version": "1.0.0", + "bundled": true + }, + "isexe": { + "version": "2.0.0", + "bundled": true + }, + "isobject": { + "version": "2.1.0", + "bundled": true, + "requires": { + "isarray": "1.0.0" + } + }, + "isstream": { + "version": "0.1.2", + "bundled": true, + "dev": true + }, + "jest-diff": { + "version": "18.1.0", + "bundled": true, + "requires": { + "chalk": "1.1.3", + "diff": "3.3.1", + "jest-matcher-utils": "18.1.0", + "pretty-format": "18.1.0" + } + }, + "jest-file-exists": { + "version": "17.0.0", + "bundled": true + }, + "jest-matcher-utils": { + "version": "18.1.0", + "bundled": true, + "requires": { + "chalk": "1.1.3", + "pretty-format": "18.1.0" + } + }, + "jest-mock": { + "version": "18.0.0", + "bundled": true + }, + "jest-snapshot": { + "version": "18.1.0", + "bundled": true, + "requires": { + "jest-diff": "18.1.0", + "jest-file-exists": "17.0.0", + "jest-matcher-utils": "18.1.0", + "jest-util": "18.1.0", + "natural-compare": "1.4.0", + "pretty-format": "18.1.0" + } + }, + "jest-util": { + "version": "18.1.0", + "bundled": true, + "requires": { + "chalk": "1.1.3", + "diff": "3.3.1", + "graceful-fs": "4.1.11", + "jest-file-exists": "17.0.0", + "jest-mock": "18.0.0", + "mkdirp": "0.5.1" + } + }, + "js-tokens": { + "version": "3.0.2", + "bundled": true + }, + "jsbn": { + "version": "0.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "jschardet": { + "version": "1.5.1", + "bundled": true + }, + "jsesc": { + "version": "0.5.0", + "bundled": true + }, + "json-schema": { + "version": "0.2.3", + "bundled": true, + "dev": true + }, + "json-schema-traverse": { + "version": "0.3.1", + "bundled": true, + "dev": true + }, + "json-stable-stringify": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "requires": { + "jsonify": "0.0.0" + } + }, + "json-stringify-safe": { + "version": "5.0.1", + "bundled": true + }, + "json5": { + "version": "0.5.1", + "bundled": true + }, + "jsonfile": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "requires": { + "graceful-fs": "4.1.11" + } + }, + "jsonify": { + "version": "0.0.0", + "bundled": true, + "dev": true + }, + "jsonparse": { + "version": "1.3.1", + "bundled": true + }, + "jsprim": { + "version": "1.4.1", + "bundled": true, + "dev": true, + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "kind-of": { + "version": "3.2.2", + "bundled": true, + "requires": { + "is-buffer": "1.1.5" + } + }, + "last-line-stream": { + "version": "1.0.0", + "bundled": true, + "requires": { + "through2": "2.0.3" + } + }, + "latest-version": { + "version": "2.0.0", + "bundled": true, + "requires": { + "package-json": "2.4.0" + } + }, + "lazy-cache": { + "version": "1.0.4", + "bundled": true, + "optional": true + }, + "lazy-req": { + "version": "1.1.0", + "bundled": true + }, + "lcid": { + "version": "1.0.0", + "bundled": true, + "requires": { + "invert-kv": "1.0.0" + } + }, + "lerna": { + "version": "2.2.0", + "bundled": true, + "requires": { + "async": "1.5.2", + "chalk": "2.1.0", + "cmd-shim": "2.0.2", + "columnify": "1.5.4", + "command-join": "2.0.0", + "conventional-changelog-cli": "1.3.3", + "conventional-recommended-bump": "1.0.1", + "dedent": "0.7.0", + "execa": "0.8.0", + "find-up": "2.1.0", + "fs-extra": "4.0.2", + "get-port": "3.2.0", + "glob": "7.1.2", + "glob-parent": "3.1.0", + "globby": "6.1.0", + "graceful-fs": "4.1.11", + "inquirer": "3.3.0", + "is-ci": "1.0.10", + "load-json-file": "3.0.0", + "lodash": "4.17.4", + "minimatch": "3.0.4", + "npmlog": "4.1.2", + "p-finally": "1.0.0", + "path-exists": "3.0.0", + "read-cmd-shim": "1.0.1", + "read-pkg": "2.0.0", + "rimraf": "2.6.2", + "safe-buffer": "5.1.1", + "semver": "5.4.1", + "signal-exit": "3.0.2", + "strong-log-transformer": "1.0.6", + "temp-write": "3.3.0", + "write-file-atomic": "2.3.0", + "write-json-file": "2.2.0", + "write-pkg": "3.1.0", + "yargs": "8.0.2" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "bundled": true + }, + "ansi-styles": { + "version": "3.2.0", + "bundled": true, + "requires": { + "color-convert": "1.9.0" + } + }, + "camelcase": { + "version": "4.1.0", + "bundled": true + }, + "chalk": { + "version": "2.1.0", + "bundled": true, + "requires": { + "ansi-styles": "3.2.0", + "escape-string-regexp": "1.0.5", + "supports-color": "4.4.0" + } + }, + "execa": { + "version": "0.8.0", + "bundled": true, + "requires": { + "cross-spawn": "5.1.0", + "get-stream": "3.0.0", + "is-stream": "1.1.0", + "npm-run-path": "2.0.2", + "p-finally": "1.0.0", + "signal-exit": "3.0.2", + "strip-eof": "1.0.0" + } + }, + "find-up": { + "version": "2.1.0", + "bundled": true, + "requires": { + "locate-path": "2.0.0" + } + }, + "fs-extra": { + "version": "4.0.2", + "bundled": true, + "requires": { + "graceful-fs": "4.1.11", + "jsonfile": "4.0.0", + "universalify": "0.1.1" + } + }, + "get-port": { + "version": "3.2.0", + "bundled": true + }, + "glob-parent": { + "version": "3.1.0", + "bundled": true, + "requires": { + "is-glob": "3.1.0", + "path-dirname": "1.0.2" + } + }, + "is-extglob": { + "version": "2.1.1", + "bundled": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "bundled": true + }, + "is-glob": { + "version": "3.1.0", + "bundled": true, + "requires": { + "is-extglob": "2.1.1" + } + }, + "jsonfile": { + "version": "4.0.0", + "bundled": true, + "requires": { + "graceful-fs": "4.1.11" + } + }, + "load-json-file": { + "version": "3.0.0", + "bundled": true, + "requires": { + "graceful-fs": "4.1.11", + "parse-json": "3.0.0", + "pify": "2.3.0", + "strip-bom": "3.0.0" + } + }, + "minimatch": { + "version": "3.0.4", + "bundled": true, + "requires": { + "brace-expansion": "1.1.8" + } + }, + "os-locale": { + "version": "2.1.0", + "bundled": true, + "requires": { + "execa": "0.7.0", + "lcid": "1.0.0", + "mem": "1.1.0" + }, + "dependencies": { + "execa": { + "version": "0.7.0", + "bundled": true, + "requires": { + "cross-spawn": "5.1.0", + "get-stream": "3.0.0", + "is-stream": "1.1.0", + "npm-run-path": "2.0.2", + "p-finally": "1.0.0", + "signal-exit": "3.0.2", + "strip-eof": "1.0.0" + } + } + } + }, + "parse-json": { + "version": "3.0.0", + "bundled": true, + "requires": { + "error-ex": "1.3.1" + } + }, + "path-exists": { + "version": "3.0.0", + "bundled": true + }, + "path-type": { + "version": "2.0.0", + "bundled": true, + "requires": { + "pify": "2.3.0" + } + }, + "read-pkg": { + "version": "2.0.0", + "bundled": true, + "requires": { + "load-json-file": "2.0.0", + "normalize-package-data": "2.4.0", + "path-type": "2.0.0" + }, + "dependencies": { + "load-json-file": { + "version": "2.0.0", + "bundled": true, + "requires": { + "graceful-fs": "4.1.11", + "parse-json": "2.2.0", + "pify": "2.3.0", + "strip-bom": "3.0.0" + } + }, + "parse-json": { + "version": "2.2.0", + "bundled": true, + "requires": { + "error-ex": "1.3.1" + } + } + } + }, + "read-pkg-up": { + "version": "2.0.0", + "bundled": true, + "requires": { + "find-up": "2.1.0", + "read-pkg": "2.0.0" + } + }, + "string-width": { + "version": "2.1.1", + "bundled": true, + "requires": { + "is-fullwidth-code-point": "2.0.0", + "strip-ansi": "4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "bundled": true, + "requires": { + "ansi-regex": "3.0.0" + } + }, + "strip-bom": { + "version": "3.0.0", + "bundled": true + }, + "supports-color": { + "version": "4.4.0", + "bundled": true, + "requires": { + "has-flag": "2.0.0" + } + }, + "which-module": { + "version": "2.0.0", + "bundled": true + }, + "yargs": { + "version": "8.0.2", + "bundled": true, + "requires": { + "camelcase": "4.1.0", + "cliui": "3.2.0", + "decamelize": "1.2.0", + "get-caller-file": "1.0.2", + "os-locale": "2.1.0", + "read-pkg-up": "2.0.0", + "require-directory": "2.1.1", + "require-main-filename": "1.0.1", + "set-blocking": "2.0.0", + "string-width": "2.1.1", + "which-module": "2.0.0", + "y18n": "3.2.1", + "yargs-parser": "7.0.0" + } + }, + "yargs-parser": { + "version": "7.0.0", + "bundled": true, + "requires": { + "camelcase": "4.1.0" + } + } + } + }, + "load-json-file": { + "version": "1.1.0", + "bundled": true, + "requires": { + "graceful-fs": "4.1.11", + "parse-json": "2.2.0", + "pify": "2.3.0", + "pinkie-promise": "2.0.1", + "strip-bom": "2.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "bundled": true, + "requires": { + "p-locate": "2.0.0", + "path-exists": "3.0.0" + }, + "dependencies": { + "path-exists": { + "version": "3.0.0", + "bundled": true + } + } + }, + "lodash": { + "version": "4.17.4", + "bundled": true + }, + "lodash._reinterpolate": { + "version": "3.0.0", + "bundled": true + }, + "lodash.debounce": { + "version": "4.0.8", + "bundled": true + }, + "lodash.difference": { + "version": "4.5.0", + "bundled": true + }, + "lodash.flatten": { + "version": "4.4.0", + "bundled": true + }, + "lodash.isequal": { + "version": "4.5.0", + "bundled": true + }, + "lodash.template": { + "version": "4.4.0", + "bundled": true, + "requires": { + "lodash._reinterpolate": "3.0.0", + "lodash.templatesettings": "4.1.0" + } + }, + "lodash.templatesettings": { + "version": "4.1.0", + "bundled": true, + "requires": { + "lodash._reinterpolate": "3.0.0" + } + }, + "longest": { + "version": "1.0.1", + "bundled": true + }, + "loose-envify": { + "version": "1.3.1", + "bundled": true, + "requires": { + "js-tokens": "3.0.2" + } + }, + "loud-rejection": { + "version": "1.6.0", + "bundled": true, + "requires": { + "currently-unhandled": "0.4.1", + "signal-exit": "3.0.2" + } + }, + "lowercase-keys": { + "version": "1.0.0", + "bundled": true + }, + "lru-cache": { + "version": "4.1.1", + "bundled": true, + "requires": { + "pseudomap": "1.0.2", + "yallist": "2.1.2" + } + }, + "make-dir": { + "version": "1.0.0", + "bundled": true, + "requires": { + "pify": "2.3.0" + } + }, + "map-obj": { + "version": "1.0.1", + "bundled": true + }, + "matcher": { + "version": "0.1.2", + "bundled": true, + "requires": { + "escape-string-regexp": "1.0.5" + } + }, + "max-timeout": { + "version": "1.0.0", + "bundled": true + }, + "md5-hex": { + "version": "2.0.0", + "bundled": true, + "requires": { + "md5-o-matic": "0.1.1" + } + }, + "md5-o-matic": { + "version": "0.1.1", + "bundled": true + }, + "mem": { + "version": "1.1.0", + "bundled": true, + "requires": { + "mimic-fn": "1.1.0" + } + }, + "meow": { + "version": "3.7.0", + "bundled": true, + "requires": { + "camelcase-keys": "2.1.0", + "decamelize": "1.2.0", + "loud-rejection": "1.6.0", + "map-obj": "1.0.1", + "minimist": "1.2.0", + "normalize-package-data": "2.4.0", + "object-assign": "4.1.1", + "read-pkg-up": "1.0.1", + "redent": "1.0.0", + "trim-newlines": "1.0.0" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "bundled": true + } + } + }, + "micromatch": { + "version": "2.3.11", + "bundled": true, + "requires": { + "arr-diff": "2.0.0", + "array-unique": "0.2.1", + "braces": "1.8.5", + "expand-brackets": "0.1.5", + "extglob": "0.3.2", + "filename-regex": "2.0.1", + "is-extglob": "1.0.0", + "is-glob": "2.0.1", + "kind-of": "3.2.2", + "normalize-path": "2.1.1", + "object.omit": "2.0.1", + "parse-glob": "3.0.4", + "regex-cache": "0.4.4" + } + }, + "mime-db": { + "version": "1.30.0", + "bundled": true, + "dev": true + }, + "mime-types": { + "version": "2.1.17", + "bundled": true, + "dev": true, + "requires": { + "mime-db": "1.30.0" + } + }, + "mimic-fn": { + "version": "1.1.0", + "bundled": true + }, + "minimatch": { + "version": "3.0.2", + "bundled": true, + "requires": { + "brace-expansion": "1.1.8" + } + }, + "minimist": { + "version": "0.0.8", + "bundled": true + }, + "mkdirp": { + "version": "0.5.1", + "bundled": true, + "requires": { + "minimist": "0.0.8" + } + }, + "modify-values": { + "version": "1.0.0", + "bundled": true + }, + "moment": { + "version": "2.18.1", + "bundled": true + }, + "ms": { + "version": "2.0.0", + "bundled": true + }, + "multimatch": { + "version": "2.1.0", + "bundled": true, + "requires": { + "array-differ": "1.0.0", + "array-union": "1.0.2", + "arrify": "1.0.1", + "minimatch": "3.0.2" + } + }, + "mute-stream": { + "version": "0.0.7", + "bundled": true + }, + "nan": { + "version": "2.7.0", + "bundled": true, + "optional": true + }, + "natural-compare": { + "version": "1.4.0", + "bundled": true + }, + "node-status-codes": { + "version": "1.0.0", + "bundled": true + }, + "normalize-package-data": { + "version": "2.4.0", + "bundled": true, + "requires": { + "hosted-git-info": "2.5.0", + "is-builtin-module": "1.0.0", + "semver": "5.4.1", + "validate-npm-package-license": "3.0.1" + } + }, + "normalize-path": { + "version": "2.1.1", + "bundled": true, + "requires": { + "remove-trailing-separator": "1.1.0" + } + }, + "npm-run-path": { + "version": "2.0.2", + "bundled": true, + "requires": { + "path-key": "2.0.1" + } + }, + "npmlog": { + "version": "4.1.2", + "bundled": true, + "requires": { + "are-we-there-yet": "1.1.4", + "console-control-strings": "1.1.0", + "gauge": "2.7.4", + "set-blocking": "2.0.0" + } + }, + "null-check": { + "version": "1.0.0", + "bundled": true + }, + "number-is-nan": { + "version": "1.0.1", + "bundled": true + }, + "nyc": { + "version": "10.3.2", + "bundled": true, + "requires": { + "archy": "1.0.0", + "arrify": "1.0.1", + "caching-transform": "1.0.1", + "convert-source-map": "1.5.0", + "debug-log": "1.0.1", + "default-require-extensions": "1.0.0", + "find-cache-dir": "0.1.1", + "find-up": "1.1.2", + "foreground-child": "1.5.6", + "glob": "7.1.1", + "istanbul-lib-coverage": "1.1.0", + "istanbul-lib-hook": "1.0.6", + "istanbul-lib-instrument": "1.7.1", + "istanbul-lib-report": "1.1.0", + "istanbul-lib-source-maps": "1.2.0", + "istanbul-reports": "1.1.0", + "md5-hex": "1.3.0", + "merge-source-map": "1.0.3", + "micromatch": "2.3.11", + "mkdirp": "0.5.1", + "resolve-from": "2.0.0", + "rimraf": "2.6.1", + "signal-exit": "3.0.2", + "spawn-wrap": "1.2.4", + "test-exclude": "4.1.0", + "yargs": "7.1.0", + "yargs-parser": "5.0.0" + }, + "dependencies": { + "align-text": { + "version": "0.1.4", + "bundled": true, + "requires": { + "kind-of": "3.2.0", + "longest": "1.0.1", + "repeat-string": "1.6.1" + } + }, + "amdefine": { + "version": "1.0.1", + "bundled": true + }, + "ansi-regex": { + "version": "2.1.1", + "bundled": true + }, + "ansi-styles": { + "version": "2.2.1", + "bundled": true + }, + "append-transform": { + "version": "0.4.0", + "bundled": true, + "requires": { + "default-require-extensions": "1.0.0" + } + }, + "archy": { + "version": "1.0.0", + "bundled": true + }, + "arr-diff": { + "version": "2.0.0", + "bundled": true, + "requires": { + "arr-flatten": "1.0.3" + } + }, + "arr-flatten": { + "version": "1.0.3", + "bundled": true + }, + "array-unique": { + "version": "0.2.1", + "bundled": true + }, + "arrify": { + "version": "1.0.1", + "bundled": true + }, + "async": { + "version": "1.5.2", + "bundled": true + }, + "babel-code-frame": { + "version": "6.22.0", + "bundled": true, + "requires": { + "chalk": "1.1.3", + "esutils": "2.0.2", + "js-tokens": "3.0.1" + } + }, + "babel-generator": { + "version": "6.24.1", + "bundled": true, + "requires": { + "babel-messages": "6.23.0", + "babel-runtime": "6.23.0", + "babel-types": "6.24.1", + "detect-indent": "4.0.0", + "jsesc": "1.3.0", + "lodash": "4.17.4", + "source-map": "0.5.6", + "trim-right": "1.0.1" + } + }, + "babel-messages": { + "version": "6.23.0", + "bundled": true, + "requires": { + "babel-runtime": "6.23.0" + } + }, + "babel-runtime": { + "version": "6.23.0", + "bundled": true, + "requires": { + "core-js": "2.4.1", + "regenerator-runtime": "0.10.5" + } + }, + "babel-template": { + "version": "6.24.1", + "bundled": true, + "requires": { + "babel-runtime": "6.23.0", + "babel-traverse": "6.24.1", + "babel-types": "6.24.1", + "babylon": "6.17.0", + "lodash": "4.17.4" + } + }, + "babel-traverse": { + "version": "6.24.1", + "bundled": true, + "requires": { + "babel-code-frame": "6.22.0", + "babel-messages": "6.23.0", + "babel-runtime": "6.23.0", + "babel-types": "6.24.1", + "babylon": "6.17.0", + "debug": "2.6.6", + "globals": "9.17.0", + "invariant": "2.2.2", + "lodash": "4.17.4" + } + }, + "babel-types": { + "version": "6.24.1", + "bundled": true, + "requires": { + "babel-runtime": "6.23.0", + "esutils": "2.0.2", + "lodash": "4.17.4", + "to-fast-properties": "1.0.3" + } + }, + "babylon": { + "version": "6.17.0", + "bundled": true + }, + "balanced-match": { + "version": "0.4.2", + "bundled": true + }, + "brace-expansion": { + "version": "1.1.7", + "bundled": true, + "requires": { + "balanced-match": "0.4.2", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "1.8.5", + "bundled": true, + "requires": { + "expand-range": "1.8.2", + "preserve": "0.2.0", + "repeat-element": "1.1.2" + } + }, + "builtin-modules": { + "version": "1.1.1", + "bundled": true + }, + "caching-transform": { + "version": "1.0.1", + "bundled": true, + "requires": { + "md5-hex": "1.3.0", + "mkdirp": "0.5.1", + "write-file-atomic": "1.3.4" + } + }, + "camelcase": { + "version": "1.2.1", + "bundled": true, + "optional": true + }, + "center-align": { + "version": "0.1.3", + "bundled": true, + "optional": true, + "requires": { + "align-text": "0.1.4", + "lazy-cache": "1.0.4" + } + }, + "chalk": { + "version": "1.1.3", + "bundled": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + } + }, + "cliui": { + "version": "2.1.0", + "bundled": true, + "optional": true, + "requires": { + "center-align": "0.1.3", + "right-align": "0.1.3", + "wordwrap": "0.0.2" + }, + "dependencies": { + "wordwrap": { + "version": "0.0.2", + "bundled": true, + "optional": true + } + } + }, + "code-point-at": { + "version": "1.1.0", + "bundled": true + }, + "commondir": { + "version": "1.0.1", + "bundled": true + }, + "concat-map": { + "version": "0.0.1", + "bundled": true + }, + "convert-source-map": { + "version": "1.5.0", + "bundled": true + }, + "core-js": { + "version": "2.4.1", + "bundled": true + }, + "cross-spawn": { + "version": "4.0.2", + "bundled": true, + "requires": { + "lru-cache": "4.0.2", + "which": "1.2.14" + } + }, + "debug": { + "version": "2.6.6", + "bundled": true, + "requires": { + "ms": "0.7.3" + } + }, + "debug-log": { + "version": "1.0.1", + "bundled": true + }, + "decamelize": { + "version": "1.2.0", + "bundled": true + }, + "default-require-extensions": { + "version": "1.0.0", + "bundled": true, + "requires": { + "strip-bom": "2.0.0" + } + }, + "detect-indent": { + "version": "4.0.0", + "bundled": true, + "requires": { + "repeating": "2.0.1" + } + }, + "error-ex": { + "version": "1.3.1", + "bundled": true, + "requires": { + "is-arrayish": "0.2.1" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "bundled": true + }, + "esutils": { + "version": "2.0.2", + "bundled": true + }, + "expand-brackets": { + "version": "0.1.5", + "bundled": true, + "requires": { + "is-posix-bracket": "0.1.1" + } + }, + "expand-range": { + "version": "1.8.2", + "bundled": true, + "requires": { + "fill-range": "2.2.3" + } + }, + "extglob": { + "version": "0.3.2", + "bundled": true, + "requires": { + "is-extglob": "1.0.0" + } + }, + "filename-regex": { + "version": "2.0.1", + "bundled": true + }, + "fill-range": { + "version": "2.2.3", + "bundled": true, + "requires": { + "is-number": "2.1.0", + "isobject": "2.1.0", + "randomatic": "1.1.6", + "repeat-element": "1.1.2", + "repeat-string": "1.6.1" + } + }, + "find-cache-dir": { + "version": "0.1.1", + "bundled": true, + "requires": { + "commondir": "1.0.1", + "mkdirp": "0.5.1", + "pkg-dir": "1.0.0" + } + }, + "find-up": { + "version": "1.1.2", + "bundled": true, + "requires": { + "path-exists": "2.1.0", + "pinkie-promise": "2.0.1" + } + }, + "for-in": { + "version": "1.0.2", + "bundled": true + }, + "for-own": { + "version": "0.1.5", + "bundled": true, + "requires": { + "for-in": "1.0.2" + } + }, + "foreground-child": { + "version": "1.5.6", + "bundled": true, + "requires": { + "cross-spawn": "4.0.2", + "signal-exit": "3.0.2" + } + }, + "fs.realpath": { + "version": "1.0.0", + "bundled": true + }, + "get-caller-file": { + "version": "1.0.2", + "bundled": true + }, + "glob": { + "version": "7.1.1", + "bundled": true, + "requires": { + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.3", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + } + }, + "glob-base": { + "version": "0.3.0", + "bundled": true, + "requires": { + "glob-parent": "2.0.0", + "is-glob": "2.0.1" + } + }, + "glob-parent": { + "version": "2.0.0", + "bundled": true, + "requires": { + "is-glob": "2.0.1" + } + }, + "globals": { + "version": "9.17.0", + "bundled": true + }, + "graceful-fs": { + "version": "4.1.11", + "bundled": true + }, + "handlebars": { + "version": "4.0.8", + "bundled": true, + "requires": { + "async": "1.5.2", + "optimist": "0.6.1", + "source-map": "0.4.4", + "uglify-js": "2.8.22" + }, + "dependencies": { + "source-map": { + "version": "0.4.4", + "bundled": true, + "requires": { + "amdefine": "1.0.1" + } + } + } + }, + "has-ansi": { + "version": "2.0.0", + "bundled": true, + "requires": { + "ansi-regex": "2.1.1" + } + }, + "has-flag": { + "version": "1.0.0", + "bundled": true + }, + "hosted-git-info": { + "version": "2.4.2", + "bundled": true + }, + "imurmurhash": { + "version": "0.1.4", + "bundled": true + }, + "inflight": { + "version": "1.0.6", + "bundled": true, + "requires": { + "once": "1.4.0", + "wrappy": "1.0.2" + } + }, + "inherits": { + "version": "2.0.3", + "bundled": true + }, + "invariant": { + "version": "2.2.2", + "bundled": true, + "requires": { + "loose-envify": "1.3.1" + } + }, + "invert-kv": { + "version": "1.0.0", + "bundled": true + }, + "is-arrayish": { + "version": "0.2.1", + "bundled": true + }, + "is-buffer": { + "version": "1.1.5", + "bundled": true + }, + "is-builtin-module": { + "version": "1.0.0", + "bundled": true, + "requires": { + "builtin-modules": "1.1.1" + } + }, + "is-dotfile": { + "version": "1.0.2", + "bundled": true + }, + "is-equal-shallow": { + "version": "0.1.3", + "bundled": true, + "requires": { + "is-primitive": "2.0.0" + } + }, + "is-extendable": { + "version": "0.1.1", + "bundled": true + }, + "is-extglob": { + "version": "1.0.0", + "bundled": true + }, + "is-finite": { + "version": "1.0.2", + "bundled": true, + "requires": { + "number-is-nan": "1.0.1" + } + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "bundled": true, + "requires": { + "number-is-nan": "1.0.1" + } + }, + "is-glob": { + "version": "2.0.1", + "bundled": true, + "requires": { + "is-extglob": "1.0.0" + } + }, + "is-number": { + "version": "2.1.0", + "bundled": true, + "requires": { + "kind-of": "3.2.0" + } + }, + "is-posix-bracket": { + "version": "0.1.1", + "bundled": true + }, + "is-primitive": { + "version": "2.0.0", + "bundled": true + }, + "is-utf8": { + "version": "0.2.1", + "bundled": true + }, + "isarray": { + "version": "1.0.0", + "bundled": true + }, + "isexe": { + "version": "2.0.0", + "bundled": true + }, + "isobject": { + "version": "2.1.0", + "bundled": true, + "requires": { + "isarray": "1.0.0" + } + }, + "istanbul-lib-coverage": { + "version": "1.1.0", + "bundled": true + }, + "istanbul-lib-hook": { + "version": "1.0.6", + "bundled": true, + "requires": { + "append-transform": "0.4.0" + } + }, + "istanbul-lib-instrument": { + "version": "1.7.1", + "bundled": true, + "requires": { + "babel-generator": "6.24.1", + "babel-template": "6.24.1", + "babel-traverse": "6.24.1", + "babel-types": "6.24.1", + "babylon": "6.17.0", + "istanbul-lib-coverage": "1.1.0", + "semver": "5.3.0" + } + }, + "istanbul-lib-report": { + "version": "1.1.0", + "bundled": true, + "requires": { + "istanbul-lib-coverage": "1.1.0", + "mkdirp": "0.5.1", + "path-parse": "1.0.5", + "supports-color": "3.2.3" + }, + "dependencies": { + "supports-color": { + "version": "3.2.3", + "bundled": true, + "requires": { + "has-flag": "1.0.0" + } + } + } + }, + "istanbul-lib-source-maps": { + "version": "1.2.0", + "bundled": true, + "requires": { + "debug": "2.6.6", + "istanbul-lib-coverage": "1.1.0", + "mkdirp": "0.5.1", + "rimraf": "2.6.1", + "source-map": "0.5.6" + } + }, + "istanbul-reports": { + "version": "1.1.0", + "bundled": true, + "requires": { + "handlebars": "4.0.8" + } + }, + "js-tokens": { + "version": "3.0.1", + "bundled": true + }, + "jsesc": { + "version": "1.3.0", + "bundled": true + }, + "kind-of": { + "version": "3.2.0", + "bundled": true, + "requires": { + "is-buffer": "1.1.5" + } + }, + "lazy-cache": { + "version": "1.0.4", + "bundled": true, + "optional": true + }, + "lcid": { + "version": "1.0.0", + "bundled": true, + "requires": { + "invert-kv": "1.0.0" + } + }, + "load-json-file": { + "version": "1.1.0", + "bundled": true, + "requires": { + "graceful-fs": "4.1.11", + "parse-json": "2.2.0", + "pify": "2.3.0", + "pinkie-promise": "2.0.1", + "strip-bom": "2.0.0" + } + }, + "lodash": { + "version": "4.17.4", + "bundled": true + }, + "longest": { + "version": "1.0.1", + "bundled": true + }, + "loose-envify": { + "version": "1.3.1", + "bundled": true, + "requires": { + "js-tokens": "3.0.1" + } + }, + "lru-cache": { + "version": "4.0.2", + "bundled": true, + "requires": { + "pseudomap": "1.0.2", + "yallist": "2.1.2" + } + }, + "md5-hex": { + "version": "1.3.0", + "bundled": true, + "requires": { + "md5-o-matic": "0.1.1" + } + }, + "md5-o-matic": { + "version": "0.1.1", + "bundled": true + }, + "merge-source-map": { + "version": "1.0.3", + "bundled": true, + "requires": { + "source-map": "0.5.6" + } + }, + "micromatch": { + "version": "2.3.11", + "bundled": true, + "requires": { + "arr-diff": "2.0.0", + "array-unique": "0.2.1", + "braces": "1.8.5", + "expand-brackets": "0.1.5", + "extglob": "0.3.2", + "filename-regex": "2.0.1", + "is-extglob": "1.0.0", + "is-glob": "2.0.1", + "kind-of": "3.2.0", + "normalize-path": "2.1.1", + "object.omit": "2.0.1", + "parse-glob": "3.0.4", + "regex-cache": "0.4.3" + } + }, + "minimatch": { + "version": "3.0.3", + "bundled": true, + "requires": { + "brace-expansion": "1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "bundled": true + }, + "mkdirp": { + "version": "0.5.1", + "bundled": true, + "requires": { + "minimist": "0.0.8" + } + }, + "ms": { + "version": "0.7.3", + "bundled": true + }, + "normalize-package-data": { + "version": "2.3.8", + "bundled": true, + "requires": { + "hosted-git-info": "2.4.2", + "is-builtin-module": "1.0.0", + "semver": "5.3.0", + "validate-npm-package-license": "3.0.1" + } + }, + "normalize-path": { + "version": "2.1.1", + "bundled": true, + "requires": { + "remove-trailing-separator": "1.0.1" + } + }, + "number-is-nan": { + "version": "1.0.1", + "bundled": true + }, + "object-assign": { + "version": "4.1.1", + "bundled": true + }, + "object.omit": { + "version": "2.0.1", + "bundled": true, + "requires": { + "for-own": "0.1.5", + "is-extendable": "0.1.1" + } + }, + "once": { + "version": "1.4.0", + "bundled": true, + "requires": { + "wrappy": "1.0.2" + } + }, + "optimist": { + "version": "0.6.1", + "bundled": true, + "requires": { + "minimist": "0.0.8", + "wordwrap": "0.0.3" + } + }, + "os-homedir": { + "version": "1.0.2", + "bundled": true + }, + "os-locale": { + "version": "1.4.0", + "bundled": true, + "requires": { + "lcid": "1.0.0" + } + }, + "parse-glob": { + "version": "3.0.4", + "bundled": true, + "requires": { + "glob-base": "0.3.0", + "is-dotfile": "1.0.2", + "is-extglob": "1.0.0", + "is-glob": "2.0.1" + } + }, + "parse-json": { + "version": "2.2.0", + "bundled": true, + "requires": { + "error-ex": "1.3.1" + } + }, + "path-exists": { + "version": "2.1.0", + "bundled": true, + "requires": { + "pinkie-promise": "2.0.1" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "bundled": true + }, + "path-parse": { + "version": "1.0.5", + "bundled": true + }, + "path-type": { + "version": "1.1.0", + "bundled": true, + "requires": { + "graceful-fs": "4.1.11", + "pify": "2.3.0", + "pinkie-promise": "2.0.1" + } + }, + "pify": { + "version": "2.3.0", + "bundled": true + }, + "pinkie": { + "version": "2.0.4", + "bundled": true + }, + "pinkie-promise": { + "version": "2.0.1", + "bundled": true, + "requires": { + "pinkie": "2.0.4" + } + }, + "pkg-dir": { + "version": "1.0.0", + "bundled": true, + "requires": { + "find-up": "1.1.2" + } + }, + "preserve": { + "version": "0.2.0", + "bundled": true + }, + "pseudomap": { + "version": "1.0.2", + "bundled": true + }, + "randomatic": { + "version": "1.1.6", + "bundled": true, + "requires": { + "is-number": "2.1.0", + "kind-of": "3.2.0" + } + }, + "read-pkg": { + "version": "1.1.0", + "bundled": true, + "requires": { + "load-json-file": "1.1.0", + "normalize-package-data": "2.3.8", + "path-type": "1.1.0" + } + }, + "read-pkg-up": { + "version": "1.0.1", + "bundled": true, + "requires": { + "find-up": "1.1.2", + "read-pkg": "1.1.0" + } + }, + "regenerator-runtime": { + "version": "0.10.5", + "bundled": true + }, + "regex-cache": { + "version": "0.4.3", + "bundled": true, + "requires": { + "is-equal-shallow": "0.1.3", + "is-primitive": "2.0.0" + } + }, + "remove-trailing-separator": { + "version": "1.0.1", + "bundled": true + }, + "repeat-element": { + "version": "1.1.2", + "bundled": true + }, + "repeat-string": { + "version": "1.6.1", + "bundled": true + }, + "repeating": { + "version": "2.0.1", + "bundled": true, + "requires": { + "is-finite": "1.0.2" + } + }, + "require-directory": { + "version": "2.1.1", + "bundled": true + }, + "require-main-filename": { + "version": "1.0.1", + "bundled": true + }, + "resolve-from": { + "version": "2.0.0", + "bundled": true + }, + "right-align": { + "version": "0.1.3", + "bundled": true, + "optional": true, + "requires": { + "align-text": "0.1.4" + } + }, + "rimraf": { + "version": "2.6.1", + "bundled": true, + "requires": { + "glob": "7.1.1" + } + }, + "semver": { + "version": "5.3.0", + "bundled": true + }, + "set-blocking": { + "version": "2.0.0", + "bundled": true + }, + "signal-exit": { + "version": "3.0.2", + "bundled": true + }, + "slide": { + "version": "1.1.6", + "bundled": true + }, + "source-map": { + "version": "0.5.6", + "bundled": true + }, + "spawn-wrap": { + "version": "1.2.4", + "bundled": true, + "requires": { + "foreground-child": "1.5.6", + "mkdirp": "0.5.1", + "os-homedir": "1.0.2", + "rimraf": "2.6.1", + "signal-exit": "2.1.2", + "which": "1.2.14" + }, + "dependencies": { + "signal-exit": { + "version": "2.1.2", + "bundled": true + } + } + }, + "spdx-correct": { + "version": "1.0.2", + "bundled": true, + "requires": { + "spdx-license-ids": "1.2.2" + } + }, + "spdx-expression-parse": { + "version": "1.0.4", + "bundled": true + }, + "spdx-license-ids": { + "version": "1.2.2", + "bundled": true + }, + "string-width": { + "version": "1.0.2", + "bundled": true, + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + }, + "strip-ansi": { + "version": "3.0.1", + "bundled": true, + "requires": { + "ansi-regex": "2.1.1" + } + }, + "strip-bom": { + "version": "2.0.0", + "bundled": true, + "requires": { + "is-utf8": "0.2.1" + } + }, + "supports-color": { + "version": "2.0.0", + "bundled": true + }, + "test-exclude": { + "version": "4.1.0", + "bundled": true, + "requires": { + "arrify": "1.0.1", + "micromatch": "2.3.11", + "object-assign": "4.1.1", + "read-pkg-up": "1.0.1", + "require-main-filename": "1.0.1" + } + }, + "to-fast-properties": { + "version": "1.0.3", + "bundled": true + }, + "trim-right": { + "version": "1.0.1", + "bundled": true + }, + "uglify-js": { + "version": "2.8.22", + "bundled": true, + "optional": true, + "requires": { + "source-map": "0.5.6", + "uglify-to-browserify": "1.0.2", + "yargs": "3.10.0" + }, + "dependencies": { + "yargs": { + "version": "3.10.0", + "bundled": true, + "optional": true, + "requires": { + "camelcase": "1.2.1", + "cliui": "2.1.0", + "decamelize": "1.2.0", + "window-size": "0.1.0" + } + } + } + }, + "uglify-to-browserify": { + "version": "1.0.2", + "bundled": true, + "optional": true + }, + "validate-npm-package-license": { + "version": "3.0.1", + "bundled": true, + "requires": { + "spdx-correct": "1.0.2", + "spdx-expression-parse": "1.0.4" + } + }, + "which": { + "version": "1.2.14", + "bundled": true, + "requires": { + "isexe": "2.0.0" + } + }, + "which-module": { + "version": "1.0.0", + "bundled": true + }, + "window-size": { + "version": "0.1.0", + "bundled": true, + "optional": true + }, + "wordwrap": { + "version": "0.0.3", + "bundled": true + }, + "wrap-ansi": { + "version": "2.1.0", + "bundled": true, + "requires": { + "string-width": "1.0.2", + "strip-ansi": "3.0.1" + } + }, + "wrappy": { + "version": "1.0.2", + "bundled": true + }, + "write-file-atomic": { + "version": "1.3.4", + "bundled": true, + "requires": { + "graceful-fs": "4.1.11", + "imurmurhash": "0.1.4", + "slide": "1.1.6" + } + }, + "y18n": { + "version": "3.2.1", + "bundled": true + }, + "yallist": { + "version": "2.1.2", + "bundled": true + }, + "yargs": { + "version": "7.1.0", + "bundled": true, + "requires": { + "camelcase": "3.0.0", + "cliui": "3.2.0", + "decamelize": "1.2.0", + "get-caller-file": "1.0.2", + "os-locale": "1.4.0", + "read-pkg-up": "1.0.1", + "require-directory": "2.1.1", + "require-main-filename": "1.0.1", + "set-blocking": "2.0.0", + "string-width": "1.0.2", + "which-module": "1.0.0", + "y18n": "3.2.1", + "yargs-parser": "5.0.0" + }, + "dependencies": { + "camelcase": { + "version": "3.0.0", + "bundled": true + }, + "cliui": { + "version": "3.2.0", + "bundled": true, + "requires": { + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "wrap-ansi": "2.1.0" + } + } + } + }, + "yargs-parser": { + "version": "5.0.0", + "bundled": true, + "requires": { + "camelcase": "3.0.0" + }, + "dependencies": { + "camelcase": { + "version": "3.0.0", + "bundled": true + } + } + } + } + }, + "oauth-sign": { + "version": "0.8.2", + "bundled": true, + "dev": true + }, + "object-assign": { + "version": "4.1.1", + "bundled": true + }, + "object.omit": { + "version": "2.0.1", + "bundled": true, + "requires": { + "for-own": "0.1.5", + "is-extendable": "0.1.1" + } + }, + "observable-to-promise": { + "version": "0.4.0", + "bundled": true, + "requires": { + "is-observable": "0.2.0", + "symbol-observable": "0.2.4" + } + }, + "once": { + "version": "1.4.0", + "bundled": true, + "requires": { + "wrappy": "1.0.2" + } + }, + "onetime": { + "version": "2.0.1", + "bundled": true, + "requires": { + "mimic-fn": "1.1.0" + } + }, + "optimist": { + "version": "0.6.1", + "bundled": true, + "requires": { + "minimist": "0.0.8", + "wordwrap": "0.0.3" + } + }, + "option-chain": { + "version": "0.1.1", + "bundled": true, + "requires": { + "object-assign": "4.1.1" + } + }, + "os-homedir": { + "version": "1.0.2", + "bundled": true + }, + "os-locale": { + "version": "1.4.0", + "bundled": true, + "dev": true, + "requires": { + "lcid": "1.0.0" + } + }, + "os-tmpdir": { + "version": "1.0.2", + "bundled": true + }, + "osenv": { + "version": "0.1.4", + "bundled": true, + "requires": { + "os-homedir": "1.0.2", + "os-tmpdir": "1.0.2" + } + }, + "p-finally": { + "version": "1.0.0", + "bundled": true + }, + "p-limit": { + "version": "1.1.0", + "bundled": true + }, + "p-locate": { + "version": "2.0.0", + "bundled": true, + "requires": { + "p-limit": "1.1.0" + } + }, + "package-hash": { + "version": "1.2.0", + "bundled": true, + "requires": { + "md5-hex": "1.3.0" + }, + "dependencies": { + "md5-hex": { + "version": "1.3.0", + "bundled": true, + "requires": { + "md5-o-matic": "0.1.1" + } + } + } + }, + "package-json": { + "version": "2.4.0", + "bundled": true, + "requires": { + "got": "5.7.1", + "registry-auth-token": "3.3.1", + "registry-url": "3.1.0", + "semver": "5.4.1" + } + }, + "parse-github-repo-url": { + "version": "1.4.1", + "bundled": true + }, + "parse-glob": { + "version": "3.0.4", + "bundled": true, + "requires": { + "glob-base": "0.3.0", + "is-dotfile": "1.0.3", + "is-extglob": "1.0.0", + "is-glob": "2.0.1" + } + }, + "parse-json": { + "version": "2.2.0", + "bundled": true, + "requires": { + "error-ex": "1.3.1" + } + }, + "parse-ms": { + "version": "1.0.1", + "bundled": true + }, + "path-dirname": { + "version": "1.0.2", + "bundled": true + }, + "path-exists": { + "version": "2.1.0", + "bundled": true, + "requires": { + "pinkie-promise": "2.0.1" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "bundled": true + }, + "path-key": { + "version": "2.0.1", + "bundled": true + }, + "path-parse": { + "version": "1.0.5", + "bundled": true + }, + "path-type": { + "version": "1.1.0", + "bundled": true, + "requires": { + "graceful-fs": "4.1.11", + "pify": "2.3.0", + "pinkie-promise": "2.0.1" + } + }, + "performance-now": { + "version": "2.1.0", + "bundled": true, + "dev": true + }, + "pify": { + "version": "2.3.0", + "bundled": true + }, + "pinkie": { + "version": "2.0.4", + "bundled": true + }, + "pinkie-promise": { + "version": "2.0.1", + "bundled": true, + "requires": { + "pinkie": "2.0.4" + } + }, + "pkg-conf": { + "version": "2.0.0", + "bundled": true, + "requires": { + "find-up": "2.1.0", + "load-json-file": "2.0.0" + }, + "dependencies": { + "find-up": { + "version": "2.1.0", + "bundled": true, + "requires": { + "locate-path": "2.0.0" + } + }, + "load-json-file": { + "version": "2.0.0", + "bundled": true, + "requires": { + "graceful-fs": "4.1.11", + "parse-json": "2.2.0", + "pify": "2.3.0", + "strip-bom": "3.0.0" + } + }, + "strip-bom": { + "version": "3.0.0", + "bundled": true + } + } + }, + "pkg-dir": { + "version": "1.0.0", + "bundled": true, + "requires": { + "find-up": "1.1.2" + } + }, + "plist": { + "version": "2.1.0", + "bundled": true, + "dev": true, + "requires": { + "base64-js": "1.2.0", + "xmlbuilder": "8.2.2", + "xmldom": "0.1.27" + } + }, + "plur": { + "version": "2.1.2", + "bundled": true, + "requires": { + "irregular-plurals": "1.3.0" + } + }, + "prepend-http": { + "version": "1.0.4", + "bundled": true + }, + "preserve": { + "version": "0.2.0", + "bundled": true + }, + "pretty-format": { + "version": "18.1.0", + "bundled": true, + "requires": { + "ansi-styles": "2.2.1" + } + }, + "pretty-ms": { + "version": "2.1.0", + "bundled": true, + "requires": { + "is-finite": "1.0.2", + "parse-ms": "1.0.1", + "plur": "1.0.0" + }, + "dependencies": { + "plur": { + "version": "1.0.0", + "bundled": true + } + } + }, + "private": { + "version": "0.1.7", + "bundled": true + }, + "process-nextick-args": { + "version": "1.0.7", + "bundled": true + }, + "progress": { + "version": "1.1.8", + "bundled": true, + "dev": true + }, + "pseudomap": { + "version": "1.0.2", + "bundled": true + }, + "punycode": { + "version": "1.4.1", + "bundled": true, + "dev": true + }, + "q": { + "version": "1.5.0", + "bundled": true + }, + "qs": { + "version": "6.5.1", + "bundled": true, + "dev": true + }, + "randomatic": { + "version": "1.1.7", + "bundled": true, + "requires": { + "is-number": "3.0.0", + "kind-of": "4.0.0" + }, + "dependencies": { + "is-number": { + "version": "3.0.0", + "bundled": true, + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "bundled": true, + "requires": { + "is-buffer": "1.1.5" + } + } + } + }, + "kind-of": { + "version": "4.0.0", + "bundled": true, + "requires": { + "is-buffer": "1.1.5" + } + } + } + }, + "rc": { + "version": "1.2.1", + "bundled": true, + "requires": { + "deep-extend": "0.4.2", + "ini": "1.3.4", + "minimist": "1.2.0", + "strip-json-comments": "2.0.1" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "bundled": true + } + } + }, + "rcedit": { + "version": "0.8.0", + "bundled": true, + "dev": true + }, + "read-all-stream": { + "version": "3.1.0", + "bundled": true, + "requires": { + "pinkie-promise": "2.0.1", + "readable-stream": "2.3.3" + } + }, + "read-cmd-shim": { + "version": "1.0.1", + "bundled": true, + "requires": { + "graceful-fs": "4.1.11" + } + }, + "read-pkg": { + "version": "1.1.0", + "bundled": true, + "requires": { + "load-json-file": "1.1.0", + "normalize-package-data": "2.4.0", + "path-type": "1.1.0" + } + }, + "read-pkg-up": { + "version": "1.0.1", + "bundled": true, + "requires": { + "find-up": "1.1.2", + "read-pkg": "1.1.0" + } + }, + "readable-stream": { + "version": "2.3.3", + "bundled": true, + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "safe-buffer": "5.1.1", + "string_decoder": "1.0.3", + "util-deprecate": "1.0.2" + } + }, + "readdirp": { + "version": "2.1.0", + "bundled": true, + "requires": { + "graceful-fs": "4.1.11", + "minimatch": "3.0.2", + "readable-stream": "2.3.3", + "set-immediate-shim": "1.0.1" + } + }, + "redent": { + "version": "1.0.0", + "bundled": true, + "requires": { + "indent-string": "2.1.0", + "strip-indent": "1.0.1" + }, + "dependencies": { + "indent-string": { + "version": "2.1.0", + "bundled": true, + "requires": { + "repeating": "2.0.1" + } + } + } + }, + "regenerate": { + "version": "1.3.3", + "bundled": true + }, + "regenerator-runtime": { + "version": "0.11.0", + "bundled": true + }, + "regex-cache": { + "version": "0.4.4", + "bundled": true, + "requires": { + "is-equal-shallow": "0.1.3" + } + }, + "regexpu-core": { + "version": "2.0.0", + "bundled": true, + "requires": { + "regenerate": "1.3.3", + "regjsgen": "0.2.0", + "regjsparser": "0.1.5" + } + }, + "registry-auth-token": { + "version": "3.3.1", + "bundled": true, + "requires": { + "rc": "1.2.1", + "safe-buffer": "5.1.1" + } + }, + "registry-url": { + "version": "3.1.0", + "bundled": true, + "requires": { + "rc": "1.2.1" + } + }, + "regjsgen": { + "version": "0.2.0", + "bundled": true + }, + "regjsparser": { + "version": "0.1.5", + "bundled": true, + "requires": { + "jsesc": "0.5.0" + } + }, + "remove-trailing-separator": { + "version": "1.1.0", + "bundled": true + }, + "repeat-element": { + "version": "1.1.2", + "bundled": true + }, + "repeat-string": { + "version": "1.6.1", + "bundled": true + }, + "repeating": { + "version": "2.0.1", + "bundled": true, + "requires": { + "is-finite": "1.0.2" + } + }, + "request": { + "version": "2.82.0", + "bundled": true, + "dev": true, + "requires": { + "aws-sign2": "0.7.0", + "aws4": "1.6.0", + "caseless": "0.12.0", + "combined-stream": "1.0.5", + "extend": "3.0.1", + "forever-agent": "0.6.1", + "form-data": "2.3.1", + "har-validator": "5.0.3", + "hawk": "6.0.2", + "http-signature": "1.2.0", + "is-typedarray": "1.0.0", + "isstream": "0.1.2", + "json-stringify-safe": "5.0.1", + "mime-types": "2.1.17", + "oauth-sign": "0.8.2", + "performance-now": "2.1.0", + "qs": "6.5.1", + "safe-buffer": "5.1.1", + "stringstream": "0.0.5", + "tough-cookie": "2.3.2", + "tunnel-agent": "0.6.0", + "uuid": "3.1.0" + } + }, + "request-progress": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "throttleit": "1.0.0" + } + }, + "require-directory": { + "version": "2.1.1", + "bundled": true + }, + "require-main-filename": { + "version": "1.0.1", + "bundled": true + }, + "require-precompiled": { + "version": "0.1.0", + "bundled": true + }, + "resolve": { + "version": "1.4.0", + "bundled": true, + "requires": { + "path-parse": "1.0.5" + } + }, + "resolve-cwd": { + "version": "1.0.0", + "bundled": true, + "requires": { + "resolve-from": "2.0.0" + } + }, + "resolve-from": { + "version": "2.0.0", + "bundled": true + }, + "restore-cursor": { + "version": "2.0.0", + "bundled": true, + "requires": { + "onetime": "2.0.1", + "signal-exit": "3.0.2" + } + }, + "right-align": { + "version": "0.1.3", + "bundled": true, + "optional": true, + "requires": { + "align-text": "0.1.4" + } + }, + "rimraf": { + "version": "2.6.2", + "bundled": true, + "requires": { + "glob": "7.1.2" + } + }, + "run-async": { + "version": "2.3.0", + "bundled": true, + "requires": { + "is-promise": "2.1.0" + } + }, + "rx-lite": { + "version": "4.0.8", + "bundled": true + }, + "rx-lite-aggregates": { + "version": "4.0.8", + "bundled": true, + "requires": { + "rx-lite": "4.0.8" + } + }, + "safe-buffer": { + "version": "5.1.1", + "bundled": true + }, + "semver": { + "version": "5.4.1", + "bundled": true + }, + "semver-diff": { + "version": "2.1.0", + "bundled": true, + "requires": { + "semver": "5.4.1" + } + }, + "set-blocking": { + "version": "2.0.0", + "bundled": true + }, + "set-immediate-shim": { + "version": "1.0.1", + "bundled": true + }, + "shebang-command": { + "version": "1.2.0", + "bundled": true, + "requires": { + "shebang-regex": "1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "bundled": true + }, + "signal-exit": { + "version": "3.0.2", + "bundled": true + }, + "slash": { + "version": "1.0.0", + "bundled": true + }, + "slice-ansi": { + "version": "0.0.4", + "bundled": true + }, + "slide": { + "version": "1.1.6", + "bundled": true + }, + "sntp": { + "version": "2.0.2", + "bundled": true, + "dev": true, + "requires": { + "hoek": "4.2.0" + } + }, + "sort-keys": { + "version": "2.0.0", + "bundled": true, + "requires": { + "is-plain-obj": "1.1.0" + } + }, + "source-map": { + "version": "0.5.7", + "bundled": true + }, + "source-map-support": { + "version": "0.4.18", + "bundled": true, + "requires": { + "source-map": "0.5.7" + } + }, + "spdx-correct": { + "version": "1.0.2", + "bundled": true, + "requires": { + "spdx-license-ids": "1.2.2" + } + }, + "spdx-expression-parse": { + "version": "1.0.4", + "bundled": true + }, + "spdx-license-ids": { + "version": "1.2.2", + "bundled": true + }, + "split": { + "version": "1.0.1", + "bundled": true, + "requires": { + "through": "2.3.8" + } + }, + "split2": { + "version": "2.1.1", + "bundled": true, + "requires": { + "through2": "2.0.3" + } + }, + "sshpk": { + "version": "1.13.1", + "bundled": true, + "dev": true, + "requires": { + "asn1": "0.2.3", + "assert-plus": "1.0.0", + "bcrypt-pbkdf": "1.0.1", + "dashdash": "1.14.1", + "ecc-jsbn": "0.1.1", + "getpass": "0.1.7", + "jsbn": "0.1.1", + "tweetnacl": "0.14.5" + } + }, + "stack-utils": { + "version": "1.0.1", + "bundled": true + }, + "standard-version": { + "version": "4.2.0", + "bundled": true, + "requires": { + "chalk": "1.1.3", + "conventional-changelog": "1.1.5", + "conventional-recommended-bump": "1.0.1", + "figures": "1.7.0", + "fs-access": "1.0.1", + "semver": "5.4.1", + "yargs": "8.0.2" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "bundled": true + }, + "camelcase": { + "version": "4.1.0", + "bundled": true + }, + "figures": { + "version": "1.7.0", + "bundled": true, + "requires": { + "escape-string-regexp": "1.0.5", + "object-assign": "4.1.1" + } + }, + "find-up": { + "version": "2.1.0", + "bundled": true, + "requires": { + "locate-path": "2.0.0" + } + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "bundled": true + }, + "load-json-file": { + "version": "2.0.0", + "bundled": true, + "requires": { + "graceful-fs": "4.1.11", + "parse-json": "2.2.0", + "pify": "2.3.0", + "strip-bom": "3.0.0" + } + }, + "os-locale": { + "version": "2.1.0", + "bundled": true, + "requires": { + "execa": "0.7.0", + "lcid": "1.0.0", + "mem": "1.1.0" + } + }, + "path-type": { + "version": "2.0.0", + "bundled": true, + "requires": { + "pify": "2.3.0" + } + }, + "read-pkg": { + "version": "2.0.0", + "bundled": true, + "requires": { + "load-json-file": "2.0.0", + "normalize-package-data": "2.4.0", + "path-type": "2.0.0" + } + }, + "read-pkg-up": { + "version": "2.0.0", + "bundled": true, + "requires": { + "find-up": "2.1.0", + "read-pkg": "2.0.0" + } + }, + "string-width": { + "version": "2.1.1", + "bundled": true, + "requires": { + "is-fullwidth-code-point": "2.0.0", + "strip-ansi": "4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "bundled": true, + "requires": { + "ansi-regex": "3.0.0" + } + }, + "strip-bom": { + "version": "3.0.0", + "bundled": true + }, + "which-module": { + "version": "2.0.0", + "bundled": true + }, + "yargs": { + "version": "8.0.2", + "bundled": true, + "requires": { + "camelcase": "4.1.0", + "cliui": "3.2.0", + "decamelize": "1.2.0", + "get-caller-file": "1.0.2", + "os-locale": "2.1.0", + "read-pkg-up": "2.0.0", + "require-directory": "2.1.1", + "require-main-filename": "1.0.1", + "set-blocking": "2.0.0", + "string-width": "2.1.1", + "which-module": "2.0.0", + "y18n": "3.2.1", + "yargs-parser": "7.0.0" + } + }, + "yargs-parser": { + "version": "7.0.0", + "bundled": true, + "requires": { + "camelcase": "4.1.0" + } + } + } + }, + "string-width": { + "version": "1.0.2", + "bundled": true, + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + }, + "string_decoder": { + "version": "1.0.3", + "bundled": true, + "requires": { + "safe-buffer": "5.1.1" + } + }, + "stringstream": { + "version": "0.0.5", + "bundled": true, + "dev": true + }, + "strip-ansi": { + "version": "3.0.1", + "bundled": true, + "requires": { + "ansi-regex": "2.1.1" + } + }, + "strip-bom": { + "version": "2.0.0", + "bundled": true, + "requires": { + "is-utf8": "0.2.1" + } + }, + "strip-bom-buf": { + "version": "1.0.0", + "bundled": true, + "requires": { + "is-utf8": "0.2.1" + } + }, + "strip-eof": { + "version": "1.0.0", + "bundled": true + }, + "strip-indent": { + "version": "1.0.1", + "bundled": true, + "requires": { + "get-stdin": "4.0.1" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "bundled": true + }, + "strong-log-transformer": { + "version": "1.0.6", + "bundled": true, + "requires": { + "byline": "5.0.0", + "duplexer": "0.1.1", + "minimist": "0.1.0", + "moment": "2.18.1", + "through": "2.3.8" + }, + "dependencies": { + "minimist": { + "version": "0.1.0", + "bundled": true + } + } + }, + "supports-color": { + "version": "2.0.0", + "bundled": true + }, + "symbol-observable": { + "version": "0.2.4", + "bundled": true + }, + "temp-dir": { + "version": "1.0.0", + "bundled": true + }, + "temp-write": { + "version": "3.3.0", + "bundled": true, + "requires": { + "graceful-fs": "4.1.11", + "is-stream": "1.1.0", + "make-dir": "1.0.0", + "pify": "2.3.0", + "temp-dir": "1.0.0", + "uuid": "3.1.0" + } + }, + "tempfile": { + "version": "1.1.1", + "bundled": true, + "requires": { + "os-tmpdir": "1.0.2", + "uuid": "2.0.3" + }, + "dependencies": { + "uuid": { + "version": "2.0.3", + "bundled": true + } + } + }, + "term-size": { + "version": "1.2.0", + "bundled": true, + "requires": { + "execa": "0.7.0" + } + }, + "text-extensions": { + "version": "1.6.0", + "bundled": true + }, + "text-table": { + "version": "0.2.0", + "bundled": true + }, + "throttleit": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "through": { + "version": "2.3.8", + "bundled": true + }, + "through2": { + "version": "2.0.3", + "bundled": true, + "requires": { + "readable-stream": "2.3.3", + "xtend": "4.0.1" + } + }, + "time-require": { + "version": "0.1.2", + "bundled": true, + "requires": { + "chalk": "0.4.0", + "date-time": "0.1.1", + "pretty-ms": "0.2.2", + "text-table": "0.2.0" + }, + "dependencies": { + "ansi-styles": { + "version": "1.0.0", + "bundled": true + }, + "chalk": { + "version": "0.4.0", + "bundled": true, + "requires": { + "ansi-styles": "1.0.0", + "has-color": "0.1.7", + "strip-ansi": "0.1.1" + } + }, + "parse-ms": { + "version": "0.1.2", + "bundled": true + }, + "pretty-ms": { + "version": "0.2.2", + "bundled": true, + "requires": { + "parse-ms": "0.1.2" + } + }, + "strip-ansi": { + "version": "0.1.1", + "bundled": true + } + } + }, + "timed-out": { + "version": "3.1.3", + "bundled": true + }, + "tmp": { + "version": "0.0.31", + "bundled": true, + "dev": true, + "requires": { + "os-tmpdir": "1.0.2" + } + }, + "to-fast-properties": { + "version": "1.0.3", + "bundled": true + }, + "tough-cookie": { + "version": "2.3.2", + "bundled": true, + "dev": true, + "requires": { + "punycode": "1.4.1" + } + }, + "trim-newlines": { + "version": "1.0.0", + "bundled": true + }, + "trim-off-newlines": { + "version": "1.0.1", + "bundled": true + }, + "trim-right": { + "version": "1.0.1", + "bundled": true + }, + "tslint": { + "version": "4.5.1", + "bundled": true, + "requires": { + "babel-code-frame": "6.26.0", + "colors": "1.1.2", + "diff": "3.3.1", + "findup-sync": "0.3.0", + "glob": "7.1.2", + "optimist": "0.6.1", + "resolve": "1.4.0", + "tsutils": "1.9.1", + "update-notifier": "2.2.0" + }, + "dependencies": { + "ansi-align": { + "version": "2.0.0", + "bundled": true, + "requires": { + "string-width": "2.1.1" + } + }, + "ansi-regex": { + "version": "3.0.0", + "bundled": true + }, + "ansi-styles": { + "version": "3.2.0", + "bundled": true, + "requires": { + "color-convert": "1.9.0" + } + }, + "boxen": { + "version": "1.2.1", + "bundled": true, + "requires": { + "ansi-align": "2.0.0", + "camelcase": "4.1.0", + "chalk": "2.1.0", + "cli-boxes": "1.0.0", + "string-width": "2.1.1", + "term-size": "1.2.0", + "widest-line": "1.0.0" + }, + "dependencies": { + "chalk": { + "version": "2.1.0", + "bundled": true, + "requires": { + "ansi-styles": "3.2.0", + "escape-string-regexp": "1.0.5", + "supports-color": "4.4.0" + } + } + } + }, + "camelcase": { + "version": "4.1.0", + "bundled": true + }, + "colors": { + "version": "1.1.2", + "bundled": true + }, + "configstore": { + "version": "3.1.1", + "bundled": true, + "requires": { + "dot-prop": "4.2.0", + "graceful-fs": "4.1.11", + "make-dir": "1.0.0", + "unique-string": "1.0.0", + "write-file-atomic": "2.3.0", + "xdg-basedir": "3.0.0" + } + }, + "got": { + "version": "6.7.1", + "bundled": true, + "requires": { + "create-error-class": "3.0.2", + "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", + "safe-buffer": "5.1.1", + "timed-out": "4.0.1", + "unzip-response": "2.0.1", + "url-parse-lax": "1.0.0" + } + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "bundled": true + }, + "latest-version": { + "version": "3.1.0", + "bundled": true, + "requires": { + "package-json": "4.0.1" + } + }, + "package-json": { + "version": "4.0.1", + "bundled": true, + "requires": { + "got": "6.7.1", + "registry-auth-token": "3.3.1", + "registry-url": "3.1.0", + "semver": "5.4.1" + } + }, + "string-width": { + "version": "2.1.1", + "bundled": true, + "requires": { + "is-fullwidth-code-point": "2.0.0", + "strip-ansi": "4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "bundled": true, + "requires": { + "ansi-regex": "3.0.0" + } + }, + "supports-color": { + "version": "4.4.0", + "bundled": true, + "requires": { + "has-flag": "2.0.0" + } + }, + "timed-out": { + "version": "4.0.1", + "bundled": true + }, + "unzip-response": { + "version": "2.0.1", + "bundled": true + }, + "update-notifier": { + "version": "2.2.0", + "bundled": true, + "requires": { + "boxen": "1.2.1", + "chalk": "1.1.3", + "configstore": "3.1.1", + "import-lazy": "2.1.0", + "is-npm": "1.0.0", + "latest-version": "3.1.0", + "semver-diff": "2.1.0", + "xdg-basedir": "3.0.0" + } + }, + "xdg-basedir": { + "version": "3.0.0", + "bundled": true + } + } + }, + "tsutils": { + "version": "1.9.1", + "bundled": true + }, + "tunnel-agent": { + "version": "0.6.0", + "bundled": true, + "dev": true, + "requires": { + "safe-buffer": "5.1.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "bundled": true, + "dev": true, + "optional": true + }, + "typedarray": { + "version": "0.0.6", + "bundled": true + }, + "typescript": { + "version": "2.5.2", + "bundled": true + }, + "uglify-js": { + "version": "2.8.29", + "bundled": true, + "optional": true, + "requires": { + "source-map": "0.5.7", + "uglify-to-browserify": "1.0.2", + "yargs": "3.10.0" + }, + "dependencies": { + "camelcase": { + "version": "1.2.1", + "bundled": true, + "optional": true + }, + "cliui": { + "version": "2.1.0", + "bundled": true, + "optional": true, + "requires": { + "center-align": "0.1.3", + "right-align": "0.1.3", + "wordwrap": "0.0.2" + } + }, + "wordwrap": { + "version": "0.0.2", + "bundled": true, + "optional": true + }, + "yargs": { + "version": "3.10.0", + "bundled": true, + "optional": true, + "requires": { + "camelcase": "1.2.1", + "cliui": "2.1.0", + "decamelize": "1.2.0", + "window-size": "0.1.0" + } + } + } + }, + "uglify-to-browserify": { + "version": "1.0.2", + "bundled": true, + "optional": true + }, + "uid2": { + "version": "0.0.3", + "bundled": true + }, + "unique-string": { + "version": "1.0.0", + "bundled": true, + "requires": { + "crypto-random-string": "1.0.0" + } + }, + "unique-temp-dir": { + "version": "1.0.0", + "bundled": true, + "requires": { + "mkdirp": "0.5.1", + "os-tmpdir": "1.0.2", + "uid2": "0.0.3" + } + }, + "universalify": { + "version": "0.1.1", + "bundled": true + }, + "unzip-response": { + "version": "1.0.2", + "bundled": true + }, + "update-notifier": { + "version": "1.0.3", + "bundled": true, + "requires": { + "boxen": "0.6.0", + "chalk": "1.1.3", + "configstore": "2.1.0", + "is-npm": "1.0.0", + "latest-version": "2.0.0", + "lazy-req": "1.1.0", + "semver-diff": "2.1.0", + "xdg-basedir": "2.0.0" + } + }, + "url-parse-lax": { + "version": "1.0.0", + "bundled": true, + "requires": { + "prepend-http": "1.0.4" + } + }, + "util-deprecate": { + "version": "1.0.2", + "bundled": true + }, + "uuid": { + "version": "3.1.0", + "bundled": true + }, + "validate-npm-package-license": { + "version": "3.0.1", + "bundled": true, + "requires": { + "spdx-correct": "1.0.2", + "spdx-expression-parse": "1.0.4" + } + }, + "verror": { + "version": "1.10.0", + "bundled": true, + "dev": true, + "requires": { + "assert-plus": "1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "1.3.0" + } + }, + "wcwidth": { + "version": "1.0.1", + "bundled": true, + "requires": { + "defaults": "1.0.3" + } + }, + "which": { + "version": "1.3.0", + "bundled": true, + "requires": { + "isexe": "2.0.0" + } + }, + "which-module": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "wide-align": { + "version": "1.1.2", + "bundled": true, + "requires": { + "string-width": "1.0.2" + } + }, + "widest-line": { + "version": "1.0.0", + "bundled": true, + "requires": { + "string-width": "1.0.2" + } + }, + "window-size": { + "version": "0.1.0", + "bundled": true, + "optional": true + }, + "wordwrap": { + "version": "0.0.3", + "bundled": true + }, + "wrap-ansi": { + "version": "2.1.0", + "bundled": true, + "requires": { + "string-width": "1.0.2", + "strip-ansi": "3.0.1" + } + }, + "wrappy": { + "version": "1.0.2", + "bundled": true + }, + "write-file-atomic": { + "version": "2.3.0", + "bundled": true, + "requires": { + "graceful-fs": "4.1.11", + "imurmurhash": "0.1.4", + "signal-exit": "3.0.2" + } + }, + "write-json-file": { + "version": "2.2.0", + "bundled": true, + "requires": { + "detect-indent": "5.0.0", + "graceful-fs": "4.1.11", + "make-dir": "1.0.0", + "pify": "2.3.0", + "sort-keys": "1.1.2", + "write-file-atomic": "2.3.0" + }, + "dependencies": { + "detect-indent": { + "version": "5.0.0", + "bundled": true + }, + "sort-keys": { + "version": "1.1.2", + "bundled": true, + "requires": { + "is-plain-obj": "1.1.0" + } + } + } + }, + "write-pkg": { + "version": "3.1.0", + "bundled": true, + "requires": { + "sort-keys": "2.0.0", + "write-json-file": "2.2.0" + } + }, + "xdg-basedir": { + "version": "2.0.0", + "bundled": true, + "requires": { + "os-homedir": "1.0.2" + } + }, + "xmlbuilder": { + "version": "8.2.2", + "bundled": true, + "dev": true + }, + "xmldom": { + "version": "0.1.27", + "bundled": true, + "dev": true + }, + "xtend": { + "version": "4.0.1", + "bundled": true + }, + "y18n": { + "version": "3.2.1", + "bundled": true + }, + "yallist": { + "version": "2.1.2", + "bundled": true + }, + "yargs": { + "version": "7.1.0", + "bundled": true, + "dev": true, + "requires": { + "camelcase": "3.0.0", + "cliui": "3.2.0", + "decamelize": "1.2.0", + "get-caller-file": "1.0.2", + "os-locale": "1.4.0", + "read-pkg-up": "1.0.1", + "require-directory": "2.1.1", + "require-main-filename": "1.0.1", + "set-blocking": "2.0.0", + "string-width": "1.0.2", + "which-module": "1.0.0", + "y18n": "3.2.1", + "yargs-parser": "5.0.0" + } + }, + "yargs-parser": { + "version": "5.0.0", + "bundled": true, + "dev": true, + "requires": { + "camelcase": "3.0.0" + } + } + } + }, + "pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "dev": true + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true, + "requires": { + "shebang-regex": "1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true + }, + "which": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz", + "integrity": "sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==", + "dev": true, + "requires": { + "isexe": "2.0.0" + } + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true + } + } +} diff --git a/assets/snake/package.json b/assets/snake/package.json new file mode 100644 index 0000000..f034224 --- /dev/null +++ b/assets/snake/package.json @@ -0,0 +1,52 @@ +{ + "name": "snake", + "version": "0.1.0", + "description": "A sample nwjs app that implements the classic snake game.", + "repository": { + "type": "git", + "url": "git+https://github.com/paulbjensen/cross-platform-desktop-applications.git" + }, + "main": "index.html", + "scripts": { + "build": "cross-env DEBUG=* build --tasks win-x64 .", + "run": "cross-env DEBUG=* run --x64 ." + }, + "author": "paulbjensen", + "license": "MIT", + "build": { + "appId": "com.github.paulbjensen.cross-platform-desktop-applications.chapter-14.snake-nwjs", + "nwVersion": "0.25.2", + "packed": false, + "targets": [ + "nsis7z" + ], + "strippedProperties": [ + "build" + ], + "outputPattern": "${NAME}-${VERSION}-${PLATFORM}-${ARCH}", + "win": { + "productName": "Snake", + "companyName": "Snake Company", + "copyright": "MIT 2017", + "icon": "./assets/pd.ico", + "signing": { + "signtoolPath": "C:\\Program Files (x86)\\Windows Kits\\8.1\\bin\\x64\\signtool.exe", + "cliArgs": "sign /debug /f E:\\codesigning.crt.pfx /p top$3c37pa$$ /tr http://timestamp.comodoca.com/?td=sha256 /td sha256 /fd sha256 /v" + } + }, + "nsis": { + "diffUpdaters": true + } + }, + "devDependencies": { + "cross-env": "^5.0.5", + "dotenv": "^4.0.0", + "nwjs-builder-phoenix": "file:../.." + }, + "window": { + "width": 840, + "height": 470, + "toolbar": false, + "icon": "./assets/pd.png" + } +} diff --git a/docs/Options.md b/docs/Options.md index 21c84cb..5e0a65c 100644 --- a/docs/Options.md +++ b/docs/Options.md @@ -31,6 +31,9 @@ productVersion | string | Product version. Defaults to `${ version }`. fileVersion | string | File version. Defaults to `${ productVersion }` versionStrings | { [key: string]: string } | `rcedit` version strings. Defaults to `{}`. icon | string | .ico icon file relative to the project root. Defaults to `undefined`. +signing | `{}` | contains parameters for Microsoft Authenticode signing (optional). If any parameters are included, all parameters are required. +signing.signtoolPath | string | Absolute path to signtool.exe, e.g. `"C:\\Program Files (x86)\\Windows Kits\\8.1\\bin\\x64\\signtool.exe"` +signing.cliArgs | string | Args to pass to signtool.exe EXCEPT for executables to sign, e.g. `"sign /debug /f E:\\codesigning.crt.pfx /p top$3c37pa$$ /tr http://timestamp.comodoca.com/?td=sha256 /td sha256 /fd sha256 /v"` ## build.mac <- [MacConfig](../src/lib/config/MacConfig.ts) diff --git a/src/lib/Builder.ts b/src/lib/Builder.ts index 99787b0..ef97571 100644 --- a/src/lib/Builder.ts +++ b/src/lib/Builder.ts @@ -1,22 +1,45 @@ - -import { dirname, basename, resolve } from 'path'; +import * as Bluebird from 'bluebird'; +import { + chmod, + copy, + createReadStream, + createWriteStream, + emptyDir, + ensureDir, + readFile, + readJson, + remove, + rename, + writeFile, +} from 'fs-extra'; +import {basename, dirname, resolve} from 'path'; import * as semver from 'semver'; -import { ensureDir, emptyDir, readFile, readJson, writeFile, copy, remove, rename, chmod, createReadStream, createWriteStream } from 'fs-extra'; -import * as Bluebird from 'bluebird'; +import {NsisVersionInfo} from './common'; +import {BuildConfig} from './config'; +import {Downloader} from './Downloader'; +import {FFmpegDownloader} from './FFmpegDownloader'; +import {Nsis7Zipper, nsisBuild, NsisComposer, NsisDiffer} from './nsis-gen'; +import { + compress, + copyFileAsync, + fileExistsAsync, + findExcludableDependencies, + findExecutable, + findFFmpeg, + findRuntimeRoot, + fixWindowsVersion, + mergeOptions, + spawnAsync, + tmpDir, + tmpName, +} from './util'; const debug = require('debug')('build:builder'); const globby = require('globby'); const rcedit = require('rcedit'); const plist = require('plist'); -import { Downloader } from './Downloader'; -import { FFmpegDownloader } from './FFmpegDownloader'; -import { BuildConfig } from './config'; -import { NsisVersionInfo } from './common'; -import { NsisComposer, NsisDiffer, Nsis7Zipper, nsisBuild } from './nsis-gen'; -import { mergeOptions, findExecutable, findFFmpeg, findRuntimeRoot, findExcludableDependencies, tmpName, tmpFile, tmpDir, fixWindowsVersion, copyFileAsync, extractGeneric, compress } from './util'; - interface IParseOutputPatternOptions { name: string; version: string; @@ -259,6 +282,29 @@ export class Builder { } + protected async signWinApp(targetDir: string, appRoot: string, pkg: any, config: BuildConfig) { + + const { signtoolPath, cliArgs } = config.win.signing; + + if (signtoolPath && cliArgs) { + const resolvedSigntool = resolve(signtoolPath); + if ( await fileExistsAsync(resolvedSigntool) ) { + debug(`signWinApp: signtool ${resolvedSigntool} exists`); + const filesToSign = await globby(['**/*.+(exe|dll)']); + const cliArgsArr = cliArgs.split(' ').concat(filesToSign); + debug(`signWinApp: filesToSign: `, filesToSign); + debug(`signWinApp: cliArgs: `, cliArgsArr); + const { code, signal } = await spawnAsync(resolvedSigntool, cliArgsArr); + + if(code !== 0) { + throw new Error(`ERROR_SIGNING args = ${ cliArgsArr.join(' ') }`); + } + } else { + debug(`signtool ${resolvedSigntool} does NOT exist`); + } + } + } + protected async updatePlist(targetDir: string, appRoot: string, pkg: any, config: BuildConfig) { const path = resolve(targetDir, './nwjs.app/Contents/Info.plist'); @@ -583,6 +629,7 @@ export class Builder { await this.prepareWinBuild(targetDir, appRoot, pkg, config); await this.copyFiles(platform, targetDir, appRoot, pkg, config); await this.renameWinApp(targetDir, appRoot, pkg, config); + await this.signWinApp(targetDir, appRoot, pkg, config); break; case 'darwin': case 'osx': diff --git a/src/lib/common/DownloaderBase.ts b/src/lib/common/DownloaderBase.ts index c594f9a..c81bb15 100644 --- a/src/lib/common/DownloaderBase.ts +++ b/src/lib/common/DownloaderBase.ts @@ -1,16 +1,14 @@ - -import { dirname, basename, resolve } from 'path'; +import {ensureDirSync, lstat, writeFile} from 'fs-extra'; +import {dirname, resolve} from 'path'; +import * as ProgressBar from 'progress'; import * as request from 'request'; -import * as ProgressBar from 'progress'; -import { ensureDirSync, exists, lstat, writeFile } from 'fs-extra'; +import {extractGeneric, fileExistsAsync} from '../util'; +import {Event} from './Event'; const debug = require('debug')('build:downloader'); const progress = require('request-progress'); -import { Event } from './Event'; -import { mergeOptions, extractGeneric } from '../util'; - const DIR_CACHES = resolve(dirname(module.filename), '..', '..', '..', 'caches'); ensureDirSync(DIR_CACHES); @@ -113,9 +111,7 @@ export abstract class DownloaderBase { } protected isFileExists(path: string) { - return new Promise((resolve, reject) => { - exists(path, resolve); - }); + return fileExistsAsync(path); } protected async isFileSynced(url: string, path: string) { diff --git a/src/lib/config/WinConfig.ts b/src/lib/config/WinConfig.ts index 5c14eed..84a2eef 100644 --- a/src/lib/config/WinConfig.ts +++ b/src/lib/config/WinConfig.ts @@ -14,6 +14,13 @@ export class WinConfig { LegalCopyright?: undefined, } = {}; public icon: string = undefined; + public signing: { + cliArgs: string, + signtoolPath: string, + } = { + cliArgs: '', + signtoolPath: '', + }; constructor(options: any = {}) { diff --git a/src/lib/util/index.ts b/src/lib/util/index.ts index 794b748..2ece772 100644 --- a/src/lib/util/index.ts +++ b/src/lib/util/index.ts @@ -1,10 +1,11 @@ - -import { join, dirname, relative } from 'path'; -import { spawn, exec } from 'child_process'; +import {exec, spawn} from 'child_process'; +import {exists} from 'fs'; +import {lstat, outputFile, readFile, realpath} from 'fs-extra'; +import {dirname, join, relative} from 'path'; import * as tmp from 'tmp'; + tmp.setGracefulCleanup(); -import { realpath, lstat, ensureDir, readFile, outputFile } from 'fs-extra'; const debug = require('debug')('build:util'); const globby = require('globby'); @@ -316,3 +317,9 @@ export function execAsync(command: string, options: any = {}): Promise<{ }); } + +export function fileExistsAsync(path: string) { + return new Promise((resolve, reject) => { + exists(path, resolve); + }); +} From 4e45f1edbeb195b1a0723822011db7ac37d7e4b4 Mon Sep 17 00:00:00 2001 From: Myer Nore Date: Thu, 28 Sep 2017 15:47:16 -0400 Subject: [PATCH 05/24] add dotenv password code signing of directly produced .exe, .dll files --- assets/snake/README.md | 9 - assets/snake/app.css | 26 - assets/snake/app.js | 253 --- assets/snake/assets/pd.icns | Bin 32019 -> 0 bytes assets/snake/assets/pd.ico | Bin 370070 -> 0 bytes assets/snake/assets/pd.png | Bin 6388 -> 0 bytes assets/snake/index.html | 26 - assets/snake/package.json | 52 - package-lock.json | 3830 +++++++++++++++++++++++---------- package.json | 3 + src/lib/Builder.ts | 15 +- src/lib/config/BuildConfig.ts | 22 +- src/lib/config/WinConfig.ts | 4 + src/lib/util/index.ts | 17 + 14 files changed, 2774 insertions(+), 1483 deletions(-) delete mode 100644 assets/snake/README.md delete mode 100644 assets/snake/app.css delete mode 100644 assets/snake/app.js delete mode 100644 assets/snake/assets/pd.icns delete mode 100644 assets/snake/assets/pd.ico delete mode 100644 assets/snake/assets/pd.png delete mode 100644 assets/snake/index.html delete mode 100644 assets/snake/package.json diff --git a/assets/snake/README.md b/assets/snake/README.md deleted file mode 100644 index 1ed9ea0..0000000 --- a/assets/snake/README.md +++ /dev/null @@ -1,9 +0,0 @@ -# Signed Windows Executable Example - -This example illustrates how to use `nwjs-builder-phoenix` to -sign a windows executable. - -Icons from [EasyIcon](https://www.easyicon.net/language.en/567185-Public_Domain_icon.html), -licensed with Creative Commons Attribution 3.0 Unported License, and converted with -[iConvertIcons](https://iconverticons.com/online/). - diff --git a/assets/snake/app.css b/assets/snake/app.css deleted file mode 100644 index 431b400..0000000 --- a/assets/snake/app.css +++ /dev/null @@ -1,26 +0,0 @@ -body { - margin: 1em; - padding: 0; - background: #111; - color: white; - font-family: helvetica; -} - -canvas { - border: solid 1px red; - width: 800px; - height: 400px; -} - -#scoreboard { - padding-bottom: 1em; -} - -#label, #score, #bar { - float: left; - padding: 8px; -} - -#pause_menu, #restart_menu { - display: none; -} \ No newline at end of file diff --git a/assets/snake/app.js b/assets/snake/app.js deleted file mode 100644 index 10d8be4..0000000 --- a/assets/snake/app.js +++ /dev/null @@ -1,253 +0,0 @@ -'use strict'; -let currentState; -let canvas, ctx, gridSize, currentPosition, snakeBody, snakeLength, direction, score, suggestedPoint, allowPressKeys, interval, choice; - -function updateScore () { - score = (snakeLength - 3) * 10; - document.getElementById('score').innerText = score; -} - -function hasPoint (element) { - return (element[0] === suggestedPoint[0] && element[1] === suggestedPoint[1]); -} - -function makeFoodItem () { - suggestedPoint = [Math.floor(Math.random()*(canvas.width/gridSize))*gridSize, Math.floor(Math.random()*(canvas.height/gridSize))*gridSize]; - if (snakeBody.some(hasPoint)) { - makeFoodItem(); - } else { - ctx.fillStyle = 'rgb(10,100,0)'; - ctx.fillRect(suggestedPoint[0], suggestedPoint[1], gridSize, gridSize); - } -} - -function hasEatenItself (element) { - return (element[0] === currentPosition.x && element[1] === currentPosition.y); -} - -function leftPosition(){ - return currentPosition.x - gridSize; -} - -function rightPosition(){ - return currentPosition.x + gridSize; -} - -function upPosition(){ - return currentPosition.y - gridSize; -} - -function downPosition(){ - return currentPosition.y + gridSize; -} - -function whichWayToGo (axisType) { - if (axisType === 'x') { - choice = (currentPosition.x > canvas.width / 2) ? moveLeft() : moveRight(); - } else { - choice = (currentPosition.y > canvas.height / 2) ? moveUp() : moveDown(); - } -} - -function moveUp(){ - if (upPosition() >= 0) { - executeMove('up', 'y', upPosition()); - } else { - whichWayToGo('x'); - } -} - -function moveDown(){ - if (downPosition() < canvas.height) { - executeMove('down', 'y', downPosition()); - } else { - whichWayToGo('x'); - } -} - -function moveLeft(){ - if (leftPosition() >= 0) { - executeMove('left', 'x', leftPosition()); - } else { - whichWayToGo('y'); - } -} - -function moveRight(){ - if (rightPosition() < canvas.width) { - executeMove('right', 'x', rightPosition()); - } else { - whichWayToGo('y'); - } -} - -function executeMove(dirValue, axisType, axisValue) { - direction = dirValue; - currentPosition[axisType] = axisValue; - drawSnake(); -} - -function moveSnake(){ - switch (direction) { - case 'up': - moveUp(); - break; - - case 'down': - moveDown(); - break; - - case 'left': - moveLeft(); - break; - - case 'right': - moveRight(); - break; - } -} - -function restart () { - document.getElementById('play_menu').style.display='block'; - document.getElementById('pause_menu').style.display='none'; - document.getElementById('restart_menu').style.display='none'; - pause(); - start(); -} - -function pause(){ - document.getElementById('play_menu').style.display='none'; - document.getElementById('pause_menu').style.display='block'; - clearInterval(interval); - allowPressKeys = false; -} - -function play(){ - document.getElementById('play_menu').style.display='block'; - document.getElementById('pause_menu').style.display='none'; - interval = setInterval(moveSnake,100); - allowPressKeys = true; -} - -function gameOver(){ - pause(); - window.alert('Game Over. Your score was ' + score); - ctx.clearRect(0,0, canvas.width, canvas.height); - document.getElementById('play_menu').style.display='none'; - document.getElementById('restart_menu').style.display='block'; -} - -function drawSnake() { - if (snakeBody.some(hasEatenItself)) { - gameOver(); - return false; - } - snakeBody.push([currentPosition.x, currentPosition.y]); - ctx.fillStyle = 'rgb(200,0,0)'; - ctx.fillRect(currentPosition.x, currentPosition.y, gridSize, gridSize); - if (snakeBody.length > snakeLength) { - let itemToRemove = snakeBody.shift(); - ctx.clearRect(itemToRemove[0], itemToRemove[1], gridSize, gridSize); - } - if (currentPosition.x === suggestedPoint[0] && currentPosition.y === suggestedPoint[1]) { - makeFoodItem(); - snakeLength += 1; - updateScore(); - } -} - -window.document.onkeydown = function(event) { - if (!allowPressKeys){ - return null; - } - let keyCode; - if(!event) - { - keyCode = window.event.keyCode; - } - else - { - keyCode = event.keyCode; - } - - switch(keyCode) - { - case 37: - if (direction !== 'right') { - moveLeft(); - } - break; - - case 38: - if (direction !== 'down'){ - moveUp(); - } - break; - - case 39: - if (direction !== 'left'){ - moveRight(); - } - break; - - case 40: - if (direction !== 'up'){ - moveDown(); - } - break; - - default: - break; - } -}; - -function start () { - ctx.clearRect(0,0, canvas.width, canvas.height); - currentPosition = {'x':50, 'y':50}; - snakeBody = []; - snakeLength = 3; - updateScore(); - makeFoodItem(); - drawSnake(); - direction = 'right'; - play(); -} - -function initialize () { - canvas = document.querySelector('canvas'); - ctx = canvas.getContext('2d'); - gridSize = 10; - start(); -} - -function togglePauseState () { - if (currentState) { - if (currentState === 'play') { - pause(); - currentState = 'pause'; - } else { - play(); - currentState = 'play'; - } - } else { - pause(); - currentState = 'play'; - } -} - -const pauseKeyOptions = { - key:'Ctrl+P', - active: togglePauseState, - failed: () => { - console.log('An error occurred'); -} -}; - -const pauseShortcut = new nw.Shortcut(pauseKeyOptions); -nw.App.registerGlobalHotKey(pauseShortcut); -process.on('exit', () => { - nw.App.unregisterGlobalHotKey(pauseShortcut); -}); - - -window.onload = initialize; \ No newline at end of file diff --git a/assets/snake/assets/pd.icns b/assets/snake/assets/pd.icns deleted file mode 100644 index 222e3b09a3af57bab63a5ec5c99eb32beef6b737..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32019 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 a^>0MW!;6zF3wK2M_g3VctbNV_H~$|HWvFEU diff --git a/assets/snake/assets/pd.ico b/assets/snake/assets/pd.ico deleted file mode 100644 index c9871f864a9b34fd4b91cfe58d44057f50d3ab1c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 370070 zcmeI52Y@71oyG?d7mz3hlFR}Mm_ba4I7?8(gqTlM%n{R_cZz`-^%Qf~GcPEf;q=r~ zF#$V>IblTdj(}hQTtsAnW#_(MRejU1YpQdq>VALts$Tr(_o}+OdUk4Rlc`%wL7Pmi zoZ4sQ&8MED^4wfj-+Ys)cdBjGs;qv<)YK{aY&Ny;zG?llcbuBK=mncitz4Pax0{-J z)4MmD+D>QqJ@4jIQ+GdUv#EW=Qw>v7H%r^8PEDyZQq?`6h)!)S+(kG-I9m8m;nTvG zgzpIp!rz3e`UH4gAe* zY++A0Qou%RjTAjF$sXWdd0OBe`a{Amg!MwFYpiPHvGFY7gTfO8d=Ni3$O)0g-UEC_ zUL~9${6v_9_1BSjCC)dM$|V)qw5AY3Z+lJ{}$a{uAe z_X!6In+cJk2g=}qoutIe1fJi;bvqm%@ci(l!j3|u=z&pq;Jy;NTDVGx>wYvo!1p{? zxt|azdSK8V;J)**!WvcWM!2*bCaw_I|75QHaL?zv z0^aM0Gp!l4?*(5}`rm%?mcT??9M^wb|6c!`uMl|GE7D|mAg=$o{=@a}^4FC9 z@m^s3_kg(m#MawwwdTvGQP&g^&i)Ne!Umf z&(;#S=lCvziM1@Q|G55()_YOgKebApH?b>aJPnWQKd%3xwcf1lL@kBQ$8$MMoK${z?^IA=}nb;LoEyLsbkL$mkHQni$pJ*BET&<-rk=n-fAJ>1U zYrEa?ztW1Dp2$^I9i!v=kL$nP_1w+4bF>upsLpbjI8EdFkL$mib=}FF-)mJ(Pu$9? zhQV?D$MxUITJCl%p9OZQ#*&yQE#vx+>%ZGI-RZoaYGvJeqE=V=jg9L+uK!NgaWCWN zwIsGK|FW1E4deQc>%W)v+|69x5sL2#mSc;F>p!mlZq{(Gb9h%c(&#-9*MD69y{_eM z=N~`%^q+VQ;`)#4zuWcOk9p6X_!T%>2gLOs*MC3Oako6KQ~Dn|+9fd2(&PG%>%ZHz z+pl^29U=Z5>PW-)KwSTE{r77f_rm9UO8qT{pZ*gsF|Pl({(D)s{hYgc;#cGF9T3-l zT>t%C!@cr~|GvO*_kg(mp!mley`nr@jH5=SLSexkLy3K|9-94e)IXWmO%VB z#s<3&#PuK7f4|plKl$-n!AOJiKwSTE{r7Xd4uV(wjX+%ggUGAMvl@Hf6-xj3Ibbk* zK)n7}V+~CDUiE*2N&kuG8rOeZ|5e#ro;2~Rwf_!?>p!mls;vJDl>YI(p#JUwas9{j zUzPQbp6~2$`cFK!xc=k%uhROzUMu!q6TfQv=YanZtG^1D3x5}G5H<)^%896J>v$1U zVoQvP^@RfeF3(zl_iX+l+$dBb_FtEtk^19-n~TlX!VUueKFdns4#K^K#|!@|yg~S; zaJF!b5Z7BdeL!r85wRj>#O`qdu_UG|1!7FBw-PoNwh?YE>?*7j_7)Blo+7+l;C}l| z;XHwBZ&_l0lyr$STn}t2aVv#Y!fOQfVXh?`g|g(ur09Xq@jWph7ORAn0x=o{tq@c8 zhDQi*6}~H6DU8bBzm#lriZogeaPM%CaDu?U@y0#msB&W5<>Fg>jISRc;QLV$_YLd^ z9}zARhJ774Rx%@%#{*n@?k;dW;y!fT*Wr-VZVd|4&hR?711=v%^|?+0I5CC5ytuD6%n z|0!H9jMEw&ge~|8U*WTHpnJ-Q)xw~j8}qlrZ#NE(ngAPk?)>k3zP?Yc7;+KJU*yu%a;;mfFvfpuY*-#_lJYTh{j@hULR?ki)aE z&j{V-LD}a0w``e|=X<^8-#%jS{T^b^`-qXo!vimq85@MMt>RhkJ-f6ZqlM&vwV4{R&>X9(@&!7#?mOP6hgNQ3tP&s8oJTE+G6 z8pCgnB8{g9_>BDvp;aCXy8q|W;kM)H;?i1mFKO1!cS7;I*V2ZtFN*CUE`JaPy~Z2y zM|Ql%^d*!XGdV&tT75V8-Hy4&303m|&xSkweyGuU?xY==$c{8R4?Itzo5hUZ7~g4h z>P5*z^1v~Y(<~1L(f8CL*%rk#_rP0P#Gb!56KVWC!0+k?vCfNlA}dlkJizaLz9|&N ziMIF|pd4`;v=%p)fYXFVdC;$RWFRY2c|5=~n9GHt7+S zgI?M`Jper;%l>+Re+#7O-<`Qk?c@4)mHX?#@!-biLGIOiS?}T8E5s{)&tHw)cvyqD zA65MLM3-6$-<9kv+)a3ZaInCB$=-O7 za8F@cSRquMct(Gw(C!*-3&;8k@Zro@&Q6Ki5l?8yOgft(;W#^LYh?I}C*_kZNV zq!GW9A-=~6e11Jw;9j=TzsYu!`uO)K)(T%0UN7)mbtj>U^k6C7XkEA4{-7!vE}e-P zu_K1Wl9&=(Vq9c9IYDlaBjn0)!YY9rsv^BwN{4o0`z}>9q(hzA=MND+ELs?GERWL*x=URi*nvd~v=I+VTk1$Cb90 zVSMJz+Z@{8k21fzdb_ZzPzAcLl-wwEYCG4-`&7X|=}0VyNjtxZ>(me7cyfzpA>>*W z=vXNk>i?frP`X1Mx72v-To6KA2VLg+@-|^7q3rZoDcGq$m{WGb_r#!I*ZOvSv{o`- zD3E()rfsBLcs=}9nU(EAw+CuY(f6J0#<3sc{wf`w-i7YNoN}Oqb!zMVhpAu}vhX>+ z@6@h-jwkoX!7>x~#I~9Hqj7i-U<=vtW?@5Mn{6D``3us8=f`EG??|zBee>*# zF}`lsmO+mr2Tu^l$ubh_{bB(>@R^S9KdMZ7OZlG(gN|!A{4bYYhnLj3kM6){N0rnD zzR$qN-Na_lbI3_@vy2q}M);X!RIp8*c$W1iVbHPch5wDx?-^~{Gt6O|OW5y(R<`|C zV^$1Pu{LGlQ+(S>|55g{H<6=dqq|C>^#Z3w~zqO%vC$SmiSaOtHEgSux6vFN*z6W%;^!{h2{~%-6Z{Ghdoy$abk}}r` zjqIe4F=Zlr*ht^9wv(%TRw)xbR?6V7wL(?Czr=s{5v~-<8tYbimF=^@DNTGyUzrHs zweoLS`^njRm&lns2lQv>vOcHCyX*F9SP;q@<977ontG^E7J9A}X{7ga%A%z7z-P_w zRT|k)ruMb6p-k_Ioh*IuPZi$jzPa=~J=3>LG3`c|%Vfv2PzJiAl<>2l&=%I(9m=4f zbih}C6hi%~T0Tv7kjrHte+Tp*Wl*Mt4zEyuRbyVH_vc&KJIrpL0p)cp({mwwmDjJz z^|GwDTg$I}hw?6=%ydsF_Ya}UF)z~nX(e&`s|tKeTN&tSQliLrRc<4f$>}oCyp%XY zxLFyLX`sUzwO2XbjdbU80PnAjnr5UxUPszSO}x*KkMg>WL!HmEWuVtdi3Ne*29%Nb zcZTHp#)Cnx1qcXZXGGpHfq8*)@dBieEuFat&#$l3VV!Nkp}X=ul8|_y=}Te z_VK;OsOcM0z&e%Tdp~@FZ>-Zep1(KhpiBO?!nr~j-%)y$^cu&w=WTkU>>M?rgZ28) zQ7a?)ZwmCWUgLN^vIM?nA9`8|^vJ95Z8eNz%=0$!8Fz=g@k6dZJn%K;Q4+ow*U$a= z*puU zkQZOY_q=<_)&I#mV90ge0snJ`t%fW+FAiVy;>)VdeRa)4*tqojQ$yiD%^?InF~5W4YYmFN7+D3d_4zbJfR z#5&-ED#x%J-LIF;`&4G(#_bA`P ze5T}&^6wL1J3g4Cb#Gh0D!WHTn@aF*qY|EzyP4|e3--&To$r$K$1tmhOBfgxVf&=T z+xC+4Hy@GX`R&iPBa)pL%QfI)!G4*v^S$y88Df2vWX%jwUS1ToPg=ZfFFDV5u%n<& zB$VrJ8E9uI@mIlqnY8mEBMicUk_|>h*gk3Tw!P#$-+fLxaSzD%A@<9pou4qm1h}7M zgHaK-Pg=ZfFYf`~c~p)sk=%nOI0wjumyIwM_mONcD#CWJheH5 zBA&k=JSyRmi|vyZZ`-?8wr?>)--n_{x&HYs@;8G0GD+uu%I-bFKn%Ie?=D99`2*YW z!6e1pw*Fdnllx_$hmKf@k4nD%GD+vNWcMg@fWNu$ZzGI7w&R0Iin(q5$O!$O7yS%1 zjPiXTa?pO6r1R(Vff#cA!;<%*A(s|T5 z@G1HIq!H#FqVd5b#oV@*>GyYBe@FRypxa6QpC&L5R>|g3(y0>utx+l<*{cMviAgz= z>$erkLT{BKqx>EiKYUu4l=x#Oe|KwzFe>7=XBP{95H=l^5|WD#@Wmv>{^Sw*yGZma z)i~;BfRCQA9C%AnAcok+@2;*E)(JZfQErhad@)Ju|EMA-jIiw($v%FB@)5nAaEUM} zc`)kxt(m~r4^(-SgfAu~?&LVRUM6~&lo|DNApG%OVG{D-#~3?eI!5yC>oWW;IDBG# z#`*l75y!nqJnv!tR^a>CQPQ0x{90k0u=2*h<7o4d7bjefAoaNBRA)#3zJrtkbxixv$+jHM5jQuK&D; zTLyZQlo+@8W6w8*QGdoFzK<31{^k3ZQ4_wwM|s`Gq5j5EJGX`W|55*WLK*UN3+eGQ zVI1Oa8?KT)Jl`k-@p<2R`TXHBC?*~75x%ls<8c0|>>;PiOzcnix-8EpcqjP!Os8?k zffve_GSDrh#Q8$rr{}6|%Q7e^9q?6NzpB>B;ro}wug%nWPUdso$1V%KT8dOP?xEiN zJ9}jzzUvQl3(I^DR2IT#p>94iV%)I1S7&-vHU2-A{@V=OX-(vv z(8Ql*`izRt@Lg5oj^3XTszTFJ^g7`tfzM!Nq0ObpH-swY!9~)0&$2jDdhi*P`}{_} z{Jr|{cUcJE;loDymbv{D>0KsYwu&j=3I8(l^=n!U9&-Qol6OX?TbW}X>UN3ry~mLK z)JojL+VJ5Kt(XkCA0Oh&(6?nTldI%x)#&R|7~h^PjPkc>MSkOc@M}WZV~>73Un|RV zRH?E={O+uk|30-ex;zDZS@g`Zl`W&_|EhE?)91ZTqIjGJ+h<31GI2;_*^^cWI$GB< zozIkhy9~)6oru{@gRc@=`HC^O?}YJ?#^O_a+e-gY_Van4cj>B1kCEc`-~W`@2>xD4 z8Q&57sPy9dwK5XVp&i>+XMPV}M#8uFxRw6H?k5+^^u1ZPvD;k}c?O98)(iUzWhFir z{y-RZtc&FRL3%v0td5di+X@#7MYVYhu>dfZ(Y2jY38E7Un+J*FVL(oPd?NYm(fhxRbpQ&{7MLI=vR3`eEAzCRl48n=Gt$6 zmHi$-p;#hfLTnZU>))^QM)711<$G~*Y@F#p85jDEeRaQz8N8|Vy^rvAf$JE*Zw+l~ zw|s-<@p)*q@DQOa@5f7(wy4w3{dvEX{W(C96NnM9I#D2Y#4vAHJ9Tn~+#!d^C30#K zXlohyMIf7gQVz77@Gzdt5?Md0^^=L+OFXYLukA)F|@NjOs2OW^*ws?^Cd z|1jQR`IS{QUV0NdVn{6CB%CM^V`3e~o?IX&$PIFYTp?#h{Wnph!bphk{=yuf{D_fg zGFYLTi2Y{5IL3KT+0~EdqF0E|9>Ta0F(>xqK%{yPyinEr`u~O6%KF`Qz4oz&2RelmbSxSRE}Ir=z;f1r=pzsvD&Nl9K3|?9hge18^oxuBd_OkNgCi(P)iSR;ojO0B{ z-c9RtJ$E{u?*sO!j$5LpJ$QiUzK!zZFY3E<54_{l{&|3RHhv^DidDbce;`>~^-ulC zsiYn#`aAJqF7e*Pb|uw)lGJLpPlxg9XZcf;B4Vj zB8{g9-XgQw&5;+4rwdAB)q|zU-#Um#yK(Dv9N#@2RvIrwMf&N1{lsj8&~A>rs-MCm zuO$y~pUuA`-EJI)J&t=4erp?P{5){FOzI?`-l_5Nx0U_NgQtrXpS3%Q!6?RFFCBRg zG17Q>;24?HX+H5A)c9M0-t%CT-|=-CbB~YT4fY=QGI412KCt7SKYw3FjN{*r7)ET^ zJ9*D0@6)Q(Pm=C&{~t!C3`fS>y3EDPHE-2$R2&;Aca$Z(XIquE-bhdO|2vFLR3_UH zeq++@^C!Nm=029cEfA@>2cD?zGCt#Pw8mStV@v$KSo4@yrI&lUR`G7ue}?AA>p^j} zw^j2;dh~BI-;cWQL$Ym~V$)-5MLckz^z1c{_^z10F}P_(Y#xT1{C(96gkF7H_WAt1 z<%bW$p;5-bJaDQw_ao2vY`Fixw5$f>U8Ls8LO=XjB_5xY%{x~kL{ZC}2Og?=zjBT5 zi$5T+4kn5C&Hix$e@~-dzN{Lbzsh$0eS!G51muK@(Y*BSXTDu2ezOAKGmbNDCgXTN z=0c&L{;M)CKKDFDh|h-Qgo+UFc@84yE*0Nb3p-ZC5ACYSHSSr$uZ2PQZ5(+1O1^o9 za7!Ul`8}{kDh?{|ct-es;m+lELsJd;jLSXlf-opwjT_&!^3^MZorFl`^}xfV+Msif z=L6pnjuxu&*^$VT`Im&}3-=a=ofAB(x{JVb zs}qFEe_$_XQ+6D50;xwt{{d2YzxB7MEU{lR`hzwQxu9>rSc z-$dcrB=10;FRT|vX?K)8HFce0aGpR+hz*~+h!ru5G#n4?B{6(fD_cJPQ97L^oGE-< zc%8uCDEl|z#lkVdV}&OR#|pHA*9g3maH{YN;X;8urfl{_eTrj3tcV%0BZkECHG<>& zLY4WR;qF4D{&;}vZp_E%gDT~~JNlFQk&8UAy%3*!#q}T8|Kx55kCW+DihtB~vf~x6 z|NY;qcm@~ORrEm>av-k%{;z-jM##Fj2gE(F0yz-ZfB)A%9C^lGh5bM3IN5QE>whro zpTFy|Chh@o4=i~O#PvUz^$*wmg=>X)jg3AiYYxQq&q^H}@jg~rV;}X3v5D({aBCmV zHxs@i#I+WEP{tgH>z`FRSmNDaeydZ)_(z>4J1%kk4|eUFJAdyguC?fcvgJTr|6ZYk zKYuvx0dWs3Sq{YYKlpWT3H<%LpO!5CWxF0leTI9F6xY93=Wxzx9uV&XN|FO{ z{SRl|hfjy|=8UJ?ZF!C?T80|h6*Z=U>dy&M)tMMiwu7~J@Vdg+w|3#~DG;J@4>p$*)L(YM? z{ztRc8%gEgd>rQfA7xFpzvKFEv=T?x9^Va^>@_*eJvpxb(XI1llHaV(Vdg=UHJSd7 z>%ZA59Btn_;~o(Azyaq#T>qn8 zukUs=cqV{ zx^j)(RqCvXdqBJo=phH<`Y+d-?o^vCG~uKk;vcWo)wxy=B35zzce>)rIsU~`D?S&T z?6us@{t(xHIoESHT0KaUE)lxPgE(h0{TA1MH!H2Yb8auyz8Uv`xCgeG19APAcP)3T z*`}JvZ;0dPfyun4cXBTm*MGOGto-v1m5S#Jo#aCtJ6ZmU>%aW#xEBp?rO77>aa~6r z6y-o%|GliP>dbwdRE>XUJnjMcJs__C>a5{jHNBk}d{W5gK&(%$PvZLTbyZbw{*hAo zg18UFeNZ_N*MIfaZ$C8NModl+t{39 z0MA)JARH?2cb+3f4^-6yyl=Kjc&l)haJ>-k4eEV>Pktrv&cy?T_>P{O5NYf@!2Ro; zgck^36fO}q3X`}WT$=gd`8wm1cyBK!M4BiMY$a>&EAa0d|F3Y4aFZ}@`vEqcCtxGb zO7ACZEkueQh#shUfZrkQBk+AT@2>Lq%z6HGoluoM0bP0K@ofPco+MyXyr-8FB1I2$ z=z&{kJnQEW;aK5)!j}cErMq@g)Llndg(=6S(i- zUL78*g*oAw0x}L2_7b)c&>>PqJ+N3ub9w?(*HB-X$H>M5*3&&THC;ccR+~$@r#7jz z)RnU74H?X*(;I2PBeaZW>-c7sb?%*-+P0{FzSdu4V!(cCszAV!_OO{=E?}X?UYEw@ z{c~aeau?N!FHoRPe1QUW;tLe06F;>)Mxl0;^B&0e&*Uu3_vb^9@6UTE-=FtTzJIEP z{HdIR%jQqlGg#K2GhkVNE{B%&=L}fZpEF>2|7@Lt%lqpMSl(Z6!1Dh32rTcfH*k4> zy@AX7>kTaEuQRZqet9k}Chgbwtd!OhlTjk8N`d zr&C=xt_yUbo)|boDW&zf{v^j{-K+7r{=@;b?!}D`mD}d(%vTb-BRkL6ncup9ZnmDm zLY;dS7w2>Ra!}wNIW*TV2Tg|@7iPj*vZ(6%*X8=}@^rZa@$VR74Bb1`A@5Uqp+Bb&-cSG z?8hMq|M_(OQh&ye{*ALbWc~0<<~QlrkSsi@LzDS)QwcHuCi>^oIspp%k=Lr9>7Gvj zlldvTEJM{emo?=2mo}%MUqjMMr>4aI#2a<~8;F1Ai{q0lPy}ZEMfs8F)2x3@8}k=Z z`FZ~2XF^$jQT{Kk)reO8P1avBzg2&e^}l$QTrCWqACnMD!vo9thUe`8Q> z{Q7BCGkz*9E?&+d?VnXC**}B*G3}pA1~4+ezoz~3^e4+LzdtWt!mI`QlXOV;|9R?Z zc#;h;abQwU`xoeE`&wMQnnR*+QcwGn@iX+K{fWX!J-t39<7eq!T$dc@#BY{T+RylG zcS!r^U7t&vH9pJU^~p3vC{;J>UznPjhMfX3%TWwxILnjCNeav+g~jX+VO_>9>tCEt zt<(IObX#;& z3mlRx)am;E`M}^LFN5)noDU3IK)+x-{R@G@^YrH&v=BIe?!18uwTwv2%V*HKscFPO ziFx@9T31sjQ9qvn>uU-vB;sr16Q=S>a@Juk?GFr2h0bIH((c;$q*+Q$r~R3FIR#}@ z=CMq@oPrpg&Yw5`dJn2~h5?y(7&J@WqX6qBX9$Dog5ZGN5NOQUN2InA>X?e_KOI{+tJMHxaqZ%hDyYrbW(!v$dYAG&dE{GWBu_EEB(U^N=!`S;pQU zBGUeX?!|?g{Op2WKPm{pbbU`&tIaR$t_dh)AKU=U7SA_>2Gf@qG@70TX}SS-nw3Vm zZeG-y!?I2IeVr zJI?uYsJr#YwkHbQ%R=P5^FC>q(8Ce3`zM0q&YEEz<$YS!I<{bw^8j11*))mQ1h4yd z%L!rJ!#%&M@ouCywuSb6RrNb(Nia!!fn$&9XA1c1hV0zPcjMF^<^i8)<^(@inuNU| zjQ?p_+{bCZZ#P$cU0^)F&%2)hh4;g0%Xl5b_@6G*uzwQckKNo8*!JsHeyu?KA)nLQ z_#9*Wm*3lRO>iE3N9A3!aF1gS#P~0dzxM(@?^6DwaBz?Vq0h4B%AP`7CVl@W)_Hgz z;Ck@Vca;o&&W0HO;`oyT;l1I5z-w#lC4)C5!)pH=mzw`KqIlw+pD|1x#xs2{=LPY9Pl%O7gjI_V*GoLKc5ZB1HLys zq+&S`};KVW}UoP_^p61><8z&{WFYnUN$~qY+@^{s4a_+cZ<+Jku8;Ak#L)h-n z552@a&+m=#JqU*iCBuR3P@=51b4CovG-2$*N;>!Vg}TtOY)YdF^^Fbb5B|;RR2q z=-xc-8ST;e&)=it?_@a#y#Bdg**#NnTyp^PoCEh)+0P3c$4=t!Im8}bka?%I@*SN6 z+>@RnI0w83yew0>>~{3(S=-0w<@K2#ybjvQ0gq+w;h8e#nN>@B^4i`;8vang-W#&> z_jER~Uyd_5UeA@0_`vJAo%nm~b20~+S5^Gw9GI5E7YNu)PIFJNuK;;WS{u)!_e1}U zA@76Da=>Gl1DQu!tIp9mdyrIS{oAfrWG1+O6c(}fkbfZtu^*Wy&(VJ(5O@2bC%AK=E{ZeSNo2IJ=EK z()W9wtEQd^TWnV|M)(FF^~-kn7;99<&c6xM0@NxN>8Re0$jJL~Gqvq1+*!E0u(!bX zpn1EQmv2*3$7K2M)J%NfJfLj2?Hw6+&&jG?ozOkchc;}*W^Bg?_yV7V#JqmQ$MO#l zKi>yFF%vY%Yk+Nc{C1X1?!`VY{7&HWDEhG8_&)0|!ViS^3x^Av3lQ^r^@DZTNxUu< zh`HB$SiVH4Lt8iG9Qc4H zWAC8vZLBxC?kRjwSSN(Ord$Nah40nyh5s&IuQ^~J_*&@ojt(yS-pFIs)fHJ+bjJp4 z>BM$?h0pd7AoS@a2dvLt;=^Yfo)Hd;kcF2oR zdWnnucU$qfOt4PQH`?ffJT|R$cC?P@jP9YFc5KH-)(PL?!_cRyc170fqneFQx9f^a z^GVLL?KJEw0&<9HXcKMi!1EZ(Uikt6vK?uyv!my}P1E2@JOE|dAdg9FogF4k8fpHw*68mG$Z)>5Yj@E&d}sf?T4l(x z(pvjR&)Z*9@UP`jrVa9#wATL7^Ux8#q289$=@}l*Pkf4RAw&(0>;qymH7{5euJ?fT;(tJ@B7@>7NcyCbwDR{ zgP(QH+t5qhKE=n7eV*3ZJ9^GNH2ll$O=&sG_H#WMlGOZak@qh+WwILvop~wzi+vYq!`{3|QJ=@e=+gh)$^B+;uhqGq4)kZZhStdH5pLNRX+V8sW z15V1+a}1hmTkG|B*8U@F%^jDV|2)gSTo{E9c%BJ47HO^Z(XoE1h62cKX|46qGW|@| zap`xw^ZcA=Jg?e5Q`50%t#xgmTdBc^v@@Z>7~6l4`mLjNbA3=}@3Y)<*>;~Bs9V=; z-5;-30J$x#H9uMwXW#c(r$O0lzM+rtJ=BTr>5TNZhj(zLi?i3u^E4OThPC%2%RabD zpq!w-NbJX%>|HSn%0^hEeqM`5b89@xSO|qjqf4HBCWM|#NJM9&U5vi z^Fei>mvyp^gFJivBjdnKF~=mUHa*$yl^O*gx23h_N6SLC?F@Bt+n~<&b+`9Fp>=%r zbu7d7R%Oq5uLfeLbsCh-Az%BNYwmqBMIDo@+VtdD@2*h*a$8z!ezYuP`?_zPLOlmn zwy)olsp(iW*SffO4>fml9q^v>D$U1E>oh2vL%#Mkd+%NX0xvha8Kv*4dH#_w%n#W?JUcHHp}G9fWZjRN3+WljQRG6Y3^@_t(4wlG)wm z53un<*f-6?j-)+FOSxI z0J$x#H9v;3(1F-kr!Y=~DBH)#>-9TptUN^MW)HLvxOSW;V5{?T5O#+=eXV(uWI~<9 zj`3bEuT;6)@BSg?bL6Y#-xuU$-3#HFZqH|G;dP*L1r~>;vvYhUEk2KYrjD zCe*FoCu#19Fc8_6wAT7)ndsn{ShqpM-8`LV@6J^0RPVfHTmz5pl9zqJeXwo!+4}bT z?0t4V)47+^_ci%@8G~Nd(7bqHr*-SM&3S(0TQ{G3G;JB}t(Mnit&ZoiK}{Mw=YKQ? zJ)NIbyTJv`oo#wyeysdP-A_HZ}eQB-r(X!D6`>b2PY|ZnrZ$F=@X5Y8gwDAaR z|D3ROHl$M@Scki6{@(<29@HLS`@htsu1s^x4pG_uJvig%zO35T$^Jqo_*qBu?$_Bq z#mD#>vhUMc_s1`4>OtA`Zg|>nFA|SI`M_)IQpwn(54xU^>59JH-bbQ_{e@2G20!cC zuh_%K*Op^dhV1jS*4y#pn*R2Th3}0!=PZQCXb>N)s)epA)I`KSAfV#2YYZV*M z60FxRRJPq7qo%gWx}Y06hVinDZqNA8dkVgV?CZ4F`|-tMac;n-8y_$Spxeg;`=FP# zfbEX`KUIE=0NLMZt^K3t9jYnl2Y=@%ZIH*Lwf2vmhmPoK`^~?b_~Sd<|526kt^KTG z--you==b1^qiyL_faA}+Hwd;F8*GQ$nw=eY&$&eNX9TEQ-I(ijbE3+~5A|BDI^;2F zt+S(bLsxVTWpt7UpO-bKSK5vyQyO-KIly-d&k?xBhQ6>*iq3!6SUyks`40Sg ziHW8!w(O_tZ}jE{aU@J_M6ml@BzNSC-?>*;VXz7aye-jz`^_qV?>;2aY5 z%>|xeZx(iBW&GC<`LJ^=@i8`fz1!Zft)I_Ukc|zNPu+yg*p3g1e8aqayPEn=mcjMv zF9N+@IEZJ7N?2O_4v~+^U~3os##r$7&+Bd98=BciDZ9$%J@rr!tGiV>A4) zv4~pr7tQHcn`8WCF|;rKD`VbB-(F=SGml<*=I1-lc2mcKfNjn0LEOh!=0N6=*7|eI z+im~%hkNH-oafKeRD5(pc0ML!<^HT%iIaVdvR@Ujt7zY+J%q>npW302PuenmN9XvS zGR^l#_~dHgKAE{y%K`6OzOQv$!&o;edn|Jy^Ga*udGsFSwcz!2(n!KUi<{^7WqmtC!e^IpEI)z8^qN zD3kg)kn@^*KHF>`ItO^)-Pc6+0Q@kjy&zokJ4z4VyP&J}b{u;-!^`&bxd2&Enbtt6 zQSV2`@+)E$u6@dRKTK!h90$+sU5n-%^70;~;g<;L$ez{D*u&Gddq2EbZODYY2GD67 z$otwuWQ^^$4_xv&$9*DKVw-{o*`;k~Q&=LX-{>J zr%HAF=Xi&{4E?}&yiXOJ2P!81;C?xb7ww%;=u_rVhjtgWcc?xZ_z1Ut>avq-|1@S@A9$?>u>w&gwg>MLa zX4+TaJFaf%)|&Jn;Vr_ig)k38-&>DSobx$I9bM5G-FFbGNY2dzrF`i3W&Vdh0N&MGr4+#BhU$h#}I1tXwm+9xeo7~Fxm9>tp=-kLQ`{i_vF?qjr zy$omTbbBdtser#5+0-Z&j0gAwV0$AT-ai~~&uzrJ?CsXy`GD=V5#84aCi~j;vYfeB zfu1Fxvvaps-`h7n_sXwI^Xy%=)Qo)#C5_fV~y}KW90> zy6vY=CW%+o;;&FApV2uVBM>XwFiCOim#y|)RrY`44*6c-Ln_A{=zjmJYW#g4u(jgP zJL@qAy32v8#$O>%p4W2bUcm2(@R_Dxd*dYVsdD^@y{`igR+;w!h*`WJY<~?@J^l*! zQVu*ji$8ln%z^fDU>xEf<^aE2^SwaKfz~-NF7Xd@;B_$v+P()Gr}*=k!1n`hj5*L& z4vbU$*#p8Hn2R~kG6%*j{`nmEk1PkcCybvBm){SJWBl_u@Dw#%m*s)&orKT!?bv94 zRPFgMF>Z%^Kkz^e{-c0Tn!OLvj?czv%(%y&9N|4qXgA?|0`bG{cs;0ncQ&r;Utvzj z`@jm--YJj+8wKb8IIZbUY_a|09)E>8`M$vK4;-nwuLqO77fe$8$${|m;f|{Rw-D|H zlXgvT{7=O>8R4UGC$0y!li$x>AcT3qwV{)Jw2EV~(chVUS7np^;`+Frxfb}oU>lWR zFZ^8~mh1zpjd9EaY{EA0b^Jz#-^W0c68qHJ^ce01d#dRZ!g^uc_Je#*W8=q#Jp^bH zW1m`HyDzX0?yinc3Vv=xF0f`m)%N`Ka5n+MX7<8J^`8;&2fvGYkKo^bv3COh zE~Kovz*_fnF7!oDYKHV2wF9hMg0Ziw=&t zbwF2iMt5v5-YWb~@Y=G!i}E2q#$&rVJJy_w;tfyw(CsY( zy5{wd>s?Oikhn(TN8cYX{T9Lj!tufy;cB5#Oj(D%4pR=}7|sdXDd*>fW5Y6^Th<7( z0y?3asYrMC#dGH#AP>SdWez*5z~3&P6TU3`Uf^$-62~xBy_Dev&vOK1%n8Uuc9@&0 zCOQ`BNnfPiJ>Yf4_e*)-!=1l1v6t{r;aK5q!e@o=2)_~d8zq+sR|&-QpTatUw)2JG z3a1Lpd4~WGV$J*RTL^hV2Xx8rQ~7bFtS=^{^qx&i>2Y4x1a)@MshL{C0`(QOI#sPT zQ!+f5fOAFLx_>^Y)+D6W8Uxp7vI(wF=jvwYeyi;ICb{v}(ET=Psh$Z~s%HY0>Y2$) z^-SPWJrlT8&jdEE&n6ny`e$t2L5I^=Viruq82l3|OB^I2$qnAI0j&n)Kam#crB`qqijf^doI@LoTip080IQ&pEv zi;Jo!x~iU>Z`4q1*)WryRadreOFcQ?B(~VTaW*}t^-ZbEM=KUpPkfcu6Qxz(g#J1E zuvSluR(s+Mow}-Pp63^y=W6|3@z;FopUj`H)n(tBoV{!COU)nZm)}<4Kea0$tLy!_ zxOQ=U=x^2Q;<0#EeY~j8OAX>XhkKO(>s6+nBp(SNT2KxoL;{GG>VHV<&Zotz)B0Ru zn#$|adX}H6&n68^_4PBA0nZ|Qd+scE`H1pHGv>~a_r)7>weW67?k(G`~#%IiFDXc48rlddF zOVXC4p4b-F=R7>Kc)mq_A=h71Fy&uUAg$LFNb5BPvih7EX7%}8eMvypzvO|ez9b;4 zTYyuD6#-=t&ce48z%0B=0T!1zhA&N5wo-Qnt3Q!AYjHZy2i%ipr_bU(nz>4t6E>Mz zsiSCBavaow&%yb7H}0$W%=}W}WZ`GRpM~oM0v3X{KM9OsEOYK7g!g8?Co9uuZgdGh z7i_NjLxhhC7YNu$Zgd0Y!UJCLgtrNqW$=UV)pwFU#|vu(Y$aQ5Gj;%fR(E^;%$)Eu zy8F#*t@@FHEC|`7x<9www~-ES5!f%RFE-pLaCTd_=OSJ_8{wH5vY}z;f^A3kj|FTa zzWuVfk+19v=L65+pDUn`b3w&{lkMM3lFk)ue_H0sEkg z_TvNgg&PFQ9~7WLxI7gHtW>M86J+K=V2e;ad7{8g>aqVKA*AM^X!iYstxMbI)E2>#rI|R z5S}Rfm#`pM5A?Tux3zO-PUt^)!W$XLLgseDt%Pae0O9$<{|f%@*gVWV1W9xqv+E_c}OAWvE{{fK0%%2=)W` zS`W_87W~=RacJfPk6{jTLtgMk2C`^3sOS6CG_}1z&LGeCMQ5lCnQvO_?-AbU1E4z! zzZ4vcM)uow#@<1I%%>B59ShD7`NMwUb+}4p$oi$V{vXkqctPwFX9$gaVA~nPSctiu z*quxY4%p9Ubcp?d{Sx^f7ocA3M=$t;RytY^`S@!A9m4&bY zkOO}f*f+Z&^eWN~KNPiFhWqZShHC_TfG*BS+USEkHm%hk=|fhYXm2*pKHz>B*^kUK zXi>-CA%FOB4cbk(rC@SSxE`LZ!%NkO4&=P^{w3K!ua~U4bjtHZCbH4Nd>M?6jq=fc z`D)#LcKfLsLrkC|A2`0xQorX? zhTNCd(xZ966W+|REYJ6uc67AAitIDLPifq~LMt+llQa-H+(!WREaVv*vUbLtC+sRf zo}bogb@rbt1@2$H7d09SFL+u$vMiS~x>zs9pevN;N1Jni`^d-B(1bkpUo{54*9*v_ z+z2;hec#j>YNo>}>IaZzrM2|vx$r`sc{h@cZs@0H1j<+<-U@PLUlAa$xwKaE$Ai@XAlsYPYIEQb@}%4f_7%EAwk56Aj{Db&%SzVgWc73^ z-!ZsUbGObohcR%O90ZWt!ZLH=fqe69WqYXWr(h_D#Rtu_Z9 z$Tm;P&0rnTxoB@ua~(ZdwW1tkkoA71%E;vYqt!a}{l{lD7AjhM=6kC80pzx{mL5G9 zUdT7^M)sqd?~%|MD&m{=q{qkV^wg}OXsmU3yT%}wIFMhQ@ij6z)8@SUvC7*CknmF$P^B>z>w%k9Se?=d!N6e9tf+KBHbMAS0g#u76s6 zetuKL&v_0n_<&}gea!=&@NOm>-OS56tEnaZLL(lQjVj6ky4*gk^6P~k2$u+#3BM6O zCLAb0$hO`|Lw0Z*_Z{a6wx9A=xiMKaIWf=nAOl&*L^e903p$}2WL?u*>*Gf>F?>v^A6MyeEF%qgXRuH?%o_JXTH12pRc)bfGPb!?KA@8py|s1$=N+ zHm;cuvLT5N@_uk%c(%T`SL0d%IqYAY!!mu0fjlRz6(5n^j{M@;X{+VDUsZJBdD6qv zt|S+`^(idS&3@cfW!5Y*ob!|ow=rfH0b*{i_9cv(9GtWF(-?FiF6i=kG~~$=;Hf~FR478iC~QF!WZZjf;QW1ep{$* zRxm%u*!C8kJ%%~Vg$D#r`y!N|boO{~Y`qVngY~#Z<#!8rYD0$YzKzDdNVrhIMtFtm zy~ysc%{fRLJdPFM30X#3>)#RILSGlGGkS;n^Y>MMz3?buKjDtTp2A&)!-SU!Ul#r* zz=OFVkI=?e<@{WD!W$XLx|=X9^owl&{$l8SwGB6_&3*{==9?4s*fn zmiJr9X3atU$P2H76T}Z$*ln4dv57X$VLN4XqOXy!^5Z+LmR#KToarJ&sN#j9-oJ4w`C2}e*6&n;2_m67SIJBSQqOyjI(9_Uh*9qU%S;b zFtV&2B*D*Qxh@QQO*r??lWaaCL&LBiIqV0%S3XkZ^95pVKQy{u>PKF{JM{JGs*i%O z-}@rZ-(D(QBG?c3f*7GId-071)ia?KXTt}J#9DZ)v>c3 z;h3<^W4*@BgE2o9o+WH0K*P%UR9f-Td!u#Xd{5!^!jA-=r`d*1&&-7fyx-6mn=Q&B{3|pUPvifv(W+44=;LHThOsG50X7!ouJY72@k3ZX?^qx)r4$Pdm z@JA2O>xViosB($U4C3#$te;+7)Zb&_Z;32kzqo#S!_4~Wn>1?U?81thG;8B5Gv_zi zI6J2^+!9D9^h391n9Ig_p7~^a*Q`U%wu@_0x%xXMi^-n?S)2U{kh4-fQ5?Nd9BmdC zQY{wO&0wbntw{a6K68`LY!ax)V&}Z%#<{HS^Fme^n`B(VK;shzIwuo3&!^#8imT(C z>a~w%?<+h_So%8=cTlBw3a=4xW3NQizY1RvxOcf)V4n*?+t~tR7|R^yn!-KTZG$*_ z-R&yo#|b|dxDMgjPQV=I!UJ9qys^VFXzLf5=Wb&7VS(>N(U+9sOojm0^S00qJT9CI zFL>@IK>dz|b%*co1Z0yN_z->ay0%+qE<9{A*OgZa?4=O$`a#xzg_vC=pkFU~=j}s( z?C`z8k5%RwG-O-ST6ah5e+x~w{+5;3rI)(xfCoF+5t+KZ+Ft!D@59?^1?R)R7oN43Q4RH_930Z&kpR)w}$?}k2q=WnO=c4i4DP1A( zcS8C8Dx8CzZu=LNp>FbsdD{uQ2?q(U7Jell3!B=B1!EY?oL>s?c%T5!?FF8}>?yE! zzC$2y80#3Eqq5(Pv0v5HHNoTI0{3RfX=a1_xQ6pyRWteS+d|`b=YZJQ?qgMky4jE5 z>w8erWYSA7#&h2fW}3Z)6|~nO-N>MNLaQ z-lg(kG!&4>vzMJIphvjBdms3t+V3eq*2irpC zGqw}`(FHQ!w3Z%2xwJS&C#sD8&cSB>`HjYzH)rS1om2);7#GGcr$1)clAra_B$YWd%dBGbQChPBdqw|N=ahbq;D73-#P%bhVW7&+M z-|OqMDx*6&4Jdy`fEd#bue=V))Q*hP1m_#`LpiDz#?rQU?0YoMx^oW8^g)cx z+fO^ZLZ8sq4l(Da0{A8iLgtm$Iy-tUpA~*3ggRWQ z`iTO2!G6L@VOqG0aHQ}~;Ua-K8wKZjUhlBZ7{=1ZTzJ6iuEH*Y^--~HB7P8j;ESK^ zt57!And=10cON>1*9W&ZIx{x3)%>^?;76!aJ8Z)zH5a+)4`0rq&#V(|^mU@Q=laZC zcmUeg3f<CtVQd6NI#?mwEkjC^g|Nj={Z&<|O}qMz&7`@~xD?KS_!qK?>Cy*E8a<-ZEp zf&Rz^-PjV&xBq`3UcQI0Of~gP@bvY8``|YUT$^o&dQe+Qp^m$A;_X@Sc)A!i@ z)Lm?sD2xU7M#STEf%_%&=>*I^@7~eWfrKX1r2`rwShuzAs!X{9R!G1zbyL zqmMC+T`7cwZ{Xb#rLQx|aq?UO?UvJ&_3iz(*?H6Kyh(P(%gMi4G@G4gvh#Fy*4=T^ z&sk$PYDFfmOZ||uUZ1*zvtIj>RmtmB*K^iuU&^k$Y-I{tX>g!S(x z>0d7+`E;IXeD*lcGoLkQZk#<+{MIC|m+7Ix;`(WHJ1cqpY-;L<$!lGD*)@56YHDiX zcwXm9Ut+)yyv)FviwS2I0q2d`S;f>}bJ=-5JKK-;s|F(1e&;={mBK1v={>FOROy_& z=62E47YJVw76f@WS+}fR$_oO0jA1Oq+;D9rjcpz*_f8tWTDV%k9k_;b5!}aE<}erP zG>0u)8MgE}0y{yYeHq!_!>k9_qqhq1fzYEJvivPISXrIeitHkri`tNnZ1ka@&#uz~ z)Q%3J{7W?l9-YXyPUyitLmfN9c&OTtLix7eJ~i)FXT}@&g7IsGT?MGwo)*ft{n%lD zHj~X5%L~Wx`HuQ&0{ksQ#bxBaE!6WnfqAwc{w|07X$$qEe3if!s=q7^q~v%F5z)Wsdn((JF1DjoO?O) z=M3R~0>l`P`?bmd3fmdW9Ol9UUhstMgFRIyCrsu!t%l14>Rvhc^DR5G$&A5xvU@UVQYZ?v5%Kpwll$^dd3V;IXE&$mAChMY$$lUn`Z zH>xt<>xnXaIJ2HvPo}L^04Dkv6V3^F!8;^!fjuT9;u+2fc@fJUg2CIU3{3PfCY%%U za;|th=apH-K6#(&%qjB!H*#a|tvY}_pE1lY@;|&GkEQ$|fn0F@?X2=z!Ft>G*QjlO z0dlU*s(gIXQfp%jW0}uf#}S_JhLC4^kqUcd73a`ys-GSWYc?E?7xT?m#U&yZ z=Lj#!T96MP%b^*)sM|kBsOx65CP*z?xnX!TERrj0(v zFc$LMv{rCT9#hOEzjNcU#EdX4@Caf>f`t{A=#j>adc1Md;>OvVHaze(GwY|D=#qu?JBS!|tXN!-&wvzMTrVg<>0=6H>QN2PDYg?<3QNx^hJ}(1hh&_Arq?CTA`X4IW4)}AeLce1Kh;vw`k60WjK=(>diT&KOSYKj*tZgz- zc3c?4SbR=9`cghy@cc_uM$c_CP^QiOtO>{L-YP>66BzSn;b;MRMh42X(RZyX~63btJ>T$`1{ z+;QHaJ2?i~e)Id1+Th__Pia(;tST&>kex}U_L{DJ&rh#K?@A;5h=-9< zfQxGEoI$&>$!7fO^`=eBxj!k7ZP#7|?(U6O;P2#Val=dmpD0HkUn%0)S=W&?yi!bM zYWR}jiGgS`wWLH*mUFU2r=?M!NJ@A@uM3@s%_eQ9GL-RN%RKO8U56`l_=!pA@FQ%_ zM7>R?Q^N1;d~YWj)k(egyYp}26SGw{;XE7H%tHeaK8AM-AH##v2I$VajRM3+dESxg zK`9HV*5Fx?4K21shw?+@WF>}bt}a<{hRUL22y9R&)x~ZWIpqa)68rp{Epeh7HbYet ztwEOBsTt9SIVw!^wKen4qzNBXd-i81w!;r>fRX<$pJ0aPq3S}YFYSfvm-*^{amKxz zrU(=seqPe|abIh)bM#0^E4cs5JRPXsO%OGeJMM)Vyjnk!kM{_10H~lCL~OlM@k~J6 zB=qjiOgH&$R!vEzx?5pPMwyr&Iyt-8#~&-e$b1R!@mc?Lk=(w#YSk*5gIB=RKJrh4 zQWg_NBW2VsICN`K5mdh_LF?rwE@liGRkjY!xwD@R*ukHM@6askDHCkWM)P+iTLp2h zqP6;AUCpSVfD|E;8>|P9f$9~p9hz6K&%4L*)^8nwwS$=B$HOSzVHqHwNjnD~^G8jg z@HNE_-J>&7f5o9;RPb+5C|<(;K$MScV2=#@15~|se~&IBPqO&|g-3_?EF@=6wKD~sD+8fnU;Lrdv&#^noV})aJCEJ(Iz)~=y zY5Lr8V#Jbs0pP5D*O?B|oBBpT#%c7f1$diZ2-gx~70eGhPNgT%w3ezS0WGBvG`&Jw zD}|n>t4(e-7vHc=Fg@tll1VdgmbN(L4;Krl`@r^Wot9sdh6Qw<2E)(LS@e7We5q&8 zT|g~hWC|O$g_l3-D(K3>FZ2g#yjA3CX?Suij|c7Q57%5pUm%65DeFN9 zP2NLrmf2%pcamk86mIL6pEvhB=_=`Po+qA%#-BV8oTXzslT40`&MtCt$mYK>CwqMN zk?D3JWi&OlglLSLFv$~7Qzg4pt*}V$7LPQSWh(;^*QBY0g`NZopAQ$p#WI&X;B}!x zRXVXKdy8pou8pp1iauEHN5c)jdHb;1Um0mR!ve1@`291;r3!q+Ze?61RAa)c+%QL>ECd= zI*iZ|{0m)M@d%lJ%*y=d)AU@AU0hRN(!2w8gOcAHtKM6(CqqLwupsGr<_J*a%h)dU zrUk8ldL?XW?UTOSs_byi5mNt#nEl}WcX!0*uPg+8^YGiB!YDS~{}n!OpugNDNN_gixlHe< zs773VuBj1MZw2ty+ydv+yuapMh9aA>N9S4>4#A~XkJt#K42
      #V!*`}s=)msKUZ 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 diff --git a/assets/snake/index.html b/assets/snake/index.html deleted file mode 100644 index 51c011a..0000000 --- a/assets/snake/index.html +++ /dev/null @@ -1,26 +0,0 @@ - - - Snake - - - - -
      - Score: - -
      -
      - -
      -
      - - -
      -
      - -
      -
      -
      - - - \ No newline at end of file diff --git a/assets/snake/package.json b/assets/snake/package.json deleted file mode 100644 index f034224..0000000 --- a/assets/snake/package.json +++ /dev/null @@ -1,52 +0,0 @@ -{ - "name": "snake", - "version": "0.1.0", - "description": "A sample nwjs app that implements the classic snake game.", - "repository": { - "type": "git", - "url": "git+https://github.com/paulbjensen/cross-platform-desktop-applications.git" - }, - "main": "index.html", - "scripts": { - "build": "cross-env DEBUG=* build --tasks win-x64 .", - "run": "cross-env DEBUG=* run --x64 ." - }, - "author": "paulbjensen", - "license": "MIT", - "build": { - "appId": "com.github.paulbjensen.cross-platform-desktop-applications.chapter-14.snake-nwjs", - "nwVersion": "0.25.2", - "packed": false, - "targets": [ - "nsis7z" - ], - "strippedProperties": [ - "build" - ], - "outputPattern": "${NAME}-${VERSION}-${PLATFORM}-${ARCH}", - "win": { - "productName": "Snake", - "companyName": "Snake Company", - "copyright": "MIT 2017", - "icon": "./assets/pd.ico", - "signing": { - "signtoolPath": "C:\\Program Files (x86)\\Windows Kits\\8.1\\bin\\x64\\signtool.exe", - "cliArgs": "sign /debug /f E:\\codesigning.crt.pfx /p top$3c37pa$$ /tr http://timestamp.comodoca.com/?td=sha256 /td sha256 /fd sha256 /v" - } - }, - "nsis": { - "diffUpdaters": true - } - }, - "devDependencies": { - "cross-env": "^5.0.5", - "dotenv": "^4.0.0", - "nwjs-builder-phoenix": "file:../.." - }, - "window": { - "width": 840, - "height": 470, - "toolbar": false, - "icon": "./assets/pd.png" - } -} diff --git a/package-lock.json b/package-lock.json index db7b431..6692b26 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,25 +1,63 @@ { "name": "nwjs-builder-phoenix", - "version": "1.14.5", + "version": "1.14.6", "lockfileVersion": 1, + "requires": true, "dependencies": { + "7zip-bin": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/7zip-bin/-/7zip-bin-2.2.4.tgz", + "integrity": "sha512-vs1IkxmbdYv0K8rPBXLl/qicRRF7CDjpOWHY1m+CUVByMkepJtWVlxtnszyY1rAWWL71IGc2JWRzJgUbHpzGDw==", + "requires": { + "7zip-bin-win": "2.1.1" + } + }, + "7zip-bin-win": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/7zip-bin-win/-/7zip-bin-win-2.1.1.tgz", + "integrity": "sha512-6VGEW7PXGroTsoI2QW3b0ea95HJmbVBHvfANKLLMzSzFA1zKqVX5ybNuhmeGpf6vA0x8FJTt6twpprDANsY5WQ==", + "optional": true + }, "@ava/babel-preset-stage-4": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@ava/babel-preset-stage-4/-/babel-preset-stage-4-1.1.0.tgz", "integrity": "sha512-oWqTnIGXW3k72UFidXzW0ONlO7hnO9x02S/QReJ7NBGeiBH9cUHY9+EfV6C8PXC6YJH++WrliEq03wMSJGNZFg==", - "dev": true + "dev": true, + "requires": { + "babel-plugin-check-es2015-constants": "6.22.0", + "babel-plugin-syntax-trailing-function-commas": "6.22.0", + "babel-plugin-transform-async-to-generator": "6.24.1", + "babel-plugin-transform-es2015-destructuring": "6.23.0", + "babel-plugin-transform-es2015-function-name": "6.24.1", + "babel-plugin-transform-es2015-modules-commonjs": "6.26.0", + "babel-plugin-transform-es2015-parameters": "6.24.1", + "babel-plugin-transform-es2015-spread": "6.22.0", + "babel-plugin-transform-es2015-sticky-regex": "6.24.1", + "babel-plugin-transform-es2015-unicode-regex": "6.24.1", + "babel-plugin-transform-exponentiation-operator": "6.24.1", + "package-hash": "1.2.0" + } }, "@ava/babel-preset-transform-test-files": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/@ava/babel-preset-transform-test-files/-/babel-preset-transform-test-files-2.0.1.tgz", "integrity": "sha1-11IyzG1x3Jx+rkt2qQBP2BUB0ME=", - "dev": true + "dev": true, + "requires": { + "babel-plugin-ava-throws-helper": "1.0.0", + "babel-plugin-espower": "2.3.2", + "package-hash": "1.2.0" + } }, "@ava/pretty-format": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@ava/pretty-format/-/pretty-format-1.1.0.tgz", "integrity": "sha1-0KV9Jeua6rlkO90aAwZCuRwSPig=", - "dev": true + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "esutils": "2.0.2" + } }, "@types/bluebird": { "version": "3.5.11", @@ -33,6 +71,15 @@ "integrity": "sha1-oeUUrfvZLwOiJLpU1pMRHb8fN1Q=", "dev": true }, + "@types/dotenv": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@types/dotenv/-/dotenv-4.0.1.tgz", + "integrity": "sha512-pWAL1MLixg3DuhPhp34T+2kbaeQDwmEAo7NqxFWloebxcBA0oZH2u7Co3vM1A62OVbYcD6lBFZlqBs7JwFe25w==", + "dev": true, + "requires": { + "@types/node": "7.0.43" + } + }, "@types/es6-shim": { "version": "0.31.35", "resolved": "https://registry.npmjs.org/@types/es6-shim/-/es6-shim-0.31.35.tgz", @@ -43,12 +90,43 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/@types/form-data/-/form-data-2.2.0.tgz", "integrity": "sha512-vm5OGsKc61Sx/GTRMQ9d0H0PYCDebT78/bdIBPCoPEHdgp0etaH1RzMmkDygymUmyXTj3rdWQn0sRUpYKZzljA==", - "dev": true + "dev": true, + "requires": { + "@types/node": "7.0.43" + } }, "@types/fs-extra": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-3.0.3.tgz", "integrity": "sha512-o2qkg/J2LWK+sr007+KFBBOrxzxpr9kiP0gMFC75gQJXhUn/E3pQA0kSVdxrQ3lf+rOwsRnuH0wnR5MNTotEKg==", + "dev": true, + "requires": { + "@types/node": "7.0.43" + } + }, + "@types/glob": { + "version": "5.0.32", + "resolved": "https://registry.npmjs.org/@types/glob/-/glob-5.0.32.tgz", + "integrity": "sha512-DMcj5b67Alb/e4KhpzyvphC5nVDHn1oCOGZao3oBddZVMH5vgI/cvdp+O/kcxZGZaPqs0ZLAsK4YrjbtZHO05g==", + "dev": true, + "requires": { + "@types/minimatch": "3.0.1", + "@types/node": "7.0.43" + } + }, + "@types/globby": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/@types/globby/-/globby-6.1.0.tgz", + "integrity": "sha512-j3XSDNoK4LO5T+ZviQD6PqfEjm07QFEacOTbJR3hnLWuWX0ZMLJl9oRPgj1PyrfGbXhfHFkksC9QZ9HFltJyrw==", + "dev": true, + "requires": { + "@types/glob": "5.0.32" + } + }, + "@types/minimatch": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.1.tgz", + "integrity": "sha512-rUO/jz10KRSyA9SHoCWQ8WX9BICyj5jZYu1/ucKEJKb4KzLZCKMURdYbadP157Q6Zl1x0vHsrU+Z/O0XlhYQDw==", "dev": true }, "@types/node": { @@ -61,13 +139,20 @@ "version": "1.1.28", "resolved": "https://registry.npmjs.org/@types/progress/-/progress-1.1.28.tgz", "integrity": "sha1-ucm9n5hcFKFHrOmaAX/Y8gjhGII=", - "dev": true + "dev": true, + "requires": { + "@types/node": "7.0.43" + } }, "@types/request": { "version": "0.0.45", "resolved": "https://registry.npmjs.org/@types/request/-/request-0.0.45.tgz", "integrity": "sha512-OIIREjT58pnpfJjEY5PeBEuRtRR2ED4DF1Ez3Dj9474kCqEKfE+iNAYyM/P3RxxDjNxBhipo+peNBW0S/7Wrzg==", - "dev": true + "dev": true, + "requires": { + "@types/form-data": "2.2.0", + "@types/node": "7.0.43" + } }, "@types/semver": { "version": "5.4.0", @@ -87,28 +172,15 @@ "integrity": "sha1-kfjiWAqAgwSfeDEcBZqlfWlJ32s=", "dev": true }, - "7zip-bin": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/7zip-bin/-/7zip-bin-2.2.4.tgz", - "integrity": "sha512-vs1IkxmbdYv0K8rPBXLl/qicRRF7CDjpOWHY1m+CUVByMkepJtWVlxtnszyY1rAWWL71IGc2JWRzJgUbHpzGDw==" - }, - "7zip-bin-linux": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/7zip-bin-linux/-/7zip-bin-linux-1.1.0.tgz", - "integrity": "sha512-BfW7XsUWNV/j723el3gGbiNWdmvLrnTB9VD0BondfCinxCwz4RQ60W4c3UxRpfHn1Q4Cn1o/DxYFmLMgHTEKqg==", - "optional": true - }, - "7zip-bin-mac": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/7zip-bin-mac/-/7zip-bin-mac-1.0.1.tgz", - "integrity": "sha1-Pmh3i78JJq3GgVlCcHRQXUdVXAI=", - "optional": true - }, - "7zip-bin-win": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/7zip-bin-win/-/7zip-bin-win-2.1.1.tgz", - "integrity": "sha512-6VGEW7PXGroTsoI2QW3b0ea95HJmbVBHvfANKLLMzSzFA1zKqVX5ybNuhmeGpf6vA0x8FJTt6twpprDANsY5WQ==", - "optional": true + "JSONStream": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.1.tgz", + "integrity": "sha1-cH92HgHa6eFvG8+TcDt4xwlmV5o=", + "dev": true, + "requires": { + "jsonparse": "1.3.1", + "through": "2.3.8" + } }, "add-stream": { "version": "1.0.0", @@ -119,13 +191,24 @@ "ajv": { "version": "5.2.2", "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.2.2.tgz", - "integrity": "sha1-R8aNaehvXZUxA7AHSpQw3GPaXjk=" + "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" + } }, "align-text": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", - "dev": true + "dev": true, + "requires": { + "kind-of": "3.2.2", + "longest": "1.0.1", + "repeat-string": "1.6.1" + } }, "amdefine": { "version": "1.0.1", @@ -137,7 +220,10 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-1.1.0.tgz", "integrity": "sha1-LwwWWIKXOa3V67FeawxuNCPwFro=", - "dev": true + "dev": true, + "requires": { + "string-width": "1.0.2" + } }, "ansi-escapes": { "version": "3.0.0", @@ -160,7 +246,11 @@ "version": "1.3.2", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==", - "dev": true + "dev": true, + "requires": { + "micromatch": "2.3.11", + "normalize-path": "2.1.1" + } }, "aproba": { "version": "1.2.0", @@ -172,13 +262,20 @@ "version": "1.1.4", "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz", "integrity": "sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0=", - "dev": true + "dev": true, + "requires": { + "delegates": "1.0.0", + "readable-stream": "2.3.3" + } }, "arr-diff": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", - "dev": true + "dev": true, + "requires": { + "arr-flatten": "1.1.0" + } }, "arr-exclude": { "version": "1.0.0", @@ -213,7 +310,10 @@ "array-union": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=" + "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "requires": { + "array-uniq": "1.0.3" + } }, "array-uniq": { "version": "1.0.3", @@ -270,6 +370,81 @@ "resolved": "https://registry.npmjs.org/ava/-/ava-0.18.2.tgz", "integrity": "sha1-eSU9FjYHcDSieAu1W1w+bD1/MS8=", "dev": true, + "requires": { + "@ava/babel-preset-stage-4": "1.1.0", + "@ava/babel-preset-transform-test-files": "2.0.1", + "@ava/pretty-format": "1.1.0", + "arr-flatten": "1.1.0", + "array-union": "1.0.2", + "array-uniq": "1.0.3", + "arrify": "1.0.1", + "auto-bind": "1.1.0", + "ava-init": "0.2.1", + "babel-code-frame": "6.26.0", + "babel-core": "6.26.0", + "bluebird": "3.5.0", + "caching-transform": "1.0.1", + "chalk": "1.1.3", + "chokidar": "1.7.0", + "clean-stack": "1.3.0", + "clean-yaml-object": "0.1.0", + "cli-cursor": "2.1.0", + "cli-spinners": "1.0.0", + "cli-truncate": "0.2.1", + "co-with-promise": "4.6.0", + "code-excerpt": "2.1.0", + "common-path-prefix": "1.0.0", + "convert-source-map": "1.5.0", + "core-assert": "0.2.1", + "currently-unhandled": "0.4.1", + "debug": "2.6.8", + "diff": "3.3.1", + "dot-prop": "4.2.0", + "empower-core": "0.6.2", + "equal-length": "1.0.1", + "figures": "2.0.0", + "find-cache-dir": "0.1.1", + "fn-name": "2.0.1", + "get-port": "2.1.0", + "globby": "6.1.0", + "has-flag": "2.0.0", + "ignore-by-default": "1.0.1", + "indent-string": "3.2.0", + "is-ci": "1.0.10", + "is-generator-fn": "1.0.0", + "is-obj": "1.0.1", + "is-observable": "0.2.0", + "is-promise": "2.1.0", + "jest-snapshot": "18.1.0", + "last-line-stream": "1.0.0", + "lodash.debounce": "4.0.8", + "lodash.difference": "4.5.0", + "lodash.flatten": "4.4.0", + "lodash.isequal": "4.5.0", + "loud-rejection": "1.6.0", + "matcher": "0.1.2", + "max-timeout": "1.0.0", + "md5-hex": "2.0.0", + "meow": "3.7.0", + "ms": "0.7.3", + "multimatch": "2.1.0", + "observable-to-promise": "0.4.0", + "option-chain": "0.1.1", + "package-hash": "1.2.0", + "pkg-conf": "2.0.0", + "plur": "2.1.2", + "pretty-ms": "2.1.0", + "require-precompiled": "0.1.0", + "resolve-cwd": "1.0.0", + "slash": "1.0.0", + "source-map-support": "0.4.18", + "stack-utils": "1.0.1", + "strip-ansi": "3.0.1", + "strip-bom-buf": "1.0.0", + "time-require": "0.1.2", + "unique-temp-dir": "1.0.0", + "update-notifier": "1.0.3" + }, "dependencies": { "ms": { "version": "0.7.3", @@ -284,36 +459,64 @@ "resolved": "https://registry.npmjs.org/ava-init/-/ava-init-0.2.1.tgz", "integrity": "sha512-lXwK5LM+2g1euDRqW1mcSX/tqzY1QU7EjKpqayFPPtNRmbSYZ8RzPO5tqluTToijmtjp2M+pNpVdbcHssC4glg==", "dev": true, + "requires": { + "arr-exclude": "1.0.0", + "execa": "0.7.0", + "has-yarn": "1.0.0", + "read-pkg-up": "2.0.0", + "write-pkg": "3.1.0" + }, "dependencies": { "find-up": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true + "dev": true, + "requires": { + "locate-path": "2.0.0" + } }, "load-json-file": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", - "dev": true + "dev": true, + "requires": { + "graceful-fs": "4.1.11", + "parse-json": "2.2.0", + "pify": "2.3.0", + "strip-bom": "3.0.0" + } }, "path-type": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", - "dev": true + "dev": true, + "requires": { + "pify": "2.3.0" + } }, "read-pkg": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", - "dev": true + "dev": true, + "requires": { + "load-json-file": "2.0.0", + "normalize-package-data": "2.4.0", + "path-type": "2.0.0" + } }, "read-pkg-up": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", - "dev": true + "dev": true, + "requires": { + "find-up": "2.1.0", + "read-pkg": "2.0.0" + } }, "strip-bom": { "version": "3.0.0", @@ -337,19 +540,48 @@ "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", - "dev": true + "dev": true, + "requires": { + "chalk": "1.1.3", + "esutils": "2.0.2", + "js-tokens": "3.0.2" + } }, "babel-core": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.0.tgz", "integrity": "sha1-rzL3izGm/O8RnIew/Y2XU/A6C7g=", "dev": true, + "requires": { + "babel-code-frame": "6.26.0", + "babel-generator": "6.26.0", + "babel-helpers": "6.24.1", + "babel-messages": "6.23.0", + "babel-register": "6.26.0", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "convert-source-map": "1.5.0", + "debug": "2.6.8", + "json5": "0.5.1", + "lodash": "4.17.4", + "minimatch": "3.0.4", + "path-is-absolute": "1.0.1", + "private": "0.1.7", + "slash": "1.0.0", + "source-map": "0.5.7" + }, "dependencies": { "minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dev": true + "dev": true, + "requires": { + "brace-expansion": "1.1.8" + } } } }, @@ -358,6 +590,16 @@ "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.0.tgz", "integrity": "sha1-rBriAHC3n248odMmlhMFN3TyDcU=", "dev": true, + "requires": { + "babel-messages": "6.23.0", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "detect-indent": "4.0.0", + "jsesc": "1.3.0", + "lodash": "4.17.4", + "source-map": "0.5.7", + "trim-right": "1.0.1" + }, "dependencies": { "jsesc": { "version": "1.3.0", @@ -371,79 +613,145 @@ "version": "6.24.1", "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz", "integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=", - "dev": true + "dev": true, + "requires": { + "babel-helper-explode-assignable-expression": "6.24.1", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } }, "babel-helper-call-delegate": { "version": "6.24.1", "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz", "integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=", - "dev": true + "dev": true, + "requires": { + "babel-helper-hoist-variables": "6.24.1", + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } }, "babel-helper-explode-assignable-expression": { "version": "6.24.1", "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz", "integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=", - "dev": true + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } }, "babel-helper-function-name": { "version": "6.24.1", "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", - "dev": true + "dev": true, + "requires": { + "babel-helper-get-function-arity": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } }, "babel-helper-get-function-arity": { "version": "6.24.1", "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", - "dev": true + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } }, "babel-helper-hoist-variables": { "version": "6.24.1", "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz", "integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=", - "dev": true + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } }, "babel-helper-regex": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz", "integrity": "sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI=", - "dev": true + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "lodash": "4.17.4" + } }, "babel-helper-remap-async-to-generator": { "version": "6.24.1", "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", - "dev": true + "dev": true, + "requires": { + "babel-helper-function-name": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } }, "babel-helpers": { "version": "6.24.1", "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", - "dev": true + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" + } }, "babel-messages": { "version": "6.23.0", "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", - "dev": true + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } }, "babel-plugin-ava-throws-helper": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/babel-plugin-ava-throws-helper/-/babel-plugin-ava-throws-helper-1.0.0.tgz", "integrity": "sha1-j+bnnS/RmDi1w2Sfic+wP9Vj4kE=", - "dev": true + "dev": true, + "requires": { + "babel-template": "6.26.0", + "babel-types": "6.26.0" + } }, "babel-plugin-check-es2015-constants": { "version": "6.22.0", "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz", "integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=", - "dev": true + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } }, "babel-plugin-espower": { "version": "2.3.2", "resolved": "https://registry.npmjs.org/babel-plugin-espower/-/babel-plugin-espower-2.3.2.tgz", "integrity": "sha1-VRa4/NsmyfDh2BYHSfbkxl5xJx4=", - "dev": true + "dev": true, + "requires": { + "babel-generator": "6.26.0", + "babylon": "6.18.0", + "call-matcher": "1.0.1", + "core-js": "2.5.1", + "espower-location-detector": "1.0.0", + "espurify": "1.7.0", + "estraverse": "4.2.0" + } }, "babel-plugin-syntax-async-functions": { "version": "6.13.0", @@ -467,91 +775,177 @@ "version": "6.24.1", "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", - "dev": true + "dev": true, + "requires": { + "babel-helper-remap-async-to-generator": "6.24.1", + "babel-plugin-syntax-async-functions": "6.13.0", + "babel-runtime": "6.26.0" + } }, "babel-plugin-transform-es2015-destructuring": { "version": "6.23.0", "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz", "integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=", - "dev": true + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } }, "babel-plugin-transform-es2015-function-name": { "version": "6.24.1", "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz", "integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=", - "dev": true + "dev": true, + "requires": { + "babel-helper-function-name": "6.24.1", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } }, "babel-plugin-transform-es2015-modules-commonjs": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.0.tgz", "integrity": "sha1-DYOUApt9xqvhqX7xgeAHWN0uXYo=", - "dev": true + "dev": true, + "requires": { + "babel-plugin-transform-strict-mode": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-types": "6.26.0" + } }, "babel-plugin-transform-es2015-parameters": { "version": "6.24.1", "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz", "integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=", - "dev": true + "dev": true, + "requires": { + "babel-helper-call-delegate": "6.24.1", + "babel-helper-get-function-arity": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } }, "babel-plugin-transform-es2015-spread": { "version": "6.22.0", "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz", "integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=", - "dev": true + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } }, "babel-plugin-transform-es2015-sticky-regex": { "version": "6.24.1", "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz", "integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=", - "dev": true + "dev": true, + "requires": { + "babel-helper-regex": "6.26.0", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } }, "babel-plugin-transform-es2015-unicode-regex": { "version": "6.24.1", "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz", "integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=", - "dev": true + "dev": true, + "requires": { + "babel-helper-regex": "6.26.0", + "babel-runtime": "6.26.0", + "regexpu-core": "2.0.0" + } }, "babel-plugin-transform-exponentiation-operator": { "version": "6.24.1", "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz", "integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=", - "dev": true + "dev": true, + "requires": { + "babel-helper-builder-binary-assignment-operator-visitor": "6.24.1", + "babel-plugin-syntax-exponentiation-operator": "6.13.0", + "babel-runtime": "6.26.0" + } }, "babel-plugin-transform-strict-mode": { "version": "6.24.1", "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=", - "dev": true + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } }, "babel-register": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", - "dev": true + "dev": true, + "requires": { + "babel-core": "6.26.0", + "babel-runtime": "6.26.0", + "core-js": "2.5.1", + "home-or-tmp": "2.0.0", + "lodash": "4.17.4", + "mkdirp": "0.5.1", + "source-map-support": "0.4.18" + } }, "babel-runtime": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", - "dev": true + "dev": true, + "requires": { + "core-js": "2.5.1", + "regenerator-runtime": "0.11.0" + } }, "babel-template": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", - "dev": true + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "lodash": "4.17.4" + } }, "babel-traverse": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", - "dev": true + "dev": true, + "requires": { + "babel-code-frame": "6.26.0", + "babel-messages": "6.23.0", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "debug": "2.6.8", + "globals": "9.18.0", + "invariant": "2.2.2", + "lodash": "4.17.4" + } }, "babel-types": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", - "dev": true + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "esutils": "2.0.2", + "lodash": "4.17.4", + "to-fast-properties": "1.0.3" + } }, "babylon": { "version": "6.18.0", @@ -573,7 +967,10 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz", "integrity": "sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40=", - "optional": true + "optional": true, + "requires": { + "tweetnacl": "0.14.5" + } }, "binary-extensions": { "version": "1.10.0", @@ -589,13 +986,27 @@ "boom": { "version": "4.3.1", "resolved": "https://registry.npmjs.org/boom/-/boom-4.3.1.tgz", - "integrity": "sha1-T4owBctKfjiJ90kDD9JbluAdLjE=" + "integrity": "sha1-T4owBctKfjiJ90kDD9JbluAdLjE=", + "requires": { + "hoek": "4.2.0" + } }, "boxen": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/boxen/-/boxen-0.6.0.tgz", "integrity": "sha1-g2TUJIrDT/DvGy8r9JpsYM4NgbY=", "dev": true, + "requires": { + "ansi-align": "1.1.0", + "camelcase": "2.1.1", + "chalk": "1.1.3", + "cli-boxes": "1.0.0", + "filled-array": "1.1.0", + "object-assign": "4.1.1", + "repeating": "2.0.1", + "string-width": "1.0.2", + "widest-line": "1.0.0" + }, "dependencies": { "camelcase": { "version": "2.1.1", @@ -608,13 +1019,22 @@ "brace-expansion": { "version": "1.1.8", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", - "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=" + "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=", + "requires": { + "balanced-match": "1.0.0", + "concat-map": "0.0.1" + } }, "braces": { "version": "1.8.5", "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", - "dev": true + "dev": true, + "requires": { + "expand-range": "1.8.2", + "preserve": "0.2.0", + "repeat-element": "1.1.2" + } }, "buf-compare": { "version": "1.0.1", @@ -643,18 +1063,31 @@ "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-1.0.1.tgz", "integrity": "sha1-bb2y8g+Nj7znnz6U6dF0Lc31wKE=", "dev": true, + "requires": { + "md5-hex": "1.3.0", + "mkdirp": "0.5.1", + "write-file-atomic": "1.3.4" + }, "dependencies": { "md5-hex": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-1.3.0.tgz", "integrity": "sha1-0sSv6YPENwZiF5uMrRRSGRNQRsQ=", - "dev": true + "dev": true, + "requires": { + "md5-o-matic": "0.1.1" + } }, "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=", - "dev": true + "dev": true, + "requires": { + "graceful-fs": "4.1.11", + "imurmurhash": "0.1.4", + "slide": "1.1.6" + } } } }, @@ -662,7 +1095,13 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/call-matcher/-/call-matcher-1.0.1.tgz", "integrity": "sha1-UTTQd5hPcSpU2tPL9i3ijc5BbKg=", - "dev": true + "dev": true, + "requires": { + "core-js": "2.5.1", + "deep-equal": "1.0.1", + "espurify": "1.7.0", + "estraverse": "4.2.0" + } }, "call-signature": { "version": "0.0.2", @@ -680,6 +1119,10 @@ "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", "dev": true, + "requires": { + "camelcase": "2.1.1", + "map-obj": "1.0.1" + }, "dependencies": { "camelcase": { "version": "2.1.1", @@ -705,19 +1148,40 @@ "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", "dev": true, - "optional": true + "optional": true, + "requires": { + "align-text": "0.1.4", + "lazy-cache": "1.0.4" + } }, "chalk": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + } }, "chokidar": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz", "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=", - "dev": true + "dev": true, + "requires": { + "anymatch": "1.3.2", + "async-each": "1.0.1", + "glob-parent": "2.0.0", + "inherits": "2.0.3", + "is-binary-path": "1.0.1", + "is-glob": "2.0.1", + "path-is-absolute": "1.0.1", + "readdirp": "2.1.0" + } }, "ci-info": { "version": "1.1.1", @@ -747,7 +1211,10 @@ "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 + "dev": true, + "requires": { + "restore-cursor": "2.0.0" + } }, "cli-spinners": { "version": "1.0.0", @@ -759,7 +1226,11 @@ "version": "0.2.1", "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-0.2.1.tgz", "integrity": "sha1-nxXPuwcFAFNpIWxiasfQWrkN1XQ=", - "dev": true + "dev": true, + "requires": { + "slice-ansi": "0.0.4", + "string-width": "1.0.2" + } }, "cli-width": { "version": "2.2.0", @@ -770,7 +1241,12 @@ "cliui": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", - "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=" + "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "requires": { + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "wrap-ansi": "2.1.0" + } }, "clone": { "version": "1.0.2", @@ -782,7 +1258,11 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/cmd-shim/-/cmd-shim-2.0.2.tgz", "integrity": "sha1-b8vamUg6j9FdfTChlspp1oii79s=", - "dev": true + "dev": true, + "requires": { + "graceful-fs": "4.1.11", + "mkdirp": "0.5.1" + } }, "co": { "version": "4.6.0", @@ -794,6 +1274,9 @@ "resolved": "https://registry.npmjs.org/co-with-promise/-/co-with-promise-4.6.0.tgz", "integrity": "sha1-QT59tvWJOmC5Qs9JLEvsk9tBWrc=", "dev": true, + "requires": { + "pinkie-promise": "1.0.0" + }, "dependencies": { "pinkie": { "version": "1.0.0", @@ -805,7 +1288,10 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-1.0.0.tgz", "integrity": "sha1-0dpn9UglY7t89X8oauKCLs+/NnA=", - "dev": true + "dev": true, + "requires": { + "pinkie": "1.0.0" + } } } }, @@ -813,7 +1299,10 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/code-excerpt/-/code-excerpt-2.1.0.tgz", "integrity": "sha1-XcwIHoj0p+O1VOnjXX7yMtR/gUc=", - "dev": true + "dev": true, + "requires": { + "convert-to-spaces": "1.0.2" + } }, "code-point-at": { "version": "1.1.0", @@ -824,7 +1313,10 @@ "version": "1.9.0", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.0.tgz", "integrity": "sha1-Gsz5fdc5uYO/mU1W/sj5WFNkG3o=", - "dev": true + "dev": true, + "requires": { + "color-name": "1.1.3" + } }, "color-name": { "version": "1.1.3", @@ -841,12 +1333,19 @@ "version": "1.5.4", "resolved": "https://registry.npmjs.org/columnify/-/columnify-1.5.4.tgz", "integrity": "sha1-Rzfd8ce2mop8NAVweC6UfuyOeLs=", - "dev": true + "dev": true, + "requires": { + "strip-ansi": "3.0.1", + "wcwidth": "1.0.1" + } }, "combined-stream": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz", - "integrity": "sha1-k4NwpXtKUd6ix3wV1cX9+JUWQAk=" + "integrity": "sha1-k4NwpXtKUd6ix3wV1cX9+JUWQAk=", + "requires": { + "delayed-stream": "1.0.0" + } }, "command-join": { "version": "2.0.0", @@ -857,7 +1356,10 @@ "commander": { "version": "2.9.0", "resolved": "https://registry.npmjs.org/commander/-/commander-2.9.0.tgz", - "integrity": "sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q=" + "integrity": "sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q=", + "requires": { + "graceful-readlink": "1.0.1" + } }, "common-path-prefix": { "version": "1.0.0", @@ -876,12 +1378,19 @@ "resolved": "https://registry.npmjs.org/compare-func/-/compare-func-1.3.2.tgz", "integrity": "sha1-md0LpFfh+bxyKxLAjsM+6rMfpkg=", "dev": true, + "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 + "dev": true, + "requires": { + "is-obj": "1.0.1" + } } } }, @@ -894,19 +1403,38 @@ "version": "1.6.0", "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.0.tgz", "integrity": "sha1-CqxmL9Ur54lk1VMvaUeE5wEQrPc=", - "dev": true + "dev": true, + "requires": { + "inherits": "2.0.3", + "readable-stream": "2.3.3", + "typedarray": "0.0.6" + } }, "configstore": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/configstore/-/configstore-2.1.0.tgz", "integrity": "sha1-c3o6cDbpiGECqmCZ5HuzOrGroaE=", "dev": true, + "requires": { + "dot-prop": "3.0.0", + "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" + }, "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 + "dev": true, + "requires": { + "is-obj": "1.0.1" + } }, "uuid": { "version": "2.0.3", @@ -918,7 +1446,12 @@ "version": "1.3.4", "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-1.3.4.tgz", "integrity": "sha1-+Aek8LHZ6ROuekgRLmzDrxmRtF8=", - "dev": true + "dev": true, + "requires": { + "graceful-fs": "4.1.11", + "imurmurhash": "0.1.4", + "slide": "1.1.6" + } } } }, @@ -932,97 +1465,194 @@ "version": "1.1.5", "resolved": "https://registry.npmjs.org/conventional-changelog/-/conventional-changelog-1.1.5.tgz", "integrity": "sha512-DUM0iXhgE11uRCoEQnFuYQA5zJcxfvKn940ZFyXziFl0y05yBCoy5ci2fcQYFWQ+OyyxgE2H02EdgYpuz9XG4w==", - "dev": true + "dev": true, + "requires": { + "conventional-changelog-angular": "1.5.0", + "conventional-changelog-atom": "0.1.1", + "conventional-changelog-codemirror": "0.2.0", + "conventional-changelog-core": "1.9.1", + "conventional-changelog-ember": "0.2.7", + "conventional-changelog-eslint": "0.2.0", + "conventional-changelog-express": "0.2.0", + "conventional-changelog-jquery": "0.1.0", + "conventional-changelog-jscs": "0.1.0", + "conventional-changelog-jshint": "0.2.0" + } }, "conventional-changelog-angular": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-1.5.0.tgz", "integrity": "sha512-Gt0qSf5wdFmLabgdSlqjguDAmPyYTXtUl4WH5W3SlpElHhnU/UiCY3M7xcIkZxrNQfVA1UxUBgu65eBbaJnZVA==", - "dev": true + "dev": true, + "requires": { + "compare-func": "1.3.2", + "q": "1.5.0" + } }, "conventional-changelog-atom": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/conventional-changelog-atom/-/conventional-changelog-atom-0.1.1.tgz", "integrity": "sha512-6Nlu/+MiD4gi7k3Z+N1vMJWpaPSdvFPWzPGnH4OXewHAxiAl0L/TT9CGgA01fosPxmYr4hMNtD7kyN0tkg8vIA==", - "dev": true + "dev": true, + "requires": { + "q": "1.5.0" + } }, "conventional-changelog-cli": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/conventional-changelog-cli/-/conventional-changelog-cli-1.3.3.tgz", "integrity": "sha512-2bsDXAidc7TWErFHl58IDPPkcHvtscDr6a63tpne7OZPu5JAqeDc3iKimvzvhdUfcWLowlXmoei8sBHMQ0sMYw==", - "dev": true + "dev": true, + "requires": { + "add-stream": "1.0.0", + "conventional-changelog": "1.1.5", + "lodash": "4.17.4", + "meow": "3.7.0", + "tempfile": "1.1.1" + } }, "conventional-changelog-codemirror": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/conventional-changelog-codemirror/-/conventional-changelog-codemirror-0.2.0.tgz", "integrity": "sha512-jUbY98JoKdAOR5k3pOBiKZ+Iz9t2F84hL7x4WjSRW6x7FdeCEUOjyfml+YClE2h/h62Tf3mwur5jSO8upxxc1g==", - "dev": true + "dev": true, + "requires": { + "q": "1.5.0" + } }, "conventional-changelog-core": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/conventional-changelog-core/-/conventional-changelog-core-1.9.1.tgz", "integrity": "sha512-Fo0bSeO+NsO6GtuQXts0xQeRpLrxaABTPU8NK4Zij9sJB3zFkU4BObSefJS4F4+EkKujaKCWtfS6Uih+9NpXrQ==", - "dev": true + "dev": true, + "requires": { + "conventional-changelog-writer": "2.0.1", + "conventional-commits-parser": "2.0.0", + "dateformat": "1.0.12", + "get-pkg-repo": "1.4.0", + "git-raw-commits": "1.2.0", + "git-remote-origin-url": "2.0.0", + "git-semver-tags": "1.2.1", + "lodash": "4.17.4", + "normalize-package-data": "2.4.0", + "q": "1.5.0", + "read-pkg": "1.1.0", + "read-pkg-up": "1.0.1", + "through2": "2.0.3" + } }, "conventional-changelog-ember": { "version": "0.2.7", "resolved": "https://registry.npmjs.org/conventional-changelog-ember/-/conventional-changelog-ember-0.2.7.tgz", "integrity": "sha512-Xj1v9uVcKM8N798hMr7e6yiw8IFyvI6Ik+TdjdmG54uGupqvEEWW37xAbPPbdKvgoitbyZkqUTancj055actEg==", - "dev": true + "dev": true, + "requires": { + "q": "1.5.0" + } }, "conventional-changelog-eslint": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/conventional-changelog-eslint/-/conventional-changelog-eslint-0.2.0.tgz", "integrity": "sha512-WGKnC0bGPD6BHGiRBfYqNGfy6DZDn2jGs1yxPRT8I2796wYdGqsbDF4477o4fdsxUJvckoW2OFPqkmRMQaCHSA==", - "dev": true + "dev": true, + "requires": { + "q": "1.5.0" + } }, "conventional-changelog-express": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/conventional-changelog-express/-/conventional-changelog-express-0.2.0.tgz", "integrity": "sha512-ujSEmbWfozC1iIjH5Pl7AKtREowvAl10whs1q6c7nZLnoNZK5CmdB2PQ/V42O6rCgUzaLX+ACRW2+g0A/Htqvw==", - "dev": true + "dev": true, + "requires": { + "q": "1.5.0" + } }, "conventional-changelog-jquery": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/conventional-changelog-jquery/-/conventional-changelog-jquery-0.1.0.tgz", "integrity": "sha1-Agg5cWLjhGmG5xJztsecW1+A9RA=", - "dev": true + "dev": true, + "requires": { + "q": "1.5.0" + } }, "conventional-changelog-jscs": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/conventional-changelog-jscs/-/conventional-changelog-jscs-0.1.0.tgz", "integrity": "sha1-BHnrRDzH1yxYvwvPDvHURKkvDlw=", - "dev": true + "dev": true, + "requires": { + "q": "1.5.0" + } }, "conventional-changelog-jshint": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/conventional-changelog-jshint/-/conventional-changelog-jshint-0.2.0.tgz", "integrity": "sha512-uUP4c0et6F2teapl+YY2JHFAHD401U5CkgI+P8PyU0y1zS8BdBy6EnhqgZEXhFOp9fPzUdic+Wv/9alOqw3agQ==", - "dev": true + "dev": true, + "requires": { + "compare-func": "1.3.2", + "q": "1.5.0" + } }, "conventional-changelog-writer": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-2.0.1.tgz", "integrity": "sha512-X4qC758celQOKw0iUPAsH5sJX6fH6N5dboFc3elXb1/SIKhsYMukhhaxWmxRdtVUSqGt9rZg8giwBQG5B2GeKg==", - "dev": true + "dev": true, + "requires": { + "compare-func": "1.3.2", + "conventional-commits-filter": "1.0.0", + "dateformat": "1.0.12", + "handlebars": "4.0.10", + "json-stringify-safe": "5.0.1", + "lodash": "4.17.4", + "meow": "3.7.0", + "semver": "5.4.1", + "split": "1.0.1", + "through2": "2.0.3" + } }, "conventional-commits-filter": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-1.0.0.tgz", "integrity": "sha1-b8KmWTcrw/IznPn//34bA0S5MDk=", - "dev": true + "dev": true, + "requires": { + "is-subset": "0.1.1", + "modify-values": "1.0.0" + } }, "conventional-commits-parser": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-2.0.0.tgz", "integrity": "sha512-8od6g684Fhi5Vpp4ABRv/RBsW1AY6wSHbJHEK6FGTv+8jvAAnlABniZu/FVmX9TcirkHepaEsa1QGkRvbg0CKw==", - "dev": true + "dev": true, + "requires": { + "JSONStream": "1.3.1", + "is-text-path": "1.0.1", + "lodash": "4.17.4", + "meow": "3.7.0", + "split2": "2.1.1", + "through2": "2.0.3", + "trim-off-newlines": "1.0.1" + } }, "conventional-recommended-bump": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/conventional-recommended-bump/-/conventional-recommended-bump-1.0.1.tgz", "integrity": "sha512-2FrE8UJwt2EKpICi/E7P+xqyYUysdfMnFYiGV+7ANzJsixkBOrBKrKlCEV2NllCjR0XOmNfnA/mgozC5jAhhGQ==", - "dev": true + "dev": true, + "requires": { + "concat-stream": "1.6.0", + "conventional-commits-filter": "1.0.0", + "conventional-commits-parser": "2.0.0", + "git-raw-commits": "1.2.0", + "git-semver-tags": "1.2.1", + "meow": "3.7.0", + "object-assign": "4.1.1" + } }, "convert-source-map": { "version": "1.5.0", @@ -1040,7 +1670,11 @@ "version": "0.2.1", "resolved": "https://registry.npmjs.org/core-assert/-/core-assert-0.2.1.tgz", "integrity": "sha1-+F4s+b/tKPdzzIs/pcW2m9wC/j8=", - "dev": true + "dev": true, + "requires": { + "buf-compare": "1.0.1", + "is-error": "2.2.1" + } }, "core-js": { "version": "2.5.1", @@ -1057,29 +1691,47 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz", "integrity": "sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y=", - "dev": true + "dev": true, + "requires": { + "capture-stack-trace": "1.0.0" + } }, "cross-env": { "version": "3.2.4", "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-3.2.4.tgz", "integrity": "sha1-ngWF8neGTtQhznVvgamA/w1piro=", - "dev": true + "dev": true, + "requires": { + "cross-spawn": "5.1.0", + "is-windows": "1.0.1" + } }, "cross-spawn": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", - "dev": true + "dev": true, + "requires": { + "lru-cache": "4.1.1", + "shebang-command": "1.2.0", + "which": "1.3.0" + } }, "cryptiles": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-3.1.2.tgz", "integrity": "sha1-qJ+7Ig9c4l7FboxKqKT9e1sNKf4=", + "requires": { + "boom": "5.2.0" + }, "dependencies": { "boom": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/boom/-/boom-5.2.0.tgz", - "integrity": "sha512-Z5BTk6ZRe4tXXQlkqftmsAUANpXmuwlsF5Oov8ThoMbQRzdGTA1ngYRW160GexgOgjsFOKJz0LYhoNi+2AMBUw==" + "integrity": "sha512-Z5BTk6ZRe4tXXQlkqftmsAUANpXmuwlsF5Oov8ThoMbQRzdGTA1ngYRW160GexgOgjsFOKJz0LYhoNi+2AMBUw==", + "requires": { + "hoek": "4.2.0" + } } } }, @@ -1093,18 +1745,27 @@ "version": "0.4.1", "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", - "dev": true + "dev": true, + "requires": { + "array-find-index": "1.0.2" + } }, "dargs": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/dargs/-/dargs-4.1.0.tgz", "integrity": "sha1-A6nbtLXC8Tm/FK5T8LiipqhvThc=", - "dev": true + "dev": true, + "requires": { + "number-is-nan": "1.0.1" + } }, "dashdash": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=" + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "requires": { + "assert-plus": "1.0.0" + } }, "date-time": { "version": "0.1.1", @@ -1116,12 +1777,19 @@ "version": "1.0.12", "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-1.0.12.tgz", "integrity": "sha1-nxJLZ1lMk3/3BpMuSmQsyo27/uk=", - "dev": true + "dev": true, + "requires": { + "get-stdin": "4.0.1", + "meow": "3.7.0" + } }, "debug": { "version": "2.6.8", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.8.tgz", - "integrity": "sha1-5zFTHKLt4n0YgiJCfaF4IdaP9Pw=" + "integrity": "sha1-5zFTHKLt4n0YgiJCfaF4IdaP9Pw=", + "requires": { + "ms": "2.0.0" + } }, "decamelize": { "version": "1.2.0", @@ -1150,7 +1818,10 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", - "dev": true + "dev": true, + "requires": { + "clone": "1.0.2" + } }, "delayed-stream": { "version": "1.0.0", @@ -1167,7 +1838,10 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", - "dev": true + "dev": true, + "requires": { + "repeating": "2.0.1" + } }, "diff": { "version": "3.3.1", @@ -1179,6 +1853,13 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/dir-compare/-/dir-compare-1.4.0.tgz", "integrity": "sha1-r6AKuZwPscQStI3GXo9DeNJX8AY=", + "requires": { + "bluebird": "3.4.1", + "buffer-equal": "1.0.0", + "colors": "1.0.3", + "commander": "2.9.0", + "minimatch": "3.0.2" + }, "dependencies": { "bluebird": { "version": "3.4.1", @@ -1191,7 +1872,15 @@ "version": "4.2.0", "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz", "integrity": "sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==", - "dev": true + "dev": true, + "requires": { + "is-obj": "1.0.1" + } + }, + "dotenv": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-4.0.0.tgz", + "integrity": "sha1-hk7xN5rO1Vzm+V3r7NzhefegzR0=" }, "duplexer": { "version": "0.1.1", @@ -1203,7 +1892,10 @@ "version": "0.1.4", "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=", - "dev": true + "dev": true, + "requires": { + "readable-stream": "2.3.3" + } }, "duplexer3": { "version": "0.1.4", @@ -1215,13 +1907,20 @@ "version": "0.1.1", "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz", "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=", - "optional": true + "optional": true, + "requires": { + "jsbn": "0.1.1" + } }, "empower-core": { "version": "0.6.2", "resolved": "https://registry.npmjs.org/empower-core/-/empower-core-0.6.2.tgz", "integrity": "sha1-Wt71ZgiOMfuoC6CjbfR9cJQWkUQ=", - "dev": true + "dev": true, + "requires": { + "call-signature": "0.0.2", + "core-js": "2.5.1" + } }, "equal-length": { "version": "1.0.1", @@ -1232,7 +1931,10 @@ "error-ex": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz", - "integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=" + "integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=", + "requires": { + "is-arrayish": "0.2.1" + } }, "escape-string-regexp": { "version": "1.0.5", @@ -1244,13 +1946,22 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/espower-location-detector/-/espower-location-detector-1.0.0.tgz", "integrity": "sha1-oXt+zFnTDheeK+9z+0E3cEyzMbU=", - "dev": true + "dev": true, + "requires": { + "is-url": "1.2.2", + "path-is-absolute": "1.0.1", + "source-map": "0.5.7", + "xtend": "4.0.1" + } }, "espurify": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/espurify/-/espurify-1.7.0.tgz", "integrity": "sha1-HFz2y8zDLm9jk4C9T5kfq5up0iY=", - "dev": true + "dev": true, + "requires": { + "core-js": "2.5.1" + } }, "estraverse": { "version": "4.2.0", @@ -1268,19 +1979,34 @@ "version": "0.7.0", "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", - "dev": true + "dev": true, + "requires": { + "cross-spawn": "5.1.0", + "get-stream": "3.0.0", + "is-stream": "1.1.0", + "npm-run-path": "2.0.2", + "p-finally": "1.0.0", + "signal-exit": "3.0.2", + "strip-eof": "1.0.0" + } }, "expand-brackets": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", - "dev": true + "dev": true, + "requires": { + "is-posix-bracket": "0.1.1" + } }, "expand-range": { "version": "1.8.2", "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", - "dev": true + "dev": true, + "requires": { + "fill-range": "2.2.3" + } }, "extend": { "version": "3.0.1", @@ -1292,12 +2018,20 @@ "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.0.5.tgz", "integrity": "sha512-Msjo64WT5W+NhOpQXh0nOHm+n0RfU1QUwDnKYvJ8dEJ8zlwLrqXNTv5mSUTJpepf41PDJGyhueTw2vNZW+Fr/w==", "dev": true, + "requires": { + "iconv-lite": "0.4.19", + "jschardet": "1.5.1", + "tmp": "0.0.33" + }, "dependencies": { "tmp": { "version": "0.0.33", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "dev": true + "dev": true, + "requires": { + "os-tmpdir": "1.0.2" + } } } }, @@ -1305,7 +2039,10 @@ "version": "0.3.2", "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", - "dev": true + "dev": true, + "requires": { + "is-extglob": "1.0.0" + } }, "extsprintf": { "version": "1.3.0", @@ -1321,7 +2058,10 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", - "dev": true + "dev": true, + "requires": { + "escape-string-regexp": "1.0.5" + } }, "filename-regex": { "version": "2.0.1", @@ -1333,7 +2073,14 @@ "version": "2.2.3", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.3.tgz", "integrity": "sha1-ULd9/X5Gm8dJJHCWNpn+eoSFpyM=", - "dev": true + "dev": true, + "requires": { + "is-number": "2.1.0", + "isobject": "2.1.0", + "randomatic": "1.1.7", + "repeat-element": "1.1.2", + "repeat-string": "1.6.1" + } }, "filled-array": { "version": "1.1.0", @@ -1345,24 +2092,43 @@ "version": "0.1.1", "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-0.1.1.tgz", "integrity": "sha1-yN765XyKUqinhPnjHFfHQumToLk=", - "dev": true + "dev": true, + "requires": { + "commondir": "1.0.1", + "mkdirp": "0.5.1", + "pkg-dir": "1.0.0" + } }, "find-up": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=" + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "requires": { + "path-exists": "2.1.0", + "pinkie-promise": "2.0.1" + } }, "findup-sync": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.3.0.tgz", "integrity": "sha1-N5MKpdgWt3fANEXhlmzGeQpMCxY=", "dev": true, + "requires": { + "glob": "5.0.15" + }, "dependencies": { "glob": { "version": "5.0.15", "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", - "dev": true + "dev": true, + "requires": { + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.2", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + } } } }, @@ -1382,7 +2148,10 @@ "version": "0.1.5", "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", - "dev": true + "dev": true, + "requires": { + "for-in": "1.0.2" + } }, "forever-agent": { "version": "0.6.1", @@ -1392,687 +2161,53 @@ "form-data": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.1.tgz", - "integrity": "sha1-b7lPvXGIUwbXPRXMSX/kzE7NRL8=" + "integrity": "sha1-b7lPvXGIUwbXPRXMSX/kzE7NRL8=", + "requires": { + "asynckit": "0.4.0", + "combined-stream": "1.0.5", + "mime-types": "2.1.17" + } }, "fs-access": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/fs-access/-/fs-access-1.0.1.tgz", "integrity": "sha1-1qh/JiJxzv6+wwxVNAf7mV2od3o=", - "dev": true + "dev": true, + "requires": { + "null-check": "1.0.0" + } }, "fs-extra": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-3.0.1.tgz", - "integrity": "sha1-N5TzeMWLNC6n27sjCVEJxLO2IpE=" + "integrity": "sha1-N5TzeMWLNC6n27sjCVEJxLO2IpE=", + "requires": { + "graceful-fs": "4.1.11", + "jsonfile": "3.0.1", + "universalify": "0.1.1" + } }, "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" }, - "fsevents": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.1.2.tgz", - "integrity": "sha512-Sn44E5wQW4bTHXvQmvSHwqbuiXtduD6Rrjm2ZtUEGbyrig+nUH3t/QD4M4/ZXViY556TBpRgZkHLDx3JxPwxiw==", + "gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", "dev": true, - "optional": true, - "dependencies": { - "abbrev": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "ajv": { - "version": "4.11.8", - "bundled": true, - "dev": true, - "optional": true - }, - "ansi-regex": { - "version": "2.1.1", - "bundled": true, - "dev": true - }, - "aproba": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.4", - "bundled": true, - "dev": true, - "optional": true - }, - "asn1": { - "version": "0.2.3", - "bundled": true, - "dev": true, - "optional": true - }, - "assert-plus": { - "version": "0.2.0", - "bundled": true, - "dev": true, - "optional": true - }, - "asynckit": { - "version": "0.4.0", - "bundled": true, - "dev": true, - "optional": true - }, - "aws-sign2": { - "version": "0.6.0", - "bundled": true, - "dev": true, - "optional": true - }, - "aws4": { - "version": "1.6.0", - "bundled": true, - "dev": true, - "optional": true - }, - "balanced-match": { - "version": "0.4.2", - "bundled": true, - "dev": true - }, - "bcrypt-pbkdf": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "block-stream": { - "version": "0.0.9", - "bundled": true, - "dev": true - }, - "boom": { - "version": "2.10.1", - "bundled": true, - "dev": true - }, - "brace-expansion": { - "version": "1.1.7", - "bundled": true, - "dev": true - }, - "buffer-shims": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "caseless": { - "version": "0.12.0", - "bundled": true, - "dev": true, - "optional": true - }, - "co": { - "version": "4.6.0", - "bundled": true, - "dev": true, - "optional": true - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true, - "dev": true - }, - "combined-stream": { - "version": "1.0.5", - "bundled": true, - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "bundled": true, - "dev": true - }, - "console-control-strings": { - "version": "1.1.0", - "bundled": true, - "dev": true - }, - "core-util-is": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "cryptiles": { - "version": "2.0.5", - "bundled": true, - "dev": true, - "optional": true - }, - "dashdash": { - "version": "1.14.1", - "bundled": true, - "dev": true, - "optional": true, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "debug": { - "version": "2.6.8", - "bundled": true, - "dev": true, - "optional": true - }, - "deep-extend": { - "version": "0.4.2", - "bundled": true, - "dev": true, - "optional": true - }, - "delayed-stream": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "delegates": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "ecc-jsbn": { - "version": "0.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "extend": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "extsprintf": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "forever-agent": { - "version": "0.6.1", - "bundled": true, - "dev": true, - "optional": true - }, - "form-data": { - "version": "2.1.4", - "bundled": true, - "dev": true, - "optional": true - }, - "fs.realpath": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "fstream": { - "version": "1.0.11", - "bundled": true, - "dev": true - }, - "fstream-ignore": { - "version": "1.0.5", - "bundled": true, - "dev": true, - "optional": true - }, - "gauge": { - "version": "2.7.4", - "bundled": true, - "dev": true, - "optional": true - }, - "getpass": { - "version": "0.1.7", - "bundled": true, - "dev": true, - "optional": true, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "glob": { - "version": "7.1.2", - "bundled": true, - "dev": true - }, - "graceful-fs": { - "version": "4.1.11", - "bundled": true, - "dev": true - }, - "har-schema": { - "version": "1.0.5", - "bundled": true, - "dev": true, - "optional": true - }, - "har-validator": { - "version": "4.2.1", - "bundled": true, - "dev": true, - "optional": true - }, - "has-unicode": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "hawk": { - "version": "3.1.3", - "bundled": true, - "dev": true, - "optional": true - }, - "hoek": { - "version": "2.16.3", - "bundled": true, - "dev": true - }, - "http-signature": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "inflight": { - "version": "1.0.6", - "bundled": true, - "dev": true - }, - "inherits": { - "version": "2.0.3", - "bundled": true, - "dev": true - }, - "ini": { - "version": "1.3.4", - "bundled": true, - "dev": true, - "optional": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "is-typedarray": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "isarray": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "isstream": { - "version": "0.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "jodid25519": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "jsbn": { - "version": "0.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "json-schema": { - "version": "0.2.3", - "bundled": true, - "dev": true, - "optional": true - }, - "json-stable-stringify": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "json-stringify-safe": { - "version": "5.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "jsonify": { - "version": "0.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "jsprim": { - "version": "1.4.0", - "bundled": true, - "dev": true, - "optional": true, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "mime-db": { - "version": "1.27.0", - "bundled": true, - "dev": true - }, - "mime-types": { - "version": "2.1.15", - "bundled": true, - "dev": true - }, - "minimatch": { - "version": "3.0.4", - "bundled": true, - "dev": true - }, - "minimist": { - "version": "0.0.8", - "bundled": true, - "dev": true - }, - "mkdirp": { - "version": "0.5.1", - "bundled": true, - "dev": true - }, - "ms": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "node-pre-gyp": { - "version": "0.6.36", - "bundled": true, - "dev": true, - "optional": true - }, - "nopt": { - "version": "4.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "npmlog": { - "version": "4.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "number-is-nan": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "oauth-sign": { - "version": "0.8.2", - "bundled": true, - "dev": true, - "optional": true - }, - "object-assign": { - "version": "4.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "bundled": true, - "dev": true - }, - "os-homedir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "os-tmpdir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "osenv": { - "version": "0.1.4", - "bundled": true, - "dev": true, - "optional": true - }, - "path-is-absolute": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "performance-now": { - "version": "0.2.0", - "bundled": true, - "dev": true, - "optional": true - }, - "process-nextick-args": { - "version": "1.0.7", - "bundled": true, - "dev": true - }, - "punycode": { - "version": "1.4.1", - "bundled": true, - "dev": true, - "optional": true - }, - "qs": { - "version": "6.4.0", - "bundled": true, - "dev": true, - "optional": true - }, - "rc": { - "version": "1.2.1", - "bundled": true, - "dev": true, - "optional": true, - "dependencies": { - "minimist": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "readable-stream": { - "version": "2.2.9", - "bundled": true, - "dev": true - }, - "request": { - "version": "2.81.0", - "bundled": true, - "dev": true, - "optional": true - }, - "rimraf": { - "version": "2.6.1", - "bundled": true, - "dev": true - }, - "safe-buffer": { - "version": "5.0.1", - "bundled": true, - "dev": true - }, - "semver": { - "version": "5.3.0", - "bundled": true, - "dev": true, - "optional": true - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "signal-exit": { - "version": "3.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "sntp": { - "version": "1.0.9", - "bundled": true, - "dev": true, - "optional": true - }, - "sshpk": { - "version": "1.13.0", - "bundled": true, - "dev": true, - "optional": true, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "string_decoder": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "string-width": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "stringstream": { - "version": "0.0.5", - "bundled": true, - "dev": true, - "optional": true - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "dev": true - }, - "strip-json-comments": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "tar": { - "version": "2.2.1", - "bundled": true, - "dev": true - }, - "tar-pack": { - "version": "3.4.0", - "bundled": true, - "dev": true, - "optional": true - }, - "tough-cookie": { - "version": "2.3.2", - "bundled": true, - "dev": true, - "optional": true - }, - "tunnel-agent": { - "version": "0.6.0", - "bundled": true, - "dev": true, - "optional": true - }, - "tweetnacl": { - "version": "0.14.5", - "bundled": true, - "dev": true, - "optional": true - }, - "uid-number": { - "version": "0.0.6", - "bundled": true, - "dev": true, - "optional": true - }, - "util-deprecate": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "uuid": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "verror": { - "version": "1.3.6", - "bundled": true, - "dev": true, - "optional": true - }, - "wide-align": { - "version": "1.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "wrappy": { - "version": "1.0.2", - "bundled": true, - "dev": true - } + "requires": { + "aproba": "1.2.0", + "console-control-strings": "1.1.0", + "has-unicode": "2.0.1", + "object-assign": "4.1.1", + "signal-exit": "3.0.2", + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "wide-align": "1.1.2" } }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "dev": true - }, "get-caller-file": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.2.tgz", @@ -2082,13 +2217,23 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/get-pkg-repo/-/get-pkg-repo-1.4.0.tgz", "integrity": "sha1-xztInAbYDMVTbCyFP54FIyBWly0=", - "dev": true + "dev": true, + "requires": { + "hosted-git-info": "2.5.0", + "meow": "3.7.0", + "normalize-package-data": "2.4.0", + "parse-github-repo-url": "1.4.1", + "through2": "2.0.3" + } }, "get-port": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/get-port/-/get-port-2.1.0.tgz", "integrity": "sha1-h4P53OvR7qSVozThpqJR54iHqxo=", - "dev": true + "dev": true, + "requires": { + "pinkie-promise": "2.0.1" + } }, "get-stdin": { "version": "4.0.1", @@ -2105,41 +2250,73 @@ "getpass": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=" + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "requires": { + "assert-plus": "1.0.0" + } }, "git-raw-commits": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-1.2.0.tgz", "integrity": "sha1-DzqL/ZmuDy2LkiTViJKXXppS0Dw=", - "dev": true + "dev": true, + "requires": { + "dargs": "4.1.0", + "lodash.template": "4.4.0", + "meow": "3.7.0", + "split2": "2.1.1", + "through2": "2.0.3" + } }, "git-remote-origin-url": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/git-remote-origin-url/-/git-remote-origin-url-2.0.0.tgz", "integrity": "sha1-UoJlna4hBxRaERJhEq0yFuxfpl8=", - "dev": true + "dev": true, + "requires": { + "gitconfiglocal": "1.0.0", + "pify": "2.3.0" + } }, "git-semver-tags": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/git-semver-tags/-/git-semver-tags-1.2.1.tgz", "integrity": "sha512-fFyxtzTHCTQKwB4clA2AInVrlflBbVbbJD4NWwmxKXHUgsU/K9kmHNlkPLqFiuy9xu9q3lNopghR4VXeQwZbTQ==", - "dev": true + "dev": true, + "requires": { + "meow": "3.7.0", + "semver": "5.4.1" + } }, "gitconfiglocal": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/gitconfiglocal/-/gitconfiglocal-1.0.0.tgz", "integrity": "sha1-QdBF84UaXqiPA/JMocYXgRRGS5s=", - "dev": true + "dev": true, + "requires": { + "ini": "1.3.4" + } }, "glob": { "version": "7.1.2", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", + "requires": { + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + }, "dependencies": { "minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==" + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "requires": { + "brace-expansion": "1.1.8" + } } } }, @@ -2147,13 +2324,20 @@ "version": "0.3.0", "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", - "dev": true + "dev": true, + "requires": { + "glob-parent": "2.0.0", + "is-glob": "2.0.1" + } }, "glob-parent": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", - "dev": true + "dev": true, + "requires": { + "is-glob": "2.0.1" + } }, "globals": { "version": "9.18.0", @@ -2164,13 +2348,37 @@ "globby": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", - "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=" + "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", + "requires": { + "array-union": "1.0.2", + "glob": "7.1.2", + "object-assign": "4.1.1", + "pify": "2.3.0", + "pinkie-promise": "2.0.1" + } }, "got": { "version": "5.7.1", "resolved": "https://registry.npmjs.org/got/-/got-5.7.1.tgz", "integrity": "sha1-X4FjWmHkplifGAVp6k44FoClHzU=", - "dev": true + "dev": true, + "requires": { + "create-error-class": "3.0.2", + "duplexer2": "0.1.4", + "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", + "url-parse-lax": "1.0.0" + } }, "graceful-fs": { "version": "4.1.11", @@ -2187,12 +2395,21 @@ "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.0.10.tgz", "integrity": "sha1-PTDHGLCaPZbyPqTMH0A8TTup/08=", "dev": true, + "requires": { + "async": "1.5.2", + "optimist": "0.6.1", + "source-map": "0.4.4", + "uglify-js": "2.8.29" + }, "dependencies": { "source-map": { "version": "0.4.4", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", - "dev": true + "dev": true, + "requires": { + "amdefine": "1.0.1" + } } } }, @@ -2204,13 +2421,20 @@ "har-validator": { "version": "5.0.3", "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz", - "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=" + "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", + "requires": { + "ajv": "5.2.2", + "har-schema": "2.0.0" + } }, "has-ansi": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "dev": true + "dev": true, + "requires": { + "ansi-regex": "2.1.1" + } }, "has-color": { "version": "0.1.7", @@ -2239,7 +2463,13 @@ "hawk": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/hawk/-/hawk-6.0.2.tgz", - "integrity": "sha512-miowhl2+U7Qle4vdLqDdPt9m09K6yZhkLDTWGoUiUzrQCn+mHHSmfJgAyGaLRZbPmTqfFFjRV1QWCW0VWUJBbQ==" + "integrity": "sha512-miowhl2+U7Qle4vdLqDdPt9m09K6yZhkLDTWGoUiUzrQCn+mHHSmfJgAyGaLRZbPmTqfFFjRV1QWCW0VWUJBbQ==", + "requires": { + "boom": "4.3.1", + "cryptiles": "3.1.2", + "hoek": "4.2.0", + "sntp": "2.0.2" + } }, "hoek": { "version": "4.2.0", @@ -2250,7 +2480,11 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", - "dev": true + "dev": true, + "requires": { + "os-homedir": "1.0.2", + "os-tmpdir": "1.0.2" + } }, "hosted-git-info": { "version": "2.5.0", @@ -2260,7 +2494,12 @@ "http-signature": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=" + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "requires": { + "assert-plus": "1.0.0", + "jsprim": "1.4.1", + "sshpk": "1.13.1" + } }, "iconv-lite": { "version": "0.4.19", @@ -2295,7 +2534,11 @@ "inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=" + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "requires": { + "once": "1.4.0", + "wrappy": "1.0.2" + } }, "inherits": { "version": "2.0.3", @@ -2313,6 +2556,22 @@ "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.3.0.tgz", "integrity": "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==", "dev": true, + "requires": { + "ansi-escapes": "3.0.0", + "chalk": "2.1.0", + "cli-cursor": "2.1.0", + "cli-width": "2.2.0", + "external-editor": "2.0.5", + "figures": "2.0.0", + "lodash": "4.17.4", + "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.1", + "strip-ansi": "4.0.0", + "through": "2.3.8" + }, "dependencies": { "ansi-regex": { "version": "3.0.0", @@ -2324,13 +2583,21 @@ "version": "3.2.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", "integrity": "sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==", - "dev": true + "dev": true, + "requires": { + "color-convert": "1.9.0" + } }, "chalk": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.1.0.tgz", "integrity": "sha512-LUHGS/dge4ujbXMJrnihYMcL4AoOweGnw9Tp3kQuqy1Kx5c1qKjqvMJZ6nVJPMWJtKCTN72ZogH3oeSO9g9rXQ==", - "dev": true + "dev": true, + "requires": { + "ansi-styles": "3.2.0", + "escape-string-regexp": "1.0.5", + "supports-color": "4.4.0" + } }, "is-fullwidth-code-point": { "version": "2.0.0", @@ -2342,19 +2609,29 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true + "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=", - "dev": true + "dev": true, + "requires": { + "ansi-regex": "3.0.0" + } }, "supports-color": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.4.0.tgz", "integrity": "sha512-rKC3+DyXWgK0ZLKwmRsrkyHVZAjNkfzeehuFWdGGcqGDTZFH73+RH6S/RDAAxl9GusSjZSUWYLmT9N5pzXFOXQ==", - "dev": true + "dev": true, + "requires": { + "has-flag": "2.0.0" + } } } }, @@ -2362,7 +2639,10 @@ "version": "2.2.2", "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", "integrity": "sha1-nh9WrArNtr8wMwbzOL47IErmA2A=", - "dev": true + "dev": true, + "requires": { + "loose-envify": "1.3.1" + } }, "invert-kv": { "version": "1.0.0", @@ -2384,7 +2664,10 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", - "dev": true + "dev": true, + "requires": { + "binary-extensions": "1.10.0" + } }, "is-buffer": { "version": "1.1.5", @@ -2395,13 +2678,19 @@ "is-builtin-module": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", - "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=" + "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", + "requires": { + "builtin-modules": "1.1.1" + } }, "is-ci": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-1.0.10.tgz", "integrity": "sha1-9zkzayYyNlBhqdSCcM1WrjNpMY4=", - "dev": true + "dev": true, + "requires": { + "ci-info": "1.1.1" + } }, "is-dotfile": { "version": "1.0.3", @@ -2413,7 +2702,10 @@ "version": "0.1.3", "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", - "dev": true + "dev": true, + "requires": { + "is-primitive": "2.0.0" + } }, "is-error": { "version": "2.2.1", @@ -2437,12 +2729,18 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", - "dev": true + "dev": true, + "requires": { + "number-is-nan": "1.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=" + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "requires": { + "number-is-nan": "1.0.1" + } }, "is-generator-fn": { "version": "1.0.0", @@ -2454,7 +2752,10 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", - "dev": true + "dev": true, + "requires": { + "is-extglob": "1.0.0" + } }, "is-npm": { "version": "1.0.0", @@ -2466,7 +2767,10 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", - "dev": true + "dev": true, + "requires": { + "kind-of": "3.2.2" + } }, "is-obj": { "version": "1.0.1", @@ -2478,7 +2782,10 @@ "version": "0.2.0", "resolved": "https://registry.npmjs.org/is-observable/-/is-observable-0.2.0.tgz", "integrity": "sha1-s2ExHYPG5dcmyr9eJQsCNxBvWuI=", - "dev": true + "dev": true, + "requires": { + "symbol-observable": "0.2.4" + } }, "is-plain-obj": { "version": "1.1.0", @@ -2532,7 +2839,10 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-text-path/-/is-text-path-1.0.1.tgz", "integrity": "sha1-Thqg+1G/vLPpJogAE5cgLBd1tm4=", - "dev": true + "dev": true, + "requires": { + "text-extensions": "1.6.0" + } }, "is-typedarray": { "version": "1.0.0", @@ -2572,7 +2882,10 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "dev": true + "dev": true, + "requires": { + "isarray": "1.0.0" + } }, "isstream": { "version": "0.1.2", @@ -2583,7 +2896,13 @@ "version": "18.1.0", "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-18.1.0.tgz", "integrity": "sha1-T/eedN2YjBORlbNl3GXYf2BvSAM=", - "dev": true + "dev": true, + "requires": { + "chalk": "1.1.3", + "diff": "3.3.1", + "jest-matcher-utils": "18.1.0", + "pretty-format": "18.1.0" + } }, "jest-file-exists": { "version": "17.0.0", @@ -2595,7 +2914,11 @@ "version": "18.1.0", "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-18.1.0.tgz", "integrity": "sha1-GsRlGVXuKmDO8ef8yYzf13PA+TI=", - "dev": true + "dev": true, + "requires": { + "chalk": "1.1.3", + "pretty-format": "18.1.0" + } }, "jest-mock": { "version": "18.0.0", @@ -2607,13 +2930,29 @@ "version": "18.1.0", "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-18.1.0.tgz", "integrity": "sha1-VbltLuY5ybznb4fyo/1Atxx6WRY=", - "dev": true + "dev": true, + "requires": { + "jest-diff": "18.1.0", + "jest-file-exists": "17.0.0", + "jest-matcher-utils": "18.1.0", + "jest-util": "18.1.0", + "natural-compare": "1.4.0", + "pretty-format": "18.1.0" + } }, "jest-util": { "version": "18.1.0", "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-18.1.0.tgz", "integrity": "sha1-OpnDIRSrF/hL4JQ4JScAbm1L/Go=", - "dev": true + "dev": true, + "requires": { + "chalk": "1.1.3", + "diff": "3.3.1", + "graceful-fs": "4.1.11", + "jest-file-exists": "17.0.0", + "jest-mock": "18.0.0", + "mkdirp": "0.5.1" + } }, "js-tokens": { "version": "3.0.2", @@ -2652,7 +2991,10 @@ "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=" + "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", + "requires": { + "jsonify": "0.0.0" + } }, "json-stringify-safe": { "version": "5.0.1", @@ -2668,7 +3010,10 @@ "jsonfile": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-3.0.1.tgz", - "integrity": "sha1-pezG9l9T9mLEQVx2daAzHQmS7GY=" + "integrity": "sha1-pezG9l9T9mLEQVx2daAzHQmS7GY=", + "requires": { + "graceful-fs": "4.1.11" + } }, "jsonify": { "version": "0.0.0", @@ -2681,34 +3026,43 @@ "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=", "dev": true }, - "JSONStream": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.1.tgz", - "integrity": "sha1-cH92HgHa6eFvG8+TcDt4xwlmV5o=", - "dev": true - }, "jsprim": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", - "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=" + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } }, "kind-of": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true + "dev": true, + "requires": { + "is-buffer": "1.1.5" + } }, "last-line-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/last-line-stream/-/last-line-stream-1.0.0.tgz", "integrity": "sha1-0bZNafhv8kry0EiDos7uFFIKVgA=", - "dev": true + "dev": true, + "requires": { + "through2": "2.0.3" + } }, "latest-version": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-2.0.0.tgz", "integrity": "sha1-VvjWE5YghHuAF/jx9NeOIRMkFos=", - "dev": true + "dev": true, + "requires": { + "package-json": "2.4.0" + } }, "lazy-cache": { "version": "1.0.4", @@ -2726,13 +3080,54 @@ "lcid": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", - "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=" + "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", + "requires": { + "invert-kv": "1.0.0" + } }, "lerna": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/lerna/-/lerna-2.2.0.tgz", "integrity": "sha512-TiAoM0uvi+uJ74RhNEjtJE8ghpEZaVw9BUzmJ4oyXhGRiAC59cS61KAL7xFexX6e+rmVEsclxV68xFcAOCfMWg==", "dev": true, + "requires": { + "async": "1.5.2", + "chalk": "2.1.0", + "cmd-shim": "2.0.2", + "columnify": "1.5.4", + "command-join": "2.0.0", + "conventional-changelog-cli": "1.3.3", + "conventional-recommended-bump": "1.0.1", + "dedent": "0.7.0", + "execa": "0.8.0", + "find-up": "2.1.0", + "fs-extra": "4.0.2", + "get-port": "3.2.0", + "glob": "7.1.2", + "glob-parent": "3.1.0", + "globby": "6.1.0", + "graceful-fs": "4.1.11", + "inquirer": "3.3.0", + "is-ci": "1.0.10", + "load-json-file": "3.0.0", + "lodash": "4.17.4", + "minimatch": "3.0.4", + "npmlog": "4.1.2", + "p-finally": "1.0.0", + "path-exists": "3.0.0", + "read-cmd-shim": "1.0.1", + "read-pkg": "2.0.0", + "rimraf": "2.6.2", + "safe-buffer": "5.1.1", + "semver": "5.4.1", + "signal-exit": "3.0.2", + "strong-log-transformer": "1.0.6", + "temp-write": "3.3.0", + "write-file-atomic": "2.3.0", + "write-json-file": "2.2.0", + "write-pkg": "3.1.0", + "yargs": "8.0.2" + }, "dependencies": { "ansi-regex": { "version": "3.0.0", @@ -2744,7 +3139,10 @@ "version": "3.2.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", "integrity": "sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==", - "dev": true + "dev": true, + "requires": { + "color-convert": "1.9.0" + } }, "camelcase": { "version": "4.1.0", @@ -2756,25 +3154,47 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.1.0.tgz", "integrity": "sha512-LUHGS/dge4ujbXMJrnihYMcL4AoOweGnw9Tp3kQuqy1Kx5c1qKjqvMJZ6nVJPMWJtKCTN72ZogH3oeSO9g9rXQ==", - "dev": true + "dev": true, + "requires": { + "ansi-styles": "3.2.0", + "escape-string-regexp": "1.0.5", + "supports-color": "4.4.0" + } }, "execa": { "version": "0.8.0", "resolved": "https://registry.npmjs.org/execa/-/execa-0.8.0.tgz", "integrity": "sha1-2NdrvBtVIX7RkP1t1J08d07PyNo=", - "dev": true + "dev": true, + "requires": { + "cross-spawn": "5.1.0", + "get-stream": "3.0.0", + "is-stream": "1.1.0", + "npm-run-path": "2.0.2", + "p-finally": "1.0.0", + "signal-exit": "3.0.2", + "strip-eof": "1.0.0" + } }, "find-up": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true + "dev": true, + "requires": { + "locate-path": "2.0.0" + } }, "fs-extra": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.2.tgz", "integrity": "sha1-+RcExT0bRh+JNFKwwwfZmXZHq2s=", - "dev": true + "dev": true, + "requires": { + "graceful-fs": "4.1.11", + "jsonfile": "4.0.0", + "universalify": "0.1.1" + } }, "get-port": { "version": "3.2.0", @@ -2786,7 +3206,11 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", - "dev": true + "dev": true, + "requires": { + "is-glob": "3.1.0", + "path-dirname": "1.0.2" + } }, "is-extglob": { "version": "2.1.1", @@ -2804,37 +3228,66 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dev": true + "dev": true, + "requires": { + "is-extglob": "2.1.1" + } }, "jsonfile": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "dev": true + "dev": true, + "requires": { + "graceful-fs": "4.1.11" + } }, "load-json-file": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-3.0.0.tgz", "integrity": "sha1-frNzXZg6ftImKt5P92mvU2nFxEA=", - "dev": true + "dev": true, + "requires": { + "graceful-fs": "4.1.11", + "parse-json": "3.0.0", + "pify": "2.3.0", + "strip-bom": "3.0.0" + } }, "minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dev": true + "dev": true, + "requires": { + "brace-expansion": "1.1.8" + } }, "os-locale": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz", "integrity": "sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==", "dev": true, + "requires": { + "execa": "0.7.0", + "lcid": "1.0.0", + "mem": "1.1.0" + }, "dependencies": { "execa": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", - "dev": true + "dev": true, + "requires": { + "cross-spawn": "5.1.0", + "get-stream": "3.0.0", + "is-stream": "1.1.0", + "npm-run-path": "2.0.2", + "p-finally": "1.0.0", + "signal-exit": "3.0.2", + "strip-eof": "1.0.0" + } } } }, @@ -2842,7 +3295,10 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-3.0.0.tgz", "integrity": "sha1-+m9HsY4jgm6tMvJj50TQ4ehH+xM=", - "dev": true + "dev": true, + "requires": { + "error-ex": "1.3.1" + } }, "path-exists": { "version": "3.0.0", @@ -2854,25 +3310,42 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", - "dev": true + "dev": true, + "requires": { + "pify": "2.3.0" + } }, "read-pkg": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", "dev": true, + "requires": { + "load-json-file": "2.0.0", + "normalize-package-data": "2.4.0", + "path-type": "2.0.0" + }, "dependencies": { "load-json-file": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", - "dev": true + "dev": true, + "requires": { + "graceful-fs": "4.1.11", + "parse-json": "2.2.0", + "pify": "2.3.0", + "strip-bom": "3.0.0" + } }, "parse-json": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "dev": true + "dev": true, + "requires": { + "error-ex": "1.3.1" + } } } }, @@ -2880,19 +3353,30 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", - "dev": true + "dev": true, + "requires": { + "find-up": "2.1.0", + "read-pkg": "2.0.0" + } }, "string-width": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true + "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=", - "dev": true + "dev": true, + "requires": { + "ansi-regex": "3.0.0" + } }, "strip-bom": { "version": "3.0.0", @@ -2904,7 +3388,10 @@ "version": "4.4.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.4.0.tgz", "integrity": "sha512-rKC3+DyXWgK0ZLKwmRsrkyHVZAjNkfzeehuFWdGGcqGDTZFH73+RH6S/RDAAxl9GusSjZSUWYLmT9N5pzXFOXQ==", - "dev": true + "dev": true, + "requires": { + "has-flag": "2.0.0" + } }, "which-module": { "version": "2.0.0", @@ -2916,26 +3403,55 @@ "version": "8.0.2", "resolved": "https://registry.npmjs.org/yargs/-/yargs-8.0.2.tgz", "integrity": "sha1-YpmpBVsc78lp/355wdkY3Osiw2A=", - "dev": true + "dev": true, + "requires": { + "camelcase": "4.1.0", + "cliui": "3.2.0", + "decamelize": "1.2.0", + "get-caller-file": "1.0.2", + "os-locale": "2.1.0", + "read-pkg-up": "2.0.0", + "require-directory": "2.1.1", + "require-main-filename": "1.0.1", + "set-blocking": "2.0.0", + "string-width": "2.1.1", + "which-module": "2.0.0", + "y18n": "3.2.1", + "yargs-parser": "7.0.0" + } }, "yargs-parser": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-7.0.0.tgz", "integrity": "sha1-jQrELxbqVd69MyyvTEA4s+P139k=", - "dev": true + "dev": true, + "requires": { + "camelcase": "4.1.0" + } } } }, "load-json-file": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", - "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=" + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "requires": { + "graceful-fs": "4.1.11", + "parse-json": "2.2.0", + "pify": "2.3.0", + "pinkie-promise": "2.0.1", + "strip-bom": "2.0.0" + } }, "locate-path": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "dev": true, + "requires": { + "p-locate": "2.0.0", + "path-exists": "3.0.0" + }, "dependencies": { "path-exists": { "version": "3.0.0", @@ -2985,13 +3501,20 @@ "version": "4.4.0", "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.4.0.tgz", "integrity": "sha1-5zoDhcg1VZF0bgILmWecaQ5o+6A=", - "dev": true + "dev": true, + "requires": { + "lodash._reinterpolate": "3.0.0", + "lodash.templatesettings": "4.1.0" + } }, "lodash.templatesettings": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-4.1.0.tgz", "integrity": "sha1-K01OlbpEDZFf8IvImeRVNmZxMxY=", - "dev": true + "dev": true, + "requires": { + "lodash._reinterpolate": "3.0.0" + } }, "longest": { "version": "1.0.1", @@ -3003,13 +3526,20 @@ "version": "1.3.1", "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", - "dev": true + "dev": true, + "requires": { + "js-tokens": "3.0.2" + } }, "loud-rejection": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", - "dev": true + "dev": true, + "requires": { + "currently-unhandled": "0.4.1", + "signal-exit": "3.0.2" + } }, "lowercase-keys": { "version": "1.0.0", @@ -3021,13 +3551,20 @@ "version": "4.1.1", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.1.tgz", "integrity": "sha512-q4spe4KTfsAS1SUHLO0wz8Qiyf1+vMIAgpRYioFYDMNqKfHQbg+AVDH3i4fvpl71/P1L0dBl+fQi+P37UYf0ew==", - "dev": true + "dev": true, + "requires": { + "pseudomap": "1.0.2", + "yallist": "2.1.2" + } }, "make-dir": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.0.0.tgz", "integrity": "sha1-l6ARdR6R3YfPre9Ygy67BJNt6Xg=", - "dev": true + "dev": true, + "requires": { + "pify": "2.3.0" + } }, "map-obj": { "version": "1.0.1", @@ -3039,7 +3576,10 @@ "version": "0.1.2", "resolved": "https://registry.npmjs.org/matcher/-/matcher-0.1.2.tgz", "integrity": "sha1-7yDL3mTCTFDMYa9bg+4LG4/wAQE=", - "dev": true + "dev": true, + "requires": { + "escape-string-regexp": "1.0.5" + } }, "max-timeout": { "version": "1.0.0", @@ -3051,7 +3591,10 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-2.0.0.tgz", "integrity": "sha1-0FiOnxx0lUSS7NJKwKxs6ZfZLjM=", - "dev": true + "dev": true, + "requires": { + "md5-o-matic": "0.1.1" + } }, "md5-o-matic": { "version": "0.1.1", @@ -3063,13 +3606,28 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/mem/-/mem-1.1.0.tgz", "integrity": "sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y=", - "dev": true + "dev": true, + "requires": { + "mimic-fn": "1.1.0" + } }, "meow": { "version": "3.7.0", "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", "dev": true, + "requires": { + "camelcase-keys": "2.1.0", + "decamelize": "1.2.0", + "loud-rejection": "1.6.0", + "map-obj": "1.0.1", + "minimist": "1.2.0", + "normalize-package-data": "2.4.0", + "object-assign": "4.1.1", + "read-pkg-up": "1.0.1", + "redent": "1.0.0", + "trim-newlines": "1.0.0" + }, "dependencies": { "minimist": { "version": "1.2.0", @@ -3083,7 +3641,22 @@ "version": "2.3.11", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", - "dev": true + "dev": true, + "requires": { + "arr-diff": "2.0.0", + "array-unique": "0.2.1", + "braces": "1.8.5", + "expand-brackets": "0.1.5", + "extglob": "0.3.2", + "filename-regex": "2.0.1", + "is-extglob": "1.0.0", + "is-glob": "2.0.1", + "kind-of": "3.2.2", + "normalize-path": "2.1.1", + "object.omit": "2.0.1", + "parse-glob": "3.0.4", + "regex-cache": "0.4.4" + } }, "mime-db": { "version": "1.30.0", @@ -3093,7 +3666,10 @@ "mime-types": { "version": "2.1.17", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.17.tgz", - "integrity": "sha1-Cdejk/A+mVp5+K+Fe3Cp4KsWVXo=" + "integrity": "sha1-Cdejk/A+mVp5+K+Fe3Cp4KsWVXo=", + "requires": { + "mime-db": "1.30.0" + } }, "mimic-fn": { "version": "1.1.0", @@ -3104,7 +3680,10 @@ "minimatch": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.2.tgz", - "integrity": "sha1-DzmKcwDqRB6cNIyD2Yq4ydv5xAo=" + "integrity": "sha1-DzmKcwDqRB6cNIyD2Yq4ydv5xAo=", + "requires": { + "brace-expansion": "1.1.8" + } }, "minimist": { "version": "0.0.8", @@ -3116,7 +3695,10 @@ "version": "0.5.1", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "dev": true + "dev": true, + "requires": { + "minimist": "0.0.8" + } }, "modify-values": { "version": "1.0.0", @@ -3139,7 +3721,13 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-2.1.0.tgz", "integrity": "sha1-nHkGoi+0wCkZ4vX3UWG0zb1LKis=", - "dev": true + "dev": true, + "requires": { + "array-differ": "1.0.0", + "array-union": "1.0.2", + "arrify": "1.0.1", + "minimatch": "3.0.2" + } }, "mute-stream": { "version": "0.0.7", @@ -3147,13 +3735,6 @@ "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", "dev": true }, - "nan": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.7.0.tgz", - "integrity": "sha1-2Vv3IeyHfgjbJ27T/G63j5CDrUY=", - "dev": true, - "optional": true - }, "natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", @@ -3169,25 +3750,43 @@ "normalize-package-data": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", - "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==" + "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==", + "requires": { + "hosted-git-info": "2.5.0", + "is-builtin-module": "1.0.0", + "semver": "5.4.1", + "validate-npm-package-license": "3.0.1" + } }, "normalize-path": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "dev": true + "dev": true, + "requires": { + "remove-trailing-separator": "1.1.0" + } }, "npm-run-path": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", - "dev": true + "dev": true, + "requires": { + "path-key": "2.0.1" + } }, "npmlog": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "dev": true + "dev": true, + "requires": { + "are-we-there-yet": "1.1.4", + "console-control-strings": "1.1.0", + "gauge": "2.7.4", + "set-blocking": "2.0.0" + } }, "null-check": { "version": "1.0.0", @@ -3205,11 +3804,45 @@ "resolved": "https://registry.npmjs.org/nyc/-/nyc-10.3.2.tgz", "integrity": "sha1-8n9NkfKp2zbCT1dP9cbv/wIz3kY=", "dev": true, + "requires": { + "archy": "1.0.0", + "arrify": "1.0.1", + "caching-transform": "1.0.1", + "convert-source-map": "1.5.0", + "debug-log": "1.0.1", + "default-require-extensions": "1.0.0", + "find-cache-dir": "0.1.1", + "find-up": "1.1.2", + "foreground-child": "1.5.6", + "glob": "7.1.1", + "istanbul-lib-coverage": "1.1.0", + "istanbul-lib-hook": "1.0.6", + "istanbul-lib-instrument": "1.7.1", + "istanbul-lib-report": "1.1.0", + "istanbul-lib-source-maps": "1.2.0", + "istanbul-reports": "1.1.0", + "md5-hex": "1.3.0", + "merge-source-map": "1.0.3", + "micromatch": "2.3.11", + "mkdirp": "0.5.1", + "resolve-from": "2.0.0", + "rimraf": "2.6.1", + "signal-exit": "3.0.2", + "spawn-wrap": "1.2.4", + "test-exclude": "4.1.0", + "yargs": "7.1.0", + "yargs-parser": "5.0.0" + }, "dependencies": { "align-text": { "version": "0.1.4", "bundled": true, - "dev": true + "dev": true, + "requires": { + "kind-of": "3.2.0", + "longest": "1.0.1", + "repeat-string": "1.6.1" + } }, "amdefine": { "version": "1.0.1", @@ -3229,7 +3862,10 @@ "append-transform": { "version": "0.4.0", "bundled": true, - "dev": true + "dev": true, + "requires": { + "default-require-extensions": "1.0.0" + } }, "archy": { "version": "1.0.0", @@ -3239,7 +3875,10 @@ "arr-diff": { "version": "2.0.0", "bundled": true, - "dev": true + "dev": true, + "requires": { + "arr-flatten": "1.0.3" + } }, "arr-flatten": { "version": "1.0.3", @@ -3264,37 +3903,83 @@ "babel-code-frame": { "version": "6.22.0", "bundled": true, - "dev": true + "dev": true, + "requires": { + "chalk": "1.1.3", + "esutils": "2.0.2", + "js-tokens": "3.0.1" + } }, "babel-generator": { "version": "6.24.1", "bundled": true, - "dev": true + "dev": true, + "requires": { + "babel-messages": "6.23.0", + "babel-runtime": "6.23.0", + "babel-types": "6.24.1", + "detect-indent": "4.0.0", + "jsesc": "1.3.0", + "lodash": "4.17.4", + "source-map": "0.5.6", + "trim-right": "1.0.1" + } }, "babel-messages": { "version": "6.23.0", "bundled": true, - "dev": true + "dev": true, + "requires": { + "babel-runtime": "6.23.0" + } }, "babel-runtime": { "version": "6.23.0", "bundled": true, - "dev": true + "dev": true, + "requires": { + "core-js": "2.4.1", + "regenerator-runtime": "0.10.5" + } }, "babel-template": { "version": "6.24.1", "bundled": true, - "dev": true + "dev": true, + "requires": { + "babel-runtime": "6.23.0", + "babel-traverse": "6.24.1", + "babel-types": "6.24.1", + "babylon": "6.17.0", + "lodash": "4.17.4" + } }, "babel-traverse": { "version": "6.24.1", "bundled": true, - "dev": true + "dev": true, + "requires": { + "babel-code-frame": "6.22.0", + "babel-messages": "6.23.0", + "babel-runtime": "6.23.0", + "babel-types": "6.24.1", + "babylon": "6.17.0", + "debug": "2.6.6", + "globals": "9.17.0", + "invariant": "2.2.2", + "lodash": "4.17.4" + } }, "babel-types": { "version": "6.24.1", "bundled": true, - "dev": true + "dev": true, + "requires": { + "babel-runtime": "6.23.0", + "esutils": "2.0.2", + "lodash": "4.17.4", + "to-fast-properties": "1.0.3" + } }, "babylon": { "version": "6.17.0", @@ -3309,12 +3994,21 @@ "brace-expansion": { "version": "1.1.7", "bundled": true, - "dev": true + "dev": true, + "requires": { + "balanced-match": "0.4.2", + "concat-map": "0.0.1" + } }, "braces": { "version": "1.8.5", "bundled": true, - "dev": true + "dev": true, + "requires": { + "expand-range": "1.8.2", + "preserve": "0.2.0", + "repeat-element": "1.1.2" + } }, "builtin-modules": { "version": "1.1.1", @@ -3324,7 +4018,12 @@ "caching-transform": { "version": "1.0.1", "bundled": true, - "dev": true + "dev": true, + "requires": { + "md5-hex": "1.3.0", + "mkdirp": "0.5.1", + "write-file-atomic": "1.3.4" + } }, "camelcase": { "version": "1.2.1", @@ -3336,18 +4035,34 @@ "version": "0.1.3", "bundled": true, "dev": true, - "optional": true + "optional": true, + "requires": { + "align-text": "0.1.4", + "lazy-cache": "1.0.4" + } }, "chalk": { "version": "1.1.3", "bundled": true, - "dev": true + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + } }, "cliui": { "version": "2.1.0", "bundled": true, "dev": true, "optional": true, + "requires": { + "center-align": "0.1.3", + "right-align": "0.1.3", + "wordwrap": "0.0.2" + }, "dependencies": { "wordwrap": { "version": "0.0.2", @@ -3385,12 +4100,19 @@ "cross-spawn": { "version": "4.0.2", "bundled": true, - "dev": true + "dev": true, + "requires": { + "lru-cache": "4.0.2", + "which": "1.2.14" + } }, "debug": { "version": "2.6.6", "bundled": true, - "dev": true + "dev": true, + "requires": { + "ms": "0.7.3" + } }, "debug-log": { "version": "1.0.1", @@ -3405,17 +4127,26 @@ "default-require-extensions": { "version": "1.0.0", "bundled": true, - "dev": true + "dev": true, + "requires": { + "strip-bom": "2.0.0" + } }, "detect-indent": { "version": "4.0.0", "bundled": true, - "dev": true + "dev": true, + "requires": { + "repeating": "2.0.1" + } }, "error-ex": { "version": "1.3.1", "bundled": true, - "dev": true + "dev": true, + "requires": { + "is-arrayish": "0.2.1" + } }, "escape-string-regexp": { "version": "1.0.5", @@ -3430,17 +4161,26 @@ "expand-brackets": { "version": "0.1.5", "bundled": true, - "dev": true + "dev": true, + "requires": { + "is-posix-bracket": "0.1.1" + } }, "expand-range": { "version": "1.8.2", "bundled": true, - "dev": true + "dev": true, + "requires": { + "fill-range": "2.2.3" + } }, "extglob": { "version": "0.3.2", "bundled": true, - "dev": true + "dev": true, + "requires": { + "is-extglob": "1.0.0" + } }, "filename-regex": { "version": "2.0.1", @@ -3450,17 +4190,33 @@ "fill-range": { "version": "2.2.3", "bundled": true, - "dev": true + "dev": true, + "requires": { + "is-number": "2.1.0", + "isobject": "2.1.0", + "randomatic": "1.1.6", + "repeat-element": "1.1.2", + "repeat-string": "1.6.1" + } }, "find-cache-dir": { "version": "0.1.1", "bundled": true, - "dev": true + "dev": true, + "requires": { + "commondir": "1.0.1", + "mkdirp": "0.5.1", + "pkg-dir": "1.0.0" + } }, "find-up": { "version": "1.1.2", "bundled": true, - "dev": true + "dev": true, + "requires": { + "path-exists": "2.1.0", + "pinkie-promise": "2.0.1" + } }, "for-in": { "version": "1.0.2", @@ -3470,12 +4226,19 @@ "for-own": { "version": "0.1.5", "bundled": true, - "dev": true + "dev": true, + "requires": { + "for-in": "1.0.2" + } }, "foreground-child": { "version": "1.5.6", "bundled": true, - "dev": true + "dev": true, + "requires": { + "cross-spawn": "4.0.2", + "signal-exit": "3.0.2" + } }, "fs.realpath": { "version": "1.0.0", @@ -3490,17 +4253,32 @@ "glob": { "version": "7.1.1", "bundled": true, - "dev": true + "dev": true, + "requires": { + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.3", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + } }, "glob-base": { "version": "0.3.0", "bundled": true, - "dev": true + "dev": true, + "requires": { + "glob-parent": "2.0.0", + "is-glob": "2.0.1" + } }, "glob-parent": { "version": "2.0.0", "bundled": true, - "dev": true + "dev": true, + "requires": { + "is-glob": "2.0.1" + } }, "globals": { "version": "9.17.0", @@ -3516,18 +4294,30 @@ "version": "4.0.8", "bundled": true, "dev": true, + "requires": { + "async": "1.5.2", + "optimist": "0.6.1", + "source-map": "0.4.4", + "uglify-js": "2.8.22" + }, "dependencies": { "source-map": { "version": "0.4.4", "bundled": true, - "dev": true + "dev": true, + "requires": { + "amdefine": "1.0.1" + } } } }, "has-ansi": { "version": "2.0.0", "bundled": true, - "dev": true + "dev": true, + "requires": { + "ansi-regex": "2.1.1" + } }, "has-flag": { "version": "1.0.0", @@ -3547,7 +4337,11 @@ "inflight": { "version": "1.0.6", "bundled": true, - "dev": true + "dev": true, + "requires": { + "once": "1.4.0", + "wrappy": "1.0.2" + } }, "inherits": { "version": "2.0.3", @@ -3557,7 +4351,10 @@ "invariant": { "version": "2.2.2", "bundled": true, - "dev": true + "dev": true, + "requires": { + "loose-envify": "1.3.1" + } }, "invert-kv": { "version": "1.0.0", @@ -3577,7 +4374,10 @@ "is-builtin-module": { "version": "1.0.0", "bundled": true, - "dev": true + "dev": true, + "requires": { + "builtin-modules": "1.1.1" + } }, "is-dotfile": { "version": "1.0.2", @@ -3587,7 +4387,10 @@ "is-equal-shallow": { "version": "0.1.3", "bundled": true, - "dev": true + "dev": true, + "requires": { + "is-primitive": "2.0.0" + } }, "is-extendable": { "version": "0.1.1", @@ -3602,22 +4405,34 @@ "is-finite": { "version": "1.0.2", "bundled": true, - "dev": true + "dev": true, + "requires": { + "number-is-nan": "1.0.1" + } }, "is-fullwidth-code-point": { "version": "1.0.0", "bundled": true, - "dev": true + "dev": true, + "requires": { + "number-is-nan": "1.0.1" + } }, "is-glob": { "version": "2.0.1", "bundled": true, - "dev": true + "dev": true, + "requires": { + "is-extglob": "1.0.0" + } }, "is-number": { "version": "2.1.0", "bundled": true, - "dev": true + "dev": true, + "requires": { + "kind-of": "3.2.0" + } }, "is-posix-bracket": { "version": "0.1.1", @@ -3647,7 +4462,10 @@ "isobject": { "version": "2.1.0", "bundled": true, - "dev": true + "dev": true, + "requires": { + "isarray": "1.0.0" + } }, "istanbul-lib-coverage": { "version": "1.1.0", @@ -3657,34 +4475,65 @@ "istanbul-lib-hook": { "version": "1.0.6", "bundled": true, - "dev": true + "dev": true, + "requires": { + "append-transform": "0.4.0" + } }, "istanbul-lib-instrument": { "version": "1.7.1", "bundled": true, - "dev": true + "dev": true, + "requires": { + "babel-generator": "6.24.1", + "babel-template": "6.24.1", + "babel-traverse": "6.24.1", + "babel-types": "6.24.1", + "babylon": "6.17.0", + "istanbul-lib-coverage": "1.1.0", + "semver": "5.3.0" + } }, "istanbul-lib-report": { "version": "1.1.0", "bundled": true, "dev": true, + "requires": { + "istanbul-lib-coverage": "1.1.0", + "mkdirp": "0.5.1", + "path-parse": "1.0.5", + "supports-color": "3.2.3" + }, "dependencies": { "supports-color": { "version": "3.2.3", "bundled": true, - "dev": true + "dev": true, + "requires": { + "has-flag": "1.0.0" + } } } }, "istanbul-lib-source-maps": { "version": "1.2.0", "bundled": true, - "dev": true + "dev": true, + "requires": { + "debug": "2.6.6", + "istanbul-lib-coverage": "1.1.0", + "mkdirp": "0.5.1", + "rimraf": "2.6.1", + "source-map": "0.5.6" + } }, "istanbul-reports": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "requires": { + "handlebars": "4.0.8" + } }, "js-tokens": { "version": "3.0.1", @@ -3699,7 +4548,10 @@ "kind-of": { "version": "3.2.0", "bundled": true, - "dev": true + "dev": true, + "requires": { + "is-buffer": "1.1.5" + } }, "lazy-cache": { "version": "1.0.4", @@ -3710,12 +4562,22 @@ "lcid": { "version": "1.0.0", "bundled": true, - "dev": true + "dev": true, + "requires": { + "invert-kv": "1.0.0" + } }, "load-json-file": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "requires": { + "graceful-fs": "4.1.11", + "parse-json": "2.2.0", + "pify": "2.3.0", + "pinkie-promise": "2.0.1", + "strip-bom": "2.0.0" + } }, "lodash": { "version": "4.17.4", @@ -3730,17 +4592,27 @@ "loose-envify": { "version": "1.3.1", "bundled": true, - "dev": true + "dev": true, + "requires": { + "js-tokens": "3.0.1" + } }, "lru-cache": { "version": "4.0.2", "bundled": true, - "dev": true + "dev": true, + "requires": { + "pseudomap": "1.0.2", + "yallist": "2.1.2" + } }, "md5-hex": { "version": "1.3.0", "bundled": true, - "dev": true + "dev": true, + "requires": { + "md5-o-matic": "0.1.1" + } }, "md5-o-matic": { "version": "0.1.1", @@ -3750,17 +4622,38 @@ "merge-source-map": { "version": "1.0.3", "bundled": true, - "dev": true + "dev": true, + "requires": { + "source-map": "0.5.6" + } }, "micromatch": { "version": "2.3.11", "bundled": true, - "dev": true + "dev": true, + "requires": { + "arr-diff": "2.0.0", + "array-unique": "0.2.1", + "braces": "1.8.5", + "expand-brackets": "0.1.5", + "extglob": "0.3.2", + "filename-regex": "2.0.1", + "is-extglob": "1.0.0", + "is-glob": "2.0.1", + "kind-of": "3.2.0", + "normalize-path": "2.1.1", + "object.omit": "2.0.1", + "parse-glob": "3.0.4", + "regex-cache": "0.4.3" + } }, "minimatch": { "version": "3.0.3", "bundled": true, - "dev": true + "dev": true, + "requires": { + "brace-expansion": "1.1.7" + } }, "minimist": { "version": "0.0.8", @@ -3770,7 +4663,10 @@ "mkdirp": { "version": "0.5.1", "bundled": true, - "dev": true + "dev": true, + "requires": { + "minimist": "0.0.8" + } }, "ms": { "version": "0.7.3", @@ -3780,12 +4676,21 @@ "normalize-package-data": { "version": "2.3.8", "bundled": true, - "dev": true + "dev": true, + "requires": { + "hosted-git-info": "2.4.2", + "is-builtin-module": "1.0.0", + "semver": "5.3.0", + "validate-npm-package-license": "3.0.1" + } }, "normalize-path": { "version": "2.1.1", "bundled": true, - "dev": true + "dev": true, + "requires": { + "remove-trailing-separator": "1.0.1" + } }, "number-is-nan": { "version": "1.0.1", @@ -3800,17 +4705,28 @@ "object.omit": { "version": "2.0.1", "bundled": true, - "dev": true + "dev": true, + "requires": { + "for-own": "0.1.5", + "is-extendable": "0.1.1" + } }, "once": { "version": "1.4.0", "bundled": true, - "dev": true + "dev": true, + "requires": { + "wrappy": "1.0.2" + } }, "optimist": { "version": "0.6.1", "bundled": true, - "dev": true + "dev": true, + "requires": { + "minimist": "0.0.8", + "wordwrap": "0.0.3" + } }, "os-homedir": { "version": "1.0.2", @@ -3820,22 +4736,37 @@ "os-locale": { "version": "1.4.0", "bundled": true, - "dev": true + "dev": true, + "requires": { + "lcid": "1.0.0" + } }, "parse-glob": { "version": "3.0.4", "bundled": true, - "dev": true + "dev": true, + "requires": { + "glob-base": "0.3.0", + "is-dotfile": "1.0.2", + "is-extglob": "1.0.0", + "is-glob": "2.0.1" + } }, "parse-json": { "version": "2.2.0", "bundled": true, - "dev": true + "dev": true, + "requires": { + "error-ex": "1.3.1" + } }, "path-exists": { "version": "2.1.0", "bundled": true, - "dev": true + "dev": true, + "requires": { + "pinkie-promise": "2.0.1" + } }, "path-is-absolute": { "version": "1.0.1", @@ -3850,7 +4781,12 @@ "path-type": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "requires": { + "graceful-fs": "4.1.11", + "pify": "2.3.0", + "pinkie-promise": "2.0.1" + } }, "pify": { "version": "2.3.0", @@ -3865,12 +4801,18 @@ "pinkie-promise": { "version": "2.0.1", "bundled": true, - "dev": true + "dev": true, + "requires": { + "pinkie": "2.0.4" + } }, "pkg-dir": { "version": "1.0.0", "bundled": true, - "dev": true + "dev": true, + "requires": { + "find-up": "1.1.2" + } }, "preserve": { "version": "0.2.0", @@ -3885,17 +4827,30 @@ "randomatic": { "version": "1.1.6", "bundled": true, - "dev": true + "dev": true, + "requires": { + "is-number": "2.1.0", + "kind-of": "3.2.0" + } }, "read-pkg": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "requires": { + "load-json-file": "1.1.0", + "normalize-package-data": "2.3.8", + "path-type": "1.1.0" + } }, "read-pkg-up": { "version": "1.0.1", "bundled": true, - "dev": true + "dev": true, + "requires": { + "find-up": "1.1.2", + "read-pkg": "1.1.0" + } }, "regenerator-runtime": { "version": "0.10.5", @@ -3905,7 +4860,11 @@ "regex-cache": { "version": "0.4.3", "bundled": true, - "dev": true + "dev": true, + "requires": { + "is-equal-shallow": "0.1.3", + "is-primitive": "2.0.0" + } }, "remove-trailing-separator": { "version": "1.0.1", @@ -3925,7 +4884,10 @@ "repeating": { "version": "2.0.1", "bundled": true, - "dev": true + "dev": true, + "requires": { + "is-finite": "1.0.2" + } }, "require-directory": { "version": "2.1.1", @@ -3946,12 +4908,18 @@ "version": "0.1.3", "bundled": true, "dev": true, - "optional": true + "optional": true, + "requires": { + "align-text": "0.1.4" + } }, "rimraf": { "version": "2.6.1", "bundled": true, - "dev": true + "dev": true, + "requires": { + "glob": "7.1.1" + } }, "semver": { "version": "5.3.0", @@ -3982,6 +4950,14 @@ "version": "1.2.4", "bundled": true, "dev": true, + "requires": { + "foreground-child": "1.5.6", + "mkdirp": "0.5.1", + "os-homedir": "1.0.2", + "rimraf": "2.6.1", + "signal-exit": "2.1.2", + "which": "1.2.14" + }, "dependencies": { "signal-exit": { "version": "2.1.2", @@ -3993,7 +4969,10 @@ "spdx-correct": { "version": "1.0.2", "bundled": true, - "dev": true + "dev": true, + "requires": { + "spdx-license-ids": "1.2.2" + } }, "spdx-expression-parse": { "version": "1.0.4", @@ -4008,17 +4987,28 @@ "string-width": { "version": "1.0.2", "bundled": true, - "dev": true + "dev": true, + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } }, "strip-ansi": { "version": "3.0.1", "bundled": true, - "dev": true + "dev": true, + "requires": { + "ansi-regex": "2.1.1" + } }, "strip-bom": { "version": "2.0.0", "bundled": true, - "dev": true + "dev": true, + "requires": { + "is-utf8": "0.2.1" + } }, "supports-color": { "version": "2.0.0", @@ -4028,7 +5018,14 @@ "test-exclude": { "version": "4.1.0", "bundled": true, - "dev": true + "dev": true, + "requires": { + "arrify": "1.0.1", + "micromatch": "2.3.11", + "object-assign": "4.1.1", + "read-pkg-up": "1.0.1", + "require-main-filename": "1.0.1" + } }, "to-fast-properties": { "version": "1.0.3", @@ -4045,12 +5042,23 @@ "bundled": true, "dev": true, "optional": true, + "requires": { + "source-map": "0.5.6", + "uglify-to-browserify": "1.0.2", + "yargs": "3.10.0" + }, "dependencies": { "yargs": { "version": "3.10.0", "bundled": true, "dev": true, - "optional": true + "optional": true, + "requires": { + "camelcase": "1.2.1", + "cliui": "2.1.0", + "decamelize": "1.2.0", + "window-size": "0.1.0" + } } } }, @@ -4063,12 +5071,19 @@ "validate-npm-package-license": { "version": "3.0.1", "bundled": true, - "dev": true + "dev": true, + "requires": { + "spdx-correct": "1.0.2", + "spdx-expression-parse": "1.0.4" + } }, "which": { "version": "1.2.14", "bundled": true, - "dev": true + "dev": true, + "requires": { + "isexe": "2.0.0" + } }, "which-module": { "version": "1.0.0", @@ -4089,7 +5104,11 @@ "wrap-ansi": { "version": "2.1.0", "bundled": true, - "dev": true + "dev": true, + "requires": { + "string-width": "1.0.2", + "strip-ansi": "3.0.1" + } }, "wrappy": { "version": "1.0.2", @@ -4099,7 +5118,12 @@ "write-file-atomic": { "version": "1.3.4", "bundled": true, - "dev": true + "dev": true, + "requires": { + "graceful-fs": "4.1.11", + "imurmurhash": "0.1.4", + "slide": "1.1.6" + } }, "y18n": { "version": "3.2.1", @@ -4115,6 +5139,21 @@ "version": "7.1.0", "bundled": true, "dev": true, + "requires": { + "camelcase": "3.0.0", + "cliui": "3.2.0", + "decamelize": "1.2.0", + "get-caller-file": "1.0.2", + "os-locale": "1.4.0", + "read-pkg-up": "1.0.1", + "require-directory": "2.1.1", + "require-main-filename": "1.0.1", + "set-blocking": "2.0.0", + "string-width": "1.0.2", + "which-module": "1.0.0", + "y18n": "3.2.1", + "yargs-parser": "5.0.0" + }, "dependencies": { "camelcase": { "version": "3.0.0", @@ -4124,7 +5163,12 @@ "cliui": { "version": "3.2.0", "bundled": true, - "dev": true + "dev": true, + "requires": { + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "wrap-ansi": "2.1.0" + } } } }, @@ -4132,6 +5176,9 @@ "version": "5.0.0", "bundled": true, "dev": true, + "requires": { + "camelcase": "3.0.0" + }, "dependencies": { "camelcase": { "version": "3.0.0", @@ -4156,36 +5203,57 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", - "dev": true + "dev": true, + "requires": { + "for-own": "0.1.5", + "is-extendable": "0.1.1" + } }, "observable-to-promise": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/observable-to-promise/-/observable-to-promise-0.4.0.tgz", "integrity": "sha1-KK/nFkUwjy1B1x9HrT/s4aN35Ss=", - "dev": true + "dev": true, + "requires": { + "is-observable": "0.2.0", + "symbol-observable": "0.2.4" + } }, "once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=" + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "requires": { + "wrappy": "1.0.2" + } }, "onetime": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", - "dev": true + "dev": true, + "requires": { + "mimic-fn": "1.1.0" + } }, "optimist": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", - "dev": true + "dev": true, + "requires": { + "minimist": "0.0.8", + "wordwrap": "0.0.3" + } }, "option-chain": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/option-chain/-/option-chain-0.1.1.tgz", "integrity": "sha1-6bgR4AbxwPVIAvKClb/Ilw+Nz70=", - "dev": true + "dev": true, + "requires": { + "object-assign": "4.1.1" + } }, "os-homedir": { "version": "1.0.2", @@ -4196,7 +5264,10 @@ "os-locale": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", - "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=" + "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", + "requires": { + "lcid": "1.0.0" + } }, "os-tmpdir": { "version": "1.0.2", @@ -4207,7 +5278,11 @@ "version": "0.1.4", "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.4.tgz", "integrity": "sha1-Qv5tWVPfBsgGS+bxdsPQWqqjRkQ=", - "dev": true + "dev": true, + "requires": { + "os-homedir": "1.0.2", + "os-tmpdir": "1.0.2" + } }, "p-finally": { "version": "1.0.0", @@ -4225,19 +5300,28 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true + "dev": true, + "requires": { + "p-limit": "1.1.0" + } }, "package-hash": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-1.2.0.tgz", "integrity": "sha1-AD5WzVe3NqbtYRTMK4FUJnJ3DkQ=", "dev": true, + "requires": { + "md5-hex": "1.3.0" + }, "dependencies": { "md5-hex": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-1.3.0.tgz", "integrity": "sha1-0sSv6YPENwZiF5uMrRRSGRNQRsQ=", - "dev": true + "dev": true, + "requires": { + "md5-o-matic": "0.1.1" + } } } }, @@ -4245,7 +5329,13 @@ "version": "2.4.0", "resolved": "https://registry.npmjs.org/package-json/-/package-json-2.4.0.tgz", "integrity": "sha1-DRW9Z9HLvduyyiIv8u24a8sxqLs=", - "dev": true + "dev": true, + "requires": { + "got": "5.7.1", + "registry-auth-token": "3.3.1", + "registry-url": "3.1.0", + "semver": "5.4.1" + } }, "parse-github-repo-url": { "version": "1.4.1", @@ -4257,12 +5347,21 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", - "dev": true + "dev": true, + "requires": { + "glob-base": "0.3.0", + "is-dotfile": "1.0.3", + "is-extglob": "1.0.0", + "is-glob": "2.0.1" + } }, "parse-json": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=" + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "requires": { + "error-ex": "1.3.1" + } }, "parse-ms": { "version": "1.0.1", @@ -4279,7 +5378,10 @@ "path-exists": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=" + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "requires": { + "pinkie-promise": "2.0.1" + } }, "path-is-absolute": { "version": "1.0.1", @@ -4301,7 +5403,12 @@ "path-type": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", - "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=" + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "requires": { + "graceful-fs": "4.1.11", + "pify": "2.3.0", + "pinkie-promise": "2.0.1" + } }, "performance-now": { "version": "2.1.0", @@ -4321,25 +5428,41 @@ "pinkie-promise": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=" + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "requires": { + "pinkie": "2.0.4" + } }, "pkg-conf": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-2.0.0.tgz", "integrity": "sha1-BxyHZQQDvM+5xif1h1G/5HwGcnk=", "dev": true, + "requires": { + "find-up": "2.1.0", + "load-json-file": "2.0.0" + }, "dependencies": { "find-up": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true + "dev": true, + "requires": { + "locate-path": "2.0.0" + } }, "load-json-file": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", - "dev": true + "dev": true, + "requires": { + "graceful-fs": "4.1.11", + "parse-json": "2.2.0", + "pify": "2.3.0", + "strip-bom": "3.0.0" + } }, "strip-bom": { "version": "3.0.0", @@ -4353,18 +5476,29 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-1.0.0.tgz", "integrity": "sha1-ektQio1bstYp1EcFb/TpyTFM89Q=", - "dev": true + "dev": true, + "requires": { + "find-up": "1.1.2" + } }, "plist": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/plist/-/plist-2.1.0.tgz", - "integrity": "sha1-V8zbeggh3yGDEhejytVOPhRqECU=" + "integrity": "sha1-V8zbeggh3yGDEhejytVOPhRqECU=", + "requires": { + "base64-js": "1.2.0", + "xmlbuilder": "8.2.2", + "xmldom": "0.1.27" + } }, "plur": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/plur/-/plur-2.1.2.tgz", "integrity": "sha1-dIJFLBoPUI4+NE6uwxLJHCncZVo=", - "dev": true + "dev": true, + "requires": { + "irregular-plurals": "1.3.0" + } }, "prepend-http": { "version": "1.0.4", @@ -4382,13 +5516,21 @@ "version": "18.1.0", "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-18.1.0.tgz", "integrity": "sha1-+2Wob3p/kZSWPu6RhlwbzxA54oQ=", - "dev": true + "dev": true, + "requires": { + "ansi-styles": "2.2.1" + } }, "pretty-ms": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-2.1.0.tgz", "integrity": "sha1-QlfCVt8/sLRR1q/6qwIYhBJpgdw=", "dev": true, + "requires": { + "is-finite": "1.0.2", + "parse-ms": "1.0.1", + "plur": "1.0.0" + }, "dependencies": { "plur": { "version": "1.0.0", @@ -4442,18 +5584,28 @@ "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-1.1.7.tgz", "integrity": "sha512-D5JUjPyJbaJDkuAazpVnSfVkLlpeO3wDlPROTMLGKG1zMFNFRgrciKo1ltz/AzNTkqE0HzDx655QOL51N06how==", "dev": true, + "requires": { + "is-number": "3.0.0", + "kind-of": "4.0.0" + }, "dependencies": { "is-number": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", "dev": true, + "requires": { + "kind-of": "3.2.2" + }, "dependencies": { "kind-of": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true + "dev": true, + "requires": { + "is-buffer": "1.1.5" + } } } }, @@ -4461,7 +5613,10 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", - "dev": true + "dev": true, + "requires": { + "is-buffer": "1.1.5" + } } } }, @@ -4470,6 +5625,12 @@ "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.1.tgz", "integrity": "sha1-LgPo5C7kULjLPc5lvhv4l04d/ZU=", "dev": true, + "requires": { + "deep-extend": "0.4.2", + "ini": "1.3.4", + "minimist": "1.2.0", + "strip-json-comments": "2.0.1" + }, "dependencies": { "minimist": { "version": "1.2.0", @@ -4488,47 +5649,85 @@ "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 + "dev": true, + "requires": { + "pinkie-promise": "2.0.1", + "readable-stream": "2.3.3" + } }, "read-cmd-shim": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/read-cmd-shim/-/read-cmd-shim-1.0.1.tgz", "integrity": "sha1-LV0Vd4ajfAVdIgd8MsU/gynpHHs=", - "dev": true + "dev": true, + "requires": { + "graceful-fs": "4.1.11" + } }, "read-pkg": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", - "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=" + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "requires": { + "load-json-file": "1.1.0", + "normalize-package-data": "2.4.0", + "path-type": "1.1.0" + } }, "read-pkg-up": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", - "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=" + "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "requires": { + "find-up": "1.1.2", + "read-pkg": "1.1.0" + } }, "readable-stream": { "version": "2.3.3", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", - "dev": true + "dev": true, + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "safe-buffer": "5.1.1", + "string_decoder": "1.0.3", + "util-deprecate": "1.0.2" + } }, "readdirp": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz", "integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=", - "dev": true + "dev": true, + "requires": { + "graceful-fs": "4.1.11", + "minimatch": "3.0.2", + "readable-stream": "2.3.3", + "set-immediate-shim": "1.0.1" + } }, "redent": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", "dev": true, + "requires": { + "indent-string": "2.1.0", + "strip-indent": "1.0.1" + }, "dependencies": { "indent-string": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", - "dev": true + "dev": true, + "requires": { + "repeating": "2.0.1" + } } } }, @@ -4548,25 +5747,40 @@ "version": "0.4.4", "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", - "dev": true + "dev": true, + "requires": { + "is-equal-shallow": "0.1.3" + } }, "regexpu-core": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz", "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=", - "dev": true + "dev": true, + "requires": { + "regenerate": "1.3.3", + "regjsgen": "0.2.0", + "regjsparser": "0.1.5" + } }, "registry-auth-token": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.3.1.tgz", "integrity": "sha1-+w0yie4Nmtosu1KvXf5mywcNMAY=", - "dev": true + "dev": true, + "requires": { + "rc": "1.2.1", + "safe-buffer": "5.1.1" + } }, "registry-url": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz", "integrity": "sha1-PU74cPc93h138M+aOBQyRE4XSUI=", - "dev": true + "dev": true, + "requires": { + "rc": "1.2.1" + } }, "regjsgen": { "version": "0.2.0", @@ -4578,7 +5792,10 @@ "version": "0.1.5", "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", - "dev": true + "dev": true, + "requires": { + "jsesc": "0.5.0" + } }, "remove-trailing-separator": { "version": "1.1.0", @@ -4602,17 +5819,47 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", - "dev": true + "dev": true, + "requires": { + "is-finite": "1.0.2" + } }, "request": { "version": "2.82.0", "resolved": "https://registry.npmjs.org/request/-/request-2.82.0.tgz", - "integrity": "sha512-/QWqfmyTfQ4OYs6EhB1h2wQsX9ZxbuNePCvCm0Mdz/mxw73mjdg0D4QdIl0TQBFs35CZmMXLjk0iCGK395CUDg==" + "integrity": "sha512-/QWqfmyTfQ4OYs6EhB1h2wQsX9ZxbuNePCvCm0Mdz/mxw73mjdg0D4QdIl0TQBFs35CZmMXLjk0iCGK395CUDg==", + "requires": { + "aws-sign2": "0.7.0", + "aws4": "1.6.0", + "caseless": "0.12.0", + "combined-stream": "1.0.5", + "extend": "3.0.1", + "forever-agent": "0.6.1", + "form-data": "2.3.1", + "har-validator": "5.0.3", + "hawk": "6.0.2", + "http-signature": "1.2.0", + "is-typedarray": "1.0.0", + "isstream": "0.1.2", + "json-stringify-safe": "5.0.1", + "mime-types": "2.1.17", + "oauth-sign": "0.8.2", + "performance-now": "2.1.0", + "qs": "6.5.1", + "safe-buffer": "5.1.1", + "stringstream": "0.0.5", + "tough-cookie": "2.3.2", + "tunnel-agent": "0.6.0", + "uuid": "3.1.0" + } }, "request-progress": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/request-progress/-/request-progress-3.0.0.tgz", - "integrity": "sha1-TKdUCBx/7GP1BeT6qCWqBs1mnb4=" + "integrity": "sha1-TKdUCBx/7GP1BeT6qCWqBs1mnb4=", + "requires": { + "throttleit": "1.0.0" + } }, "require-directory": { "version": "2.1.1", @@ -4634,13 +5881,19 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.4.0.tgz", "integrity": "sha512-aW7sVKPufyHqOmyyLzg/J+8606v5nevBgaliIlV7nUpVMsDnoBGV/cbSLNjZAg9q0Cfd/+easKVKQ8vOu8fn1Q==", - "dev": true + "dev": true, + "requires": { + "path-parse": "1.0.5" + } }, "resolve-cwd": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-1.0.0.tgz", "integrity": "sha1-Tq7qQe0EDRcCRX32SkKysH0kb58=", - "dev": true + "dev": true, + "requires": { + "resolve-from": "2.0.0" + } }, "resolve-from": { "version": "2.0.0", @@ -4652,26 +5905,39 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", - "dev": true + "dev": true, + "requires": { + "onetime": "2.0.1", + "signal-exit": "3.0.2" + } }, "right-align": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", "dev": true, - "optional": true + "optional": true, + "requires": { + "align-text": "0.1.4" + } }, "rimraf": { "version": "2.6.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", - "dev": true + "dev": true, + "requires": { + "glob": "7.1.2" + } }, "run-async": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", - "dev": true + "dev": true, + "requires": { + "is-promise": "2.1.0" + } }, "rx-lite": { "version": "4.0.8", @@ -4683,7 +5949,10 @@ "version": "4.0.8", "resolved": "https://registry.npmjs.org/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz", "integrity": "sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74=", - "dev": true + "dev": true, + "requires": { + "rx-lite": "4.0.8" + } }, "safe-buffer": { "version": "5.1.1", @@ -4699,7 +5968,10 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-2.1.0.tgz", "integrity": "sha1-S7uEN8jTfksM8aaP1ybsbWRdbTY=", - "dev": true + "dev": true, + "requires": { + "semver": "5.4.1" + } }, "set-blocking": { "version": "2.0.0", @@ -4716,7 +5988,10 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", - "dev": true + "dev": true, + "requires": { + "shebang-regex": "1.0.0" + } }, "shebang-regex": { "version": "1.0.0", @@ -4751,13 +6026,19 @@ "sntp": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/sntp/-/sntp-2.0.2.tgz", - "integrity": "sha1-UGQRDwr4X3z9t9a2ekACjOUrSys=" + "integrity": "sha1-UGQRDwr4X3z9t9a2ekACjOUrSys=", + "requires": { + "hoek": "4.2.0" + } }, "sort-keys": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz", "integrity": "sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg=", - "dev": true + "dev": true, + "requires": { + "is-plain-obj": "1.1.0" + } }, "source-map": { "version": "0.5.7", @@ -4767,12 +6048,18 @@ "source-map-support": { "version": "0.4.18", "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", - "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==" + "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", + "requires": { + "source-map": "0.5.7" + } }, "spdx-correct": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-1.0.2.tgz", - "integrity": "sha1-SzBz2TP/UfORLwOsVRlJikFQ20A=" + "integrity": "sha1-SzBz2TP/UfORLwOsVRlJikFQ20A=", + "requires": { + "spdx-license-ids": "1.2.2" + } }, "spdx-expression-parse": { "version": "1.0.4", @@ -4788,18 +6075,34 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz", "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==", - "dev": true + "dev": true, + "requires": { + "through": "2.3.8" + } }, "split2": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/split2/-/split2-2.1.1.tgz", "integrity": "sha1-eh9VHhdqkOzTNF9yRqDP4XXvT9A=", - "dev": true + "dev": true, + "requires": { + "through2": "2.0.3" + } }, "sshpk": { "version": "1.13.1", "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.13.1.tgz", - "integrity": "sha1-US322mKHFEMW3EwY/hzx2UBzm+M=" + "integrity": "sha1-US322mKHFEMW3EwY/hzx2UBzm+M=", + "requires": { + "asn1": "0.2.3", + "assert-plus": "1.0.0", + "bcrypt-pbkdf": "1.0.1", + "dashdash": "1.14.1", + "ecc-jsbn": "0.1.1", + "getpass": "0.1.7", + "jsbn": "0.1.1", + "tweetnacl": "0.14.5" + } }, "stack-utils": { "version": "1.0.1", @@ -4812,6 +6115,15 @@ "resolved": "https://registry.npmjs.org/standard-version/-/standard-version-4.2.0.tgz", "integrity": "sha1-MBfoxc7SqS23UBeQJVw7qFFXN10=", "dev": true, + "requires": { + "chalk": "1.1.3", + "conventional-changelog": "1.1.5", + "conventional-recommended-bump": "1.0.1", + "figures": "1.7.0", + "fs-access": "1.0.1", + "semver": "5.4.1", + "yargs": "8.0.2" + }, "dependencies": { "ansi-regex": { "version": "3.0.0", @@ -4829,13 +6141,20 @@ "version": "1.7.0", "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", - "dev": true + "dev": true, + "requires": { + "escape-string-regexp": "1.0.5", + "object-assign": "4.1.1" + } }, "find-up": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true + "dev": true, + "requires": { + "locate-path": "2.0.0" + } }, "is-fullwidth-code-point": { "version": "2.0.0", @@ -4847,43 +6166,73 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", - "dev": true + "dev": true, + "requires": { + "graceful-fs": "4.1.11", + "parse-json": "2.2.0", + "pify": "2.3.0", + "strip-bom": "3.0.0" + } }, "os-locale": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz", "integrity": "sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==", - "dev": true + "dev": true, + "requires": { + "execa": "0.7.0", + "lcid": "1.0.0", + "mem": "1.1.0" + } }, "path-type": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", - "dev": true + "dev": true, + "requires": { + "pify": "2.3.0" + } }, "read-pkg": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", - "dev": true + "dev": true, + "requires": { + "load-json-file": "2.0.0", + "normalize-package-data": "2.4.0", + "path-type": "2.0.0" + } }, "read-pkg-up": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", - "dev": true + "dev": true, + "requires": { + "find-up": "2.1.0", + "read-pkg": "2.0.0" + } }, "string-width": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true + "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=", - "dev": true + "dev": true, + "requires": { + "ansi-regex": "3.0.0" + } }, "strip-bom": { "version": "3.0.0", @@ -4901,26 +6250,52 @@ "version": "8.0.2", "resolved": "https://registry.npmjs.org/yargs/-/yargs-8.0.2.tgz", "integrity": "sha1-YpmpBVsc78lp/355wdkY3Osiw2A=", - "dev": true + "dev": true, + "requires": { + "camelcase": "4.1.0", + "cliui": "3.2.0", + "decamelize": "1.2.0", + "get-caller-file": "1.0.2", + "os-locale": "2.1.0", + "read-pkg-up": "2.0.0", + "require-directory": "2.1.1", + "require-main-filename": "1.0.1", + "set-blocking": "2.0.0", + "string-width": "2.1.1", + "which-module": "2.0.0", + "y18n": "3.2.1", + "yargs-parser": "7.0.0" + } }, "yargs-parser": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-7.0.0.tgz", "integrity": "sha1-jQrELxbqVd69MyyvTEA4s+P139k=", - "dev": true + "dev": true, + "requires": { + "camelcase": "4.1.0" + } } } }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + }, "string_decoder": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", - "dev": true - }, - "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": { + "safe-buffer": "5.1.1" + } }, "stringstream": { "version": "0.0.5", @@ -4930,18 +6305,27 @@ "strip-ansi": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=" + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "requires": { + "ansi-regex": "2.1.1" + } }, "strip-bom": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=" + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "requires": { + "is-utf8": "0.2.1" + } }, "strip-bom-buf": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/strip-bom-buf/-/strip-bom-buf-1.0.0.tgz", "integrity": "sha1-HLRar1dTD0yvhsf3UXnSyaUd1XI=", - "dev": true + "dev": true, + "requires": { + "is-utf8": "0.2.1" + } }, "strip-eof": { "version": "1.0.0", @@ -4953,7 +6337,10 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", - "dev": true + "dev": true, + "requires": { + "get-stdin": "4.0.1" + } }, "strip-json-comments": { "version": "2.0.1", @@ -4966,6 +6353,13 @@ "resolved": "https://registry.npmjs.org/strong-log-transformer/-/strong-log-transformer-1.0.6.tgz", "integrity": "sha1-9/uTdYpppXEUAYEnfuoMLrEwH6M=", "dev": true, + "requires": { + "byline": "5.0.0", + "duplexer": "0.1.1", + "minimist": "0.1.0", + "moment": "2.18.1", + "through": "2.3.8" + }, "dependencies": { "minimist": { "version": "0.1.0", @@ -4997,13 +6391,25 @@ "version": "3.3.0", "resolved": "https://registry.npmjs.org/temp-write/-/temp-write-3.3.0.tgz", "integrity": "sha1-walt4rNgYTQuroH0T/ABrsj2Fak=", - "dev": true + "dev": true, + "requires": { + "graceful-fs": "4.1.11", + "is-stream": "1.1.0", + "make-dir": "1.0.0", + "pify": "2.3.0", + "temp-dir": "1.0.0", + "uuid": "3.1.0" + } }, "tempfile": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/tempfile/-/tempfile-1.1.1.tgz", "integrity": "sha1-W8xOrsxKsscH2LwR2ZzMmiyyh/I=", "dev": true, + "requires": { + "os-tmpdir": "1.0.2", + "uuid": "2.0.3" + }, "dependencies": { "uuid": { "version": "2.0.3", @@ -5017,7 +6423,10 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz", "integrity": "sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk=", - "dev": true + "dev": true, + "requires": { + "execa": "0.7.0" + } }, "text-extensions": { "version": "1.6.0", @@ -5046,13 +6455,23 @@ "version": "2.0.3", "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", - "dev": true + "dev": true, + "requires": { + "readable-stream": "2.3.3", + "xtend": "4.0.1" + } }, "time-require": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/time-require/-/time-require-0.1.2.tgz", "integrity": "sha1-+eEss3D8JgXhFARYK6VO9corLZg=", "dev": true, + "requires": { + "chalk": "0.4.0", + "date-time": "0.1.1", + "pretty-ms": "0.2.2", + "text-table": "0.2.0" + }, "dependencies": { "ansi-styles": { "version": "1.0.0", @@ -5064,7 +6483,12 @@ "version": "0.4.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz", "integrity": "sha1-UZmj3c0MHv4jvAjBsCewYXbgxk8=", - "dev": true + "dev": true, + "requires": { + "ansi-styles": "1.0.0", + "has-color": "0.1.7", + "strip-ansi": "0.1.1" + } }, "parse-ms": { "version": "0.1.2", @@ -5076,7 +6500,10 @@ "version": "0.2.2", "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-0.2.2.tgz", "integrity": "sha1-2oeaaC/zOjcBEEbxPWJ/Z8c7hPY=", - "dev": true + "dev": true, + "requires": { + "parse-ms": "0.1.2" + } }, "strip-ansi": { "version": "0.1.1", @@ -5095,7 +6522,10 @@ "tmp": { "version": "0.0.31", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.31.tgz", - "integrity": "sha1-jzirlDjhcxXl29izZX6L+yd65Kc=" + "integrity": "sha1-jzirlDjhcxXl29izZX6L+yd65Kc=", + "requires": { + "os-tmpdir": "1.0.2" + } }, "to-fast-properties": { "version": "1.0.3", @@ -5106,7 +6536,10 @@ "tough-cookie": { "version": "2.3.2", "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.2.tgz", - "integrity": "sha1-8IH3bkyFcg5sN6X6ztc3FQ2EByo=" + "integrity": "sha1-8IH3bkyFcg5sN6X6ztc3FQ2EByo=", + "requires": { + "punycode": "1.4.1" + } }, "trim-newlines": { "version": "1.0.0", @@ -5131,12 +6564,26 @@ "resolved": "https://registry.npmjs.org/tslint/-/tslint-4.5.1.tgz", "integrity": "sha1-BTVocb7yOkNJBnNABvwYgza6gks=", "dev": true, + "requires": { + "babel-code-frame": "6.26.0", + "colors": "1.1.2", + "diff": "3.3.1", + "findup-sync": "0.3.0", + "glob": "7.1.2", + "optimist": "0.6.1", + "resolve": "1.4.0", + "tsutils": "1.9.1", + "update-notifier": "2.2.0" + }, "dependencies": { "ansi-align": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz", "integrity": "sha1-w2rsy6VjuJzrVW82kPCx2eNUf38=", - "dev": true + "dev": true, + "requires": { + "string-width": "2.1.1" + } }, "ansi-regex": { "version": "3.0.0", @@ -5148,19 +6595,36 @@ "version": "3.2.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", "integrity": "sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==", - "dev": true + "dev": true, + "requires": { + "color-convert": "1.9.0" + } }, "boxen": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/boxen/-/boxen-1.2.1.tgz", "integrity": "sha1-DxHn/jRO25OXl3/BPt5/ZNlWSB0=", "dev": true, + "requires": { + "ansi-align": "2.0.0", + "camelcase": "4.1.0", + "chalk": "2.1.0", + "cli-boxes": "1.0.0", + "string-width": "2.1.1", + "term-size": "1.2.0", + "widest-line": "1.0.0" + }, "dependencies": { "chalk": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.1.0.tgz", "integrity": "sha512-LUHGS/dge4ujbXMJrnihYMcL4AoOweGnw9Tp3kQuqy1Kx5c1qKjqvMJZ6nVJPMWJtKCTN72ZogH3oeSO9g9rXQ==", - "dev": true + "dev": true, + "requires": { + "ansi-styles": "3.2.0", + "escape-string-regexp": "1.0.5", + "supports-color": "4.4.0" + } } } }, @@ -5180,13 +6644,34 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.1.tgz", "integrity": "sha512-5oNkD/L++l0O6xGXxb1EWS7SivtjfGQlRyxJsYgE0Z495/L81e2h4/d3r969hoPXuFItzNOKMtsXgYG4c7dYvw==", - "dev": true + "dev": true, + "requires": { + "dot-prop": "4.2.0", + "graceful-fs": "4.1.11", + "make-dir": "1.0.0", + "unique-string": "1.0.0", + "write-file-atomic": "2.3.0", + "xdg-basedir": "3.0.0" + } }, "got": { "version": "6.7.1", "resolved": "https://registry.npmjs.org/got/-/got-6.7.1.tgz", "integrity": "sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA=", - "dev": true + "dev": true, + "requires": { + "create-error-class": "3.0.2", + "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", + "safe-buffer": "5.1.1", + "timed-out": "4.0.1", + "unzip-response": "2.0.1", + "url-parse-lax": "1.0.0" + } }, "is-fullwidth-code-point": { "version": "2.0.0", @@ -5198,31 +6683,50 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-3.1.0.tgz", "integrity": "sha1-ogU4P+oyKzO1rjsYq+4NwvNW7hU=", - "dev": true + "dev": true, + "requires": { + "package-json": "4.0.1" + } }, "package-json": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/package-json/-/package-json-4.0.1.tgz", "integrity": "sha1-iGmgQBJTZhxMTKPabCEh7VVfXu0=", - "dev": true + "dev": true, + "requires": { + "got": "6.7.1", + "registry-auth-token": "3.3.1", + "registry-url": "3.1.0", + "semver": "5.4.1" + } }, "string-width": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true + "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=", - "dev": true + "dev": true, + "requires": { + "ansi-regex": "3.0.0" + } }, "supports-color": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.4.0.tgz", "integrity": "sha512-rKC3+DyXWgK0ZLKwmRsrkyHVZAjNkfzeehuFWdGGcqGDTZFH73+RH6S/RDAAxl9GusSjZSUWYLmT9N5pzXFOXQ==", - "dev": true + "dev": true, + "requires": { + "has-flag": "2.0.0" + } }, "timed-out": { "version": "4.0.1", @@ -5240,7 +6744,17 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-2.2.0.tgz", "integrity": "sha1-G1g3z5DAc22IYncytmHBOPht5y8=", - "dev": true + "dev": true, + "requires": { + "boxen": "1.2.1", + "chalk": "1.1.3", + "configstore": "3.1.1", + "import-lazy": "2.1.0", + "is-npm": "1.0.0", + "latest-version": "3.1.0", + "semver-diff": "2.1.0", + "xdg-basedir": "3.0.0" + } }, "xdg-basedir": { "version": "3.0.0", @@ -5259,7 +6773,10 @@ "tunnel-agent": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=" + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "requires": { + "safe-buffer": "5.1.1" + } }, "tweetnacl": { "version": "0.14.5", @@ -5285,6 +6802,11 @@ "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", "dev": true, "optional": true, + "requires": { + "source-map": "0.5.7", + "uglify-to-browserify": "1.0.2", + "yargs": "3.10.0" + }, "dependencies": { "camelcase": { "version": "1.2.1", @@ -5298,7 +6820,12 @@ "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", "dev": true, - "optional": true + "optional": true, + "requires": { + "center-align": "0.1.3", + "right-align": "0.1.3", + "wordwrap": "0.0.2" + } }, "wordwrap": { "version": "0.0.2", @@ -5312,7 +6839,13 @@ "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", "dev": true, - "optional": true + "optional": true, + "requires": { + "camelcase": "1.2.1", + "cliui": "2.1.0", + "decamelize": "1.2.0", + "window-size": "0.1.0" + } } } }, @@ -5333,13 +6866,21 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz", "integrity": "sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=", - "dev": true + "dev": true, + "requires": { + "crypto-random-string": "1.0.0" + } }, "unique-temp-dir": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unique-temp-dir/-/unique-temp-dir-1.0.0.tgz", "integrity": "sha1-bc6VsmgcoAPuv7MEpBX5y6vMU4U=", - "dev": true + "dev": true, + "requires": { + "mkdirp": "0.5.1", + "os-tmpdir": "1.0.2", + "uid2": "0.0.3" + } }, "universalify": { "version": "0.1.1", @@ -5356,13 +6897,26 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-1.0.3.tgz", "integrity": "sha1-j5LFFUgr1oMbfJMBPnD4dVLHz1o=", - "dev": true + "dev": true, + "requires": { + "boxen": "0.6.0", + "chalk": "1.1.3", + "configstore": "2.1.0", + "is-npm": "1.0.0", + "latest-version": "2.0.0", + "lazy-req": "1.1.0", + "semver-diff": "2.1.0", + "xdg-basedir": "2.0.0" + } }, "url-parse-lax": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", - "dev": true + "dev": true, + "requires": { + "prepend-http": "1.0.4" + } }, "util-deprecate": { "version": "1.0.2", @@ -5378,24 +6932,39 @@ "validate-npm-package-license": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz", - "integrity": "sha1-KAS6vnEq0zeUWaz74kdGqywwP7w=" + "integrity": "sha1-KAS6vnEq0zeUWaz74kdGqywwP7w=", + "requires": { + "spdx-correct": "1.0.2", + "spdx-expression-parse": "1.0.4" + } }, "verror": { "version": "1.10.0", "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=" + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "requires": { + "assert-plus": "1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "1.3.0" + } }, "wcwidth": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", "integrity": "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=", - "dev": true + "dev": true, + "requires": { + "defaults": "1.0.3" + } }, "which": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz", "integrity": "sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==", - "dev": true + "dev": true, + "requires": { + "isexe": "2.0.0" + } }, "which-module": { "version": "1.0.0", @@ -5406,13 +6975,19 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.2.tgz", "integrity": "sha512-ijDLlyQ7s6x1JgCLur53osjm/UXUYD9+0PbYKrBsYisYXzCxN+HC3mYDNy/dWdmf3AwqwU3CXwDCvsNgGK1S0w==", - "dev": true + "dev": true, + "requires": { + "string-width": "1.0.2" + } }, "widest-line": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-1.0.0.tgz", "integrity": "sha1-DAnIXCqUaD0Nfq+O4JfVZL8OEFw=", - "dev": true + "dev": true, + "requires": { + "string-width": "1.0.2" + } }, "window-size": { "version": "0.1.0", @@ -5430,7 +7005,11 @@ "wrap-ansi": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", - "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=" + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "requires": { + "string-width": "1.0.2", + "strip-ansi": "3.0.1" + } }, "wrappy": { "version": "1.0.2", @@ -5441,13 +7020,26 @@ "version": "2.3.0", "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.3.0.tgz", "integrity": "sha512-xuPeK4OdjWqtfi59ylvVL0Yn35SF3zgcAcv7rBPFHVaEapaDr4GdGgm3j7ckTwH9wHL7fGmgfAnb0+THrHb8tA==", - "dev": true + "dev": true, + "requires": { + "graceful-fs": "4.1.11", + "imurmurhash": "0.1.4", + "signal-exit": "3.0.2" + } }, "write-json-file": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/write-json-file/-/write-json-file-2.2.0.tgz", "integrity": "sha1-UYYlBruzthnu+reFnx/WxtBTCHY=", "dev": true, + "requires": { + "detect-indent": "5.0.0", + "graceful-fs": "4.1.11", + "make-dir": "1.0.0", + "pify": "2.3.0", + "sort-keys": "1.1.2", + "write-file-atomic": "2.3.0" + }, "dependencies": { "detect-indent": { "version": "5.0.0", @@ -5459,7 +7051,10 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz", "integrity": "sha1-RBttTTRnmPG05J6JIK37oOVD+a0=", - "dev": true + "dev": true, + "requires": { + "is-plain-obj": "1.1.0" + } } } }, @@ -5467,13 +7062,20 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/write-pkg/-/write-pkg-3.1.0.tgz", "integrity": "sha1-AwqZlMyZk9JbTnWp8aGSNgcpHOk=", - "dev": true + "dev": true, + "requires": { + "sort-keys": "2.0.0", + "write-json-file": "2.2.0" + } }, "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 + "dev": true, + "requires": { + "os-homedir": "1.0.2" + } }, "xmlbuilder": { "version": "8.2.2", @@ -5505,12 +7107,30 @@ "yargs": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.0.tgz", - "integrity": "sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg=" + "integrity": "sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg=", + "requires": { + "camelcase": "3.0.0", + "cliui": "3.2.0", + "decamelize": "1.2.0", + "get-caller-file": "1.0.2", + "os-locale": "1.4.0", + "read-pkg-up": "1.0.1", + "require-directory": "2.1.1", + "require-main-filename": "1.0.1", + "set-blocking": "2.0.0", + "string-width": "1.0.2", + "which-module": "1.0.0", + "y18n": "3.2.1", + "yargs-parser": "5.0.0" + } }, "yargs-parser": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0.tgz", - "integrity": "sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo=" + "integrity": "sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo=", + "requires": { + "camelcase": "3.0.0" + } } } } diff --git a/package.json b/package.json index f1dca46..bdca795 100644 --- a/package.json +++ b/package.json @@ -27,8 +27,10 @@ "devDependencies": { "@types/bluebird": "^3.5.3", "@types/debug": "0.0.29", + "@types/dotenv": "^4.0.1", "@types/es6-shim": "^0.31.32", "@types/fs-extra": "^3.0.0", + "@types/globby": "^6.1.0", "@types/node": "^7.0.5", "@types/progress": "^1.1.28", "@types/request": "0.0.45", @@ -48,6 +50,7 @@ "bluebird": "^3.5.0", "debug": "^2.6.1", "dir-compare": "^1.3.0", + "dotenv": "^4.0.0", "fs-extra": "^3.0.1", "globby": "^6.1.0", "plist": "^2.0.1", diff --git a/src/lib/Builder.ts b/src/lib/Builder.ts index ef97571..4e6ad50 100644 --- a/src/lib/Builder.ts +++ b/src/lib/Builder.ts @@ -1,4 +1,5 @@ import * as Bluebird from 'bluebird'; +import * as dotenv from 'dotenv'; import { chmod, copy, @@ -29,7 +30,7 @@ import { findFFmpeg, findRuntimeRoot, fixWindowsVersion, - mergeOptions, + mergeOptions, parseTmpl, spawnAsync, tmpDir, tmpName, @@ -284,17 +285,17 @@ export class Builder { protected async signWinApp(targetDir: string, appRoot: string, pkg: any, config: BuildConfig) { - const { signtoolPath, cliArgs } = config.win.signing; + const { signtoolPath, cliArgsInterpolated, cliArgs } = config.win.signing; - if (signtoolPath && cliArgs) { + if (signtoolPath && cliArgsInterpolated) { const resolvedSigntool = resolve(signtoolPath); if ( await fileExistsAsync(resolvedSigntool) ) { debug(`signWinApp: signtool ${resolvedSigntool} exists`); const filesToSign = await globby(['**/*.+(exe|dll)']); - const cliArgsArr = cliArgs.split(' ').concat(filesToSign); - debug(`signWinApp: filesToSign: `, filesToSign); - debug(`signWinApp: cliArgs: `, cliArgsArr); - const { code, signal } = await spawnAsync(resolvedSigntool, cliArgsArr); + const cliArgsArr = cliArgsInterpolated.split(' ').concat(filesToSign); + const usingInterpolated = cliArgsInterpolated !== cliArgs; + debug(`signWinApp: cliArgs (will be interpolated? ${usingInterpolated}): `, cliArgsArr); + const { code } = await spawnAsync(resolvedSigntool, cliArgsArr); if(code !== 0) { throw new Error(`ERROR_SIGNING args = ${ cliArgsArr.join(' ') }`); diff --git a/src/lib/config/BuildConfig.ts b/src/lib/config/BuildConfig.ts index 181b2cc..735080a 100644 --- a/src/lib/config/BuildConfig.ts +++ b/src/lib/config/BuildConfig.ts @@ -1,10 +1,15 @@ +import * as Debug from 'debug'; +import * as dotenv from 'dotenv'; -import { normalize } from 'path'; +import {readFileSync} from 'fs-extra'; +import {normalize, resolve} from 'path'; +import {parseTmpl} from '../util/index'; +import {LinuxConfig} from './LinuxConfig'; +import {MacConfig} from './MacConfig'; +import {NsisConfig} from './NsisConfig'; +import {WinConfig} from './WinConfig'; -import { WinConfig } from './WinConfig'; -import { MacConfig } from './MacConfig'; -import { LinuxConfig } from './LinuxConfig'; -import { NsisConfig } from './NsisConfig'; +const debug = Debug('nwjs-builder-phoenix:BuildConfig'); export class BuildConfig { @@ -82,6 +87,13 @@ export class BuildConfig { this.win.fileDescription = this.win.fileDescription ? this.win.fileDescription : pkg.description; this.win.productVersion = this.win.productVersion ? this.win.productVersion : pkg.version; this.win.fileVersion = this.win.fileVersion ? this.win.fileVersion : this.win.productVersion; + this.win.signing.cliArgsInterpolated = this.win.signing.cliArgs; + if (this.win.signing.cliArgsVarsFile) { + const {cliArgs, cliArgsVarsFile} = this.win.signing; + const cliArgsVarsFileAbsolutePath = resolve(process.cwd(), cliArgsVarsFile); + const envVars = dotenv.parse(readFileSync(cliArgsVarsFileAbsolutePath)); + this.win.signing.cliArgsInterpolated = parseTmpl(cliArgs, envVars); + } this.mac.name = this.mac.name ? this.mac.name : pkg.name; this.mac.displayName = this.mac.displayName ? this.mac.displayName : this.mac.name; diff --git a/src/lib/config/WinConfig.ts b/src/lib/config/WinConfig.ts index 84a2eef..ef9e0c3 100644 --- a/src/lib/config/WinConfig.ts +++ b/src/lib/config/WinConfig.ts @@ -16,9 +16,13 @@ export class WinConfig { public icon: string = undefined; public signing: { cliArgs: string, + cliArgsInterpolated?: string, + cliArgsVarsFile?: string, signtoolPath: string, } = { cliArgs: '', + cliArgsInterpolated: '', + cliArgsVarsFile: '', signtoolPath: '', }; diff --git a/src/lib/util/index.ts b/src/lib/util/index.ts index 2ece772..2ed4f01 100644 --- a/src/lib/util/index.ts +++ b/src/lib/util/index.ts @@ -323,3 +323,20 @@ export function fileExistsAsync(path: string) { exists(path, resolve); }); } + +function getPathFromObj(path: string, obj: object, fb = `$\{${path}}`) { + return path.split('.').reduce((res, key) => (res)[key] || fb, obj); +} + +/** + * Parse a JS template given a scope object + * @param template + * @param obj + * @param fallback + */ +export function parseTmpl(template: string, obj: object) { + return template.replace(/\$\{.+?}/g, (match) => { + const path = match.substr(2, match.length - 3).trim(); + return getPathFromObj(path, obj); + }); +} From aaa1a59d1c6493124756026b609355c6af9b6728 Mon Sep 17 00:00:00 2001 From: Myer Nore Date: Fri, 29 Sep 2017 17:06:22 -0400 Subject: [PATCH 06/24] add signing of nsis7z and nsis setup.exe files --- src/lib/Builder.ts | 29 ++++++++++++++++------------- 1 file changed, 16 insertions(+), 13 deletions(-) diff --git a/src/lib/Builder.ts b/src/lib/Builder.ts index 4e6ad50..1ac5f59 100644 --- a/src/lib/Builder.ts +++ b/src/lib/Builder.ts @@ -283,22 +283,24 @@ export class Builder { } - protected async signWinApp(targetDir: string, appRoot: string, pkg: any, config: BuildConfig) { + protected async signWinApp(config: BuildConfig, filesToSignGlob: string = 'dist/*/**/*.+(exe|dll)') { const { signtoolPath, cliArgsInterpolated, cliArgs } = config.win.signing; if (signtoolPath && cliArgsInterpolated) { const resolvedSigntool = resolve(signtoolPath); - if ( await fileExistsAsync(resolvedSigntool) ) { - debug(`signWinApp: signtool ${resolvedSigntool} exists`); - const filesToSign = await globby(['**/*.+(exe|dll)']); - const cliArgsArr = cliArgsInterpolated.split(' ').concat(filesToSign); - const usingInterpolated = cliArgsInterpolated !== cliArgs; - debug(`signWinApp: cliArgs (will be interpolated? ${usingInterpolated}): `, cliArgsArr); - const { code } = await spawnAsync(resolvedSigntool, cliArgsArr); - - if(code !== 0) { - throw new Error(`ERROR_SIGNING args = ${ cliArgsArr.join(' ') }`); + if ( await fileExistsAsync(resolvedSigntool) && filesToSignGlob) { + debug(`signWinApp: searching for files to sign with pattern ${filesToSignGlob}`); + const filesToSign = await globby(filesToSignGlob); + if (filesToSign) { + const cliArgsArr = cliArgsInterpolated.split(' ').concat(filesToSign); + const usingInterpolated = cliArgsInterpolated !== cliArgs; + debug(`signWinApp: cliArgs (will be interpolated? ${usingInterpolated}): `, cliArgsArr); + const { code } = await spawnAsync(resolvedSigntool, cliArgsArr); + + if(code !== 0) { + throw new Error(`ERROR_SIGNING args = ${ cliArgsArr.join(' ') }`); + } } } else { debug(`signtool ${resolvedSigntool} does NOT exist`); @@ -630,7 +632,7 @@ export class Builder { await this.prepareWinBuild(targetDir, appRoot, pkg, config); await this.copyFiles(platform, targetDir, appRoot, pkg, config); await this.renameWinApp(targetDir, appRoot, pkg, config); - await this.signWinApp(targetDir, appRoot, pkg, config); + await this.signWinApp(config); break; case 'darwin': case 'osx': @@ -728,6 +730,7 @@ export class Builder { } await versionInfo.save(); + await this.signWinApp(config, `dist/*.+(exe|dll)`); } @@ -793,7 +796,7 @@ export class Builder { } await versionInfo.save(); - + await this.signWinApp(config, `dist/*.+(exe|dll)`); } protected async buildTask(platform: string, arch: string, pkg: any, config: BuildConfig) { From 4c2e814b95a76149a0576f0a5e3e6bea2a747a24 Mon Sep 17 00:00:00 2001 From: Myer Nore Date: Fri, 6 Oct 2017 16:59:26 -0400 Subject: [PATCH 07/24] add signing of uninstaller in nsis target --- assets/nsis/Include/common.nsh | 10 + src/lib/Builder.ts | 115 ++++++--- src/lib/nsis-gen/NsisComposer.ts | 279 ++++++++++++++-------- src/lib/nsis-gen/SignableNsisInstaller.ts | 53 ++++ src/lib/nsis-gen/index.ts | 2 +- src/lib/util/index.ts | 2 +- 6 files changed, 319 insertions(+), 142 deletions(-) create mode 100644 assets/nsis/Include/common.nsh create mode 100644 src/lib/nsis-gen/SignableNsisInstaller.ts diff --git a/assets/nsis/Include/common.nsh b/assets/nsis/Include/common.nsh new file mode 100644 index 0000000..b14f342 --- /dev/null +++ b/assets/nsis/Include/common.nsh @@ -0,0 +1,10 @@ +!verbose push +!verbose 4 +!echo "Loading Common Utils" +!verbose pop + +# avoid exit code 2 +!macro quitSuccess + SetErrorLevel 0 + Quit +!macroend diff --git a/src/lib/Builder.ts b/src/lib/Builder.ts index 1ac5f59..39db151 100644 --- a/src/lib/Builder.ts +++ b/src/lib/Builder.ts @@ -1,5 +1,4 @@ import * as Bluebird from 'bluebird'; -import * as dotenv from 'dotenv'; import { chmod, copy, @@ -7,6 +6,7 @@ import { createWriteStream, emptyDir, ensureDir, + outputFile, readFile, readJson, remove, @@ -20,7 +20,9 @@ import {NsisVersionInfo} from './common'; import {BuildConfig} from './config'; import {Downloader} from './Downloader'; import {FFmpegDownloader} from './FFmpegDownloader'; -import {Nsis7Zipper, nsisBuild, NsisComposer, NsisDiffer} from './nsis-gen'; +import {Nsis7Zipper, nsisBuild, NsisDiffer} from './nsis-gen'; +import {INsisComposerOptions, NsisComposer} from './nsis-gen/NsisComposer'; +import {SignableNsisInstaller} from './nsis-gen/SignableNsisInstaller'; import { compress, copyFileAsync, @@ -30,7 +32,7 @@ import { findFFmpeg, findRuntimeRoot, fixWindowsVersion, - mergeOptions, parseTmpl, + mergeOptions, spawnAsync, tmpDir, tmpName, @@ -283,24 +285,30 @@ export class Builder { } - protected async signWinApp(config: BuildConfig, filesToSignGlob: string = 'dist/*/**/*.+(exe|dll)') { + protected async signWinApp(config: BuildConfig, cwd: string, filesToSignGlobs: string[] = ['**/*.+(exe|dll)'], + ignore: string[] = []) { const { signtoolPath, cliArgsInterpolated, cliArgs } = config.win.signing; if (signtoolPath && cliArgsInterpolated) { const resolvedSigntool = resolve(signtoolPath); - if ( await fileExistsAsync(resolvedSigntool) && filesToSignGlob) { - debug(`signWinApp: searching for files to sign with pattern ${filesToSignGlob}`); - const filesToSign = await globby(filesToSignGlob); + if ( await fileExistsAsync(resolvedSigntool) && filesToSignGlobs) { + debug(`signWinApp: searching for files to sign with pattern ${filesToSignGlobs}`); + // ignore EPERM issues with scandir + // https://github.com/isaacs/node-glob/issues/284 + const nodeGlobArgs = {strict: false, cwd, ignore}; + const filesToSign = await globby(filesToSignGlobs, nodeGlobArgs); if (filesToSign) { const cliArgsArr = cliArgsInterpolated.split(' ').concat(filesToSign); const usingInterpolated = cliArgsInterpolated !== cliArgs; debug(`signWinApp: cliArgs (will be interpolated? ${usingInterpolated}): `, cliArgsArr); - const { code } = await spawnAsync(resolvedSigntool, cliArgsArr); + const { code } = await spawnAsync(resolvedSigntool, cliArgsArr, {cwd}); if(code !== 0) { throw new Error(`ERROR_SIGNING args = ${ cliArgsArr.join(' ') }`); } + } else { + debug(`signWinApp: no files to sign matched ${filesToSignGlobs}`); } } else { debug(`signtool ${resolvedSigntool} does NOT exist`); @@ -632,7 +640,6 @@ export class Builder { await this.prepareWinBuild(targetDir, appRoot, pkg, config); await this.copyFiles(platform, targetDir, appRoot, pkg, config); await this.renameWinApp(targetDir, appRoot, pkg, config); - await this.signWinApp(config); break; case 'darwin': case 'osx': @@ -678,19 +685,41 @@ export class Builder { } return; } + const installerNsisTarget = await this.buildNsisTargetSigned(sourceDir, config); const versionInfo = new NsisVersionInfo(resolve(this.dir, config.output, 'versions.nsis.json')); + await versionInfo.addVersion(pkg.version, '', sourceDir); + await versionInfo.addInstaller(pkg.version, arch, installerNsisTarget); - const targetNsis = resolve(dirname(sourceDir), `${ basename(sourceDir) }-Setup.exe`); + if(config.nsis.diffUpdaters) { + + for(const version of await versionInfo.getVersions()) { + if(semver.gt(pkg.version, version)) { + await this.buildNsisDiffUpdater(platform, arch, versionInfo, version, pkg.version, pkg, config); + } + } - const data = await (new NsisComposer({ + } + + await versionInfo.save(); + + } + + protected async buildNsisTargetSigned(sourceDir: string, config: BuildConfig) { + const distDir = resolve(dirname(sourceDir)); + const appname = basename(sourceDir); + const installerFileName = `${ appname }-Setup.exe`; + const installerNsisTarget = resolve(distDir, installerFileName); + const doSigning = config.win.signing.signtoolPath && config.win.signing.cliArgsInterpolated; + + const nsisComposerOptions = { // Basic. appName: config.win.productName, companyName: config.win.companyName, + copyright: config.win.copyright, description: config.win.fileDescription, version: fixWindowsVersion(config.win.productVersion), - copyright: config.win.copyright, icon: config.nsis.icon ? resolve(this.dir, config.nsis.icon) : undefined, unIcon: config.nsis.unIcon ? resolve(this.dir, config.nsis.unIcon) : undefined, @@ -702,36 +731,46 @@ export class Builder { languages: config.nsis.languages, installDirectory: config.nsis.installDirectory, - // Output. - output: targetNsis, - - })).make(); - - const script = await tmpName(); - await writeFile(script, data); - - await nsisBuild(sourceDir, script, { - mute: this.options.mute, - }); - - await remove(script); - - await versionInfo.addVersion(pkg.version, '', sourceDir); - await versionInfo.addInstaller(pkg.version, arch, targetNsis); - - if(config.nsis.diffUpdaters) { + output: installerNsisTarget, + + } as INsisComposerOptions; + + let installerComposer = new NsisComposer(nsisComposerOptions); + if (doSigning) { + const uninstallerComposer = new SignableNsisInstaller(true, { ...nsisComposerOptions, + output: resolve(sourceDir, 'make-Uninstall.exe')}); + const uninstallerGeneratorPath = await this.doNsisBuild(sourceDir, uninstallerComposer, + '-uninstaller-generator'); + // generate the uninstaller by executing the generated fake installer + await spawnAsync(uninstallerGeneratorPath, []); + // remove the uninstaller generator + await remove(uninstallerGeneratorPath); + // sign the generated installer + await this.signWinApp(config, sourceDir, ['**/*.+(exe|dll)'], + [basename(uninstallerGeneratorPath)]); + + installerComposer = new SignableNsisInstaller(false, nsisComposerOptions); + } - for(const version of await versionInfo.getVersions()) { - if(semver.gt(pkg.version, version)) { - await this.buildNsisDiffUpdater(platform, arch, versionInfo, version, pkg.version, pkg, config); - } - } + await this.doNsisBuild(sourceDir, installerComposer); + if (doSigning) { + await this.signWinApp(config, distDir, [installerFileName]); } - await versionInfo.save(); - await this.signWinApp(config, `dist/*.+(exe|dll)`); + return installerNsisTarget; + } + protected async doNsisBuild(sourceDir: string, composer: NsisComposer, + nsisScriptSuffix: string = '' ) { + const distDir = resolve(dirname(sourceDir)); + const scriptContents = await composer.make(); + const scriptPath = resolve(distDir, `make-${basename(sourceDir)}${nsisScriptSuffix}.nsi`); + await outputFile(scriptPath, scriptContents); + await nsisBuild(sourceDir, scriptPath, { + mute: this.options.mute, + }); + return resolve(composer.options.output); } protected async buildNsis7zTarget(platform: string, arch: string, sourceDir: string, pkg: any, config: BuildConfig) { @@ -796,7 +835,7 @@ export class Builder { } await versionInfo.save(); - await this.signWinApp(config, `dist/*.+(exe|dll)`); + await this.signWinApp(config, sourceDir, ['*.+(exe|dll)']); } protected async buildTask(platform: string, arch: string, pkg: any, config: BuildConfig) { diff --git a/src/lib/nsis-gen/NsisComposer.ts b/src/lib/nsis-gen/NsisComposer.ts index 365342a..19f6639 100644 --- a/src/lib/nsis-gen/NsisComposer.ts +++ b/src/lib/nsis-gen/NsisComposer.ts @@ -1,9 +1,6 @@ +import {resolve, win32} from 'path'; -import { relative, resolve, win32 } from 'path'; - -import { readdir, lstat } from 'fs-extra'; - -import { fixWindowsVersion } from '../util'; +import {fixWindowsVersion} from '../util'; export interface INsisComposerOptions { @@ -51,7 +48,7 @@ LangString INSTALLING 1028 "安裝中" protected fixedVersion: string; - constructor(protected options: INsisComposerOptions) { + constructor(public options: INsisComposerOptions) { if(!this.options.appName) { this.options.appName = 'NO_APPNAME'; @@ -81,43 +78,100 @@ LangString INSTALLING 1028 "安裝中" } + public getUninstallerName() { + return 'Uninstall'; + } + public async make(): Promise { - return `${ NsisComposer.DIVIDER } + return ` +################################################################################ # # Generated by nsis-gen. # -${ NsisComposer.DIVIDER } +################################################################################ +################################################################################ +# +# Includes +# +################################################################################ +${ await this.makeIncludes() } + +################################################################################ +# +# Strings +# +################################################################################ ${ await this.makeStrings() } +################################################################################ +# +# General +# +################################################################################ ${ await this.makeGeneral() } +################################################################################ +# +# Variables +# +################################################################################ +${ await this.makeVariables() } + +################################################################################ +# +# Modern UI +# +################################################################################ ${ await this.makeModernUI() } +################################################################################ +# +# Versioning +# +################################################################################ ${ await this.makeVersioning() } +################################################################################ +# +# Hooks +# +################################################################################ ${ await this.makeHooks() } +################################################################################ +# +# Install +# +################################################################################ ${ await this.makeInstallSection() } +################################################################################ +# +# Uninstall +# +################################################################################ ${ await this.makeUninstallSection() }`; } + protected async makeIncludes(): Promise { + return ` +!include "common.nsh" +`; + } + protected async makeStrings(): Promise { - return `${ NsisComposer.DIVIDER } -# -# Strings -# -${ NsisComposer.DIVIDER } + return ` !define _APPNAME "${ this.options.appName }" +!define _UNINSTNAME "${ this.getUninstallerName() }" !define _COMPANYNAME "${ this.options.companyName }" !define _DESCRIPTION "${ this.options.description }" !define _VERSION "${ this.fixedVersion }" !define _COPYRIGHT "${ this.options.copyright }" -!define _OUTPUT "${ win32.normalize(resolve(this.options.output)) }" +!define _OUTPUT "${ win32.normalize(resolve(this.options.output) ) }" ${ this.options.languages.map((language) => { return NsisComposer.STRINGS[language] ? NsisComposer.STRINGS[language] : ''; @@ -125,12 +179,7 @@ ${ this.options.languages.map((language) => { } protected async makeGeneral(): Promise { - return `${ NsisComposer.DIVIDER } -# -# General -# -${ NsisComposer.DIVIDER } - + return ` Unicode true Name "\${_APPNAME}" @@ -148,38 +197,68 @@ ${ } SetCompressor ${ this.options.solid ? '/SOLID' : '' } ${ this.options.compression } -OutFile "\${_OUTPUT}" InstallDir "${ this.options.installDirectory }" InstallDirRegKey HKCU "Software\\\${_APPNAME}" "InstallDir" RequestExecutionLevel user -XPStyle on`; +XPStyle on + +# General - OutFile +${ await this.makeGeneralOutFile() } + +`; + } + + protected async makeGeneralOutFile(): Promise { + return `OutFile "\${_OUTPUT}"`; + } + + protected async makeVariables(): Promise { + return ` + +Var StartMenuFolder +`; } protected async makeModernUI(): Promise { - return `${ NsisComposer.DIVIDER } -# -# Modern UI -# -${ NsisComposer.DIVIDER } + return ` !include "MUI2.nsh" -Function CreateDesktopShortcut - CreateShortcut "$DESKTOP\\\${_APPNAME}.lnk" "$INSTDIR\\\${_APPNAME}.exe" -FunctionEnd - !define MUI_STARTMENUPAGE_REGISTRY_ROOT "HKCU" !define MUI_STARTMENUPAGE_REGISTRY_KEY "Software\\\${_APPNAME}" !define MUI_STARTMENUPAGE_REGISTRY_VALUENAME "StartMenuFolder" +# Modern UI - Install Wizard +${ await this.makeModernUIInstallWizard() } + +# Modern UI - Uninstall Wizard +${ await this.makeModernUIUnInstallWizard() } + +${ + this.options.languages.map((language) => { + return `!insertmacro MUI_LANGUAGE "${ language }"`; + }).join('\n') +} + +${ + this.options.languages.length > 1 + ? `!insertmacro MUI_RESERVEFILE_LANGDLL` + : '' +}`; + } + + protected async makeModernUIInstallWizard(): Promise { + return ` +Function CreateDesktopShortcut + CreateShortcut "$DESKTOP\\\${_APPNAME}.lnk" "$INSTDIR\\\${_APPNAME}.exe" +FunctionEnd + !define MUI_FINISHPAGE_SHOWREADME "" !define MUI_FINISHPAGE_SHOWREADME_TEXT "$(CREATE_DESKTOP_SHORTCUT)" !define MUI_FINISHPAGE_SHOWREADME_FUNCTION CreateDesktopShortcut -Var StartMenuFolder - !define MUI_FINISHPAGE_RUN "$INSTDIR\\\${_APPNAME}.exe" !insertmacro MUI_PAGE_WELCOME @@ -187,31 +266,20 @@ Var StartMenuFolder !insertmacro MUI_PAGE_STARTMENU "Application" $StartMenuFolder !insertmacro MUI_PAGE_INSTFILES !insertmacro MUI_PAGE_FINISH + `; + } + protected async makeModernUIUnInstallWizard(): Promise { + return ` !insertmacro MUI_UNPAGE_WELCOME !insertmacro MUI_UNPAGE_CONFIRM !insertmacro MUI_UNPAGE_INSTFILES !insertmacro MUI_UNPAGE_FINISH - -${ - this.options.languages.map((language) => { - return `!insertmacro MUI_LANGUAGE "${ language }"`; - }).join('\n') -} - -${ - this.options.languages.length > 1 - ? `!insertmacro MUI_RESERVEFILE_LANGDLL` - : '' -}`; + `; } protected async makeVersioning(): Promise { - return `${ NsisComposer.DIVIDER } -# -# Versioning -# -${ NsisComposer.DIVIDER } + return ` VIProductVersion "\${_VERSION}" VIAddVersionKey /LANG=0 "ProductName" "\${_APPNAME}" @@ -222,80 +290,87 @@ VIAddVersionKey /LANG=0 "LegalCopyright" "\${_COPYRIGHT}"`; } protected async makeHooks(): Promise { - return `${ NsisComposer.DIVIDER } -# -# Hooks -# -${ NsisComposer.DIVIDER } - + return ` Function .onInit - - ${ - this.options.languages.length > 1 - ? `!insertmacro MUI_LANGDLL_DISPLAY` - : '' + ${ await this.makeHookOnInit() } +FunctionEnd`; } -FunctionEnd`; + protected async makeHookOnInit(): Promise { + return ` + ${this.options.languages.length > 1 ? `!insertmacro MUI_LANGDLL_DISPLAY` : ''}`; } protected async makeInstallSection(): Promise { - return `${ NsisComposer.DIVIDER } -# -# Install -# -${ NsisComposer.DIVIDER } + return ` Section -Install -SetShellVarContext current -SetOverwrite ifnewer - -WriteRegStr HKCU "Software\\\${_APPNAME}" "InstallDir" "$INSTDIR" - -${ await this.makeInstallerFiles() } - -!insertmacro MUI_STARTMENU_WRITE_BEGIN "Application" + SetShellVarContext current + SetOverwrite ifnewer + + WriteRegStr HKCU "Software\\\${_APPNAME}" "InstallDir" "$INSTDIR" + + # Install - installer Files + ${ await this.makeInstallerFiles() } + + # Install - Mui Startmenu Var + ${ await this.makeInstallSectionMuiStartmenuVar() } + + # Install - Install Section End + ${ await this.makeInstallSectionEnd() } - CreateDirectory "$SMPROGRAMS\\$StartMenuFolder" - CreateShortcut "$SMPROGRAMS\\$StartMenuFolder\\\${_APPNAME}.lnk" "$INSTDIR\\\${_APPNAME}.exe" - CreateShortcut "$SMPROGRAMS\\$StartMenuFolder\\Uninstall.lnk" "$INSTDIR\\Uninstall.exe" - -!insertmacro MUI_STARTMENU_WRITE_END +SectionEnd`; + } - WriteUninstaller "$INSTDIR\\Uninstall.exe" + protected async makeInstallSectionMuiStartmenuVar(): Promise { + return ` + !insertmacro MUI_STARTMENU_WRITE_BEGIN "Application" + + CreateDirectory "$SMPROGRAMS\\$StartMenuFolder" + CreateShortcut "$SMPROGRAMS\\$StartMenuFolder\\\${_APPNAME}.lnk" "$INSTDIR\\\${_APPNAME}.exe" + CreateShortcut "$SMPROGRAMS\\$StartMenuFolder\\\${_UNINSTNAME}.lnk" "$INSTDIR\\\${_UNINSTNAME}.exe" + + !insertmacro MUI_STARTMENU_WRITE_END + `; + } -SectionEnd`; + protected async makeInstallSectionEnd(): Promise { + return ` + WriteUninstaller "$INSTDIR\\\${_UNINSTNAME}.exe"`; } protected async makeUninstallSection(): Promise { - return `${ NsisComposer.DIVIDER } -# -# Uninstall -# -${ NsisComposer.DIVIDER } - + return ` Section Uninstall -# FIXME: Remove installed files only. -RMDir /r "$INSTDIR" - -!insertmacro MUI_STARTMENU_GETFOLDER "Application" $StartMenuFolder - -Delete "$SMPROGRAMS\\$StartMenuFolder\\\${_APPNAME}.lnk" -Delete "$SMPROGRAMS\\$StartMenuFolder\\Uninstall.lnk" -RMDir "$SMPROGRAMS\\$StartMenuFolder" - -Delete "$DESKTOP\\\${_APPNAME}.lnk" - -DeleteRegKey HKCU "Software\\\${_APPNAME}" + # FIXME: Remove installed files only. + RMDir /r "$INSTDIR" + + # uninstallSectionMui + ${ await this.makeUninstallSectionMui() } + + Delete "$DESKTOP\\\${_APPNAME}.lnk" + + DeleteRegKey HKCU "Software\\\${_APPNAME}" SectionEnd`; } + protected async makeUninstallSectionMui(): Promise { + return ` + !insertmacro MUI_STARTMENU_GETFOLDER "Application" $StartMenuFolder + + Delete "$SMPROGRAMS\\$StartMenuFolder\\\${_APPNAME}.lnk" + Delete "$SMPROGRAMS\\$StartMenuFolder\\\${_UNINSTNAME}.lnk" + RMDir "$SMPROGRAMS\\$StartMenuFolder" + `; + } + protected async makeInstallerFiles(): Promise { - return `SetOutPath "$INSTDIR" -FILE /r .\\*.*`; + return ` + SetOutPath "$INSTDIR" + FILE /r .\\*.*`; } } diff --git a/src/lib/nsis-gen/SignableNsisInstaller.ts b/src/lib/nsis-gen/SignableNsisInstaller.ts new file mode 100644 index 0000000..d472128 --- /dev/null +++ b/src/lib/nsis-gen/SignableNsisInstaller.ts @@ -0,0 +1,53 @@ +import {dirname, resolve, win32} from 'path'; + +import {INsisComposerOptions, NsisComposer} from './NsisComposer'; + +export class SignableNsisInstaller extends NsisComposer { + + constructor(protected uninstallerOnly: boolean, public options: INsisComposerOptions) { + super(options as INsisComposerOptions); + } + + public getUninstallerPath() { + const outpath = dirname(resolve(this.options.output)); + const uninstallerPath = win32.normalize(resolve(outpath, this.getUninstallerName())); + return `${uninstallerPath}.exe`; + } + + protected async makeModernUIUnInstallWizard(): Promise { + return this.uninstallerOnly + ? await super.makeModernUIUnInstallWizard() + : '; omitted since will have already been done in uninstallerOnly mode pass'; + } + + protected async makeHookOnInit(): Promise { + const uninstallHook = this.uninstallerOnly + ? ` + WriteUninstaller "${ this.getUninstallerPath() }" + !insertmacro quitSuccess + ` + : ''; + return await super.makeHookOnInit() + uninstallHook; + } + + protected async makeInstallSection(): Promise { + const dummyInstallerSection = ` +Section Install + ; running to create uninstaller only; no commands needed +SectionEnd + `; + return this.uninstallerOnly ? await dummyInstallerSection : await super.makeInstallSection(); + // return await super.makeInstallSection(); + } + + protected async makeInstallSectionEnd(): Promise { + return '; omitting WriteUninstaller since uninstaller will be created not as a wizard step'; + } + + protected async makeUninstallSection(): Promise { + return this.uninstallerOnly + ? await super.makeUninstallSection() + : `; omitting uninstaller section since it was already created and packaged`; + } + +} diff --git a/src/lib/nsis-gen/index.ts b/src/lib/nsis-gen/index.ts index 30d5c7d..9a97394 100644 --- a/src/lib/nsis-gen/index.ts +++ b/src/lib/nsis-gen/index.ts @@ -21,7 +21,7 @@ export async function nsisBuild(cwd: string, script: string, options: INsisBuild const args = [ win32.normalize(resolve(DIR_NSIS, 'makensis.exe')), '/NOCD', '/INPUTCHARSET', 'UTF8', win32.normalize(resolve(script)) ]; - debug(`spawning command ${args.join(' ')}`); + debug(`spawning command ${args.join(' ')} with cwd ${cwd}`); if(process.platform != 'win32') { args.unshift('wine'); } diff --git a/src/lib/util/index.ts b/src/lib/util/index.ts index 2ed4f01..2aad046 100644 --- a/src/lib/util/index.ts +++ b/src/lib/util/index.ts @@ -204,7 +204,7 @@ export function tmpFile(options: any = {}): Promise<{ }> { return new Promise((resolve, reject) => { tmp.file(Object.assign({}, { - //discardDescriptor: true, + // discardDescriptor: true, }, options), (err, path, fd, cleanup) => err ? reject(err) : resolve({ path, fd, cleanup, })); From 1166782101a52ca18834bbc255c378e7bab4591e Mon Sep 17 00:00:00 2001 From: Myer Nore Date: Tue, 10 Oct 2017 15:04:07 -0400 Subject: [PATCH 08/24] do prep work for signing nsis 7z plugin * didn't actually hook it all up yet, though --- src/lib/Builder.ts | 6 +++--- src/lib/nsis-gen/Nsis7Zipper.ts | 19 +++++++++++-------- src/lib/nsis-gen/SignableNsis7Zipper.ts | 15 +++++++++++++++ src/lib/nsis-gen/SignableNsisInstaller.ts | 1 - 4 files changed, 29 insertions(+), 12 deletions(-) create mode 100644 src/lib/nsis-gen/SignableNsis7Zipper.ts diff --git a/src/lib/Builder.ts b/src/lib/Builder.ts index 39db151..0a2f2e8 100644 --- a/src/lib/Builder.ts +++ b/src/lib/Builder.ts @@ -300,8 +300,7 @@ export class Builder { const filesToSign = await globby(filesToSignGlobs, nodeGlobArgs); if (filesToSign) { const cliArgsArr = cliArgsInterpolated.split(' ').concat(filesToSign); - const usingInterpolated = cliArgsInterpolated !== cliArgs; - debug(`signWinApp: cliArgs (will be interpolated? ${usingInterpolated}): `, cliArgsArr); + debug(`signWinApp: cliArgs (will be interpolated? ${cliArgsInterpolated !== cliArgs}): `, cliArgsArr); const { code } = await spawnAsync(resolvedSigntool, cliArgsArr, {cwd}); if(code !== 0) { @@ -705,7 +704,8 @@ export class Builder { } - protected async buildNsisTargetSigned(sourceDir: string, config: BuildConfig) { + protected async buildNsisTargetSigned(sourceDir: string, config: BuildConfig, + compressonType: string = '') { const distDir = resolve(dirname(sourceDir)); const appname = basename(sourceDir); const installerFileName = `${ appname }-Setup.exe`; diff --git a/src/lib/nsis-gen/Nsis7Zipper.ts b/src/lib/nsis-gen/Nsis7Zipper.ts index f673285..b7f5521 100644 --- a/src/lib/nsis-gen/Nsis7Zipper.ts +++ b/src/lib/nsis-gen/Nsis7Zipper.ts @@ -1,21 +1,24 @@ +import {basename, resolve, win32} from 'path'; -import { dirname, basename, join, relative, resolve, win32 } from 'path'; - -import { NsisComposer, INsisComposerOptions } from './NsisComposer'; +import {INsisComposerOptions, NsisComposer} from './NsisComposer'; export class Nsis7Zipper extends NsisComposer { + public static async getMakeInstallerFiles(path: string): Promise { + return `SetOutPath "$INSTDIR" +SetCompress off +File "${ win32.normalize(resolve(path)) }" +Nsis7z::ExtractWithDetails "$OUTDIR\\${ basename(path) }" "$(INSTALLING) %s..." +Delete "$OUTDIR\\${ basename(path) }"`; + } + constructor(protected path: string, options: INsisComposerOptions) { super((options.solid = false, options)); } protected async makeInstallerFiles(): Promise { - return `SetOutPath "$INSTDIR" -SetCompress off -File "${ win32.normalize(resolve(this.path)) }" -Nsis7z::ExtractWithDetails "$OUTDIR\\${ basename(this.path) }" "$(INSTALLING) %s..." -Delete "$OUTDIR\\${ basename(this.path) }"`; + return await Nsis7Zipper.getMakeInstallerFiles(this.path); } } diff --git a/src/lib/nsis-gen/SignableNsis7Zipper.ts b/src/lib/nsis-gen/SignableNsis7Zipper.ts new file mode 100644 index 0000000..dbff44e --- /dev/null +++ b/src/lib/nsis-gen/SignableNsis7Zipper.ts @@ -0,0 +1,15 @@ +import {Nsis7Zipper} from './Nsis7Zipper'; +import {INsisComposerOptions} from './NsisComposer'; +import {SignableNsisInstaller} from './SignableNsisInstaller'; + +export class SignableNsis7Zipper extends SignableNsisInstaller { + + constructor(protected path: string, protected uninstallerOnly: boolean, options: INsisComposerOptions) { + super(uninstallerOnly, (options.solid = false, options)); + } + + protected async makeInstallerFiles(): Promise { + return await Nsis7Zipper.getMakeInstallerFiles(this.path); + } + +} diff --git a/src/lib/nsis-gen/SignableNsisInstaller.ts b/src/lib/nsis-gen/SignableNsisInstaller.ts index d472128..8ec018b 100644 --- a/src/lib/nsis-gen/SignableNsisInstaller.ts +++ b/src/lib/nsis-gen/SignableNsisInstaller.ts @@ -37,7 +37,6 @@ Section Install SectionEnd `; return this.uninstallerOnly ? await dummyInstallerSection : await super.makeInstallSection(); - // return await super.makeInstallSection(); } protected async makeInstallSectionEnd(): Promise { From b724addeaaa8f5c366ca96ed7fe1fcade1bbfb51 Mon Sep 17 00:00:00 2001 From: Myer Nore Date: Tue, 10 Oct 2017 17:04:18 -0400 Subject: [PATCH 09/24] ensure globby behaves correctly and doesn't stall on windows * working example of signing the HBX Live App! --- src/lib/Builder.ts | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/lib/Builder.ts b/src/lib/Builder.ts index 0a2f2e8..907b5d3 100644 --- a/src/lib/Builder.ts +++ b/src/lib/Builder.ts @@ -469,6 +469,9 @@ export class Builder { follow: true, mark: true, ignore, + // ignore EPERM issues with scandir in windows + // https://github.com/isaacs/node-glob/issues/284 + strict: false }); debug('in copyFiles', 'config.files', config.files); @@ -622,7 +625,7 @@ export class Builder { await emptyDir(targetDir); await copy(runtimeRoot, targetDir, { - //dereference: true, + // dereference: true, }); if(config.ffmpegIntegration) { @@ -835,7 +838,6 @@ export class Builder { } await versionInfo.save(); - await this.signWinApp(config, sourceDir, ['*.+(exe|dll)']); } protected async buildTask(platform: string, arch: string, pkg: any, config: BuildConfig) { From a4d2cf9b439da9947ebe80913ff63853d22d24dd Mon Sep 17 00:00:00 2001 From: Myer Nore Date: Fri, 8 Dec 2017 14:57:21 -0500 Subject: [PATCH 10/24] remove spurious file --- assets/snake/package-lock.json | 6724 -------------------------------- 1 file changed, 6724 deletions(-) delete mode 100644 assets/snake/package-lock.json diff --git a/assets/snake/package-lock.json b/assets/snake/package-lock.json deleted file mode 100644 index 53d8347..0000000 --- a/assets/snake/package-lock.json +++ /dev/null @@ -1,6724 +0,0 @@ -{ - "name": "snake", - "version": "0.1.0", - "lockfileVersion": 1, - "requires": true, - "dependencies": { - "cross-env": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-5.0.5.tgz", - "integrity": "sha1-Q4PTZNlmCHPdGFs5ivO/717//vM=", - "dev": true, - "requires": { - "cross-spawn": "5.1.0", - "is-windows": "1.0.1" - } - }, - "cross-spawn": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", - "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", - "dev": true, - "requires": { - "lru-cache": "4.1.1", - "shebang-command": "1.2.0", - "which": "1.3.0" - } - }, - "dotenv": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-4.0.0.tgz", - "integrity": "sha1-hk7xN5rO1Vzm+V3r7NzhefegzR0=", - "dev": true - }, - "is-windows": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.1.tgz", - "integrity": "sha1-MQ23D3QtJZoWo2kgK1GvhCMzENk=", - "dev": true - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true - }, - "lru-cache": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.1.tgz", - "integrity": "sha512-q4spe4KTfsAS1SUHLO0wz8Qiyf1+vMIAgpRYioFYDMNqKfHQbg+AVDH3i4fvpl71/P1L0dBl+fQi+P37UYf0ew==", - "dev": true, - "requires": { - "pseudomap": "1.0.2", - "yallist": "2.1.2" - } - }, - "nwjs-builder-phoenix": { - "version": "file:../..", - "dev": true, - "requires": { - "7zip-bin": "2.2.4", - "bluebird": "3.5.0", - "debug": "2.6.8", - "dir-compare": "1.4.0", - "fs-extra": "3.0.1", - "globby": "6.1.0", - "plist": "2.1.0", - "progress": "1.1.8", - "rcedit": "0.8.0", - "request": "2.82.0", - "request-progress": "3.0.0", - "semver": "5.4.1", - "source-map-support": "0.4.18", - "tmp": "0.0.31", - "yargs": "7.1.0" - }, - "dependencies": { - "7zip-bin": { - "version": "2.2.4", - "bundled": true, - "dev": true, - "requires": { - "7zip-bin-linux": "1.1.0", - "7zip-bin-mac": "1.0.1", - "7zip-bin-win": "2.1.1" - } - }, - "7zip-bin-linux": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "7zip-bin-mac": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "7zip-bin-win": { - "version": "2.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "@ava/babel-preset-stage-4": { - "version": "1.1.0", - "bundled": true, - "requires": { - "babel-plugin-check-es2015-constants": "6.22.0", - "babel-plugin-syntax-trailing-function-commas": "6.22.0", - "babel-plugin-transform-async-to-generator": "6.24.1", - "babel-plugin-transform-es2015-destructuring": "6.23.0", - "babel-plugin-transform-es2015-function-name": "6.24.1", - "babel-plugin-transform-es2015-modules-commonjs": "6.26.0", - "babel-plugin-transform-es2015-parameters": "6.24.1", - "babel-plugin-transform-es2015-spread": "6.22.0", - "babel-plugin-transform-es2015-sticky-regex": "6.24.1", - "babel-plugin-transform-es2015-unicode-regex": "6.24.1", - "babel-plugin-transform-exponentiation-operator": "6.24.1", - "package-hash": "1.2.0" - } - }, - "@ava/babel-preset-transform-test-files": { - "version": "2.0.1", - "bundled": true, - "requires": { - "babel-plugin-ava-throws-helper": "1.0.0", - "babel-plugin-espower": "2.3.2", - "package-hash": "1.2.0" - } - }, - "@ava/pretty-format": { - "version": "1.1.0", - "bundled": true, - "requires": { - "ansi-styles": "2.2.1", - "esutils": "2.0.2" - } - }, - "@types/bluebird": { - "version": "3.5.11", - "bundled": true - }, - "@types/debug": { - "version": "0.0.29", - "bundled": true - }, - "@types/es6-shim": { - "version": "0.31.35", - "bundled": true - }, - "@types/form-data": { - "version": "2.2.0", - "bundled": true, - "requires": { - "@types/node": "7.0.43" - } - }, - "@types/fs-extra": { - "version": "3.0.3", - "bundled": true, - "requires": { - "@types/node": "7.0.43" - } - }, - "@types/node": { - "version": "7.0.43", - "bundled": true - }, - "@types/progress": { - "version": "1.1.28", - "bundled": true, - "requires": { - "@types/node": "7.0.43" - } - }, - "@types/request": { - "version": "0.0.45", - "bundled": true, - "requires": { - "@types/form-data": "2.2.0", - "@types/node": "7.0.43" - } - }, - "@types/semver": { - "version": "5.4.0", - "bundled": true - }, - "@types/tmp": { - "version": "0.0.32", - "bundled": true - }, - "@types/yargs": { - "version": "6.6.0", - "bundled": true - }, - "JSONStream": { - "version": "1.3.1", - "bundled": true, - "requires": { - "jsonparse": "1.3.1", - "through": "2.3.8" - } - }, - "add-stream": { - "version": "1.0.0", - "bundled": true - }, - "ajv": { - "version": "5.2.2", - "bundled": true, - "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" - } - }, - "align-text": { - "version": "0.1.4", - "bundled": true, - "requires": { - "kind-of": "3.2.2", - "longest": "1.0.1", - "repeat-string": "1.6.1" - } - }, - "amdefine": { - "version": "1.0.1", - "bundled": true - }, - "ansi-align": { - "version": "1.1.0", - "bundled": true, - "requires": { - "string-width": "1.0.2" - } - }, - "ansi-escapes": { - "version": "3.0.0", - "bundled": true - }, - "ansi-regex": { - "version": "2.1.1", - "bundled": true - }, - "ansi-styles": { - "version": "2.2.1", - "bundled": true - }, - "anymatch": { - "version": "1.3.2", - "bundled": true, - "requires": { - "micromatch": "2.3.11", - "normalize-path": "2.1.1" - } - }, - "aproba": { - "version": "1.2.0", - "bundled": true - }, - "are-we-there-yet": { - "version": "1.1.4", - "bundled": true, - "requires": { - "delegates": "1.0.0", - "readable-stream": "2.3.3" - } - }, - "arr-diff": { - "version": "2.0.0", - "bundled": true, - "requires": { - "arr-flatten": "1.1.0" - } - }, - "arr-exclude": { - "version": "1.0.0", - "bundled": true - }, - "arr-flatten": { - "version": "1.1.0", - "bundled": true - }, - "array-differ": { - "version": "1.0.0", - "bundled": true - }, - "array-find-index": { - "version": "1.0.2", - "bundled": true - }, - "array-ify": { - "version": "1.0.0", - "bundled": true - }, - "array-union": { - "version": "1.0.2", - "bundled": true, - "requires": { - "array-uniq": "1.0.3" - } - }, - "array-uniq": { - "version": "1.0.3", - "bundled": true - }, - "array-unique": { - "version": "0.2.1", - "bundled": true - }, - "arrify": { - "version": "1.0.1", - "bundled": true - }, - "asn1": { - "version": "0.2.3", - "bundled": true, - "dev": true - }, - "assert-plus": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "async": { - "version": "1.5.2", - "bundled": true - }, - "async-each": { - "version": "1.0.1", - "bundled": true - }, - "asynckit": { - "version": "0.4.0", - "bundled": true, - "dev": true - }, - "auto-bind": { - "version": "1.1.0", - "bundled": true - }, - "ava": { - "version": "0.18.2", - "bundled": true, - "requires": { - "@ava/babel-preset-stage-4": "1.1.0", - "@ava/babel-preset-transform-test-files": "2.0.1", - "@ava/pretty-format": "1.1.0", - "arr-flatten": "1.1.0", - "array-union": "1.0.2", - "array-uniq": "1.0.3", - "arrify": "1.0.1", - "auto-bind": "1.1.0", - "ava-init": "0.2.1", - "babel-code-frame": "6.26.0", - "babel-core": "6.26.0", - "bluebird": "3.5.0", - "caching-transform": "1.0.1", - "chalk": "1.1.3", - "chokidar": "1.7.0", - "clean-stack": "1.3.0", - "clean-yaml-object": "0.1.0", - "cli-cursor": "2.1.0", - "cli-spinners": "1.0.0", - "cli-truncate": "0.2.1", - "co-with-promise": "4.6.0", - "code-excerpt": "2.1.0", - "common-path-prefix": "1.0.0", - "convert-source-map": "1.5.0", - "core-assert": "0.2.1", - "currently-unhandled": "0.4.1", - "debug": "2.6.8", - "diff": "3.3.1", - "dot-prop": "4.2.0", - "empower-core": "0.6.2", - "equal-length": "1.0.1", - "figures": "2.0.0", - "find-cache-dir": "0.1.1", - "fn-name": "2.0.1", - "get-port": "2.1.0", - "globby": "6.1.0", - "has-flag": "2.0.0", - "ignore-by-default": "1.0.1", - "indent-string": "3.2.0", - "is-ci": "1.0.10", - "is-generator-fn": "1.0.0", - "is-obj": "1.0.1", - "is-observable": "0.2.0", - "is-promise": "2.1.0", - "jest-snapshot": "18.1.0", - "last-line-stream": "1.0.0", - "lodash.debounce": "4.0.8", - "lodash.difference": "4.5.0", - "lodash.flatten": "4.4.0", - "lodash.isequal": "4.5.0", - "loud-rejection": "1.6.0", - "matcher": "0.1.2", - "max-timeout": "1.0.0", - "md5-hex": "2.0.0", - "meow": "3.7.0", - "ms": "0.7.3", - "multimatch": "2.1.0", - "observable-to-promise": "0.4.0", - "option-chain": "0.1.1", - "package-hash": "1.2.0", - "pkg-conf": "2.0.0", - "plur": "2.1.2", - "pretty-ms": "2.1.0", - "require-precompiled": "0.1.0", - "resolve-cwd": "1.0.0", - "slash": "1.0.0", - "source-map-support": "0.4.18", - "stack-utils": "1.0.1", - "strip-ansi": "3.0.1", - "strip-bom-buf": "1.0.0", - "time-require": "0.1.2", - "unique-temp-dir": "1.0.0", - "update-notifier": "1.0.3" - }, - "dependencies": { - "ms": { - "version": "0.7.3", - "bundled": true - } - } - }, - "ava-init": { - "version": "0.2.1", - "bundled": true, - "requires": { - "arr-exclude": "1.0.0", - "execa": "0.7.0", - "has-yarn": "1.0.0", - "read-pkg-up": "2.0.0", - "write-pkg": "3.1.0" - }, - "dependencies": { - "find-up": { - "version": "2.1.0", - "bundled": true, - "requires": { - "locate-path": "2.0.0" - } - }, - "load-json-file": { - "version": "2.0.0", - "bundled": true, - "requires": { - "graceful-fs": "4.1.11", - "parse-json": "2.2.0", - "pify": "2.3.0", - "strip-bom": "3.0.0" - } - }, - "path-type": { - "version": "2.0.0", - "bundled": true, - "requires": { - "pify": "2.3.0" - } - }, - "read-pkg": { - "version": "2.0.0", - "bundled": true, - "requires": { - "load-json-file": "2.0.0", - "normalize-package-data": "2.4.0", - "path-type": "2.0.0" - } - }, - "read-pkg-up": { - "version": "2.0.0", - "bundled": true, - "requires": { - "find-up": "2.1.0", - "read-pkg": "2.0.0" - } - }, - "strip-bom": { - "version": "3.0.0", - "bundled": true - } - } - }, - "aws-sign2": { - "version": "0.7.0", - "bundled": true, - "dev": true - }, - "aws4": { - "version": "1.6.0", - "bundled": true, - "dev": true - }, - "babel-code-frame": { - "version": "6.26.0", - "bundled": true, - "requires": { - "chalk": "1.1.3", - "esutils": "2.0.2", - "js-tokens": "3.0.2" - } - }, - "babel-core": { - "version": "6.26.0", - "bundled": true, - "requires": { - "babel-code-frame": "6.26.0", - "babel-generator": "6.26.0", - "babel-helpers": "6.24.1", - "babel-messages": "6.23.0", - "babel-register": "6.26.0", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0", - "babylon": "6.18.0", - "convert-source-map": "1.5.0", - "debug": "2.6.8", - "json5": "0.5.1", - "lodash": "4.17.4", - "minimatch": "3.0.4", - "path-is-absolute": "1.0.1", - "private": "0.1.7", - "slash": "1.0.0", - "source-map": "0.5.7" - }, - "dependencies": { - "minimatch": { - "version": "3.0.4", - "bundled": true, - "requires": { - "brace-expansion": "1.1.8" - } - } - } - }, - "babel-generator": { - "version": "6.26.0", - "bundled": true, - "requires": { - "babel-messages": "6.23.0", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0", - "detect-indent": "4.0.0", - "jsesc": "1.3.0", - "lodash": "4.17.4", - "source-map": "0.5.7", - "trim-right": "1.0.1" - }, - "dependencies": { - "jsesc": { - "version": "1.3.0", - "bundled": true - } - } - }, - "babel-helper-builder-binary-assignment-operator-visitor": { - "version": "6.24.1", - "bundled": true, - "requires": { - "babel-helper-explode-assignable-expression": "6.24.1", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-helper-call-delegate": { - "version": "6.24.1", - "bundled": true, - "requires": { - "babel-helper-hoist-variables": "6.24.1", - "babel-runtime": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-helper-explode-assignable-expression": { - "version": "6.24.1", - "bundled": true, - "requires": { - "babel-runtime": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-helper-function-name": { - "version": "6.24.1", - "bundled": true, - "requires": { - "babel-helper-get-function-arity": "6.24.1", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-helper-get-function-arity": { - "version": "6.24.1", - "bundled": true, - "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-helper-hoist-variables": { - "version": "6.24.1", - "bundled": true, - "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-helper-regex": { - "version": "6.26.0", - "bundled": true, - "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0", - "lodash": "4.17.4" - } - }, - "babel-helper-remap-async-to-generator": { - "version": "6.24.1", - "bundled": true, - "requires": { - "babel-helper-function-name": "6.24.1", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-helpers": { - "version": "6.24.1", - "bundled": true, - "requires": { - "babel-runtime": "6.26.0", - "babel-template": "6.26.0" - } - }, - "babel-messages": { - "version": "6.23.0", - "bundled": true, - "requires": { - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-ava-throws-helper": { - "version": "1.0.0", - "bundled": true, - "requires": { - "babel-template": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-plugin-check-es2015-constants": { - "version": "6.22.0", - "bundled": true, - "requires": { - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-espower": { - "version": "2.3.2", - "bundled": true, - "requires": { - "babel-generator": "6.26.0", - "babylon": "6.18.0", - "call-matcher": "1.0.1", - "core-js": "2.5.1", - "espower-location-detector": "1.0.0", - "espurify": "1.7.0", - "estraverse": "4.2.0" - } - }, - "babel-plugin-syntax-async-functions": { - "version": "6.13.0", - "bundled": true - }, - "babel-plugin-syntax-exponentiation-operator": { - "version": "6.13.0", - "bundled": true - }, - "babel-plugin-syntax-trailing-function-commas": { - "version": "6.22.0", - "bundled": true - }, - "babel-plugin-transform-async-to-generator": { - "version": "6.24.1", - "bundled": true, - "requires": { - "babel-helper-remap-async-to-generator": "6.24.1", - "babel-plugin-syntax-async-functions": "6.13.0", - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-es2015-destructuring": { - "version": "6.23.0", - "bundled": true, - "requires": { - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-es2015-function-name": { - "version": "6.24.1", - "bundled": true, - "requires": { - "babel-helper-function-name": "6.24.1", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-plugin-transform-es2015-modules-commonjs": { - "version": "6.26.0", - "bundled": true, - "requires": { - "babel-plugin-transform-strict-mode": "6.24.1", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-plugin-transform-es2015-parameters": { - "version": "6.24.1", - "bundled": true, - "requires": { - "babel-helper-call-delegate": "6.24.1", - "babel-helper-get-function-arity": "6.24.1", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-plugin-transform-es2015-spread": { - "version": "6.22.0", - "bundled": true, - "requires": { - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-es2015-sticky-regex": { - "version": "6.24.1", - "bundled": true, - "requires": { - "babel-helper-regex": "6.26.0", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-plugin-transform-es2015-unicode-regex": { - "version": "6.24.1", - "bundled": true, - "requires": { - "babel-helper-regex": "6.26.0", - "babel-runtime": "6.26.0", - "regexpu-core": "2.0.0" - } - }, - "babel-plugin-transform-exponentiation-operator": { - "version": "6.24.1", - "bundled": true, - "requires": { - "babel-helper-builder-binary-assignment-operator-visitor": "6.24.1", - "babel-plugin-syntax-exponentiation-operator": "6.13.0", - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-strict-mode": { - "version": "6.24.1", - "bundled": true, - "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-register": { - "version": "6.26.0", - "bundled": true, - "requires": { - "babel-core": "6.26.0", - "babel-runtime": "6.26.0", - "core-js": "2.5.1", - "home-or-tmp": "2.0.0", - "lodash": "4.17.4", - "mkdirp": "0.5.1", - "source-map-support": "0.4.18" - } - }, - "babel-runtime": { - "version": "6.26.0", - "bundled": true, - "requires": { - "core-js": "2.5.1", - "regenerator-runtime": "0.11.0" - } - }, - "babel-template": { - "version": "6.26.0", - "bundled": true, - "requires": { - "babel-runtime": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0", - "babylon": "6.18.0", - "lodash": "4.17.4" - } - }, - "babel-traverse": { - "version": "6.26.0", - "bundled": true, - "requires": { - "babel-code-frame": "6.26.0", - "babel-messages": "6.23.0", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0", - "babylon": "6.18.0", - "debug": "2.6.8", - "globals": "9.18.0", - "invariant": "2.2.2", - "lodash": "4.17.4" - } - }, - "babel-types": { - "version": "6.26.0", - "bundled": true, - "requires": { - "babel-runtime": "6.26.0", - "esutils": "2.0.2", - "lodash": "4.17.4", - "to-fast-properties": "1.0.3" - } - }, - "babylon": { - "version": "6.18.0", - "bundled": true - }, - "balanced-match": { - "version": "1.0.0", - "bundled": true - }, - "base64-js": { - "version": "1.2.0", - "bundled": true, - "dev": true - }, - "bcrypt-pbkdf": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "tweetnacl": "0.14.5" - } - }, - "binary-extensions": { - "version": "1.10.0", - "bundled": true - }, - "bluebird": { - "version": "3.5.0", - "bundled": true - }, - "boom": { - "version": "4.3.1", - "bundled": true, - "dev": true, - "requires": { - "hoek": "4.2.0" - } - }, - "boxen": { - "version": "0.6.0", - "bundled": true, - "requires": { - "ansi-align": "1.1.0", - "camelcase": "2.1.1", - "chalk": "1.1.3", - "cli-boxes": "1.0.0", - "filled-array": "1.1.0", - "object-assign": "4.1.1", - "repeating": "2.0.1", - "string-width": "1.0.2", - "widest-line": "1.0.0" - }, - "dependencies": { - "camelcase": { - "version": "2.1.1", - "bundled": true - } - } - }, - "brace-expansion": { - "version": "1.1.8", - "bundled": true, - "requires": { - "balanced-match": "1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "1.8.5", - "bundled": true, - "requires": { - "expand-range": "1.8.2", - "preserve": "0.2.0", - "repeat-element": "1.1.2" - } - }, - "buf-compare": { - "version": "1.0.1", - "bundled": true - }, - "buffer-equal": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "builtin-modules": { - "version": "1.1.1", - "bundled": true - }, - "byline": { - "version": "5.0.0", - "bundled": true - }, - "caching-transform": { - "version": "1.0.1", - "bundled": true, - "requires": { - "md5-hex": "1.3.0", - "mkdirp": "0.5.1", - "write-file-atomic": "1.3.4" - }, - "dependencies": { - "md5-hex": { - "version": "1.3.0", - "bundled": true, - "requires": { - "md5-o-matic": "0.1.1" - } - }, - "write-file-atomic": { - "version": "1.3.4", - "bundled": true, - "requires": { - "graceful-fs": "4.1.11", - "imurmurhash": "0.1.4", - "slide": "1.1.6" - } - } - } - }, - "call-matcher": { - "version": "1.0.1", - "bundled": true, - "requires": { - "core-js": "2.5.1", - "deep-equal": "1.0.1", - "espurify": "1.7.0", - "estraverse": "4.2.0" - } - }, - "call-signature": { - "version": "0.0.2", - "bundled": true - }, - "camelcase": { - "version": "3.0.0", - "bundled": true, - "dev": true - }, - "camelcase-keys": { - "version": "2.1.0", - "bundled": true, - "requires": { - "camelcase": "2.1.1", - "map-obj": "1.0.1" - }, - "dependencies": { - "camelcase": { - "version": "2.1.1", - "bundled": true - } - } - }, - "capture-stack-trace": { - "version": "1.0.0", - "bundled": true - }, - "caseless": { - "version": "0.12.0", - "bundled": true, - "dev": true - }, - "center-align": { - "version": "0.1.3", - "bundled": true, - "optional": true, - "requires": { - "align-text": "0.1.4", - "lazy-cache": "1.0.4" - } - }, - "chalk": { - "version": "1.1.3", - "bundled": true, - "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" - } - }, - "chokidar": { - "version": "1.7.0", - "bundled": true, - "requires": { - "anymatch": "1.3.2", - "async-each": "1.0.1", - "fsevents": "1.1.2", - "glob-parent": "2.0.0", - "inherits": "2.0.3", - "is-binary-path": "1.0.1", - "is-glob": "2.0.1", - "path-is-absolute": "1.0.1", - "readdirp": "2.1.0" - } - }, - "ci-info": { - "version": "1.1.1", - "bundled": true - }, - "clean-stack": { - "version": "1.3.0", - "bundled": true - }, - "clean-yaml-object": { - "version": "0.1.0", - "bundled": true - }, - "cli-boxes": { - "version": "1.0.0", - "bundled": true - }, - "cli-cursor": { - "version": "2.1.0", - "bundled": true, - "requires": { - "restore-cursor": "2.0.0" - } - }, - "cli-spinners": { - "version": "1.0.0", - "bundled": true - }, - "cli-truncate": { - "version": "0.2.1", - "bundled": true, - "requires": { - "slice-ansi": "0.0.4", - "string-width": "1.0.2" - } - }, - "cli-width": { - "version": "2.2.0", - "bundled": true - }, - "cliui": { - "version": "3.2.0", - "bundled": true, - "requires": { - "string-width": "1.0.2", - "strip-ansi": "3.0.1", - "wrap-ansi": "2.1.0" - } - }, - "clone": { - "version": "1.0.2", - "bundled": true - }, - "cmd-shim": { - "version": "2.0.2", - "bundled": true, - "requires": { - "graceful-fs": "4.1.11", - "mkdirp": "0.5.1" - } - }, - "co": { - "version": "4.6.0", - "bundled": true, - "dev": true - }, - "co-with-promise": { - "version": "4.6.0", - "bundled": true, - "requires": { - "pinkie-promise": "1.0.0" - }, - "dependencies": { - "pinkie": { - "version": "1.0.0", - "bundled": true - }, - "pinkie-promise": { - "version": "1.0.0", - "bundled": true, - "requires": { - "pinkie": "1.0.0" - } - } - } - }, - "code-excerpt": { - "version": "2.1.0", - "bundled": true, - "requires": { - "convert-to-spaces": "1.0.2" - } - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true - }, - "color-convert": { - "version": "1.9.0", - "bundled": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "bundled": true - }, - "colors": { - "version": "1.0.3", - "bundled": true, - "dev": true - }, - "columnify": { - "version": "1.5.4", - "bundled": true, - "requires": { - "strip-ansi": "3.0.1", - "wcwidth": "1.0.1" - } - }, - "combined-stream": { - "version": "1.0.5", - "bundled": true, - "dev": true, - "requires": { - "delayed-stream": "1.0.0" - } - }, - "command-join": { - "version": "2.0.0", - "bundled": true - }, - "commander": { - "version": "2.9.0", - "bundled": true, - "dev": true, - "requires": { - "graceful-readlink": "1.0.1" - } - }, - "common-path-prefix": { - "version": "1.0.0", - "bundled": true - }, - "commondir": { - "version": "1.0.1", - "bundled": true - }, - "compare-func": { - "version": "1.3.2", - "bundled": true, - "requires": { - "array-ify": "1.0.0", - "dot-prop": "3.0.0" - }, - "dependencies": { - "dot-prop": { - "version": "3.0.0", - "bundled": true, - "requires": { - "is-obj": "1.0.1" - } - } - } - }, - "concat-map": { - "version": "0.0.1", - "bundled": true - }, - "concat-stream": { - "version": "1.6.0", - "bundled": true, - "requires": { - "inherits": "2.0.3", - "readable-stream": "2.3.3", - "typedarray": "0.0.6" - } - }, - "configstore": { - "version": "2.1.0", - "bundled": true, - "requires": { - "dot-prop": "3.0.0", - "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" - }, - "dependencies": { - "dot-prop": { - "version": "3.0.0", - "bundled": true, - "requires": { - "is-obj": "1.0.1" - } - }, - "uuid": { - "version": "2.0.3", - "bundled": true - }, - "write-file-atomic": { - "version": "1.3.4", - "bundled": true, - "requires": { - "graceful-fs": "4.1.11", - "imurmurhash": "0.1.4", - "slide": "1.1.6" - } - } - } - }, - "console-control-strings": { - "version": "1.1.0", - "bundled": true - }, - "conventional-changelog": { - "version": "1.1.5", - "bundled": true, - "requires": { - "conventional-changelog-angular": "1.5.0", - "conventional-changelog-atom": "0.1.1", - "conventional-changelog-codemirror": "0.2.0", - "conventional-changelog-core": "1.9.1", - "conventional-changelog-ember": "0.2.7", - "conventional-changelog-eslint": "0.2.0", - "conventional-changelog-express": "0.2.0", - "conventional-changelog-jquery": "0.1.0", - "conventional-changelog-jscs": "0.1.0", - "conventional-changelog-jshint": "0.2.0" - } - }, - "conventional-changelog-angular": { - "version": "1.5.0", - "bundled": true, - "requires": { - "compare-func": "1.3.2", - "q": "1.5.0" - } - }, - "conventional-changelog-atom": { - "version": "0.1.1", - "bundled": true, - "requires": { - "q": "1.5.0" - } - }, - "conventional-changelog-cli": { - "version": "1.3.3", - "bundled": true, - "requires": { - "add-stream": "1.0.0", - "conventional-changelog": "1.1.5", - "lodash": "4.17.4", - "meow": "3.7.0", - "tempfile": "1.1.1" - } - }, - "conventional-changelog-codemirror": { - "version": "0.2.0", - "bundled": true, - "requires": { - "q": "1.5.0" - } - }, - "conventional-changelog-core": { - "version": "1.9.1", - "bundled": true, - "requires": { - "conventional-changelog-writer": "2.0.1", - "conventional-commits-parser": "2.0.0", - "dateformat": "1.0.12", - "get-pkg-repo": "1.4.0", - "git-raw-commits": "1.2.0", - "git-remote-origin-url": "2.0.0", - "git-semver-tags": "1.2.1", - "lodash": "4.17.4", - "normalize-package-data": "2.4.0", - "q": "1.5.0", - "read-pkg": "1.1.0", - "read-pkg-up": "1.0.1", - "through2": "2.0.3" - } - }, - "conventional-changelog-ember": { - "version": "0.2.7", - "bundled": true, - "requires": { - "q": "1.5.0" - } - }, - "conventional-changelog-eslint": { - "version": "0.2.0", - "bundled": true, - "requires": { - "q": "1.5.0" - } - }, - "conventional-changelog-express": { - "version": "0.2.0", - "bundled": true, - "requires": { - "q": "1.5.0" - } - }, - "conventional-changelog-jquery": { - "version": "0.1.0", - "bundled": true, - "requires": { - "q": "1.5.0" - } - }, - "conventional-changelog-jscs": { - "version": "0.1.0", - "bundled": true, - "requires": { - "q": "1.5.0" - } - }, - "conventional-changelog-jshint": { - "version": "0.2.0", - "bundled": true, - "requires": { - "compare-func": "1.3.2", - "q": "1.5.0" - } - }, - "conventional-changelog-writer": { - "version": "2.0.1", - "bundled": true, - "requires": { - "compare-func": "1.3.2", - "conventional-commits-filter": "1.0.0", - "dateformat": "1.0.12", - "handlebars": "4.0.10", - "json-stringify-safe": "5.0.1", - "lodash": "4.17.4", - "meow": "3.7.0", - "semver": "5.4.1", - "split": "1.0.1", - "through2": "2.0.3" - } - }, - "conventional-commits-filter": { - "version": "1.0.0", - "bundled": true, - "requires": { - "is-subset": "0.1.1", - "modify-values": "1.0.0" - } - }, - "conventional-commits-parser": { - "version": "2.0.0", - "bundled": true, - "requires": { - "JSONStream": "1.3.1", - "is-text-path": "1.0.1", - "lodash": "4.17.4", - "meow": "3.7.0", - "split2": "2.1.1", - "through2": "2.0.3", - "trim-off-newlines": "1.0.1" - } - }, - "conventional-recommended-bump": { - "version": "1.0.1", - "bundled": true, - "requires": { - "concat-stream": "1.6.0", - "conventional-commits-filter": "1.0.0", - "conventional-commits-parser": "2.0.0", - "git-raw-commits": "1.2.0", - "git-semver-tags": "1.2.1", - "meow": "3.7.0", - "object-assign": "4.1.1" - } - }, - "convert-source-map": { - "version": "1.5.0", - "bundled": true - }, - "convert-to-spaces": { - "version": "1.0.2", - "bundled": true - }, - "core-assert": { - "version": "0.2.1", - "bundled": true, - "requires": { - "buf-compare": "1.0.1", - "is-error": "2.2.1" - } - }, - "core-js": { - "version": "2.5.1", - "bundled": true - }, - "core-util-is": { - "version": "1.0.2", - "bundled": true - }, - "create-error-class": { - "version": "3.0.2", - "bundled": true, - "requires": { - "capture-stack-trace": "1.0.0" - } - }, - "cross-env": { - "version": "3.2.4", - "bundled": true, - "requires": { - "cross-spawn": "5.1.0", - "is-windows": "1.0.1" - } - }, - "cross-spawn": { - "version": "5.1.0", - "bundled": true, - "requires": { - "lru-cache": "4.1.1", - "shebang-command": "1.2.0", - "which": "1.3.0" - } - }, - "cryptiles": { - "version": "3.1.2", - "bundled": true, - "dev": true, - "requires": { - "boom": "5.2.0" - }, - "dependencies": { - "boom": { - "version": "5.2.0", - "bundled": true, - "dev": true, - "requires": { - "hoek": "4.2.0" - } - } - } - }, - "crypto-random-string": { - "version": "1.0.0", - "bundled": true - }, - "currently-unhandled": { - "version": "0.4.1", - "bundled": true, - "requires": { - "array-find-index": "1.0.2" - } - }, - "dargs": { - "version": "4.1.0", - "bundled": true, - "requires": { - "number-is-nan": "1.0.1" - } - }, - "dashdash": { - "version": "1.14.1", - "bundled": true, - "dev": true, - "requires": { - "assert-plus": "1.0.0" - } - }, - "date-time": { - "version": "0.1.1", - "bundled": true - }, - "dateformat": { - "version": "1.0.12", - "bundled": true, - "requires": { - "get-stdin": "4.0.1", - "meow": "3.7.0" - } - }, - "debug": { - "version": "2.6.8", - "bundled": true, - "requires": { - "ms": "2.0.0" - } - }, - "decamelize": { - "version": "1.2.0", - "bundled": true - }, - "dedent": { - "version": "0.7.0", - "bundled": true - }, - "deep-equal": { - "version": "1.0.1", - "bundled": true - }, - "deep-extend": { - "version": "0.4.2", - "bundled": true - }, - "defaults": { - "version": "1.0.3", - "bundled": true, - "requires": { - "clone": "1.0.2" - } - }, - "delayed-stream": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "delegates": { - "version": "1.0.0", - "bundled": true - }, - "detect-indent": { - "version": "4.0.0", - "bundled": true, - "requires": { - "repeating": "2.0.1" - } - }, - "diff": { - "version": "3.3.1", - "bundled": true - }, - "dir-compare": { - "version": "1.4.0", - "bundled": true, - "dev": true, - "requires": { - "bluebird": "3.4.1", - "buffer-equal": "1.0.0", - "colors": "1.0.3", - "commander": "2.9.0", - "minimatch": "3.0.2" - }, - "dependencies": { - "bluebird": { - "version": "3.4.1", - "bundled": true, - "dev": true - } - } - }, - "dot-prop": { - "version": "4.2.0", - "bundled": true, - "requires": { - "is-obj": "1.0.1" - } - }, - "duplexer": { - "version": "0.1.1", - "bundled": true - }, - "duplexer2": { - "version": "0.1.4", - "bundled": true, - "requires": { - "readable-stream": "2.3.3" - } - }, - "duplexer3": { - "version": "0.1.4", - "bundled": true - }, - "ecc-jsbn": { - "version": "0.1.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "jsbn": "0.1.1" - } - }, - "empower-core": { - "version": "0.6.2", - "bundled": true, - "requires": { - "call-signature": "0.0.2", - "core-js": "2.5.1" - } - }, - "equal-length": { - "version": "1.0.1", - "bundled": true - }, - "error-ex": { - "version": "1.3.1", - "bundled": true, - "requires": { - "is-arrayish": "0.2.1" - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "bundled": true - }, - "espower-location-detector": { - "version": "1.0.0", - "bundled": true, - "requires": { - "is-url": "1.2.2", - "path-is-absolute": "1.0.1", - "source-map": "0.5.7", - "xtend": "4.0.1" - } - }, - "espurify": { - "version": "1.7.0", - "bundled": true, - "requires": { - "core-js": "2.5.1" - } - }, - "estraverse": { - "version": "4.2.0", - "bundled": true - }, - "esutils": { - "version": "2.0.2", - "bundled": true - }, - "execa": { - "version": "0.7.0", - "bundled": true, - "requires": { - "cross-spawn": "5.1.0", - "get-stream": "3.0.0", - "is-stream": "1.1.0", - "npm-run-path": "2.0.2", - "p-finally": "1.0.0", - "signal-exit": "3.0.2", - "strip-eof": "1.0.0" - } - }, - "expand-brackets": { - "version": "0.1.5", - "bundled": true, - "requires": { - "is-posix-bracket": "0.1.1" - } - }, - "expand-range": { - "version": "1.8.2", - "bundled": true, - "requires": { - "fill-range": "2.2.3" - } - }, - "extend": { - "version": "3.0.1", - "bundled": true, - "dev": true - }, - "external-editor": { - "version": "2.0.5", - "bundled": true, - "requires": { - "iconv-lite": "0.4.19", - "jschardet": "1.5.1", - "tmp": "0.0.33" - }, - "dependencies": { - "tmp": { - "version": "0.0.33", - "bundled": true, - "requires": { - "os-tmpdir": "1.0.2" - } - } - } - }, - "extglob": { - "version": "0.3.2", - "bundled": true, - "requires": { - "is-extglob": "1.0.0" - } - }, - "extsprintf": { - "version": "1.3.0", - "bundled": true, - "dev": true - }, - "fast-deep-equal": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "figures": { - "version": "2.0.0", - "bundled": true, - "requires": { - "escape-string-regexp": "1.0.5" - } - }, - "filename-regex": { - "version": "2.0.1", - "bundled": true - }, - "fill-range": { - "version": "2.2.3", - "bundled": true, - "requires": { - "is-number": "2.1.0", - "isobject": "2.1.0", - "randomatic": "1.1.7", - "repeat-element": "1.1.2", - "repeat-string": "1.6.1" - } - }, - "filled-array": { - "version": "1.1.0", - "bundled": true - }, - "find-cache-dir": { - "version": "0.1.1", - "bundled": true, - "requires": { - "commondir": "1.0.1", - "mkdirp": "0.5.1", - "pkg-dir": "1.0.0" - } - }, - "find-up": { - "version": "1.1.2", - "bundled": true, - "requires": { - "path-exists": "2.1.0", - "pinkie-promise": "2.0.1" - } - }, - "findup-sync": { - "version": "0.3.0", - "bundled": true, - "requires": { - "glob": "5.0.15" - }, - "dependencies": { - "glob": { - "version": "5.0.15", - "bundled": true, - "requires": { - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.2", - "once": "1.4.0", - "path-is-absolute": "1.0.1" - } - } - } - }, - "fn-name": { - "version": "2.0.1", - "bundled": true - }, - "for-in": { - "version": "1.0.2", - "bundled": true - }, - "for-own": { - "version": "0.1.5", - "bundled": true, - "requires": { - "for-in": "1.0.2" - } - }, - "forever-agent": { - "version": "0.6.1", - "bundled": true, - "dev": true - }, - "form-data": { - "version": "2.3.1", - "bundled": true, - "dev": true, - "requires": { - "asynckit": "0.4.0", - "combined-stream": "1.0.5", - "mime-types": "2.1.17" - } - }, - "fs-access": { - "version": "1.0.1", - "bundled": true, - "requires": { - "null-check": "1.0.0" - } - }, - "fs-extra": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "requires": { - "graceful-fs": "4.1.11", - "jsonfile": "3.0.1", - "universalify": "0.1.1" - } - }, - "fs.realpath": { - "version": "1.0.0", - "bundled": true - }, - "fsevents": { - "version": "1.1.2", - "bundled": true, - "optional": true, - "requires": { - "nan": "2.7.0", - "node-pre-gyp": "0.6.36" - }, - "dependencies": { - "abbrev": { - "version": "1.1.0", - "bundled": true, - "optional": true - }, - "ajv": { - "version": "4.11.8", - "bundled": true, - "optional": true, - "requires": { - "co": "4.6.0", - "json-stable-stringify": "1.0.1" - } - }, - "ansi-regex": { - "version": "2.1.1", - "bundled": true - }, - "aproba": { - "version": "1.1.1", - "bundled": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.4", - "bundled": true, - "optional": true, - "requires": { - "delegates": "1.0.0", - "readable-stream": "2.2.9" - } - }, - "asn1": { - "version": "0.2.3", - "bundled": true, - "optional": true - }, - "assert-plus": { - "version": "0.2.0", - "bundled": true, - "optional": true - }, - "asynckit": { - "version": "0.4.0", - "bundled": true, - "optional": true - }, - "aws-sign2": { - "version": "0.6.0", - "bundled": true, - "optional": true - }, - "aws4": { - "version": "1.6.0", - "bundled": true, - "optional": true - }, - "balanced-match": { - "version": "0.4.2", - "bundled": true - }, - "bcrypt-pbkdf": { - "version": "1.0.1", - "bundled": true, - "optional": true, - "requires": { - "tweetnacl": "0.14.5" - } - }, - "block-stream": { - "version": "0.0.9", - "bundled": true, - "requires": { - "inherits": "2.0.3" - } - }, - "boom": { - "version": "2.10.1", - "bundled": true, - "requires": { - "hoek": "2.16.3" - } - }, - "brace-expansion": { - "version": "1.1.7", - "bundled": true, - "requires": { - "balanced-match": "0.4.2", - "concat-map": "0.0.1" - } - }, - "buffer-shims": { - "version": "1.0.0", - "bundled": true - }, - "caseless": { - "version": "0.12.0", - "bundled": true, - "optional": true - }, - "co": { - "version": "4.6.0", - "bundled": true, - "optional": true - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true - }, - "combined-stream": { - "version": "1.0.5", - "bundled": true, - "requires": { - "delayed-stream": "1.0.0" - } - }, - "concat-map": { - "version": "0.0.1", - "bundled": true - }, - "console-control-strings": { - "version": "1.1.0", - "bundled": true - }, - "core-util-is": { - "version": "1.0.2", - "bundled": true - }, - "cryptiles": { - "version": "2.0.5", - "bundled": true, - "optional": true, - "requires": { - "boom": "2.10.1" - } - }, - "dashdash": { - "version": "1.14.1", - "bundled": true, - "optional": true, - "requires": { - "assert-plus": "1.0.0" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "bundled": true, - "optional": true - } - } - }, - "debug": { - "version": "2.6.8", - "bundled": true, - "optional": true, - "requires": { - "ms": "2.0.0" - } - }, - "deep-extend": { - "version": "0.4.2", - "bundled": true, - "optional": true - }, - "delayed-stream": { - "version": "1.0.0", - "bundled": true - }, - "delegates": { - "version": "1.0.0", - "bundled": true, - "optional": true - }, - "ecc-jsbn": { - "version": "0.1.1", - "bundled": true, - "optional": true, - "requires": { - "jsbn": "0.1.1" - } - }, - "extend": { - "version": "3.0.1", - "bundled": true, - "optional": true - }, - "extsprintf": { - "version": "1.0.2", - "bundled": true - }, - "forever-agent": { - "version": "0.6.1", - "bundled": true, - "optional": true - }, - "form-data": { - "version": "2.1.4", - "bundled": true, - "optional": true, - "requires": { - "asynckit": "0.4.0", - "combined-stream": "1.0.5", - "mime-types": "2.1.15" - } - }, - "fs.realpath": { - "version": "1.0.0", - "bundled": true - }, - "fstream": { - "version": "1.0.11", - "bundled": true, - "requires": { - "graceful-fs": "4.1.11", - "inherits": "2.0.3", - "mkdirp": "0.5.1", - "rimraf": "2.6.1" - } - }, - "fstream-ignore": { - "version": "1.0.5", - "bundled": true, - "optional": true, - "requires": { - "fstream": "1.0.11", - "inherits": "2.0.3", - "minimatch": "3.0.4" - } - }, - "gauge": { - "version": "2.7.4", - "bundled": true, - "optional": true, - "requires": { - "aproba": "1.1.1", - "console-control-strings": "1.1.0", - "has-unicode": "2.0.1", - "object-assign": "4.1.1", - "signal-exit": "3.0.2", - "string-width": "1.0.2", - "strip-ansi": "3.0.1", - "wide-align": "1.1.2" - } - }, - "getpass": { - "version": "0.1.7", - "bundled": true, - "optional": true, - "requires": { - "assert-plus": "1.0.0" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "bundled": true, - "optional": true - } - } - }, - "glob": { - "version": "7.1.2", - "bundled": true, - "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" - } - }, - "graceful-fs": { - "version": "4.1.11", - "bundled": true - }, - "har-schema": { - "version": "1.0.5", - "bundled": true, - "optional": true - }, - "har-validator": { - "version": "4.2.1", - "bundled": true, - "optional": true, - "requires": { - "ajv": "4.11.8", - "har-schema": "1.0.5" - } - }, - "has-unicode": { - "version": "2.0.1", - "bundled": true, - "optional": true - }, - "hawk": { - "version": "3.1.3", - "bundled": true, - "optional": true, - "requires": { - "boom": "2.10.1", - "cryptiles": "2.0.5", - "hoek": "2.16.3", - "sntp": "1.0.9" - } - }, - "hoek": { - "version": "2.16.3", - "bundled": true - }, - "http-signature": { - "version": "1.1.1", - "bundled": true, - "optional": true, - "requires": { - "assert-plus": "0.2.0", - "jsprim": "1.4.0", - "sshpk": "1.13.0" - } - }, - "inflight": { - "version": "1.0.6", - "bundled": true, - "requires": { - "once": "1.4.0", - "wrappy": "1.0.2" - } - }, - "inherits": { - "version": "2.0.3", - "bundled": true - }, - "ini": { - "version": "1.3.4", - "bundled": true, - "optional": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "bundled": true, - "requires": { - "number-is-nan": "1.0.1" - } - }, - "is-typedarray": { - "version": "1.0.0", - "bundled": true, - "optional": true - }, - "isarray": { - "version": "1.0.0", - "bundled": true - }, - "isstream": { - "version": "0.1.2", - "bundled": true, - "optional": true - }, - "jodid25519": { - "version": "1.0.2", - "bundled": true, - "optional": true, - "requires": { - "jsbn": "0.1.1" - } - }, - "jsbn": { - "version": "0.1.1", - "bundled": true, - "optional": true - }, - "json-schema": { - "version": "0.2.3", - "bundled": true, - "optional": true - }, - "json-stable-stringify": { - "version": "1.0.1", - "bundled": true, - "optional": true, - "requires": { - "jsonify": "0.0.0" - } - }, - "json-stringify-safe": { - "version": "5.0.1", - "bundled": true, - "optional": true - }, - "jsonify": { - "version": "0.0.0", - "bundled": true, - "optional": true - }, - "jsprim": { - "version": "1.4.0", - "bundled": true, - "optional": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.0.2", - "json-schema": "0.2.3", - "verror": "1.3.6" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "bundled": true, - "optional": true - } - } - }, - "mime-db": { - "version": "1.27.0", - "bundled": true - }, - "mime-types": { - "version": "2.1.15", - "bundled": true, - "requires": { - "mime-db": "1.27.0" - } - }, - "minimatch": { - "version": "3.0.4", - "bundled": true, - "requires": { - "brace-expansion": "1.1.7" - } - }, - "minimist": { - "version": "0.0.8", - "bundled": true - }, - "mkdirp": { - "version": "0.5.1", - "bundled": true, - "requires": { - "minimist": "0.0.8" - } - }, - "ms": { - "version": "2.0.0", - "bundled": true, - "optional": true - }, - "node-pre-gyp": { - "version": "0.6.36", - "bundled": true, - "optional": true, - "requires": { - "mkdirp": "0.5.1", - "nopt": "4.0.1", - "npmlog": "4.1.0", - "rc": "1.2.1", - "request": "2.81.0", - "rimraf": "2.6.1", - "semver": "5.3.0", - "tar": "2.2.1", - "tar-pack": "3.4.0" - } - }, - "nopt": { - "version": "4.0.1", - "bundled": true, - "optional": true, - "requires": { - "abbrev": "1.1.0", - "osenv": "0.1.4" - } - }, - "npmlog": { - "version": "4.1.0", - "bundled": true, - "optional": true, - "requires": { - "are-we-there-yet": "1.1.4", - "console-control-strings": "1.1.0", - "gauge": "2.7.4", - "set-blocking": "2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "bundled": true - }, - "oauth-sign": { - "version": "0.8.2", - "bundled": true, - "optional": true - }, - "object-assign": { - "version": "4.1.1", - "bundled": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "bundled": true, - "requires": { - "wrappy": "1.0.2" - } - }, - "os-homedir": { - "version": "1.0.2", - "bundled": true, - "optional": true - }, - "os-tmpdir": { - "version": "1.0.2", - "bundled": true, - "optional": true - }, - "osenv": { - "version": "0.1.4", - "bundled": true, - "optional": true, - "requires": { - "os-homedir": "1.0.2", - "os-tmpdir": "1.0.2" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "bundled": true - }, - "performance-now": { - "version": "0.2.0", - "bundled": true, - "optional": true - }, - "process-nextick-args": { - "version": "1.0.7", - "bundled": true - }, - "punycode": { - "version": "1.4.1", - "bundled": true, - "optional": true - }, - "qs": { - "version": "6.4.0", - "bundled": true, - "optional": true - }, - "rc": { - "version": "1.2.1", - "bundled": true, - "optional": true, - "requires": { - "deep-extend": "0.4.2", - "ini": "1.3.4", - "minimist": "1.2.0", - "strip-json-comments": "2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "bundled": true, - "optional": true - } - } - }, - "readable-stream": { - "version": "2.2.9", - "bundled": true, - "requires": { - "buffer-shims": "1.0.0", - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "1.0.0", - "process-nextick-args": "1.0.7", - "string_decoder": "1.0.1", - "util-deprecate": "1.0.2" - } - }, - "request": { - "version": "2.81.0", - "bundled": true, - "optional": true, - "requires": { - "aws-sign2": "0.6.0", - "aws4": "1.6.0", - "caseless": "0.12.0", - "combined-stream": "1.0.5", - "extend": "3.0.1", - "forever-agent": "0.6.1", - "form-data": "2.1.4", - "har-validator": "4.2.1", - "hawk": "3.1.3", - "http-signature": "1.1.1", - "is-typedarray": "1.0.0", - "isstream": "0.1.2", - "json-stringify-safe": "5.0.1", - "mime-types": "2.1.15", - "oauth-sign": "0.8.2", - "performance-now": "0.2.0", - "qs": "6.4.0", - "safe-buffer": "5.0.1", - "stringstream": "0.0.5", - "tough-cookie": "2.3.2", - "tunnel-agent": "0.6.0", - "uuid": "3.0.1" - } - }, - "rimraf": { - "version": "2.6.1", - "bundled": true, - "requires": { - "glob": "7.1.2" - } - }, - "safe-buffer": { - "version": "5.0.1", - "bundled": true - }, - "semver": { - "version": "5.3.0", - "bundled": true, - "optional": true - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true, - "optional": true - }, - "signal-exit": { - "version": "3.0.2", - "bundled": true, - "optional": true - }, - "sntp": { - "version": "1.0.9", - "bundled": true, - "optional": true, - "requires": { - "hoek": "2.16.3" - } - }, - "sshpk": { - "version": "1.13.0", - "bundled": true, - "optional": true, - "requires": { - "asn1": "0.2.3", - "assert-plus": "1.0.0", - "bcrypt-pbkdf": "1.0.1", - "dashdash": "1.14.1", - "ecc-jsbn": "0.1.1", - "getpass": "0.1.7", - "jodid25519": "1.0.2", - "jsbn": "0.1.1", - "tweetnacl": "0.14.5" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "bundled": true, - "optional": true - } - } - }, - "string-width": { - "version": "1.0.2", - "bundled": true, - "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" - } - }, - "string_decoder": { - "version": "1.0.1", - "bundled": true, - "requires": { - "safe-buffer": "5.0.1" - } - }, - "stringstream": { - "version": "0.0.5", - "bundled": true, - "optional": true - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "requires": { - "ansi-regex": "2.1.1" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "bundled": true, - "optional": true - }, - "tar": { - "version": "2.2.1", - "bundled": true, - "requires": { - "block-stream": "0.0.9", - "fstream": "1.0.11", - "inherits": "2.0.3" - } - }, - "tar-pack": { - "version": "3.4.0", - "bundled": true, - "optional": true, - "requires": { - "debug": "2.6.8", - "fstream": "1.0.11", - "fstream-ignore": "1.0.5", - "once": "1.4.0", - "readable-stream": "2.2.9", - "rimraf": "2.6.1", - "tar": "2.2.1", - "uid-number": "0.0.6" - } - }, - "tough-cookie": { - "version": "2.3.2", - "bundled": true, - "optional": true, - "requires": { - "punycode": "1.4.1" - } - }, - "tunnel-agent": { - "version": "0.6.0", - "bundled": true, - "optional": true, - "requires": { - "safe-buffer": "5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "bundled": true, - "optional": true - }, - "uid-number": { - "version": "0.0.6", - "bundled": true, - "optional": true - }, - "util-deprecate": { - "version": "1.0.2", - "bundled": true - }, - "uuid": { - "version": "3.0.1", - "bundled": true, - "optional": true - }, - "verror": { - "version": "1.3.6", - "bundled": true, - "optional": true, - "requires": { - "extsprintf": "1.0.2" - } - }, - "wide-align": { - "version": "1.1.2", - "bundled": true, - "optional": true, - "requires": { - "string-width": "1.0.2" - } - }, - "wrappy": { - "version": "1.0.2", - "bundled": true - } - } - }, - "gauge": { - "version": "2.7.4", - "bundled": true, - "requires": { - "aproba": "1.2.0", - "console-control-strings": "1.1.0", - "has-unicode": "2.0.1", - "object-assign": "4.1.1", - "signal-exit": "3.0.2", - "string-width": "1.0.2", - "strip-ansi": "3.0.1", - "wide-align": "1.1.2" - } - }, - "get-caller-file": { - "version": "1.0.2", - "bundled": true - }, - "get-pkg-repo": { - "version": "1.4.0", - "bundled": true, - "requires": { - "hosted-git-info": "2.5.0", - "meow": "3.7.0", - "normalize-package-data": "2.4.0", - "parse-github-repo-url": "1.4.1", - "through2": "2.0.3" - } - }, - "get-port": { - "version": "2.1.0", - "bundled": true, - "requires": { - "pinkie-promise": "2.0.1" - } - }, - "get-stdin": { - "version": "4.0.1", - "bundled": true - }, - "get-stream": { - "version": "3.0.0", - "bundled": true - }, - "getpass": { - "version": "0.1.7", - "bundled": true, - "dev": true, - "requires": { - "assert-plus": "1.0.0" - } - }, - "git-raw-commits": { - "version": "1.2.0", - "bundled": true, - "requires": { - "dargs": "4.1.0", - "lodash.template": "4.4.0", - "meow": "3.7.0", - "split2": "2.1.1", - "through2": "2.0.3" - } - }, - "git-remote-origin-url": { - "version": "2.0.0", - "bundled": true, - "requires": { - "gitconfiglocal": "1.0.0", - "pify": "2.3.0" - } - }, - "git-semver-tags": { - "version": "1.2.1", - "bundled": true, - "requires": { - "meow": "3.7.0", - "semver": "5.4.1" - } - }, - "gitconfiglocal": { - "version": "1.0.0", - "bundled": true, - "requires": { - "ini": "1.3.4" - } - }, - "glob": { - "version": "7.1.2", - "bundled": true, - "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" - }, - "dependencies": { - "minimatch": { - "version": "3.0.4", - "bundled": true, - "requires": { - "brace-expansion": "1.1.8" - } - } - } - }, - "glob-base": { - "version": "0.3.0", - "bundled": true, - "requires": { - "glob-parent": "2.0.0", - "is-glob": "2.0.1" - } - }, - "glob-parent": { - "version": "2.0.0", - "bundled": true, - "requires": { - "is-glob": "2.0.1" - } - }, - "globals": { - "version": "9.18.0", - "bundled": true - }, - "globby": { - "version": "6.1.0", - "bundled": true, - "requires": { - "array-union": "1.0.2", - "glob": "7.1.2", - "object-assign": "4.1.1", - "pify": "2.3.0", - "pinkie-promise": "2.0.1" - } - }, - "got": { - "version": "5.7.1", - "bundled": true, - "requires": { - "create-error-class": "3.0.2", - "duplexer2": "0.1.4", - "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", - "url-parse-lax": "1.0.0" - } - }, - "graceful-fs": { - "version": "4.1.11", - "bundled": true - }, - "graceful-readlink": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "handlebars": { - "version": "4.0.10", - "bundled": true, - "requires": { - "async": "1.5.2", - "optimist": "0.6.1", - "source-map": "0.4.4", - "uglify-js": "2.8.29" - }, - "dependencies": { - "source-map": { - "version": "0.4.4", - "bundled": true, - "requires": { - "amdefine": "1.0.1" - } - } - } - }, - "har-schema": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "har-validator": { - "version": "5.0.3", - "bundled": true, - "dev": true, - "requires": { - "ajv": "5.2.2", - "har-schema": "2.0.0" - } - }, - "has-ansi": { - "version": "2.0.0", - "bundled": true, - "requires": { - "ansi-regex": "2.1.1" - } - }, - "has-color": { - "version": "0.1.7", - "bundled": true - }, - "has-flag": { - "version": "2.0.0", - "bundled": true - }, - "has-unicode": { - "version": "2.0.1", - "bundled": true - }, - "has-yarn": { - "version": "1.0.0", - "bundled": true - }, - "hawk": { - "version": "6.0.2", - "bundled": true, - "dev": true, - "requires": { - "boom": "4.3.1", - "cryptiles": "3.1.2", - "hoek": "4.2.0", - "sntp": "2.0.2" - } - }, - "hoek": { - "version": "4.2.0", - "bundled": true, - "dev": true - }, - "home-or-tmp": { - "version": "2.0.0", - "bundled": true, - "requires": { - "os-homedir": "1.0.2", - "os-tmpdir": "1.0.2" - } - }, - "hosted-git-info": { - "version": "2.5.0", - "bundled": true - }, - "http-signature": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "requires": { - "assert-plus": "1.0.0", - "jsprim": "1.4.1", - "sshpk": "1.13.1" - } - }, - "iconv-lite": { - "version": "0.4.19", - "bundled": true - }, - "ignore-by-default": { - "version": "1.0.1", - "bundled": true - }, - "import-lazy": { - "version": "2.1.0", - "bundled": true - }, - "imurmurhash": { - "version": "0.1.4", - "bundled": true - }, - "indent-string": { - "version": "3.2.0", - "bundled": true - }, - "inflight": { - "version": "1.0.6", - "bundled": true, - "requires": { - "once": "1.4.0", - "wrappy": "1.0.2" - } - }, - "inherits": { - "version": "2.0.3", - "bundled": true - }, - "ini": { - "version": "1.3.4", - "bundled": true - }, - "inquirer": { - "version": "3.3.0", - "bundled": true, - "requires": { - "ansi-escapes": "3.0.0", - "chalk": "2.1.0", - "cli-cursor": "2.1.0", - "cli-width": "2.2.0", - "external-editor": "2.0.5", - "figures": "2.0.0", - "lodash": "4.17.4", - "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.1", - "strip-ansi": "4.0.0", - "through": "2.3.8" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "bundled": true - }, - "ansi-styles": { - "version": "3.2.0", - "bundled": true, - "requires": { - "color-convert": "1.9.0" - } - }, - "chalk": { - "version": "2.1.0", - "bundled": true, - "requires": { - "ansi-styles": "3.2.0", - "escape-string-regexp": "1.0.5", - "supports-color": "4.4.0" - } - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "bundled": true - }, - "string-width": { - "version": "2.1.1", - "bundled": true, - "requires": { - "is-fullwidth-code-point": "2.0.0", - "strip-ansi": "4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "bundled": true, - "requires": { - "ansi-regex": "3.0.0" - } - }, - "supports-color": { - "version": "4.4.0", - "bundled": true, - "requires": { - "has-flag": "2.0.0" - } - } - } - }, - "invariant": { - "version": "2.2.2", - "bundled": true, - "requires": { - "loose-envify": "1.3.1" - } - }, - "invert-kv": { - "version": "1.0.0", - "bundled": true - }, - "irregular-plurals": { - "version": "1.3.0", - "bundled": true - }, - "is-arrayish": { - "version": "0.2.1", - "bundled": true - }, - "is-binary-path": { - "version": "1.0.1", - "bundled": true, - "requires": { - "binary-extensions": "1.10.0" - } - }, - "is-buffer": { - "version": "1.1.5", - "bundled": true - }, - "is-builtin-module": { - "version": "1.0.0", - "bundled": true, - "requires": { - "builtin-modules": "1.1.1" - } - }, - "is-ci": { - "version": "1.0.10", - "bundled": true, - "requires": { - "ci-info": "1.1.1" - } - }, - "is-dotfile": { - "version": "1.0.3", - "bundled": true - }, - "is-equal-shallow": { - "version": "0.1.3", - "bundled": true, - "requires": { - "is-primitive": "2.0.0" - } - }, - "is-error": { - "version": "2.2.1", - "bundled": true - }, - "is-extendable": { - "version": "0.1.1", - "bundled": true - }, - "is-extglob": { - "version": "1.0.0", - "bundled": true - }, - "is-finite": { - "version": "1.0.2", - "bundled": true, - "requires": { - "number-is-nan": "1.0.1" - } - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "bundled": true, - "requires": { - "number-is-nan": "1.0.1" - } - }, - "is-generator-fn": { - "version": "1.0.0", - "bundled": true - }, - "is-glob": { - "version": "2.0.1", - "bundled": true, - "requires": { - "is-extglob": "1.0.0" - } - }, - "is-npm": { - "version": "1.0.0", - "bundled": true - }, - "is-number": { - "version": "2.1.0", - "bundled": true, - "requires": { - "kind-of": "3.2.2" - } - }, - "is-obj": { - "version": "1.0.1", - "bundled": true - }, - "is-observable": { - "version": "0.2.0", - "bundled": true, - "requires": { - "symbol-observable": "0.2.4" - } - }, - "is-plain-obj": { - "version": "1.1.0", - "bundled": true - }, - "is-posix-bracket": { - "version": "0.1.1", - "bundled": true - }, - "is-primitive": { - "version": "2.0.0", - "bundled": true - }, - "is-promise": { - "version": "2.1.0", - "bundled": true - }, - "is-redirect": { - "version": "1.0.0", - "bundled": true - }, - "is-retry-allowed": { - "version": "1.1.0", - "bundled": true - }, - "is-stream": { - "version": "1.1.0", - "bundled": true - }, - "is-subset": { - "version": "0.1.1", - "bundled": true - }, - "is-text-path": { - "version": "1.0.1", - "bundled": true, - "requires": { - "text-extensions": "1.6.0" - } - }, - "is-typedarray": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "is-url": { - "version": "1.2.2", - "bundled": true - }, - "is-utf8": { - "version": "0.2.1", - "bundled": true - }, - "is-windows": { - "version": "1.0.1", - "bundled": true - }, - "isarray": { - "version": "1.0.0", - "bundled": true - }, - "isexe": { - "version": "2.0.0", - "bundled": true - }, - "isobject": { - "version": "2.1.0", - "bundled": true, - "requires": { - "isarray": "1.0.0" - } - }, - "isstream": { - "version": "0.1.2", - "bundled": true, - "dev": true - }, - "jest-diff": { - "version": "18.1.0", - "bundled": true, - "requires": { - "chalk": "1.1.3", - "diff": "3.3.1", - "jest-matcher-utils": "18.1.0", - "pretty-format": "18.1.0" - } - }, - "jest-file-exists": { - "version": "17.0.0", - "bundled": true - }, - "jest-matcher-utils": { - "version": "18.1.0", - "bundled": true, - "requires": { - "chalk": "1.1.3", - "pretty-format": "18.1.0" - } - }, - "jest-mock": { - "version": "18.0.0", - "bundled": true - }, - "jest-snapshot": { - "version": "18.1.0", - "bundled": true, - "requires": { - "jest-diff": "18.1.0", - "jest-file-exists": "17.0.0", - "jest-matcher-utils": "18.1.0", - "jest-util": "18.1.0", - "natural-compare": "1.4.0", - "pretty-format": "18.1.0" - } - }, - "jest-util": { - "version": "18.1.0", - "bundled": true, - "requires": { - "chalk": "1.1.3", - "diff": "3.3.1", - "graceful-fs": "4.1.11", - "jest-file-exists": "17.0.0", - "jest-mock": "18.0.0", - "mkdirp": "0.5.1" - } - }, - "js-tokens": { - "version": "3.0.2", - "bundled": true - }, - "jsbn": { - "version": "0.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "jschardet": { - "version": "1.5.1", - "bundled": true - }, - "jsesc": { - "version": "0.5.0", - "bundled": true - }, - "json-schema": { - "version": "0.2.3", - "bundled": true, - "dev": true - }, - "json-schema-traverse": { - "version": "0.3.1", - "bundled": true, - "dev": true - }, - "json-stable-stringify": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "requires": { - "jsonify": "0.0.0" - } - }, - "json-stringify-safe": { - "version": "5.0.1", - "bundled": true - }, - "json5": { - "version": "0.5.1", - "bundled": true - }, - "jsonfile": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "requires": { - "graceful-fs": "4.1.11" - } - }, - "jsonify": { - "version": "0.0.0", - "bundled": true, - "dev": true - }, - "jsonparse": { - "version": "1.3.1", - "bundled": true - }, - "jsprim": { - "version": "1.4.1", - "bundled": true, - "dev": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.2.3", - "verror": "1.10.0" - } - }, - "kind-of": { - "version": "3.2.2", - "bundled": true, - "requires": { - "is-buffer": "1.1.5" - } - }, - "last-line-stream": { - "version": "1.0.0", - "bundled": true, - "requires": { - "through2": "2.0.3" - } - }, - "latest-version": { - "version": "2.0.0", - "bundled": true, - "requires": { - "package-json": "2.4.0" - } - }, - "lazy-cache": { - "version": "1.0.4", - "bundled": true, - "optional": true - }, - "lazy-req": { - "version": "1.1.0", - "bundled": true - }, - "lcid": { - "version": "1.0.0", - "bundled": true, - "requires": { - "invert-kv": "1.0.0" - } - }, - "lerna": { - "version": "2.2.0", - "bundled": true, - "requires": { - "async": "1.5.2", - "chalk": "2.1.0", - "cmd-shim": "2.0.2", - "columnify": "1.5.4", - "command-join": "2.0.0", - "conventional-changelog-cli": "1.3.3", - "conventional-recommended-bump": "1.0.1", - "dedent": "0.7.0", - "execa": "0.8.0", - "find-up": "2.1.0", - "fs-extra": "4.0.2", - "get-port": "3.2.0", - "glob": "7.1.2", - "glob-parent": "3.1.0", - "globby": "6.1.0", - "graceful-fs": "4.1.11", - "inquirer": "3.3.0", - "is-ci": "1.0.10", - "load-json-file": "3.0.0", - "lodash": "4.17.4", - "minimatch": "3.0.4", - "npmlog": "4.1.2", - "p-finally": "1.0.0", - "path-exists": "3.0.0", - "read-cmd-shim": "1.0.1", - "read-pkg": "2.0.0", - "rimraf": "2.6.2", - "safe-buffer": "5.1.1", - "semver": "5.4.1", - "signal-exit": "3.0.2", - "strong-log-transformer": "1.0.6", - "temp-write": "3.3.0", - "write-file-atomic": "2.3.0", - "write-json-file": "2.2.0", - "write-pkg": "3.1.0", - "yargs": "8.0.2" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "bundled": true - }, - "ansi-styles": { - "version": "3.2.0", - "bundled": true, - "requires": { - "color-convert": "1.9.0" - } - }, - "camelcase": { - "version": "4.1.0", - "bundled": true - }, - "chalk": { - "version": "2.1.0", - "bundled": true, - "requires": { - "ansi-styles": "3.2.0", - "escape-string-regexp": "1.0.5", - "supports-color": "4.4.0" - } - }, - "execa": { - "version": "0.8.0", - "bundled": true, - "requires": { - "cross-spawn": "5.1.0", - "get-stream": "3.0.0", - "is-stream": "1.1.0", - "npm-run-path": "2.0.2", - "p-finally": "1.0.0", - "signal-exit": "3.0.2", - "strip-eof": "1.0.0" - } - }, - "find-up": { - "version": "2.1.0", - "bundled": true, - "requires": { - "locate-path": "2.0.0" - } - }, - "fs-extra": { - "version": "4.0.2", - "bundled": true, - "requires": { - "graceful-fs": "4.1.11", - "jsonfile": "4.0.0", - "universalify": "0.1.1" - } - }, - "get-port": { - "version": "3.2.0", - "bundled": true - }, - "glob-parent": { - "version": "3.1.0", - "bundled": true, - "requires": { - "is-glob": "3.1.0", - "path-dirname": "1.0.2" - } - }, - "is-extglob": { - "version": "2.1.1", - "bundled": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "bundled": true - }, - "is-glob": { - "version": "3.1.0", - "bundled": true, - "requires": { - "is-extglob": "2.1.1" - } - }, - "jsonfile": { - "version": "4.0.0", - "bundled": true, - "requires": { - "graceful-fs": "4.1.11" - } - }, - "load-json-file": { - "version": "3.0.0", - "bundled": true, - "requires": { - "graceful-fs": "4.1.11", - "parse-json": "3.0.0", - "pify": "2.3.0", - "strip-bom": "3.0.0" - } - }, - "minimatch": { - "version": "3.0.4", - "bundled": true, - "requires": { - "brace-expansion": "1.1.8" - } - }, - "os-locale": { - "version": "2.1.0", - "bundled": true, - "requires": { - "execa": "0.7.0", - "lcid": "1.0.0", - "mem": "1.1.0" - }, - "dependencies": { - "execa": { - "version": "0.7.0", - "bundled": true, - "requires": { - "cross-spawn": "5.1.0", - "get-stream": "3.0.0", - "is-stream": "1.1.0", - "npm-run-path": "2.0.2", - "p-finally": "1.0.0", - "signal-exit": "3.0.2", - "strip-eof": "1.0.0" - } - } - } - }, - "parse-json": { - "version": "3.0.0", - "bundled": true, - "requires": { - "error-ex": "1.3.1" - } - }, - "path-exists": { - "version": "3.0.0", - "bundled": true - }, - "path-type": { - "version": "2.0.0", - "bundled": true, - "requires": { - "pify": "2.3.0" - } - }, - "read-pkg": { - "version": "2.0.0", - "bundled": true, - "requires": { - "load-json-file": "2.0.0", - "normalize-package-data": "2.4.0", - "path-type": "2.0.0" - }, - "dependencies": { - "load-json-file": { - "version": "2.0.0", - "bundled": true, - "requires": { - "graceful-fs": "4.1.11", - "parse-json": "2.2.0", - "pify": "2.3.0", - "strip-bom": "3.0.0" - } - }, - "parse-json": { - "version": "2.2.0", - "bundled": true, - "requires": { - "error-ex": "1.3.1" - } - } - } - }, - "read-pkg-up": { - "version": "2.0.0", - "bundled": true, - "requires": { - "find-up": "2.1.0", - "read-pkg": "2.0.0" - } - }, - "string-width": { - "version": "2.1.1", - "bundled": true, - "requires": { - "is-fullwidth-code-point": "2.0.0", - "strip-ansi": "4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "bundled": true, - "requires": { - "ansi-regex": "3.0.0" - } - }, - "strip-bom": { - "version": "3.0.0", - "bundled": true - }, - "supports-color": { - "version": "4.4.0", - "bundled": true, - "requires": { - "has-flag": "2.0.0" - } - }, - "which-module": { - "version": "2.0.0", - "bundled": true - }, - "yargs": { - "version": "8.0.2", - "bundled": true, - "requires": { - "camelcase": "4.1.0", - "cliui": "3.2.0", - "decamelize": "1.2.0", - "get-caller-file": "1.0.2", - "os-locale": "2.1.0", - "read-pkg-up": "2.0.0", - "require-directory": "2.1.1", - "require-main-filename": "1.0.1", - "set-blocking": "2.0.0", - "string-width": "2.1.1", - "which-module": "2.0.0", - "y18n": "3.2.1", - "yargs-parser": "7.0.0" - } - }, - "yargs-parser": { - "version": "7.0.0", - "bundled": true, - "requires": { - "camelcase": "4.1.0" - } - } - } - }, - "load-json-file": { - "version": "1.1.0", - "bundled": true, - "requires": { - "graceful-fs": "4.1.11", - "parse-json": "2.2.0", - "pify": "2.3.0", - "pinkie-promise": "2.0.1", - "strip-bom": "2.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "bundled": true, - "requires": { - "p-locate": "2.0.0", - "path-exists": "3.0.0" - }, - "dependencies": { - "path-exists": { - "version": "3.0.0", - "bundled": true - } - } - }, - "lodash": { - "version": "4.17.4", - "bundled": true - }, - "lodash._reinterpolate": { - "version": "3.0.0", - "bundled": true - }, - "lodash.debounce": { - "version": "4.0.8", - "bundled": true - }, - "lodash.difference": { - "version": "4.5.0", - "bundled": true - }, - "lodash.flatten": { - "version": "4.4.0", - "bundled": true - }, - "lodash.isequal": { - "version": "4.5.0", - "bundled": true - }, - "lodash.template": { - "version": "4.4.0", - "bundled": true, - "requires": { - "lodash._reinterpolate": "3.0.0", - "lodash.templatesettings": "4.1.0" - } - }, - "lodash.templatesettings": { - "version": "4.1.0", - "bundled": true, - "requires": { - "lodash._reinterpolate": "3.0.0" - } - }, - "longest": { - "version": "1.0.1", - "bundled": true - }, - "loose-envify": { - "version": "1.3.1", - "bundled": true, - "requires": { - "js-tokens": "3.0.2" - } - }, - "loud-rejection": { - "version": "1.6.0", - "bundled": true, - "requires": { - "currently-unhandled": "0.4.1", - "signal-exit": "3.0.2" - } - }, - "lowercase-keys": { - "version": "1.0.0", - "bundled": true - }, - "lru-cache": { - "version": "4.1.1", - "bundled": true, - "requires": { - "pseudomap": "1.0.2", - "yallist": "2.1.2" - } - }, - "make-dir": { - "version": "1.0.0", - "bundled": true, - "requires": { - "pify": "2.3.0" - } - }, - "map-obj": { - "version": "1.0.1", - "bundled": true - }, - "matcher": { - "version": "0.1.2", - "bundled": true, - "requires": { - "escape-string-regexp": "1.0.5" - } - }, - "max-timeout": { - "version": "1.0.0", - "bundled": true - }, - "md5-hex": { - "version": "2.0.0", - "bundled": true, - "requires": { - "md5-o-matic": "0.1.1" - } - }, - "md5-o-matic": { - "version": "0.1.1", - "bundled": true - }, - "mem": { - "version": "1.1.0", - "bundled": true, - "requires": { - "mimic-fn": "1.1.0" - } - }, - "meow": { - "version": "3.7.0", - "bundled": true, - "requires": { - "camelcase-keys": "2.1.0", - "decamelize": "1.2.0", - "loud-rejection": "1.6.0", - "map-obj": "1.0.1", - "minimist": "1.2.0", - "normalize-package-data": "2.4.0", - "object-assign": "4.1.1", - "read-pkg-up": "1.0.1", - "redent": "1.0.0", - "trim-newlines": "1.0.0" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "bundled": true - } - } - }, - "micromatch": { - "version": "2.3.11", - "bundled": true, - "requires": { - "arr-diff": "2.0.0", - "array-unique": "0.2.1", - "braces": "1.8.5", - "expand-brackets": "0.1.5", - "extglob": "0.3.2", - "filename-regex": "2.0.1", - "is-extglob": "1.0.0", - "is-glob": "2.0.1", - "kind-of": "3.2.2", - "normalize-path": "2.1.1", - "object.omit": "2.0.1", - "parse-glob": "3.0.4", - "regex-cache": "0.4.4" - } - }, - "mime-db": { - "version": "1.30.0", - "bundled": true, - "dev": true - }, - "mime-types": { - "version": "2.1.17", - "bundled": true, - "dev": true, - "requires": { - "mime-db": "1.30.0" - } - }, - "mimic-fn": { - "version": "1.1.0", - "bundled": true - }, - "minimatch": { - "version": "3.0.2", - "bundled": true, - "requires": { - "brace-expansion": "1.1.8" - } - }, - "minimist": { - "version": "0.0.8", - "bundled": true - }, - "mkdirp": { - "version": "0.5.1", - "bundled": true, - "requires": { - "minimist": "0.0.8" - } - }, - "modify-values": { - "version": "1.0.0", - "bundled": true - }, - "moment": { - "version": "2.18.1", - "bundled": true - }, - "ms": { - "version": "2.0.0", - "bundled": true - }, - "multimatch": { - "version": "2.1.0", - "bundled": true, - "requires": { - "array-differ": "1.0.0", - "array-union": "1.0.2", - "arrify": "1.0.1", - "minimatch": "3.0.2" - } - }, - "mute-stream": { - "version": "0.0.7", - "bundled": true - }, - "nan": { - "version": "2.7.0", - "bundled": true, - "optional": true - }, - "natural-compare": { - "version": "1.4.0", - "bundled": true - }, - "node-status-codes": { - "version": "1.0.0", - "bundled": true - }, - "normalize-package-data": { - "version": "2.4.0", - "bundled": true, - "requires": { - "hosted-git-info": "2.5.0", - "is-builtin-module": "1.0.0", - "semver": "5.4.1", - "validate-npm-package-license": "3.0.1" - } - }, - "normalize-path": { - "version": "2.1.1", - "bundled": true, - "requires": { - "remove-trailing-separator": "1.1.0" - } - }, - "npm-run-path": { - "version": "2.0.2", - "bundled": true, - "requires": { - "path-key": "2.0.1" - } - }, - "npmlog": { - "version": "4.1.2", - "bundled": true, - "requires": { - "are-we-there-yet": "1.1.4", - "console-control-strings": "1.1.0", - "gauge": "2.7.4", - "set-blocking": "2.0.0" - } - }, - "null-check": { - "version": "1.0.0", - "bundled": true - }, - "number-is-nan": { - "version": "1.0.1", - "bundled": true - }, - "nyc": { - "version": "10.3.2", - "bundled": true, - "requires": { - "archy": "1.0.0", - "arrify": "1.0.1", - "caching-transform": "1.0.1", - "convert-source-map": "1.5.0", - "debug-log": "1.0.1", - "default-require-extensions": "1.0.0", - "find-cache-dir": "0.1.1", - "find-up": "1.1.2", - "foreground-child": "1.5.6", - "glob": "7.1.1", - "istanbul-lib-coverage": "1.1.0", - "istanbul-lib-hook": "1.0.6", - "istanbul-lib-instrument": "1.7.1", - "istanbul-lib-report": "1.1.0", - "istanbul-lib-source-maps": "1.2.0", - "istanbul-reports": "1.1.0", - "md5-hex": "1.3.0", - "merge-source-map": "1.0.3", - "micromatch": "2.3.11", - "mkdirp": "0.5.1", - "resolve-from": "2.0.0", - "rimraf": "2.6.1", - "signal-exit": "3.0.2", - "spawn-wrap": "1.2.4", - "test-exclude": "4.1.0", - "yargs": "7.1.0", - "yargs-parser": "5.0.0" - }, - "dependencies": { - "align-text": { - "version": "0.1.4", - "bundled": true, - "requires": { - "kind-of": "3.2.0", - "longest": "1.0.1", - "repeat-string": "1.6.1" - } - }, - "amdefine": { - "version": "1.0.1", - "bundled": true - }, - "ansi-regex": { - "version": "2.1.1", - "bundled": true - }, - "ansi-styles": { - "version": "2.2.1", - "bundled": true - }, - "append-transform": { - "version": "0.4.0", - "bundled": true, - "requires": { - "default-require-extensions": "1.0.0" - } - }, - "archy": { - "version": "1.0.0", - "bundled": true - }, - "arr-diff": { - "version": "2.0.0", - "bundled": true, - "requires": { - "arr-flatten": "1.0.3" - } - }, - "arr-flatten": { - "version": "1.0.3", - "bundled": true - }, - "array-unique": { - "version": "0.2.1", - "bundled": true - }, - "arrify": { - "version": "1.0.1", - "bundled": true - }, - "async": { - "version": "1.5.2", - "bundled": true - }, - "babel-code-frame": { - "version": "6.22.0", - "bundled": true, - "requires": { - "chalk": "1.1.3", - "esutils": "2.0.2", - "js-tokens": "3.0.1" - } - }, - "babel-generator": { - "version": "6.24.1", - "bundled": true, - "requires": { - "babel-messages": "6.23.0", - "babel-runtime": "6.23.0", - "babel-types": "6.24.1", - "detect-indent": "4.0.0", - "jsesc": "1.3.0", - "lodash": "4.17.4", - "source-map": "0.5.6", - "trim-right": "1.0.1" - } - }, - "babel-messages": { - "version": "6.23.0", - "bundled": true, - "requires": { - "babel-runtime": "6.23.0" - } - }, - "babel-runtime": { - "version": "6.23.0", - "bundled": true, - "requires": { - "core-js": "2.4.1", - "regenerator-runtime": "0.10.5" - } - }, - "babel-template": { - "version": "6.24.1", - "bundled": true, - "requires": { - "babel-runtime": "6.23.0", - "babel-traverse": "6.24.1", - "babel-types": "6.24.1", - "babylon": "6.17.0", - "lodash": "4.17.4" - } - }, - "babel-traverse": { - "version": "6.24.1", - "bundled": true, - "requires": { - "babel-code-frame": "6.22.0", - "babel-messages": "6.23.0", - "babel-runtime": "6.23.0", - "babel-types": "6.24.1", - "babylon": "6.17.0", - "debug": "2.6.6", - "globals": "9.17.0", - "invariant": "2.2.2", - "lodash": "4.17.4" - } - }, - "babel-types": { - "version": "6.24.1", - "bundled": true, - "requires": { - "babel-runtime": "6.23.0", - "esutils": "2.0.2", - "lodash": "4.17.4", - "to-fast-properties": "1.0.3" - } - }, - "babylon": { - "version": "6.17.0", - "bundled": true - }, - "balanced-match": { - "version": "0.4.2", - "bundled": true - }, - "brace-expansion": { - "version": "1.1.7", - "bundled": true, - "requires": { - "balanced-match": "0.4.2", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "1.8.5", - "bundled": true, - "requires": { - "expand-range": "1.8.2", - "preserve": "0.2.0", - "repeat-element": "1.1.2" - } - }, - "builtin-modules": { - "version": "1.1.1", - "bundled": true - }, - "caching-transform": { - "version": "1.0.1", - "bundled": true, - "requires": { - "md5-hex": "1.3.0", - "mkdirp": "0.5.1", - "write-file-atomic": "1.3.4" - } - }, - "camelcase": { - "version": "1.2.1", - "bundled": true, - "optional": true - }, - "center-align": { - "version": "0.1.3", - "bundled": true, - "optional": true, - "requires": { - "align-text": "0.1.4", - "lazy-cache": "1.0.4" - } - }, - "chalk": { - "version": "1.1.3", - "bundled": true, - "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" - } - }, - "cliui": { - "version": "2.1.0", - "bundled": true, - "optional": true, - "requires": { - "center-align": "0.1.3", - "right-align": "0.1.3", - "wordwrap": "0.0.2" - }, - "dependencies": { - "wordwrap": { - "version": "0.0.2", - "bundled": true, - "optional": true - } - } - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true - }, - "commondir": { - "version": "1.0.1", - "bundled": true - }, - "concat-map": { - "version": "0.0.1", - "bundled": true - }, - "convert-source-map": { - "version": "1.5.0", - "bundled": true - }, - "core-js": { - "version": "2.4.1", - "bundled": true - }, - "cross-spawn": { - "version": "4.0.2", - "bundled": true, - "requires": { - "lru-cache": "4.0.2", - "which": "1.2.14" - } - }, - "debug": { - "version": "2.6.6", - "bundled": true, - "requires": { - "ms": "0.7.3" - } - }, - "debug-log": { - "version": "1.0.1", - "bundled": true - }, - "decamelize": { - "version": "1.2.0", - "bundled": true - }, - "default-require-extensions": { - "version": "1.0.0", - "bundled": true, - "requires": { - "strip-bom": "2.0.0" - } - }, - "detect-indent": { - "version": "4.0.0", - "bundled": true, - "requires": { - "repeating": "2.0.1" - } - }, - "error-ex": { - "version": "1.3.1", - "bundled": true, - "requires": { - "is-arrayish": "0.2.1" - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "bundled": true - }, - "esutils": { - "version": "2.0.2", - "bundled": true - }, - "expand-brackets": { - "version": "0.1.5", - "bundled": true, - "requires": { - "is-posix-bracket": "0.1.1" - } - }, - "expand-range": { - "version": "1.8.2", - "bundled": true, - "requires": { - "fill-range": "2.2.3" - } - }, - "extglob": { - "version": "0.3.2", - "bundled": true, - "requires": { - "is-extglob": "1.0.0" - } - }, - "filename-regex": { - "version": "2.0.1", - "bundled": true - }, - "fill-range": { - "version": "2.2.3", - "bundled": true, - "requires": { - "is-number": "2.1.0", - "isobject": "2.1.0", - "randomatic": "1.1.6", - "repeat-element": "1.1.2", - "repeat-string": "1.6.1" - } - }, - "find-cache-dir": { - "version": "0.1.1", - "bundled": true, - "requires": { - "commondir": "1.0.1", - "mkdirp": "0.5.1", - "pkg-dir": "1.0.0" - } - }, - "find-up": { - "version": "1.1.2", - "bundled": true, - "requires": { - "path-exists": "2.1.0", - "pinkie-promise": "2.0.1" - } - }, - "for-in": { - "version": "1.0.2", - "bundled": true - }, - "for-own": { - "version": "0.1.5", - "bundled": true, - "requires": { - "for-in": "1.0.2" - } - }, - "foreground-child": { - "version": "1.5.6", - "bundled": true, - "requires": { - "cross-spawn": "4.0.2", - "signal-exit": "3.0.2" - } - }, - "fs.realpath": { - "version": "1.0.0", - "bundled": true - }, - "get-caller-file": { - "version": "1.0.2", - "bundled": true - }, - "glob": { - "version": "7.1.1", - "bundled": true, - "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.3", - "once": "1.4.0", - "path-is-absolute": "1.0.1" - } - }, - "glob-base": { - "version": "0.3.0", - "bundled": true, - "requires": { - "glob-parent": "2.0.0", - "is-glob": "2.0.1" - } - }, - "glob-parent": { - "version": "2.0.0", - "bundled": true, - "requires": { - "is-glob": "2.0.1" - } - }, - "globals": { - "version": "9.17.0", - "bundled": true - }, - "graceful-fs": { - "version": "4.1.11", - "bundled": true - }, - "handlebars": { - "version": "4.0.8", - "bundled": true, - "requires": { - "async": "1.5.2", - "optimist": "0.6.1", - "source-map": "0.4.4", - "uglify-js": "2.8.22" - }, - "dependencies": { - "source-map": { - "version": "0.4.4", - "bundled": true, - "requires": { - "amdefine": "1.0.1" - } - } - } - }, - "has-ansi": { - "version": "2.0.0", - "bundled": true, - "requires": { - "ansi-regex": "2.1.1" - } - }, - "has-flag": { - "version": "1.0.0", - "bundled": true - }, - "hosted-git-info": { - "version": "2.4.2", - "bundled": true - }, - "imurmurhash": { - "version": "0.1.4", - "bundled": true - }, - "inflight": { - "version": "1.0.6", - "bundled": true, - "requires": { - "once": "1.4.0", - "wrappy": "1.0.2" - } - }, - "inherits": { - "version": "2.0.3", - "bundled": true - }, - "invariant": { - "version": "2.2.2", - "bundled": true, - "requires": { - "loose-envify": "1.3.1" - } - }, - "invert-kv": { - "version": "1.0.0", - "bundled": true - }, - "is-arrayish": { - "version": "0.2.1", - "bundled": true - }, - "is-buffer": { - "version": "1.1.5", - "bundled": true - }, - "is-builtin-module": { - "version": "1.0.0", - "bundled": true, - "requires": { - "builtin-modules": "1.1.1" - } - }, - "is-dotfile": { - "version": "1.0.2", - "bundled": true - }, - "is-equal-shallow": { - "version": "0.1.3", - "bundled": true, - "requires": { - "is-primitive": "2.0.0" - } - }, - "is-extendable": { - "version": "0.1.1", - "bundled": true - }, - "is-extglob": { - "version": "1.0.0", - "bundled": true - }, - "is-finite": { - "version": "1.0.2", - "bundled": true, - "requires": { - "number-is-nan": "1.0.1" - } - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "bundled": true, - "requires": { - "number-is-nan": "1.0.1" - } - }, - "is-glob": { - "version": "2.0.1", - "bundled": true, - "requires": { - "is-extglob": "1.0.0" - } - }, - "is-number": { - "version": "2.1.0", - "bundled": true, - "requires": { - "kind-of": "3.2.0" - } - }, - "is-posix-bracket": { - "version": "0.1.1", - "bundled": true - }, - "is-primitive": { - "version": "2.0.0", - "bundled": true - }, - "is-utf8": { - "version": "0.2.1", - "bundled": true - }, - "isarray": { - "version": "1.0.0", - "bundled": true - }, - "isexe": { - "version": "2.0.0", - "bundled": true - }, - "isobject": { - "version": "2.1.0", - "bundled": true, - "requires": { - "isarray": "1.0.0" - } - }, - "istanbul-lib-coverage": { - "version": "1.1.0", - "bundled": true - }, - "istanbul-lib-hook": { - "version": "1.0.6", - "bundled": true, - "requires": { - "append-transform": "0.4.0" - } - }, - "istanbul-lib-instrument": { - "version": "1.7.1", - "bundled": true, - "requires": { - "babel-generator": "6.24.1", - "babel-template": "6.24.1", - "babel-traverse": "6.24.1", - "babel-types": "6.24.1", - "babylon": "6.17.0", - "istanbul-lib-coverage": "1.1.0", - "semver": "5.3.0" - } - }, - "istanbul-lib-report": { - "version": "1.1.0", - "bundled": true, - "requires": { - "istanbul-lib-coverage": "1.1.0", - "mkdirp": "0.5.1", - "path-parse": "1.0.5", - "supports-color": "3.2.3" - }, - "dependencies": { - "supports-color": { - "version": "3.2.3", - "bundled": true, - "requires": { - "has-flag": "1.0.0" - } - } - } - }, - "istanbul-lib-source-maps": { - "version": "1.2.0", - "bundled": true, - "requires": { - "debug": "2.6.6", - "istanbul-lib-coverage": "1.1.0", - "mkdirp": "0.5.1", - "rimraf": "2.6.1", - "source-map": "0.5.6" - } - }, - "istanbul-reports": { - "version": "1.1.0", - "bundled": true, - "requires": { - "handlebars": "4.0.8" - } - }, - "js-tokens": { - "version": "3.0.1", - "bundled": true - }, - "jsesc": { - "version": "1.3.0", - "bundled": true - }, - "kind-of": { - "version": "3.2.0", - "bundled": true, - "requires": { - "is-buffer": "1.1.5" - } - }, - "lazy-cache": { - "version": "1.0.4", - "bundled": true, - "optional": true - }, - "lcid": { - "version": "1.0.0", - "bundled": true, - "requires": { - "invert-kv": "1.0.0" - } - }, - "load-json-file": { - "version": "1.1.0", - "bundled": true, - "requires": { - "graceful-fs": "4.1.11", - "parse-json": "2.2.0", - "pify": "2.3.0", - "pinkie-promise": "2.0.1", - "strip-bom": "2.0.0" - } - }, - "lodash": { - "version": "4.17.4", - "bundled": true - }, - "longest": { - "version": "1.0.1", - "bundled": true - }, - "loose-envify": { - "version": "1.3.1", - "bundled": true, - "requires": { - "js-tokens": "3.0.1" - } - }, - "lru-cache": { - "version": "4.0.2", - "bundled": true, - "requires": { - "pseudomap": "1.0.2", - "yallist": "2.1.2" - } - }, - "md5-hex": { - "version": "1.3.0", - "bundled": true, - "requires": { - "md5-o-matic": "0.1.1" - } - }, - "md5-o-matic": { - "version": "0.1.1", - "bundled": true - }, - "merge-source-map": { - "version": "1.0.3", - "bundled": true, - "requires": { - "source-map": "0.5.6" - } - }, - "micromatch": { - "version": "2.3.11", - "bundled": true, - "requires": { - "arr-diff": "2.0.0", - "array-unique": "0.2.1", - "braces": "1.8.5", - "expand-brackets": "0.1.5", - "extglob": "0.3.2", - "filename-regex": "2.0.1", - "is-extglob": "1.0.0", - "is-glob": "2.0.1", - "kind-of": "3.2.0", - "normalize-path": "2.1.1", - "object.omit": "2.0.1", - "parse-glob": "3.0.4", - "regex-cache": "0.4.3" - } - }, - "minimatch": { - "version": "3.0.3", - "bundled": true, - "requires": { - "brace-expansion": "1.1.7" - } - }, - "minimist": { - "version": "0.0.8", - "bundled": true - }, - "mkdirp": { - "version": "0.5.1", - "bundled": true, - "requires": { - "minimist": "0.0.8" - } - }, - "ms": { - "version": "0.7.3", - "bundled": true - }, - "normalize-package-data": { - "version": "2.3.8", - "bundled": true, - "requires": { - "hosted-git-info": "2.4.2", - "is-builtin-module": "1.0.0", - "semver": "5.3.0", - "validate-npm-package-license": "3.0.1" - } - }, - "normalize-path": { - "version": "2.1.1", - "bundled": true, - "requires": { - "remove-trailing-separator": "1.0.1" - } - }, - "number-is-nan": { - "version": "1.0.1", - "bundled": true - }, - "object-assign": { - "version": "4.1.1", - "bundled": true - }, - "object.omit": { - "version": "2.0.1", - "bundled": true, - "requires": { - "for-own": "0.1.5", - "is-extendable": "0.1.1" - } - }, - "once": { - "version": "1.4.0", - "bundled": true, - "requires": { - "wrappy": "1.0.2" - } - }, - "optimist": { - "version": "0.6.1", - "bundled": true, - "requires": { - "minimist": "0.0.8", - "wordwrap": "0.0.3" - } - }, - "os-homedir": { - "version": "1.0.2", - "bundled": true - }, - "os-locale": { - "version": "1.4.0", - "bundled": true, - "requires": { - "lcid": "1.0.0" - } - }, - "parse-glob": { - "version": "3.0.4", - "bundled": true, - "requires": { - "glob-base": "0.3.0", - "is-dotfile": "1.0.2", - "is-extglob": "1.0.0", - "is-glob": "2.0.1" - } - }, - "parse-json": { - "version": "2.2.0", - "bundled": true, - "requires": { - "error-ex": "1.3.1" - } - }, - "path-exists": { - "version": "2.1.0", - "bundled": true, - "requires": { - "pinkie-promise": "2.0.1" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "bundled": true - }, - "path-parse": { - "version": "1.0.5", - "bundled": true - }, - "path-type": { - "version": "1.1.0", - "bundled": true, - "requires": { - "graceful-fs": "4.1.11", - "pify": "2.3.0", - "pinkie-promise": "2.0.1" - } - }, - "pify": { - "version": "2.3.0", - "bundled": true - }, - "pinkie": { - "version": "2.0.4", - "bundled": true - }, - "pinkie-promise": { - "version": "2.0.1", - "bundled": true, - "requires": { - "pinkie": "2.0.4" - } - }, - "pkg-dir": { - "version": "1.0.0", - "bundled": true, - "requires": { - "find-up": "1.1.2" - } - }, - "preserve": { - "version": "0.2.0", - "bundled": true - }, - "pseudomap": { - "version": "1.0.2", - "bundled": true - }, - "randomatic": { - "version": "1.1.6", - "bundled": true, - "requires": { - "is-number": "2.1.0", - "kind-of": "3.2.0" - } - }, - "read-pkg": { - "version": "1.1.0", - "bundled": true, - "requires": { - "load-json-file": "1.1.0", - "normalize-package-data": "2.3.8", - "path-type": "1.1.0" - } - }, - "read-pkg-up": { - "version": "1.0.1", - "bundled": true, - "requires": { - "find-up": "1.1.2", - "read-pkg": "1.1.0" - } - }, - "regenerator-runtime": { - "version": "0.10.5", - "bundled": true - }, - "regex-cache": { - "version": "0.4.3", - "bundled": true, - "requires": { - "is-equal-shallow": "0.1.3", - "is-primitive": "2.0.0" - } - }, - "remove-trailing-separator": { - "version": "1.0.1", - "bundled": true - }, - "repeat-element": { - "version": "1.1.2", - "bundled": true - }, - "repeat-string": { - "version": "1.6.1", - "bundled": true - }, - "repeating": { - "version": "2.0.1", - "bundled": true, - "requires": { - "is-finite": "1.0.2" - } - }, - "require-directory": { - "version": "2.1.1", - "bundled": true - }, - "require-main-filename": { - "version": "1.0.1", - "bundled": true - }, - "resolve-from": { - "version": "2.0.0", - "bundled": true - }, - "right-align": { - "version": "0.1.3", - "bundled": true, - "optional": true, - "requires": { - "align-text": "0.1.4" - } - }, - "rimraf": { - "version": "2.6.1", - "bundled": true, - "requires": { - "glob": "7.1.1" - } - }, - "semver": { - "version": "5.3.0", - "bundled": true - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true - }, - "signal-exit": { - "version": "3.0.2", - "bundled": true - }, - "slide": { - "version": "1.1.6", - "bundled": true - }, - "source-map": { - "version": "0.5.6", - "bundled": true - }, - "spawn-wrap": { - "version": "1.2.4", - "bundled": true, - "requires": { - "foreground-child": "1.5.6", - "mkdirp": "0.5.1", - "os-homedir": "1.0.2", - "rimraf": "2.6.1", - "signal-exit": "2.1.2", - "which": "1.2.14" - }, - "dependencies": { - "signal-exit": { - "version": "2.1.2", - "bundled": true - } - } - }, - "spdx-correct": { - "version": "1.0.2", - "bundled": true, - "requires": { - "spdx-license-ids": "1.2.2" - } - }, - "spdx-expression-parse": { - "version": "1.0.4", - "bundled": true - }, - "spdx-license-ids": { - "version": "1.2.2", - "bundled": true - }, - "string-width": { - "version": "1.0.2", - "bundled": true, - "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" - } - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "requires": { - "ansi-regex": "2.1.1" - } - }, - "strip-bom": { - "version": "2.0.0", - "bundled": true, - "requires": { - "is-utf8": "0.2.1" - } - }, - "supports-color": { - "version": "2.0.0", - "bundled": true - }, - "test-exclude": { - "version": "4.1.0", - "bundled": true, - "requires": { - "arrify": "1.0.1", - "micromatch": "2.3.11", - "object-assign": "4.1.1", - "read-pkg-up": "1.0.1", - "require-main-filename": "1.0.1" - } - }, - "to-fast-properties": { - "version": "1.0.3", - "bundled": true - }, - "trim-right": { - "version": "1.0.1", - "bundled": true - }, - "uglify-js": { - "version": "2.8.22", - "bundled": true, - "optional": true, - "requires": { - "source-map": "0.5.6", - "uglify-to-browserify": "1.0.2", - "yargs": "3.10.0" - }, - "dependencies": { - "yargs": { - "version": "3.10.0", - "bundled": true, - "optional": true, - "requires": { - "camelcase": "1.2.1", - "cliui": "2.1.0", - "decamelize": "1.2.0", - "window-size": "0.1.0" - } - } - } - }, - "uglify-to-browserify": { - "version": "1.0.2", - "bundled": true, - "optional": true - }, - "validate-npm-package-license": { - "version": "3.0.1", - "bundled": true, - "requires": { - "spdx-correct": "1.0.2", - "spdx-expression-parse": "1.0.4" - } - }, - "which": { - "version": "1.2.14", - "bundled": true, - "requires": { - "isexe": "2.0.0" - } - }, - "which-module": { - "version": "1.0.0", - "bundled": true - }, - "window-size": { - "version": "0.1.0", - "bundled": true, - "optional": true - }, - "wordwrap": { - "version": "0.0.3", - "bundled": true - }, - "wrap-ansi": { - "version": "2.1.0", - "bundled": true, - "requires": { - "string-width": "1.0.2", - "strip-ansi": "3.0.1" - } - }, - "wrappy": { - "version": "1.0.2", - "bundled": true - }, - "write-file-atomic": { - "version": "1.3.4", - "bundled": true, - "requires": { - "graceful-fs": "4.1.11", - "imurmurhash": "0.1.4", - "slide": "1.1.6" - } - }, - "y18n": { - "version": "3.2.1", - "bundled": true - }, - "yallist": { - "version": "2.1.2", - "bundled": true - }, - "yargs": { - "version": "7.1.0", - "bundled": true, - "requires": { - "camelcase": "3.0.0", - "cliui": "3.2.0", - "decamelize": "1.2.0", - "get-caller-file": "1.0.2", - "os-locale": "1.4.0", - "read-pkg-up": "1.0.1", - "require-directory": "2.1.1", - "require-main-filename": "1.0.1", - "set-blocking": "2.0.0", - "string-width": "1.0.2", - "which-module": "1.0.0", - "y18n": "3.2.1", - "yargs-parser": "5.0.0" - }, - "dependencies": { - "camelcase": { - "version": "3.0.0", - "bundled": true - }, - "cliui": { - "version": "3.2.0", - "bundled": true, - "requires": { - "string-width": "1.0.2", - "strip-ansi": "3.0.1", - "wrap-ansi": "2.1.0" - } - } - } - }, - "yargs-parser": { - "version": "5.0.0", - "bundled": true, - "requires": { - "camelcase": "3.0.0" - }, - "dependencies": { - "camelcase": { - "version": "3.0.0", - "bundled": true - } - } - } - } - }, - "oauth-sign": { - "version": "0.8.2", - "bundled": true, - "dev": true - }, - "object-assign": { - "version": "4.1.1", - "bundled": true - }, - "object.omit": { - "version": "2.0.1", - "bundled": true, - "requires": { - "for-own": "0.1.5", - "is-extendable": "0.1.1" - } - }, - "observable-to-promise": { - "version": "0.4.0", - "bundled": true, - "requires": { - "is-observable": "0.2.0", - "symbol-observable": "0.2.4" - } - }, - "once": { - "version": "1.4.0", - "bundled": true, - "requires": { - "wrappy": "1.0.2" - } - }, - "onetime": { - "version": "2.0.1", - "bundled": true, - "requires": { - "mimic-fn": "1.1.0" - } - }, - "optimist": { - "version": "0.6.1", - "bundled": true, - "requires": { - "minimist": "0.0.8", - "wordwrap": "0.0.3" - } - }, - "option-chain": { - "version": "0.1.1", - "bundled": true, - "requires": { - "object-assign": "4.1.1" - } - }, - "os-homedir": { - "version": "1.0.2", - "bundled": true - }, - "os-locale": { - "version": "1.4.0", - "bundled": true, - "dev": true, - "requires": { - "lcid": "1.0.0" - } - }, - "os-tmpdir": { - "version": "1.0.2", - "bundled": true - }, - "osenv": { - "version": "0.1.4", - "bundled": true, - "requires": { - "os-homedir": "1.0.2", - "os-tmpdir": "1.0.2" - } - }, - "p-finally": { - "version": "1.0.0", - "bundled": true - }, - "p-limit": { - "version": "1.1.0", - "bundled": true - }, - "p-locate": { - "version": "2.0.0", - "bundled": true, - "requires": { - "p-limit": "1.1.0" - } - }, - "package-hash": { - "version": "1.2.0", - "bundled": true, - "requires": { - "md5-hex": "1.3.0" - }, - "dependencies": { - "md5-hex": { - "version": "1.3.0", - "bundled": true, - "requires": { - "md5-o-matic": "0.1.1" - } - } - } - }, - "package-json": { - "version": "2.4.0", - "bundled": true, - "requires": { - "got": "5.7.1", - "registry-auth-token": "3.3.1", - "registry-url": "3.1.0", - "semver": "5.4.1" - } - }, - "parse-github-repo-url": { - "version": "1.4.1", - "bundled": true - }, - "parse-glob": { - "version": "3.0.4", - "bundled": true, - "requires": { - "glob-base": "0.3.0", - "is-dotfile": "1.0.3", - "is-extglob": "1.0.0", - "is-glob": "2.0.1" - } - }, - "parse-json": { - "version": "2.2.0", - "bundled": true, - "requires": { - "error-ex": "1.3.1" - } - }, - "parse-ms": { - "version": "1.0.1", - "bundled": true - }, - "path-dirname": { - "version": "1.0.2", - "bundled": true - }, - "path-exists": { - "version": "2.1.0", - "bundled": true, - "requires": { - "pinkie-promise": "2.0.1" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "bundled": true - }, - "path-key": { - "version": "2.0.1", - "bundled": true - }, - "path-parse": { - "version": "1.0.5", - "bundled": true - }, - "path-type": { - "version": "1.1.0", - "bundled": true, - "requires": { - "graceful-fs": "4.1.11", - "pify": "2.3.0", - "pinkie-promise": "2.0.1" - } - }, - "performance-now": { - "version": "2.1.0", - "bundled": true, - "dev": true - }, - "pify": { - "version": "2.3.0", - "bundled": true - }, - "pinkie": { - "version": "2.0.4", - "bundled": true - }, - "pinkie-promise": { - "version": "2.0.1", - "bundled": true, - "requires": { - "pinkie": "2.0.4" - } - }, - "pkg-conf": { - "version": "2.0.0", - "bundled": true, - "requires": { - "find-up": "2.1.0", - "load-json-file": "2.0.0" - }, - "dependencies": { - "find-up": { - "version": "2.1.0", - "bundled": true, - "requires": { - "locate-path": "2.0.0" - } - }, - "load-json-file": { - "version": "2.0.0", - "bundled": true, - "requires": { - "graceful-fs": "4.1.11", - "parse-json": "2.2.0", - "pify": "2.3.0", - "strip-bom": "3.0.0" - } - }, - "strip-bom": { - "version": "3.0.0", - "bundled": true - } - } - }, - "pkg-dir": { - "version": "1.0.0", - "bundled": true, - "requires": { - "find-up": "1.1.2" - } - }, - "plist": { - "version": "2.1.0", - "bundled": true, - "dev": true, - "requires": { - "base64-js": "1.2.0", - "xmlbuilder": "8.2.2", - "xmldom": "0.1.27" - } - }, - "plur": { - "version": "2.1.2", - "bundled": true, - "requires": { - "irregular-plurals": "1.3.0" - } - }, - "prepend-http": { - "version": "1.0.4", - "bundled": true - }, - "preserve": { - "version": "0.2.0", - "bundled": true - }, - "pretty-format": { - "version": "18.1.0", - "bundled": true, - "requires": { - "ansi-styles": "2.2.1" - } - }, - "pretty-ms": { - "version": "2.1.0", - "bundled": true, - "requires": { - "is-finite": "1.0.2", - "parse-ms": "1.0.1", - "plur": "1.0.0" - }, - "dependencies": { - "plur": { - "version": "1.0.0", - "bundled": true - } - } - }, - "private": { - "version": "0.1.7", - "bundled": true - }, - "process-nextick-args": { - "version": "1.0.7", - "bundled": true - }, - "progress": { - "version": "1.1.8", - "bundled": true, - "dev": true - }, - "pseudomap": { - "version": "1.0.2", - "bundled": true - }, - "punycode": { - "version": "1.4.1", - "bundled": true, - "dev": true - }, - "q": { - "version": "1.5.0", - "bundled": true - }, - "qs": { - "version": "6.5.1", - "bundled": true, - "dev": true - }, - "randomatic": { - "version": "1.1.7", - "bundled": true, - "requires": { - "is-number": "3.0.0", - "kind-of": "4.0.0" - }, - "dependencies": { - "is-number": { - "version": "3.0.0", - "bundled": true, - "requires": { - "kind-of": "3.2.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "bundled": true, - "requires": { - "is-buffer": "1.1.5" - } - } - } - }, - "kind-of": { - "version": "4.0.0", - "bundled": true, - "requires": { - "is-buffer": "1.1.5" - } - } - } - }, - "rc": { - "version": "1.2.1", - "bundled": true, - "requires": { - "deep-extend": "0.4.2", - "ini": "1.3.4", - "minimist": "1.2.0", - "strip-json-comments": "2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "bundled": true - } - } - }, - "rcedit": { - "version": "0.8.0", - "bundled": true, - "dev": true - }, - "read-all-stream": { - "version": "3.1.0", - "bundled": true, - "requires": { - "pinkie-promise": "2.0.1", - "readable-stream": "2.3.3" - } - }, - "read-cmd-shim": { - "version": "1.0.1", - "bundled": true, - "requires": { - "graceful-fs": "4.1.11" - } - }, - "read-pkg": { - "version": "1.1.0", - "bundled": true, - "requires": { - "load-json-file": "1.1.0", - "normalize-package-data": "2.4.0", - "path-type": "1.1.0" - } - }, - "read-pkg-up": { - "version": "1.0.1", - "bundled": true, - "requires": { - "find-up": "1.1.2", - "read-pkg": "1.1.0" - } - }, - "readable-stream": { - "version": "2.3.3", - "bundled": true, - "requires": { - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "1.0.0", - "process-nextick-args": "1.0.7", - "safe-buffer": "5.1.1", - "string_decoder": "1.0.3", - "util-deprecate": "1.0.2" - } - }, - "readdirp": { - "version": "2.1.0", - "bundled": true, - "requires": { - "graceful-fs": "4.1.11", - "minimatch": "3.0.2", - "readable-stream": "2.3.3", - "set-immediate-shim": "1.0.1" - } - }, - "redent": { - "version": "1.0.0", - "bundled": true, - "requires": { - "indent-string": "2.1.0", - "strip-indent": "1.0.1" - }, - "dependencies": { - "indent-string": { - "version": "2.1.0", - "bundled": true, - "requires": { - "repeating": "2.0.1" - } - } - } - }, - "regenerate": { - "version": "1.3.3", - "bundled": true - }, - "regenerator-runtime": { - "version": "0.11.0", - "bundled": true - }, - "regex-cache": { - "version": "0.4.4", - "bundled": true, - "requires": { - "is-equal-shallow": "0.1.3" - } - }, - "regexpu-core": { - "version": "2.0.0", - "bundled": true, - "requires": { - "regenerate": "1.3.3", - "regjsgen": "0.2.0", - "regjsparser": "0.1.5" - } - }, - "registry-auth-token": { - "version": "3.3.1", - "bundled": true, - "requires": { - "rc": "1.2.1", - "safe-buffer": "5.1.1" - } - }, - "registry-url": { - "version": "3.1.0", - "bundled": true, - "requires": { - "rc": "1.2.1" - } - }, - "regjsgen": { - "version": "0.2.0", - "bundled": true - }, - "regjsparser": { - "version": "0.1.5", - "bundled": true, - "requires": { - "jsesc": "0.5.0" - } - }, - "remove-trailing-separator": { - "version": "1.1.0", - "bundled": true - }, - "repeat-element": { - "version": "1.1.2", - "bundled": true - }, - "repeat-string": { - "version": "1.6.1", - "bundled": true - }, - "repeating": { - "version": "2.0.1", - "bundled": true, - "requires": { - "is-finite": "1.0.2" - } - }, - "request": { - "version": "2.82.0", - "bundled": true, - "dev": true, - "requires": { - "aws-sign2": "0.7.0", - "aws4": "1.6.0", - "caseless": "0.12.0", - "combined-stream": "1.0.5", - "extend": "3.0.1", - "forever-agent": "0.6.1", - "form-data": "2.3.1", - "har-validator": "5.0.3", - "hawk": "6.0.2", - "http-signature": "1.2.0", - "is-typedarray": "1.0.0", - "isstream": "0.1.2", - "json-stringify-safe": "5.0.1", - "mime-types": "2.1.17", - "oauth-sign": "0.8.2", - "performance-now": "2.1.0", - "qs": "6.5.1", - "safe-buffer": "5.1.1", - "stringstream": "0.0.5", - "tough-cookie": "2.3.2", - "tunnel-agent": "0.6.0", - "uuid": "3.1.0" - } - }, - "request-progress": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "throttleit": "1.0.0" - } - }, - "require-directory": { - "version": "2.1.1", - "bundled": true - }, - "require-main-filename": { - "version": "1.0.1", - "bundled": true - }, - "require-precompiled": { - "version": "0.1.0", - "bundled": true - }, - "resolve": { - "version": "1.4.0", - "bundled": true, - "requires": { - "path-parse": "1.0.5" - } - }, - "resolve-cwd": { - "version": "1.0.0", - "bundled": true, - "requires": { - "resolve-from": "2.0.0" - } - }, - "resolve-from": { - "version": "2.0.0", - "bundled": true - }, - "restore-cursor": { - "version": "2.0.0", - "bundled": true, - "requires": { - "onetime": "2.0.1", - "signal-exit": "3.0.2" - } - }, - "right-align": { - "version": "0.1.3", - "bundled": true, - "optional": true, - "requires": { - "align-text": "0.1.4" - } - }, - "rimraf": { - "version": "2.6.2", - "bundled": true, - "requires": { - "glob": "7.1.2" - } - }, - "run-async": { - "version": "2.3.0", - "bundled": true, - "requires": { - "is-promise": "2.1.0" - } - }, - "rx-lite": { - "version": "4.0.8", - "bundled": true - }, - "rx-lite-aggregates": { - "version": "4.0.8", - "bundled": true, - "requires": { - "rx-lite": "4.0.8" - } - }, - "safe-buffer": { - "version": "5.1.1", - "bundled": true - }, - "semver": { - "version": "5.4.1", - "bundled": true - }, - "semver-diff": { - "version": "2.1.0", - "bundled": true, - "requires": { - "semver": "5.4.1" - } - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true - }, - "set-immediate-shim": { - "version": "1.0.1", - "bundled": true - }, - "shebang-command": { - "version": "1.2.0", - "bundled": true, - "requires": { - "shebang-regex": "1.0.0" - } - }, - "shebang-regex": { - "version": "1.0.0", - "bundled": true - }, - "signal-exit": { - "version": "3.0.2", - "bundled": true - }, - "slash": { - "version": "1.0.0", - "bundled": true - }, - "slice-ansi": { - "version": "0.0.4", - "bundled": true - }, - "slide": { - "version": "1.1.6", - "bundled": true - }, - "sntp": { - "version": "2.0.2", - "bundled": true, - "dev": true, - "requires": { - "hoek": "4.2.0" - } - }, - "sort-keys": { - "version": "2.0.0", - "bundled": true, - "requires": { - "is-plain-obj": "1.1.0" - } - }, - "source-map": { - "version": "0.5.7", - "bundled": true - }, - "source-map-support": { - "version": "0.4.18", - "bundled": true, - "requires": { - "source-map": "0.5.7" - } - }, - "spdx-correct": { - "version": "1.0.2", - "bundled": true, - "requires": { - "spdx-license-ids": "1.2.2" - } - }, - "spdx-expression-parse": { - "version": "1.0.4", - "bundled": true - }, - "spdx-license-ids": { - "version": "1.2.2", - "bundled": true - }, - "split": { - "version": "1.0.1", - "bundled": true, - "requires": { - "through": "2.3.8" - } - }, - "split2": { - "version": "2.1.1", - "bundled": true, - "requires": { - "through2": "2.0.3" - } - }, - "sshpk": { - "version": "1.13.1", - "bundled": true, - "dev": true, - "requires": { - "asn1": "0.2.3", - "assert-plus": "1.0.0", - "bcrypt-pbkdf": "1.0.1", - "dashdash": "1.14.1", - "ecc-jsbn": "0.1.1", - "getpass": "0.1.7", - "jsbn": "0.1.1", - "tweetnacl": "0.14.5" - } - }, - "stack-utils": { - "version": "1.0.1", - "bundled": true - }, - "standard-version": { - "version": "4.2.0", - "bundled": true, - "requires": { - "chalk": "1.1.3", - "conventional-changelog": "1.1.5", - "conventional-recommended-bump": "1.0.1", - "figures": "1.7.0", - "fs-access": "1.0.1", - "semver": "5.4.1", - "yargs": "8.0.2" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "bundled": true - }, - "camelcase": { - "version": "4.1.0", - "bundled": true - }, - "figures": { - "version": "1.7.0", - "bundled": true, - "requires": { - "escape-string-regexp": "1.0.5", - "object-assign": "4.1.1" - } - }, - "find-up": { - "version": "2.1.0", - "bundled": true, - "requires": { - "locate-path": "2.0.0" - } - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "bundled": true - }, - "load-json-file": { - "version": "2.0.0", - "bundled": true, - "requires": { - "graceful-fs": "4.1.11", - "parse-json": "2.2.0", - "pify": "2.3.0", - "strip-bom": "3.0.0" - } - }, - "os-locale": { - "version": "2.1.0", - "bundled": true, - "requires": { - "execa": "0.7.0", - "lcid": "1.0.0", - "mem": "1.1.0" - } - }, - "path-type": { - "version": "2.0.0", - "bundled": true, - "requires": { - "pify": "2.3.0" - } - }, - "read-pkg": { - "version": "2.0.0", - "bundled": true, - "requires": { - "load-json-file": "2.0.0", - "normalize-package-data": "2.4.0", - "path-type": "2.0.0" - } - }, - "read-pkg-up": { - "version": "2.0.0", - "bundled": true, - "requires": { - "find-up": "2.1.0", - "read-pkg": "2.0.0" - } - }, - "string-width": { - "version": "2.1.1", - "bundled": true, - "requires": { - "is-fullwidth-code-point": "2.0.0", - "strip-ansi": "4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "bundled": true, - "requires": { - "ansi-regex": "3.0.0" - } - }, - "strip-bom": { - "version": "3.0.0", - "bundled": true - }, - "which-module": { - "version": "2.0.0", - "bundled": true - }, - "yargs": { - "version": "8.0.2", - "bundled": true, - "requires": { - "camelcase": "4.1.0", - "cliui": "3.2.0", - "decamelize": "1.2.0", - "get-caller-file": "1.0.2", - "os-locale": "2.1.0", - "read-pkg-up": "2.0.0", - "require-directory": "2.1.1", - "require-main-filename": "1.0.1", - "set-blocking": "2.0.0", - "string-width": "2.1.1", - "which-module": "2.0.0", - "y18n": "3.2.1", - "yargs-parser": "7.0.0" - } - }, - "yargs-parser": { - "version": "7.0.0", - "bundled": true, - "requires": { - "camelcase": "4.1.0" - } - } - } - }, - "string-width": { - "version": "1.0.2", - "bundled": true, - "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" - } - }, - "string_decoder": { - "version": "1.0.3", - "bundled": true, - "requires": { - "safe-buffer": "5.1.1" - } - }, - "stringstream": { - "version": "0.0.5", - "bundled": true, - "dev": true - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "requires": { - "ansi-regex": "2.1.1" - } - }, - "strip-bom": { - "version": "2.0.0", - "bundled": true, - "requires": { - "is-utf8": "0.2.1" - } - }, - "strip-bom-buf": { - "version": "1.0.0", - "bundled": true, - "requires": { - "is-utf8": "0.2.1" - } - }, - "strip-eof": { - "version": "1.0.0", - "bundled": true - }, - "strip-indent": { - "version": "1.0.1", - "bundled": true, - "requires": { - "get-stdin": "4.0.1" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "bundled": true - }, - "strong-log-transformer": { - "version": "1.0.6", - "bundled": true, - "requires": { - "byline": "5.0.0", - "duplexer": "0.1.1", - "minimist": "0.1.0", - "moment": "2.18.1", - "through": "2.3.8" - }, - "dependencies": { - "minimist": { - "version": "0.1.0", - "bundled": true - } - } - }, - "supports-color": { - "version": "2.0.0", - "bundled": true - }, - "symbol-observable": { - "version": "0.2.4", - "bundled": true - }, - "temp-dir": { - "version": "1.0.0", - "bundled": true - }, - "temp-write": { - "version": "3.3.0", - "bundled": true, - "requires": { - "graceful-fs": "4.1.11", - "is-stream": "1.1.0", - "make-dir": "1.0.0", - "pify": "2.3.0", - "temp-dir": "1.0.0", - "uuid": "3.1.0" - } - }, - "tempfile": { - "version": "1.1.1", - "bundled": true, - "requires": { - "os-tmpdir": "1.0.2", - "uuid": "2.0.3" - }, - "dependencies": { - "uuid": { - "version": "2.0.3", - "bundled": true - } - } - }, - "term-size": { - "version": "1.2.0", - "bundled": true, - "requires": { - "execa": "0.7.0" - } - }, - "text-extensions": { - "version": "1.6.0", - "bundled": true - }, - "text-table": { - "version": "0.2.0", - "bundled": true - }, - "throttleit": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "through": { - "version": "2.3.8", - "bundled": true - }, - "through2": { - "version": "2.0.3", - "bundled": true, - "requires": { - "readable-stream": "2.3.3", - "xtend": "4.0.1" - } - }, - "time-require": { - "version": "0.1.2", - "bundled": true, - "requires": { - "chalk": "0.4.0", - "date-time": "0.1.1", - "pretty-ms": "0.2.2", - "text-table": "0.2.0" - }, - "dependencies": { - "ansi-styles": { - "version": "1.0.0", - "bundled": true - }, - "chalk": { - "version": "0.4.0", - "bundled": true, - "requires": { - "ansi-styles": "1.0.0", - "has-color": "0.1.7", - "strip-ansi": "0.1.1" - } - }, - "parse-ms": { - "version": "0.1.2", - "bundled": true - }, - "pretty-ms": { - "version": "0.2.2", - "bundled": true, - "requires": { - "parse-ms": "0.1.2" - } - }, - "strip-ansi": { - "version": "0.1.1", - "bundled": true - } - } - }, - "timed-out": { - "version": "3.1.3", - "bundled": true - }, - "tmp": { - "version": "0.0.31", - "bundled": true, - "dev": true, - "requires": { - "os-tmpdir": "1.0.2" - } - }, - "to-fast-properties": { - "version": "1.0.3", - "bundled": true - }, - "tough-cookie": { - "version": "2.3.2", - "bundled": true, - "dev": true, - "requires": { - "punycode": "1.4.1" - } - }, - "trim-newlines": { - "version": "1.0.0", - "bundled": true - }, - "trim-off-newlines": { - "version": "1.0.1", - "bundled": true - }, - "trim-right": { - "version": "1.0.1", - "bundled": true - }, - "tslint": { - "version": "4.5.1", - "bundled": true, - "requires": { - "babel-code-frame": "6.26.0", - "colors": "1.1.2", - "diff": "3.3.1", - "findup-sync": "0.3.0", - "glob": "7.1.2", - "optimist": "0.6.1", - "resolve": "1.4.0", - "tsutils": "1.9.1", - "update-notifier": "2.2.0" - }, - "dependencies": { - "ansi-align": { - "version": "2.0.0", - "bundled": true, - "requires": { - "string-width": "2.1.1" - } - }, - "ansi-regex": { - "version": "3.0.0", - "bundled": true - }, - "ansi-styles": { - "version": "3.2.0", - "bundled": true, - "requires": { - "color-convert": "1.9.0" - } - }, - "boxen": { - "version": "1.2.1", - "bundled": true, - "requires": { - "ansi-align": "2.0.0", - "camelcase": "4.1.0", - "chalk": "2.1.0", - "cli-boxes": "1.0.0", - "string-width": "2.1.1", - "term-size": "1.2.0", - "widest-line": "1.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.1.0", - "bundled": true, - "requires": { - "ansi-styles": "3.2.0", - "escape-string-regexp": "1.0.5", - "supports-color": "4.4.0" - } - } - } - }, - "camelcase": { - "version": "4.1.0", - "bundled": true - }, - "colors": { - "version": "1.1.2", - "bundled": true - }, - "configstore": { - "version": "3.1.1", - "bundled": true, - "requires": { - "dot-prop": "4.2.0", - "graceful-fs": "4.1.11", - "make-dir": "1.0.0", - "unique-string": "1.0.0", - "write-file-atomic": "2.3.0", - "xdg-basedir": "3.0.0" - } - }, - "got": { - "version": "6.7.1", - "bundled": true, - "requires": { - "create-error-class": "3.0.2", - "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", - "safe-buffer": "5.1.1", - "timed-out": "4.0.1", - "unzip-response": "2.0.1", - "url-parse-lax": "1.0.0" - } - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "bundled": true - }, - "latest-version": { - "version": "3.1.0", - "bundled": true, - "requires": { - "package-json": "4.0.1" - } - }, - "package-json": { - "version": "4.0.1", - "bundled": true, - "requires": { - "got": "6.7.1", - "registry-auth-token": "3.3.1", - "registry-url": "3.1.0", - "semver": "5.4.1" - } - }, - "string-width": { - "version": "2.1.1", - "bundled": true, - "requires": { - "is-fullwidth-code-point": "2.0.0", - "strip-ansi": "4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "bundled": true, - "requires": { - "ansi-regex": "3.0.0" - } - }, - "supports-color": { - "version": "4.4.0", - "bundled": true, - "requires": { - "has-flag": "2.0.0" - } - }, - "timed-out": { - "version": "4.0.1", - "bundled": true - }, - "unzip-response": { - "version": "2.0.1", - "bundled": true - }, - "update-notifier": { - "version": "2.2.0", - "bundled": true, - "requires": { - "boxen": "1.2.1", - "chalk": "1.1.3", - "configstore": "3.1.1", - "import-lazy": "2.1.0", - "is-npm": "1.0.0", - "latest-version": "3.1.0", - "semver-diff": "2.1.0", - "xdg-basedir": "3.0.0" - } - }, - "xdg-basedir": { - "version": "3.0.0", - "bundled": true - } - } - }, - "tsutils": { - "version": "1.9.1", - "bundled": true - }, - "tunnel-agent": { - "version": "0.6.0", - "bundled": true, - "dev": true, - "requires": { - "safe-buffer": "5.1.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "bundled": true, - "dev": true, - "optional": true - }, - "typedarray": { - "version": "0.0.6", - "bundled": true - }, - "typescript": { - "version": "2.5.2", - "bundled": true - }, - "uglify-js": { - "version": "2.8.29", - "bundled": true, - "optional": true, - "requires": { - "source-map": "0.5.7", - "uglify-to-browserify": "1.0.2", - "yargs": "3.10.0" - }, - "dependencies": { - "camelcase": { - "version": "1.2.1", - "bundled": true, - "optional": true - }, - "cliui": { - "version": "2.1.0", - "bundled": true, - "optional": true, - "requires": { - "center-align": "0.1.3", - "right-align": "0.1.3", - "wordwrap": "0.0.2" - } - }, - "wordwrap": { - "version": "0.0.2", - "bundled": true, - "optional": true - }, - "yargs": { - "version": "3.10.0", - "bundled": true, - "optional": true, - "requires": { - "camelcase": "1.2.1", - "cliui": "2.1.0", - "decamelize": "1.2.0", - "window-size": "0.1.0" - } - } - } - }, - "uglify-to-browserify": { - "version": "1.0.2", - "bundled": true, - "optional": true - }, - "uid2": { - "version": "0.0.3", - "bundled": true - }, - "unique-string": { - "version": "1.0.0", - "bundled": true, - "requires": { - "crypto-random-string": "1.0.0" - } - }, - "unique-temp-dir": { - "version": "1.0.0", - "bundled": true, - "requires": { - "mkdirp": "0.5.1", - "os-tmpdir": "1.0.2", - "uid2": "0.0.3" - } - }, - "universalify": { - "version": "0.1.1", - "bundled": true - }, - "unzip-response": { - "version": "1.0.2", - "bundled": true - }, - "update-notifier": { - "version": "1.0.3", - "bundled": true, - "requires": { - "boxen": "0.6.0", - "chalk": "1.1.3", - "configstore": "2.1.0", - "is-npm": "1.0.0", - "latest-version": "2.0.0", - "lazy-req": "1.1.0", - "semver-diff": "2.1.0", - "xdg-basedir": "2.0.0" - } - }, - "url-parse-lax": { - "version": "1.0.0", - "bundled": true, - "requires": { - "prepend-http": "1.0.4" - } - }, - "util-deprecate": { - "version": "1.0.2", - "bundled": true - }, - "uuid": { - "version": "3.1.0", - "bundled": true - }, - "validate-npm-package-license": { - "version": "3.0.1", - "bundled": true, - "requires": { - "spdx-correct": "1.0.2", - "spdx-expression-parse": "1.0.4" - } - }, - "verror": { - "version": "1.10.0", - "bundled": true, - "dev": true, - "requires": { - "assert-plus": "1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "1.3.0" - } - }, - "wcwidth": { - "version": "1.0.1", - "bundled": true, - "requires": { - "defaults": "1.0.3" - } - }, - "which": { - "version": "1.3.0", - "bundled": true, - "requires": { - "isexe": "2.0.0" - } - }, - "which-module": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "wide-align": { - "version": "1.1.2", - "bundled": true, - "requires": { - "string-width": "1.0.2" - } - }, - "widest-line": { - "version": "1.0.0", - "bundled": true, - "requires": { - "string-width": "1.0.2" - } - }, - "window-size": { - "version": "0.1.0", - "bundled": true, - "optional": true - }, - "wordwrap": { - "version": "0.0.3", - "bundled": true - }, - "wrap-ansi": { - "version": "2.1.0", - "bundled": true, - "requires": { - "string-width": "1.0.2", - "strip-ansi": "3.0.1" - } - }, - "wrappy": { - "version": "1.0.2", - "bundled": true - }, - "write-file-atomic": { - "version": "2.3.0", - "bundled": true, - "requires": { - "graceful-fs": "4.1.11", - "imurmurhash": "0.1.4", - "signal-exit": "3.0.2" - } - }, - "write-json-file": { - "version": "2.2.0", - "bundled": true, - "requires": { - "detect-indent": "5.0.0", - "graceful-fs": "4.1.11", - "make-dir": "1.0.0", - "pify": "2.3.0", - "sort-keys": "1.1.2", - "write-file-atomic": "2.3.0" - }, - "dependencies": { - "detect-indent": { - "version": "5.0.0", - "bundled": true - }, - "sort-keys": { - "version": "1.1.2", - "bundled": true, - "requires": { - "is-plain-obj": "1.1.0" - } - } - } - }, - "write-pkg": { - "version": "3.1.0", - "bundled": true, - "requires": { - "sort-keys": "2.0.0", - "write-json-file": "2.2.0" - } - }, - "xdg-basedir": { - "version": "2.0.0", - "bundled": true, - "requires": { - "os-homedir": "1.0.2" - } - }, - "xmlbuilder": { - "version": "8.2.2", - "bundled": true, - "dev": true - }, - "xmldom": { - "version": "0.1.27", - "bundled": true, - "dev": true - }, - "xtend": { - "version": "4.0.1", - "bundled": true - }, - "y18n": { - "version": "3.2.1", - "bundled": true - }, - "yallist": { - "version": "2.1.2", - "bundled": true - }, - "yargs": { - "version": "7.1.0", - "bundled": true, - "dev": true, - "requires": { - "camelcase": "3.0.0", - "cliui": "3.2.0", - "decamelize": "1.2.0", - "get-caller-file": "1.0.2", - "os-locale": "1.4.0", - "read-pkg-up": "1.0.1", - "require-directory": "2.1.1", - "require-main-filename": "1.0.1", - "set-blocking": "2.0.0", - "string-width": "1.0.2", - "which-module": "1.0.0", - "y18n": "3.2.1", - "yargs-parser": "5.0.0" - } - }, - "yargs-parser": { - "version": "5.0.0", - "bundled": true, - "dev": true, - "requires": { - "camelcase": "3.0.0" - } - } - } - }, - "pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", - "dev": true - }, - "shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", - "dev": true, - "requires": { - "shebang-regex": "1.0.0" - } - }, - "shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", - "dev": true - }, - "which": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz", - "integrity": "sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==", - "dev": true, - "requires": { - "isexe": "2.0.0" - } - }, - "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", - "dev": true - } - } -} From 201ed2f436dd2d5888902b893345002dce192b47 Mon Sep 17 00:00:00 2001 From: Myer Nore Date: Tue, 12 Dec 2017 10:48:04 -0500 Subject: [PATCH 11/24] WIP mac signing - I'm abandoning in favor of simpler approach for now --- package.json | 1 + src/lib/Builder.ts | 12 +++++++----- src/lib/config/BuildConfig.ts | 17 +++++++++++------ src/lib/config/MacConfig.ts | 23 ++++++++++++++++------- src/lib/config/SignableConfig.ts | 32 ++++++++++++++++++++++++++++++++ src/lib/config/WinConfig.ts | 27 ++++++++++----------------- 6 files changed, 77 insertions(+), 35 deletions(-) create mode 100644 src/lib/config/SignableConfig.ts diff --git a/package.json b/package.json index bdca795..a25c2b4 100644 --- a/package.json +++ b/package.json @@ -12,6 +12,7 @@ "test": "npm run build && ava", "coverage": "nyc ava", "build": "tsc", + "watch": "tsc -w", "release": "npm test && standard-version" }, "repository": { diff --git a/src/lib/Builder.ts b/src/lib/Builder.ts index 907b5d3..69febe1 100644 --- a/src/lib/Builder.ts +++ b/src/lib/Builder.ts @@ -285,8 +285,9 @@ export class Builder { } - protected async signWinApp(config: BuildConfig, cwd: string, filesToSignGlobs: string[] = ['**/*.+(exe|dll)'], - ignore: string[] = []) { + protected async signApp(config: BuildConfig, cwd: string, + filesToSignGlobs: string[] = config.signing.filesToSignGlobs, + ignore: string[] = []) { const { signtoolPath, cliArgsInterpolated, cliArgs } = config.win.signing; @@ -310,7 +311,7 @@ export class Builder { debug(`signWinApp: no files to sign matched ${filesToSignGlobs}`); } } else { - debug(`signtool ${resolvedSigntool} does NOT exist`); + debug(`signWinApp: ${resolvedSigntool} does NOT exist`); } } } @@ -649,6 +650,7 @@ export class Builder { await this.prepareMacBuild(targetDir, appRoot, pkg, config); await this.copyFiles(platform, targetDir, appRoot, pkg, config); await this.renameMacApp(targetDir, appRoot, pkg, config); + await this.signApp(config, targetDir, ['**/*.+(|)']); break; case 'linux': await this.prepareLinuxBuild(targetDir, appRoot, pkg, config); @@ -749,7 +751,7 @@ export class Builder { // remove the uninstaller generator await remove(uninstallerGeneratorPath); // sign the generated installer - await this.signWinApp(config, sourceDir, ['**/*.+(exe|dll)'], + await this.signApp(config, sourceDir, ['**/*.+(exe|dll)'], [basename(uninstallerGeneratorPath)]); installerComposer = new SignableNsisInstaller(false, nsisComposerOptions); @@ -758,7 +760,7 @@ export class Builder { await this.doNsisBuild(sourceDir, installerComposer); if (doSigning) { - await this.signWinApp(config, distDir, [installerFileName]); + await this.signApp(config, distDir, [installerFileName]); } return installerNsisTarget; diff --git a/src/lib/config/BuildConfig.ts b/src/lib/config/BuildConfig.ts index 735080a..f142289 100644 --- a/src/lib/config/BuildConfig.ts +++ b/src/lib/config/BuildConfig.ts @@ -32,6 +32,8 @@ export class BuildConfig { public ffmpegIntegration: boolean = false; public strippedProperties: string[] = [ 'scripts', 'devDependencies', 'build' ]; + public filesToSignGlobs: [string] = ['']; + constructor(pkg: any = {}) { const options = pkg.build ? pkg.build : {}; @@ -87,12 +89,15 @@ export class BuildConfig { this.win.fileDescription = this.win.fileDescription ? this.win.fileDescription : pkg.description; this.win.productVersion = this.win.productVersion ? this.win.productVersion : pkg.version; this.win.fileVersion = this.win.fileVersion ? this.win.fileVersion : this.win.productVersion; - this.win.signing.cliArgsInterpolated = this.win.signing.cliArgs; - if (this.win.signing.cliArgsVarsFile) { - const {cliArgs, cliArgsVarsFile} = this.win.signing; - const cliArgsVarsFileAbsolutePath = resolve(process.cwd(), cliArgsVarsFile); - const envVars = dotenv.parse(readFileSync(cliArgsVarsFileAbsolutePath)); - this.win.signing.cliArgsInterpolated = parseTmpl(cliArgs, envVars); + + for (let config of [this.win, this.mac]) { + config.signing.cliArgsInterpolated = config.signing.cliArgs; + if (config.signing.cliArgsVarsFile) { + const {cliArgs, cliArgsVarsFile} = config.signing; + const cliArgsVarsFileAbsolutePath = resolve(process.cwd(), cliArgsVarsFile); + const envVars = dotenv.parse(readFileSync(cliArgsVarsFileAbsolutePath)); + config.signing.cliArgsInterpolated = parseTmpl(cliArgs, envVars); + } } this.mac.name = this.mac.name ? this.mac.name : pkg.name; diff --git a/src/lib/config/MacConfig.ts b/src/lib/config/MacConfig.ts index 7b47f2c..692e647 100644 --- a/src/lib/config/MacConfig.ts +++ b/src/lib/config/MacConfig.ts @@ -1,5 +1,6 @@ +import {SignableConfig} from './SignableConfig'; -export class MacConfig { +export class MacConfig extends SignableConfig { public name: string = ''; public displayName: string = ''; @@ -10,17 +11,25 @@ export class MacConfig { public plistStrings: any = {}; constructor(options: any = {}) { + super(options); + + // default filesToSign for Mac + this.signing.filesToSignGlobs = [ + '*/*/Contents/MacOS/nwjs', + '*/*/Contents/Versions/*/nwjs Framework.framework/*/', + '*/*/Contents/Versions/*/nwjs Framework.framework', + '*/*/Contents/Versions/*/nwjs Helper.app', + ]; Object.keys(this).map((key) => { - if(options[key] !== undefined) { - switch(key) { - default: - (this)[key] = options[key]; - break; + if (options[key] !== undefined) { + switch (key) { + default: + (this)[key] = options[key]; + break; } } }); - } } diff --git a/src/lib/config/SignableConfig.ts b/src/lib/config/SignableConfig.ts new file mode 100644 index 0000000..bdba1f8 --- /dev/null +++ b/src/lib/config/SignableConfig.ts @@ -0,0 +1,32 @@ + +export class SignableConfig { + + public signing: { + cliArgs: string, + cliArgsInterpolated?: string, + cliArgsVarsFile?: string, + filesToSignGlobs: [string], + signtoolPath: string, + } = { + cliArgs: '', + cliArgsInterpolated: '', + cliArgsVarsFile: '', + filesToSignGlobs: [''], + signtoolPath: '', + }; + + constructor(options: any = {}) { + + Object.keys(this).map((key) => { + if(options[key] !== undefined) { + switch(key) { + default: + (this)[key] = options[key]; + break; + } + } + }); + + } + +} diff --git a/src/lib/config/WinConfig.ts b/src/lib/config/WinConfig.ts index ef9e0c3..e7175ce 100644 --- a/src/lib/config/WinConfig.ts +++ b/src/lib/config/WinConfig.ts @@ -1,5 +1,6 @@ +import {SignableConfig} from './SignableConfig'; -export class WinConfig { +export class WinConfig extends SignableConfig { public productName: string = ''; public companyName: string = ''; @@ -14,26 +15,18 @@ export class WinConfig { LegalCopyright?: undefined, } = {}; public icon: string = undefined; - public signing: { - cliArgs: string, - cliArgsInterpolated?: string, - cliArgsVarsFile?: string, - signtoolPath: string, - } = { - cliArgs: '', - cliArgsInterpolated: '', - cliArgsVarsFile: '', - signtoolPath: '', - }; constructor(options: any = {}) { + super(options); + // default filesToSign for Windows + this.signing.filesToSignGlobs = ['**/*.+(exe|dll)']; Object.keys(this).map((key) => { - if(options[key] !== undefined) { - switch(key) { - default: - (this)[key] = options[key]; - break; + if (options[key] !== undefined) { + switch (key) { + default: + (this)[key] = options[key]; + break; } } }); From 0686348f4a29851fab7df4c92bf3b76a9920493f Mon Sep 17 00:00:00 2001 From: Myer Nore Date: Tue, 12 Dec 2017 14:40:17 -0500 Subject: [PATCH 12/24] Add exception handling to env var parsing --- src/lib/config/BuildConfig.ts | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/lib/config/BuildConfig.ts b/src/lib/config/BuildConfig.ts index f142289..ba6b881 100644 --- a/src/lib/config/BuildConfig.ts +++ b/src/lib/config/BuildConfig.ts @@ -95,8 +95,17 @@ export class BuildConfig { if (config.signing.cliArgsVarsFile) { const {cliArgs, cliArgsVarsFile} = config.signing; const cliArgsVarsFileAbsolutePath = resolve(process.cwd(), cliArgsVarsFile); - const envVars = dotenv.parse(readFileSync(cliArgsVarsFileAbsolutePath)); - config.signing.cliArgsInterpolated = parseTmpl(cliArgs, envVars); + try { + const actualArgsVarsFile = readFileSync(cliArgsVarsFileAbsolutePath); + const envVars = dotenv.parse(actualArgsVarsFile); + config.signing.cliArgsInterpolated = parseTmpl(cliArgs, envVars); + } catch (err) { + if (err.code === 'ENOENT') { + debug(`args vars file not found: ${cliArgsVarsFile}`) + } else { + throw err; + } + } } } From 1e91948c2f6388e77868a25b1621ade8de7a3450 Mon Sep 17 00:00:00 2001 From: Myer Nore Date: Tue, 12 Dec 2017 14:40:42 -0500 Subject: [PATCH 13/24] simplify defualt files to sign globs for mac --- src/lib/config/MacConfig.ts | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/src/lib/config/MacConfig.ts b/src/lib/config/MacConfig.ts index 692e647..860b3f1 100644 --- a/src/lib/config/MacConfig.ts +++ b/src/lib/config/MacConfig.ts @@ -15,10 +15,7 @@ export class MacConfig extends SignableConfig { // default filesToSign for Mac this.signing.filesToSignGlobs = [ - '*/*/Contents/MacOS/nwjs', - '*/*/Contents/Versions/*/nwjs Framework.framework/*/', - '*/*/Contents/Versions/*/nwjs Framework.framework', - '*/*/Contents/Versions/*/nwjs Helper.app', + '**/*', ]; Object.keys(this).map((key) => { From 3ce8fc5a298bcfbdd908ebbf2546c7d7c5a812a8 Mon Sep 17 00:00:00 2001 From: Myer Nore Date: Thu, 14 Dec 2017 10:02:20 -0500 Subject: [PATCH 14/24] add mac signing --- package.json | 2 + src/lib/Builder.ts | 478 +++++++++++++++++++------------ src/lib/config/BuildConfig.ts | 11 +- src/lib/config/MacConfig.ts | 5 + src/lib/config/SignableConfig.ts | 6 +- src/lib/util/index.ts | 26 +- 6 files changed, 327 insertions(+), 201 deletions(-) diff --git a/package.json b/package.json index a25c2b4..bb6f9da 100644 --- a/package.json +++ b/package.json @@ -26,6 +26,7 @@ }, "homepage": "https://github.com/evshiron/nwjs-builder-phoenix#readme", "devDependencies": { + "@types/appdmg": "^0.5.0", "@types/bluebird": "^3.5.3", "@types/debug": "0.0.29", "@types/dotenv": "^4.0.1", @@ -48,6 +49,7 @@ }, "dependencies": { "7zip-bin": "^2.0.4", + "appdmg": "^0.5.2", "bluebird": "^3.5.0", "debug": "^2.6.1", "dir-compare": "^1.3.0", diff --git a/src/lib/Builder.ts b/src/lib/Builder.ts index 69febe1..2e19c59 100644 --- a/src/lib/Builder.ts +++ b/src/lib/Builder.ts @@ -15,13 +15,14 @@ import { } from 'fs-extra'; import {basename, dirname, resolve} from 'path'; +import * as Appdmg from 'appdmg'; import * as semver from 'semver'; import {NsisVersionInfo} from './common'; import {BuildConfig} from './config'; +import {SignableConfig} from './config/SignableConfig'; import {Downloader} from './Downloader'; import {FFmpegDownloader} from './FFmpegDownloader'; -import {Nsis7Zipper, nsisBuild, NsisDiffer} from './nsis-gen'; -import {INsisComposerOptions, NsisComposer} from './nsis-gen/NsisComposer'; +import {INsisComposerOptions, Nsis7Zipper, nsisBuild, NsisComposer, NsisDiffer} from './nsis-gen'; import {SignableNsisInstaller} from './nsis-gen/SignableNsisInstaller'; import { compress, @@ -33,6 +34,7 @@ import { findRuntimeRoot, fixWindowsVersion, mergeOptions, + sortByDepth, spawnAsync, tmpDir, tmpName, @@ -93,40 +95,40 @@ export class Builder { const tasks: string[][] = []; - [ 'win', 'mac', 'linux' ].map((platform) => { - [ 'x86', 'x64' ].map((arch) => { - if((this.options)[platform] && (this.options)[arch]) { - tasks.push([ platform, arch ]); + ['win', 'mac', 'linux'].map((platform) => { + ['x86', 'x64'].map((arch) => { + if ((this.options)[platform] && (this.options)[arch]) { + tasks.push([platform, arch]); } }); }); - for(const task of this.options.tasks) { + for (const task of this.options.tasks) { - const [ platform, arch ] = task.split('-'); + const [platform, arch] = task.split('-'); - if([ 'win', 'mac', 'linux' ].indexOf(platform) >= 0) { - if([ 'x86', 'x64' ].indexOf(arch) >= 0) { - tasks.push([ platform, arch ]); + if (['win', 'mac', 'linux'].indexOf(platform) >= 0) { + if (['x86', 'x64'].indexOf(arch) >= 0) { + tasks.push([platform, arch]); } } } - if(!this.options.mute) { + if (!this.options.mute) { console.info('Starting building tasks...', { tasks, concurrent: this.options.concurrent, }); } - if(tasks.length == 0) { + if (tasks.length == 0) { throw new Error('ERROR_NO_TASK'); } - if(this.options.concurrent) { + if (this.options.concurrent) { - await Bluebird.map(tasks, async ([ platform, arch ]) => { + await Bluebird.map(tasks, async ([platform, arch]) => { const options: any = {}; options[platform] = true; @@ -139,13 +141,13 @@ export class Builder { const started = Date.now(); - if(!this.options.mute) { + if (!this.options.mute) { console.info(`Building for ${ platform }, ${ arch } starts...`); } await builder.build(); - if(!this.options.mute) { + if (!this.options.mute) { console.info(`Building for ${ platform }, ${ arch } ends within ${ this.getTimeDiff(started) }s.`); } @@ -159,22 +161,22 @@ export class Builder { debug('in build', 'config', config); - for(const [ platform, arch ] of tasks) { + for (const [platform, arch] of tasks) { const started = Date.now(); - if(!this.options.mute) { + if (!this.options.mute) { console.info(`Building for ${ platform }, ${ arch } starts...`); } try { await this.buildTask(platform, arch, pkg, config); } - catch(err) { + catch (err) { console.warn(err); } - if(!this.options.mute) { + if (!this.options.mute) { console.info(`Building for ${ platform }, ${ arch } ends within ${ this.getTimeDiff(started) }s.`); } @@ -192,8 +194,8 @@ export class Builder { const json: any = {}; - for(const key in pkg) { - if(pkg.hasOwnProperty(key) && config.strippedProperties.indexOf(key) === -1) { + for (const key in pkg) { + if (pkg.hasOwnProperty(key) && config.strippedProperties.indexOf(key) === -1) { json[key] = pkg[key]; } } @@ -205,17 +207,17 @@ export class Builder { protected parseOutputPattern(pattern: string, options: IParseOutputPatternOptions, pkg: any, config: BuildConfig) { return pattern.replace(/\$\{\s*(\w+)\s*\}/g, (match: string, key: string) => { - switch(key.toLowerCase()) { - case 'name': - return options.name; - case 'version': - return options.version; - case 'platform': - return options.platform; - case 'arch': - return options.arch; - default: - throw new Error('ERROR_KEY_UNKNOWN'); + switch (key.toLowerCase()) { + case 'name': + return options.name; + case 'version': + return options.version; + case 'platform': + return options.platform; + case 'arch': + return options.arch; + default: + throw new Error('ERROR_KEY_UNKNOWN'); } }); @@ -241,9 +243,9 @@ export class Builder { protected readPlist(path: string): Promise { return readFile(path, { - encoding: 'utf-8', + encoding: 'utf-8', }) - .then(data => plist.parse(data)); + .then(data => plist.parse(data)); } protected writePlist(path: string, p: any) { @@ -285,27 +287,62 @@ export class Builder { } - protected async signApp(config: BuildConfig, cwd: string, + protected async signApp(config: SignableConfig, cwd: string, filesToSignGlobs: string[] = config.signing.filesToSignGlobs, - ignore: string[] = []) { + ignore: string[] = [], isWin: boolean = true) { - const { signtoolPath, cliArgsInterpolated, cliArgs } = config.win.signing; + const {signtoolPath, cliArgsInterpolated} = config.signing; if (signtoolPath && cliArgsInterpolated) { const resolvedSigntool = resolve(signtoolPath); - if ( await fileExistsAsync(resolvedSigntool) && filesToSignGlobs) { - debug(`signWinApp: searching for files to sign with pattern ${filesToSignGlobs}`); + if (await fileExistsAsync(resolvedSigntool) && filesToSignGlobs) { + debug(`signApp: searching for files to sign with pattern ${filesToSignGlobs}`); // ignore EPERM issues with scandir // https://github.com/isaacs/node-glob/issues/284 const nodeGlobArgs = {strict: false, cwd, ignore}; const filesToSign = await globby(filesToSignGlobs, nodeGlobArgs); if (filesToSign) { - const cliArgsArr = cliArgsInterpolated.split(' ').concat(filesToSign); - debug(`signWinApp: cliArgs (will be interpolated? ${cliArgsInterpolated !== cliArgs}): `, cliArgsArr); - const { code } = await spawnAsync(resolvedSigntool, cliArgsArr, {cwd}); - - if(code !== 0) { - throw new Error(`ERROR_SIGNING args = ${ cliArgsArr.join(' ') }`); + if (isWin) { + const {code} = await spawnAsync( + resolvedSigntool, cliArgsInterpolated, {cwd}); + if (code !== 0) { + throw new Error( + `ERROR_SIGNING args = ${ cliArgsInterpolated.join(' ') }`); + } + } else { + // on mac, sign from inside out / from deepest to shallowest path + const depthSortedFiles = sortByDepth(filesToSign); + debug(`signApp: Mac - about to sign: `, depthSortedFiles, nodeGlobArgs, cliArgsInterpolated); + // noinspection TsLint + console.log(`signApp: signing starts-----------------`); + const promise = Bluebird.mapSeries(depthSortedFiles, (filePath: string) => { + // noinspection TsLint + console.log(`signApp: - ${filePath} ...`); + return spawnAsync( + resolvedSigntool, cliArgsInterpolated.concat([filePath]), {cwd}); + }); + const retValsArray = await promise; + const errs = retValsArray.filter(({code}) => code !== 0).map( + ({code, signal}) => { + return `caught nonzero exit code: ${code}: ${signal}`; + }, + ); + if (errs) { + const uniqueErrs = errs.reduce((prev: string[], cur: string) => { + if (prev.indexOf(cur) === -1) { + prev.push(cur); + } + return prev; + }, []); + // noinspection TsLint + console.log(`SignApp: encountered ${uniqueErrs.length} errors`); + // noinspection TsLint + uniqueErrs.map((err) => console.log(`SignApp: err - ${err}`)); + // noinspection TsLint + console.log(`SignApp: run build with DEBUG=build* to see error details`); + } + // noinspection TsLint + console.log(`signApp: signing ends-----------------`); } } else { debug(`signWinApp: no files to sign matched ${filesToSignGlobs}`); @@ -328,8 +365,8 @@ export class Builder { plist.CFBundleVersion = config.mac.version; plist.CFBundleShortVersionString = config.mac.version; - for(const key in config.mac.plistStrings) { - if(config.mac.plistStrings.hasOwnProperty(key)) { + for (const key in config.mac.plistStrings) { + if (config.mac.plistStrings.hasOwnProperty(key)) { plist[key] = config.mac.plistStrings[key]; } } @@ -342,7 +379,7 @@ export class Builder { const path = resolve(targetDir, './nwjs.app/Contents/Resources/app.icns'); - if(!config.mac.icon) { + if (!config.mac.icon) { return; } @@ -352,11 +389,11 @@ export class Builder { protected async fixMacMeta(targetDir: string, appRoot: string, pkg: any, config: BuildConfig) { - const files = await globby([ '**/InfoPlist.strings' ], { + const files = await globby(['**/InfoPlist.strings'], { cwd: targetDir, }); - for(const file of files) { + for (const file of files) { const path = resolve(targetDir, file); @@ -364,24 +401,24 @@ export class Builder { // We determine encoding by evaluating bytes of `CF` here. const data = await readFile(path); const encoding = data.indexOf(Buffer.from('43004600', 'hex')) >= 0 - ? 'ucs2' : 'utf-8'; + ? 'ucs2' : 'utf-8'; const strings = data.toString(encoding); const newStrings = strings.replace(/([A-Za-z]+)\s+=\s+"(.+?)";/g, (match: string, key: string, value: string) => { - switch(key) { - case 'CFBundleName': - return `${ key } = "${ config.mac.name }";`; - case 'CFBundleDisplayName': - return `${ key } = "${ config.mac.displayName }";`; - case 'CFBundleGetInfoString': - return `${ key } = "${ config.mac.version }";`; - case 'NSContactsUsageDescription': - return `${ key } = "${ config.mac.description }";`; - case 'NSHumanReadableCopyright': - return `${ key } = "${ config.mac.copyright }";`; - default: - return `${ key } = "${ value }";`; + switch (key) { + case 'CFBundleName': + return `${ key } = "${ config.mac.name }";`; + case 'CFBundleDisplayName': + return `${ key } = "${ config.mac.displayName }";`; + case 'CFBundleGetInfoString': + return `${ key } = "${ config.mac.version }";`; + case 'NSContactsUsageDescription': + return `${ key } = "${ config.mac.description }";`; + case 'NSHumanReadableCopyright': + return `${ key } = "${ config.mac.copyright }";`; + default: + return `${ key } = "${ value }";`; } }); @@ -446,12 +483,12 @@ export class Builder { ]; const dependenciesExcludes = await findExcludableDependencies(this.dir, pkg) - .then((excludable) => { - return excludable.map(excludable => [ excludable, `${ excludable }/**/*` ]); - }) - .then((excludes) => { - return Array.prototype.concat.apply([], excludes); - }); + .then((excludable) => { + return excludable.map(excludable => [excludable, `${ excludable }/**/*`]); + }) + .then((excludes) => { + return Array.prototype.concat.apply([], excludes); + }); debug('in copyFiles', 'dependenciesExcludes', dependenciesExcludes); @@ -459,7 +496,7 @@ export class Builder { ...config.excludes, ...generalExcludes, ...dependenciesExcludes, - ...[ config.output, `${ config.output }/**/*` ] + ...[config.output, `${ config.output }/**/*`] ]; debug('in copyFiles', 'ignore', ignore); @@ -478,49 +515,49 @@ export class Builder { debug('in copyFiles', 'config.files', config.files); debug('in copyFiles', 'files', files); - if(config.packed) { + if (config.packed) { - switch(platform) { - case 'win32': - case 'win': - case 'linux': + switch (platform) { + case 'win32': + case 'win': + case 'linux': - const nwFile = await tmpName({ - postfix: '.zip', - }); + const nwFile = await tmpName({ + postfix: '.zip', + }); - await compress(this.dir, files.filter((file) => !file.endsWith('/')), 'zip', nwFile); + await compress(this.dir, files.filter((file) => !file.endsWith('/')), 'zip', nwFile); - const { path: tempDir } = await tmpDir(); - await this.writeStrippedManifest(resolve(tempDir, 'package.json'), pkg, config); - await compress(tempDir, [ './package.json' ], 'zip', nwFile); - await remove(tempDir); + const {path: tempDir} = await tmpDir(); + await this.writeStrippedManifest(resolve(tempDir, 'package.json'), pkg, config); + await compress(tempDir, ['./package.json'], 'zip', nwFile); + await remove(tempDir); - const executable = await findExecutable(platform, targetDir); - await this.combineExecutable(executable, nwFile); + const executable = await findExecutable(platform, targetDir); + await this.combineExecutable(executable, nwFile); - await remove(nwFile); + await remove(nwFile); - break; - case 'darwin': - case 'osx': - case 'mac': + break; + case 'darwin': + case 'osx': + case 'mac': - for(const file of files) { - await copyFileAsync(resolve(this.dir, file), resolve(appRoot, file)); - } + for (const file of files) { + await copyFileAsync(resolve(this.dir, file), resolve(appRoot, file)); + } - await this.writeStrippedManifest(resolve(appRoot, 'package.json'), pkg, config); + await this.writeStrippedManifest(resolve(appRoot, 'package.json'), pkg, config); - break; - default: - throw new Error('ERROR_UNKNOWN_PLATFORM'); + break; + default: + throw new Error('ERROR_UNKNOWN_PLATFORM'); } } else { - for(const file of files) { + for (const file of files) { await copyFileAsync(resolve(this.dir, file), resolve(appRoot, file)); } @@ -539,7 +576,7 @@ export class Builder { showProgress: this.options.mute ? false : true, }); - if(!this.options.mute) { + if (!this.options.mute) { console.info('Fetching FFmpeg prebuilt...', { platform: downloader.options.platform, arch: downloader.options.arch, @@ -609,17 +646,17 @@ export class Builder { }, pkg, config)); const runtimeRoot = await findRuntimeRoot(platform, runtimeDir); const appRoot = resolve(targetDir, (() => { - switch(platform) { - case 'win32': - case 'win': - case 'linux': - return './'; - case 'darwin': - case 'osx': - case 'mac': - return './nwjs.app/Contents/Resources/app.nw/'; - default: - throw new Error('ERROR_UNKNOWN_PLATFORM'); + switch (platform) { + case 'win32': + case 'win': + case 'linux': + return './'; + case 'darwin': + case 'osx': + case 'mac': + return './nwjs.app/Contents/Resources/app.nw/'; + default: + throw new Error('ERROR_UNKNOWN_PLATFORM'); } })()); @@ -629,7 +666,7 @@ export class Builder { // dereference: true, }); - if(config.ffmpegIntegration) { + if (config.ffmpegIntegration) { await this.integrateFFmpeg(platform, arch, targetDir, pkg, config); } @@ -637,28 +674,29 @@ export class Builder { // Copy before refining might void the effort. - switch(platform) { - case 'win32': - case 'win': - await this.prepareWinBuild(targetDir, appRoot, pkg, config); - await this.copyFiles(platform, targetDir, appRoot, pkg, config); - await this.renameWinApp(targetDir, appRoot, pkg, config); - break; - case 'darwin': - case 'osx': - case 'mac': - await this.prepareMacBuild(targetDir, appRoot, pkg, config); - await this.copyFiles(platform, targetDir, appRoot, pkg, config); - await this.renameMacApp(targetDir, appRoot, pkg, config); - await this.signApp(config, targetDir, ['**/*.+(|)']); - break; - case 'linux': - await this.prepareLinuxBuild(targetDir, appRoot, pkg, config); - await this.copyFiles(platform, targetDir, appRoot, pkg, config); - await this.renameLinuxApp(targetDir, appRoot, pkg, config); - break; - default: - throw new Error('ERROR_UNKNOWN_PLATFORM'); + switch (platform) { + case 'win32': + case 'win': + await this.prepareWinBuild(targetDir, appRoot, pkg, config); + await this.copyFiles(platform, targetDir, appRoot, pkg, config); + await this.renameWinApp(targetDir, appRoot, pkg, config); + break; + case 'darwin': + case 'osx': + case 'mac': + await this.prepareMacBuild(targetDir, appRoot, pkg, config); + await this.copyFiles(platform, targetDir, appRoot, pkg, config); + await this.renameMacApp(targetDir, appRoot, pkg, config); + await this.signApp(config.mac, targetDir, config.mac.signing.filesToSignGlobs, + [], false); + break; + case 'linux': + await this.prepareLinuxBuild(targetDir, appRoot, pkg, config); + await this.copyFiles(platform, targetDir, appRoot, pkg, config); + await this.renameLinuxApp(targetDir, appRoot, pkg, config); + break; + default: + throw new Error('ERROR_UNKNOWN_PLATFORM'); } return targetDir; @@ -671,7 +709,7 @@ export class Builder { await remove(targetArchive); - const files = await globby([ '**/*' ], { + const files = await globby(['**/*'], { cwd: sourceDir, }); @@ -683,8 +721,8 @@ export class Builder { protected async buildNsisTarget(platform: string, arch: string, sourceDir: string, pkg: any, config: BuildConfig) { - if(platform != 'win') { - if(!this.options.mute) { + if (platform != 'win') { + if (!this.options.mute) { console.info(`Skip building nsis target for ${ platform }.`); } return; @@ -695,10 +733,10 @@ export class Builder { await versionInfo.addVersion(pkg.version, '', sourceDir); await versionInfo.addInstaller(pkg.version, arch, installerNsisTarget); - if(config.nsis.diffUpdaters) { + if (config.nsis.diffUpdaters) { - for(const version of await versionInfo.getVersions()) { - if(semver.gt(pkg.version, version)) { + for (const version of await versionInfo.getVersions()) { + if (semver.gt(pkg.version, version)) { await this.buildNsisDiffUpdater(platform, arch, versionInfo, version, pkg.version, pkg, config); } } @@ -742,8 +780,10 @@ export class Builder { let installerComposer = new NsisComposer(nsisComposerOptions); if (doSigning) { - const uninstallerComposer = new SignableNsisInstaller(true, { ...nsisComposerOptions, - output: resolve(sourceDir, 'make-Uninstall.exe')}); + const uninstallerComposer = new SignableNsisInstaller(true, { + ...nsisComposerOptions, + output: resolve(sourceDir, 'make-Uninstall.exe') + }); const uninstallerGeneratorPath = await this.doNsisBuild(sourceDir, uninstallerComposer, '-uninstaller-generator'); // generate the uninstaller by executing the generated fake installer @@ -751,7 +791,7 @@ export class Builder { // remove the uninstaller generator await remove(uninstallerGeneratorPath); // sign the generated installer - await this.signApp(config, sourceDir, ['**/*.+(exe|dll)'], + await this.signApp(config.win, sourceDir, ['**/*.+(exe|dll)'], [basename(uninstallerGeneratorPath)]); installerComposer = new SignableNsisInstaller(false, nsisComposerOptions); @@ -760,14 +800,14 @@ export class Builder { await this.doNsisBuild(sourceDir, installerComposer); if (doSigning) { - await this.signApp(config, distDir, [installerFileName]); + await this.signApp(config.win, distDir, [installerFileName]); } return installerNsisTarget; } protected async doNsisBuild(sourceDir: string, composer: NsisComposer, - nsisScriptSuffix: string = '' ) { + nsisScriptSuffix: string = '') { const distDir = resolve(dirname(sourceDir)); const scriptContents = await composer.make(); const scriptPath = resolve(distDir, `make-${basename(sourceDir)}${nsisScriptSuffix}.nsi`); @@ -780,8 +820,8 @@ export class Builder { protected async buildNsis7zTarget(platform: string, arch: string, sourceDir: string, pkg: any, config: BuildConfig) { - if(platform != 'win') { - if(!this.options.mute) { + if (platform != 'win') { + if (!this.options.mute) { console.info(`Skip building nsis7z target for ${ platform }.`); } return; @@ -829,10 +869,10 @@ export class Builder { await versionInfo.addVersion(pkg.version, '', sourceDir); await versionInfo.addInstaller(pkg.version, arch, targetNsis); - if(config.nsis.diffUpdaters) { + if (config.nsis.diffUpdaters) { - for(const version of await versionInfo.getVersions()) { - if(semver.gt(pkg.version, version)) { + for (const version of await versionInfo.getVersions()) { + if (semver.gt(pkg.version, version)) { await this.buildNsisDiffUpdater(platform, arch, versionInfo, version, pkg.version, pkg, config); } } @@ -842,10 +882,59 @@ export class Builder { await versionInfo.save(); } + protected async buildDmgTarget(platform: string, arch: string, sourceDir: string, pkg: any, config: BuildConfig) { + + if (platform !== 'mac') { + if (!this.options.mute) { + // noinspection TsLint + console.info(`Skip building dmg target for ${ platform }.`); + } + return; + } + if (!config.mac.appdmg) { + if (!this.options.mute) { + // noinspection TsLint + console.info(`Skipping .dmg creation, since appdmg config was not found`); + } + return; + } + + const appdmgConfig = config.mac.appdmg as Appdmg.Options; + const containingFolderName = basename(sourceDir); + const destFile = resolve(this.dir, config.output, `${containingFolderName}.dmg`); + const appDmgConfig = { + ...appdmgConfig, + basepath: sourceDir, + target: destFile, + }; + debug(`using target path for dmg: `, destFile); + debug(`using appDmg config options: `, appDmgConfig); + + const dmgPromise = new Promise((resolve, reject) => { + const dmgCreator = Appdmg(appDmgConfig); + + dmgCreator.on('finish', () => { + if (!this.options.mute) { + // noinspection TsLint + console.info('dmg target: end'); + } + resolve(); + }); + + dmgCreator.on('error', (err) => { + console.error(`error while creating dmg: `, err); + reject(err); + }); + }); + + await dmgPromise; + + } + protected async buildTask(platform: string, arch: string, pkg: any, config: BuildConfig) { - if(platform === 'mac' && arch === 'x86' && !config.nwVersion.includes('0.12.3')) { - if(!this.options.mute) { + if (platform === 'mac' && arch === 'x86' && !config.nwVersion.includes('0.12.3')) { + if (!this.options.mute) { console.info(`The NW.js binary for ${ platform }, ${ arch } isn't available for ${ config.nwVersion }, skipped.`); } throw new Error('ERROR_TASK_MAC_X86_SKIPPED'); @@ -860,7 +949,7 @@ export class Builder { showProgress: this.options.mute ? false : true, }); - if(!this.options.mute) { + if (!this.options.mute) { console.info('Fetching NW.js binary...', { platform: downloader.options.platform, arch: downloader.options.arch, @@ -871,58 +960,67 @@ export class Builder { const runtimeDir = await downloader.fetchAndExtract(); - if(!this.options.mute) { + if (!this.options.mute) { console.info('Building targets...'); } const started = Date.now(); - if(!this.options.mute) { + if (!this.options.mute) { console.info(`Building directory target starts...`); } const targetDir = await this.buildDirTarget(platform, arch, runtimeDir, pkg, config); - if(!this.options.mute) { + if (!this.options.mute) { console.info(`Building directory target ends within ${ this.getTimeDiff(started) }s.`); } // TODO: Consider using `Bluebird.map` to enable concurrent target building. - for(const target of config.targets) { + for (const target of config.targets) { const started = Date.now(); - switch(target) { - case 'zip': - case '7z': - if(!this.options.mute) { - console.info(`Building ${ target } archive target starts...`); - } - await this.buildArchiveTarget(target, targetDir); - if(!this.options.mute) { - console.info(`Building ${ target } archive target ends within ${ this.getTimeDiff(started) }s.`); - } - break; - case 'nsis': - if(!this.options.mute) { - console.info(`Building nsis target starts...`); - } - await this.buildNsisTarget(platform, arch, targetDir, pkg, config); - if(!this.options.mute) { - console.info(`Building nsis target ends within ${ this.getTimeDiff(started) }s.`); - } - break; - case 'nsis7z': - if(!this.options.mute) { - console.info(`Building nsis7z target starts...`); - } - await this.buildNsis7zTarget(platform, arch, targetDir, pkg, config); - if(!this.options.mute) { - console.info(`Building nsis7z target ends within ${ this.getTimeDiff(started) }s.`); - } - break; - default: - throw new Error('ERROR_UNKNOWN_TARGET'); + switch (target) { + case 'zip': + case '7z': + if (!this.options.mute) { + console.info(`Building ${ target } archive target starts...`); + } + await this.buildArchiveTarget(target, targetDir); + if (!this.options.mute) { + console.info(`Building ${ target } archive target ends within ${ this.getTimeDiff(started) }s.`); + } + break; + case 'nsis': + if (!this.options.mute) { + console.info(`Building nsis target starts...`); + } + await this.buildNsisTarget(platform, arch, targetDir, pkg, config); + if (!this.options.mute) { + console.info(`Building nsis target ends within ${ this.getTimeDiff(started) }s.`); + } + break; + case 'nsis7z': + if (!this.options.mute) { + console.info(`Building nsis7z target starts...`); + } + await this.buildNsis7zTarget(platform, arch, targetDir, pkg, config); + if (!this.options.mute) { + console.info(`Building nsis7z target ends within ${ this.getTimeDiff(started) }s.`); + } + break; + case 'dmg': + if (!this.options.mute) { + console.info(`Building dmg target starts...`); + } + await this.buildDmgTarget(platform, arch, targetDir, pkg, config); + if (!this.options.mute) { + console.info(`Building dmg target ends within ${ this.getTimeDiff(started) }s.`); + } + break; + default: + throw new Error('ERROR_UNKNOWN_TARGET'); } } diff --git a/src/lib/config/BuildConfig.ts b/src/lib/config/BuildConfig.ts index ba6b881..6959c4b 100644 --- a/src/lib/config/BuildConfig.ts +++ b/src/lib/config/BuildConfig.ts @@ -91,17 +91,20 @@ export class BuildConfig { this.win.fileVersion = this.win.fileVersion ? this.win.fileVersion : this.win.productVersion; for (let config of [this.win, this.mac]) { - config.signing.cliArgsInterpolated = config.signing.cliArgs; + config.signing.cliArgsInterpolated = config.signing.cliArgs.split(' '); if (config.signing.cliArgsVarsFile) { - const {cliArgs, cliArgsVarsFile} = config.signing; + const {cliArgsVarsFile} = config.signing; const cliArgsVarsFileAbsolutePath = resolve(process.cwd(), cliArgsVarsFile); try { const actualArgsVarsFile = readFileSync(cliArgsVarsFileAbsolutePath); const envVars = dotenv.parse(actualArgsVarsFile); - config.signing.cliArgsInterpolated = parseTmpl(cliArgs, envVars); + const interpolatedCliArgs = config.signing.cliArgsInterpolated.map( + (arg) => parseTmpl(arg, envVars)); + debug(`using interpolatedCliArgs CLI args: `, interpolatedCliArgs); + config.signing.cliArgsInterpolated = interpolatedCliArgs; } catch (err) { if (err.code === 'ENOENT') { - debug(`args vars file not found: ${cliArgsVarsFile}`) + debug(`args vars file not found: ${cliArgsVarsFile}`); } else { throw err; } diff --git a/src/lib/config/MacConfig.ts b/src/lib/config/MacConfig.ts index 860b3f1..a808446 100644 --- a/src/lib/config/MacConfig.ts +++ b/src/lib/config/MacConfig.ts @@ -1,3 +1,4 @@ +import * as appdmg from 'appdmg'; import {SignableConfig} from './SignableConfig'; export class MacConfig extends SignableConfig { @@ -9,6 +10,7 @@ export class MacConfig extends SignableConfig { public copyright: string = ''; public icon: string = undefined; public plistStrings: any = {}; + public appdmg: appdmg.Options | object = {}; constructor(options: any = {}) { super(options); @@ -21,6 +23,9 @@ export class MacConfig extends SignableConfig { Object.keys(this).map((key) => { if (options[key] !== undefined) { switch (key) { + case 'appdmg': + this.appdmg = options.appdmg as appdmg.Options; + break; default: (this)[key] = options[key]; break; diff --git a/src/lib/config/SignableConfig.ts b/src/lib/config/SignableConfig.ts index bdba1f8..2a6879d 100644 --- a/src/lib/config/SignableConfig.ts +++ b/src/lib/config/SignableConfig.ts @@ -3,14 +3,14 @@ export class SignableConfig { public signing: { cliArgs: string, - cliArgsInterpolated?: string, + cliArgsInterpolated?: string[], cliArgsVarsFile?: string, filesToSignGlobs: [string], signtoolPath: string, } = { cliArgs: '', - cliArgsInterpolated: '', - cliArgsVarsFile: '', + cliArgsInterpolated: [''], + cliArgsVarsFile: '.env', filesToSignGlobs: [''], signtoolPath: '', }; diff --git a/src/lib/util/index.ts b/src/lib/util/index.ts index 2aad046..06e4208 100644 --- a/src/lib/util/index.ts +++ b/src/lib/util/index.ts @@ -1,13 +1,15 @@ import {exec, spawn} from 'child_process'; import {exists} from 'fs'; import {lstat, outputFile, readFile, realpath} from 'fs-extra'; -import {dirname, join, relative} from 'path'; +import {dirname, join, relative, sep} from 'path'; import * as tmp from 'tmp'; tmp.setGracefulCleanup(); +// noinspection TsLint const debug = require('debug')('build:util'); +// noinspection TsLint const globby = require('globby'); export * from './archive'; @@ -258,11 +260,12 @@ export function spawnAsync(executable: string, args: string[], options: any = {} const child = spawn(executable, args, options); if(child.stdout) { - child.stdout.on('data', chunk => debug('in spawnAsync', 'stdout', chunk.toString())); + child.stdout.on('data', (chunk) => debug('in spawnAsync', 'stdout', chunk.toString())); } if(child.stderr) { - child.stderr.on('data', chunk => debug('in spawnAsync', 'stderr', chunk.toString())); + child.stderr.on( + 'data', (chunk) => debug('in spawnAsync', 'stderr', chunk.toString(), executable, args)); } child.on('close', (code, signal) => { @@ -309,8 +312,8 @@ export function execAsync(command: string, options: any = {}): Promise<{ child.unref(); resolve({ - stdout: null, stderr: null, + stdout: null, }); } @@ -340,3 +343,18 @@ export function parseTmpl(template: string, obj: object) { return getPathFromObj(path, obj); }); } + +/** + * Sort paths from depest to shallowest + * @param {string[]} pathList + * @returns {string[]} paths sorted from deepest to shallowest + */ +export function sortByDepth(pathList: string[]): string[] { + const depths = pathList.map((pathElement: string): [number, string] => { + return [pathElement.split(sep).length, pathElement]; + }); + const sortedDepths = depths.sort(([countA, pathElementA], [countB, pathElementB]) => { + return countA > countB ? -1 : countA < countB ? 1 : 0; + }); + return sortedDepths.map((elem: [number, string]) => elem[1]); +} From 1352cafcb5c11bd55ebbf33b4d70d49936905cc4 Mon Sep 17 00:00:00 2001 From: Myer Nore Date: Thu, 14 Dec 2017 13:29:09 -0500 Subject: [PATCH 15/24] add mac signing --- yarn.lock | 4566 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 4566 insertions(+) create mode 100644 yarn.lock diff --git a/yarn.lock b/yarn.lock new file mode 100644 index 0000000..096f7e7 --- /dev/null +++ b/yarn.lock @@ -0,0 +1,4566 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"7zip-bin-linux@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/7zip-bin-linux/-/7zip-bin-linux-1.1.0.tgz#2ca309fd6a2102e18bd81e3a5d91b39db9adab71" + +"7zip-bin-mac@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/7zip-bin-mac/-/7zip-bin-mac-1.0.1.tgz#3e68778bbf0926adc68159427074505d47555c02" + +"7zip-bin-win@^2.1.1": + version "2.1.1" + resolved "https://registry.yarnpkg.com/7zip-bin-win/-/7zip-bin-win-2.1.1.tgz#8acfc28bb34e53a9476b46ae85a97418e6035c20" + +"7zip-bin@^2.0.4": + version "2.2.7" + resolved "https://registry.yarnpkg.com/7zip-bin/-/7zip-bin-2.2.7.tgz#724802b8d6bda0bf2cfe61a4b86a820efc8ece93" + optionalDependencies: + "7zip-bin-linux" "^1.1.0" + "7zip-bin-mac" "^1.0.1" + "7zip-bin-win" "^2.1.1" + +"@ava/babel-preset-stage-4@^1.0.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@ava/babel-preset-stage-4/-/babel-preset-stage-4-1.1.0.tgz#ae60be881a0babf7d35f52aba770d1f6194f76bd" + dependencies: + babel-plugin-check-es2015-constants "^6.8.0" + babel-plugin-syntax-trailing-function-commas "^6.20.0" + babel-plugin-transform-async-to-generator "^6.16.0" + babel-plugin-transform-es2015-destructuring "^6.19.0" + babel-plugin-transform-es2015-function-name "^6.9.0" + babel-plugin-transform-es2015-modules-commonjs "^6.18.0" + babel-plugin-transform-es2015-parameters "^6.21.0" + babel-plugin-transform-es2015-spread "^6.8.0" + babel-plugin-transform-es2015-sticky-regex "^6.8.0" + babel-plugin-transform-es2015-unicode-regex "^6.11.0" + babel-plugin-transform-exponentiation-operator "^6.8.0" + package-hash "^1.2.0" + +"@ava/babel-preset-transform-test-files@^2.0.0": + version "2.0.1" + resolved "https://registry.yarnpkg.com/@ava/babel-preset-transform-test-files/-/babel-preset-transform-test-files-2.0.1.tgz#d75232cc6d71dc9c7eae4b76a9004fd81501d0c1" + dependencies: + babel-plugin-ava-throws-helper "^1.0.0" + babel-plugin-espower "^2.3.2" + package-hash "^1.2.0" + +"@ava/pretty-format@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@ava/pretty-format/-/pretty-format-1.1.0.tgz#d0a57d25eb9aeab9643bdd1a030642b91c123e28" + dependencies: + ansi-styles "^2.2.1" + esutils "^2.0.2" + +"@types/appdmg@^0.5.0": + version "0.5.0" + resolved "https://registry.yarnpkg.com/@types/appdmg/-/appdmg-0.5.0.tgz#41f0849c6467e49f6fca95cef7e8d1e3ff1c4493" + dependencies: + "@types/node" "*" + +"@types/bluebird@^3.5.3": + version "3.5.16" + resolved "https://registry.yarnpkg.com/@types/bluebird/-/bluebird-3.5.16.tgz#d65dbbf3bc62a0b3dd145f48dc6511b1ed8cc6bb" + +"@types/debug@0.0.29": + version "0.0.29" + resolved "https://registry.yarnpkg.com/@types/debug/-/debug-0.0.29.tgz#a1e514adfbd92f03a224ba54d693111dbf1f3754" + +"@types/dotenv@^4.0.1": + version "4.0.1" + resolved "https://registry.yarnpkg.com/@types/dotenv/-/dotenv-4.0.1.tgz#a0db2a2d25b5c01ff387f07c4f1e002d592873e8" + dependencies: + "@types/node" "*" + +"@types/es6-shim@^0.31.32": + version "0.31.35" + resolved "https://registry.yarnpkg.com/@types/es6-shim/-/es6-shim-0.31.35.tgz#d11920d8d4c938ad912c51e699ed7ba2505ba1eb" + +"@types/form-data@*": + version "2.2.0" + resolved "https://registry.yarnpkg.com/@types/form-data/-/form-data-2.2.0.tgz#a98aac91dc99857b6af24caef7ca6df302f31565" + dependencies: + "@types/node" "*" + +"@types/fs-extra@^3.0.0": + version "3.0.3" + resolved "https://registry.yarnpkg.com/@types/fs-extra/-/fs-extra-3.0.3.tgz#1d66eb670ebf657e57c0fda014df340c19d8aa0c" + dependencies: + "@types/node" "*" + +"@types/glob@*": + version "5.0.33" + resolved "https://registry.yarnpkg.com/@types/glob/-/glob-5.0.33.tgz#3dff7c6ce09d65abe919c7961dc3dee016f36ad7" + dependencies: + "@types/minimatch" "*" + "@types/node" "*" + +"@types/globby@^6.1.0": + version "6.1.0" + resolved "https://registry.yarnpkg.com/@types/globby/-/globby-6.1.0.tgz#7c25b975512a89effea2a656ca8cf6db7fb29d11" + dependencies: + "@types/glob" "*" + +"@types/minimatch@*": + version "3.0.1" + resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.1.tgz#b683eb60be358304ef146f5775db4c0e3696a550" + +"@types/node@*", "@types/node@^7.0.5": + version "7.0.46" + resolved "https://registry.yarnpkg.com/@types/node/-/node-7.0.46.tgz#c3dedd25558c676b3d6303e51799abb9c3f8f314" + +"@types/progress@^1.1.28": + version "1.1.28" + resolved "https://registry.yarnpkg.com/@types/progress/-/progress-1.1.28.tgz#b9c9bd9f985c14a147ace99a017fd8f208e11882" + dependencies: + "@types/node" "*" + +"@types/request@0.0.45": + version "0.0.45" + resolved "https://registry.yarnpkg.com/@types/request/-/request-0.0.45.tgz#c6e52be8b108eb035c35aa9af56a38a260c3e7e6" + dependencies: + "@types/form-data" "*" + "@types/node" "*" + +"@types/semver@^5.3.31": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@types/semver/-/semver-5.4.0.tgz#f3658535af7f1f502acd6da7daf405ffeb1f7ee4" + +"@types/tmp@0.0.32": + version "0.0.32" + resolved "https://registry.yarnpkg.com/@types/tmp/-/tmp-0.0.32.tgz#0d3cb31022f8427ea58c008af32b80da126ca4e3" + +"@types/yargs@^6.6.0": + version "6.6.0" + resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-6.6.0.tgz#91f8e2580a8083049f78311c059aa57d6949df6b" + +JSONStream@^1.0.4: + version "1.3.1" + resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-1.3.1.tgz#707f761e01dae9e16f1bcf93703b78c70966579a" + dependencies: + jsonparse "^1.2.0" + through ">=2.2.7 <3" + +abbrev@1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" + +add-stream@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/add-stream/-/add-stream-1.0.0.tgz#6a7990437ca736d5e1288db92bd3266d5f5cb2aa" + +ajv@^4.9.1: + version "4.11.8" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.8.tgz#82ffb02b29e662ae53bdc20af15947706739c536" + dependencies: + co "^4.6.0" + json-stable-stringify "^1.0.1" + +align-text@^0.1.1, align-text@^0.1.3: + version "0.1.4" + resolved "https://registry.yarnpkg.com/align-text/-/align-text-0.1.4.tgz#0cd90a561093f35d0a99256c22b7069433fad117" + dependencies: + kind-of "^3.0.2" + longest "^1.0.1" + repeat-string "^1.5.2" + +amdefine@>=0.0.4: + version "1.0.1" + resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" + +ansi-align@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-1.1.0.tgz#2f0c1658829739add5ebb15e6b0c6e3423f016ba" + dependencies: + string-width "^1.0.1" + +ansi-align@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-2.0.0.tgz#c36aeccba563b89ceb556f3690f0b1d9e3547f7f" + dependencies: + string-width "^2.0.0" + +ansi-escapes@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.0.0.tgz#ec3e8b4e9f8064fc02c3ac9b65f1c275bda8ef92" + +ansi-regex@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" + +ansi-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" + +ansi-styles@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" + +ansi-styles@^3.1.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.0.tgz#c159b8d5be0f9e5a6f346dab94f16ce022161b88" + dependencies: + color-convert "^1.9.0" + +ansi-styles@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-1.0.0.tgz#cb102df1c56f5123eab8b67cd7b98027a0279178" + +anymatch@^1.3.0: + version "1.3.2" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-1.3.2.tgz#553dcb8f91e3c889845dfdba34c77721b90b9d7a" + dependencies: + micromatch "^2.1.5" + normalize-path "^2.0.0" + +appdmg@^0.5.2: + version "0.5.2" + resolved "https://registry.yarnpkg.com/appdmg/-/appdmg-0.5.2.tgz#85732299b508f040473fa43ab6f6bce8b7eadc98" + dependencies: + async "^1.4.2" + buffer-alloc "^1.1.0" + cp-file "^3.1.0" + ds-store "^0.1.5" + execa "^0.4.0" + fs-temp "^1.0.0" + fs-xattr "^0.1.14" + image-size "^0.5.0" + is-my-json-valid "^2.13.1" + minimist "^1.1.3" + parse-color "^1.0.0" + repeat-string "^1.5.4" + +append-transform@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/append-transform/-/append-transform-0.4.0.tgz#d76ebf8ca94d276e247a36bad44a4b74ab611991" + dependencies: + default-require-extensions "^1.0.0" + +aproba@^1.0.3: + version "1.2.0" + resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" + +archy@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/archy/-/archy-1.0.0.tgz#f9c8c13757cc1dd7bc379ac77b2c62a5c2868c40" + +are-we-there-yet@~1.1.2: + version "1.1.4" + resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz#bb5dca382bb94f05e15194373d16fd3ba1ca110d" + dependencies: + delegates "^1.0.0" + readable-stream "^2.0.6" + +arr-diff@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-2.0.0.tgz#8f3b827f955a8bd669697e4a4256ac3ceae356cf" + dependencies: + arr-flatten "^1.0.1" + +arr-exclude@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/arr-exclude/-/arr-exclude-1.0.0.tgz#dfc7c2e552a270723ccda04cf3128c8cbfe5c631" + +arr-flatten@^1.0.1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" + +array-buffer-from-string@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/array-buffer-from-string/-/array-buffer-from-string-0.1.0.tgz#3b14351f86149d84efc612c5ada7ed85169d7b07" + +array-differ@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-1.0.0.tgz#eff52e3758249d33be402b8bb8e564bb2b5d4031" + +array-find-index@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1" + +array-ify@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/array-ify/-/array-ify-1.0.0.tgz#9e528762b4a9066ad163a6962a364418e9626ece" + +array-union@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" + dependencies: + array-uniq "^1.0.1" + +array-uniq@^1.0.1, array-uniq@^1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" + +array-unique@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53" + +arrify@^1.0.0, arrify@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" + +asn1@~0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.3.tgz#dac8787713c9966849fc8180777ebe9c1ddf3b86" + +assert-plus@1.0.0, assert-plus@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" + +assert-plus@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.2.0.tgz#d74e1b87e7affc0db8aadb7021f3fe48101ab234" + +async-each@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d" + +async@^1.4.0, async@^1.4.2, async@^1.5.0: + version "1.5.2" + resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" + +asynckit@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" + +attempt-x@^1.1.0, attempt-x@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/attempt-x/-/attempt-x-1.1.1.tgz#fba64e96ce03c3e0bd92c92622061c4df387cb76" + +auto-bind@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/auto-bind/-/auto-bind-1.1.0.tgz#93b864dc7ee01a326281775d5c75ca0a751e5961" + +ava-init@^0.2.0: + version "0.2.1" + resolved "https://registry.yarnpkg.com/ava-init/-/ava-init-0.2.1.tgz#75ac4c8553326290d2866e63b62fa7035684bd58" + dependencies: + arr-exclude "^1.0.0" + execa "^0.7.0" + has-yarn "^1.0.0" + read-pkg-up "^2.0.0" + write-pkg "^3.1.0" + +ava@^0.18.2: + version "0.18.2" + resolved "https://registry.yarnpkg.com/ava/-/ava-0.18.2.tgz#79253d1636077034a2780bb55b5c3e6c3d7f312f" + dependencies: + "@ava/babel-preset-stage-4" "^1.0.0" + "@ava/babel-preset-transform-test-files" "^2.0.0" + "@ava/pretty-format" "^1.1.0" + arr-flatten "^1.0.1" + array-union "^1.0.1" + array-uniq "^1.0.2" + arrify "^1.0.0" + auto-bind "^1.1.0" + ava-init "^0.2.0" + babel-code-frame "^6.16.0" + babel-core "^6.17.0" + bluebird "^3.0.0" + caching-transform "^1.0.0" + chalk "^1.0.0" + chokidar "^1.4.2" + clean-stack "^1.1.1" + clean-yaml-object "^0.1.0" + cli-cursor "^2.1.0" + cli-spinners "^1.0.0" + cli-truncate "^0.2.0" + co-with-promise "^4.6.0" + code-excerpt "^2.1.0" + common-path-prefix "^1.0.0" + convert-source-map "^1.2.0" + core-assert "^0.2.0" + currently-unhandled "^0.4.1" + debug "^2.2.0" + diff "^3.0.1" + dot-prop "^4.1.0" + empower-core "^0.6.1" + equal-length "^1.0.0" + figures "^2.0.0" + find-cache-dir "^0.1.1" + fn-name "^2.0.0" + get-port "^2.1.0" + globby "^6.0.0" + has-flag "^2.0.0" + ignore-by-default "^1.0.0" + indent-string "^3.0.0" + is-ci "^1.0.7" + is-generator-fn "^1.0.0" + is-obj "^1.0.0" + is-observable "^0.2.0" + is-promise "^2.1.0" + jest-snapshot "^18.1.0" + last-line-stream "^1.0.0" + lodash.debounce "^4.0.3" + lodash.difference "^4.3.0" + lodash.flatten "^4.2.0" + lodash.isequal "^4.5.0" + loud-rejection "^1.2.0" + matcher "^0.1.1" + max-timeout "^1.0.0" + md5-hex "^2.0.0" + meow "^3.7.0" + ms "^0.7.1" + multimatch "^2.1.0" + observable-to-promise "^0.4.0" + option-chain "^0.1.0" + package-hash "^1.2.0" + pkg-conf "^2.0.0" + plur "^2.0.0" + pretty-ms "^2.0.0" + require-precompiled "^0.1.0" + resolve-cwd "^1.0.0" + slash "^1.0.0" + source-map-support "^0.4.0" + stack-utils "^1.0.0" + strip-ansi "^3.0.1" + strip-bom-buf "^1.0.0" + time-require "^0.1.2" + unique-temp-dir "^1.0.0" + update-notifier "^1.0.0" + +aws-sign2@~0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.6.0.tgz#14342dd38dbcc94d0e5b87d763cd63612c0e794f" + +aws4@^1.2.1: + version "1.6.0" + resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e" + +babel-code-frame@^6.16.0, babel-code-frame@^6.20.0, babel-code-frame@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" + dependencies: + chalk "^1.1.3" + esutils "^2.0.2" + js-tokens "^3.0.2" + +babel-core@^6.17.0, babel-core@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.0.tgz#af32f78b31a6fcef119c87b0fd8d9753f03a0bb8" + dependencies: + babel-code-frame "^6.26.0" + babel-generator "^6.26.0" + babel-helpers "^6.24.1" + babel-messages "^6.23.0" + babel-register "^6.26.0" + babel-runtime "^6.26.0" + babel-template "^6.26.0" + babel-traverse "^6.26.0" + babel-types "^6.26.0" + babylon "^6.18.0" + convert-source-map "^1.5.0" + debug "^2.6.8" + json5 "^0.5.1" + lodash "^4.17.4" + minimatch "^3.0.4" + path-is-absolute "^1.0.1" + private "^0.1.7" + slash "^1.0.0" + source-map "^0.5.6" + +babel-generator@^6.1.0, babel-generator@^6.18.0, babel-generator@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.0.tgz#ac1ae20070b79f6e3ca1d3269613053774f20dc5" + dependencies: + babel-messages "^6.23.0" + babel-runtime "^6.26.0" + babel-types "^6.26.0" + detect-indent "^4.0.0" + jsesc "^1.3.0" + lodash "^4.17.4" + source-map "^0.5.6" + trim-right "^1.0.1" + +babel-helper-builder-binary-assignment-operator-visitor@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz#cce4517ada356f4220bcae8a02c2b346f9a56664" + dependencies: + babel-helper-explode-assignable-expression "^6.24.1" + babel-runtime "^6.22.0" + babel-types "^6.24.1" + +babel-helper-call-delegate@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz#ece6aacddc76e41c3461f88bfc575bd0daa2df8d" + dependencies: + babel-helper-hoist-variables "^6.24.1" + babel-runtime "^6.22.0" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + +babel-helper-explode-assignable-expression@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz#f25b82cf7dc10433c55f70592d5746400ac22caa" + dependencies: + babel-runtime "^6.22.0" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + +babel-helper-function-name@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz#d3475b8c03ed98242a25b48351ab18399d3580a9" + dependencies: + babel-helper-get-function-arity "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + +babel-helper-get-function-arity@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz#8f7782aa93407c41d3aa50908f89b031b1b6853d" + dependencies: + babel-runtime "^6.22.0" + babel-types "^6.24.1" + +babel-helper-hoist-variables@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz#1ecb27689c9d25513eadbc9914a73f5408be7a76" + dependencies: + babel-runtime "^6.22.0" + babel-types "^6.24.1" + +babel-helper-regex@^6.24.1: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz#325c59f902f82f24b74faceed0363954f6495e72" + dependencies: + babel-runtime "^6.26.0" + babel-types "^6.26.0" + lodash "^4.17.4" + +babel-helper-remap-async-to-generator@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz#5ec581827ad723fecdd381f1c928390676e4551b" + dependencies: + babel-helper-function-name "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + +babel-helpers@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.24.1.tgz#3471de9caec388e5c850e597e58a26ddf37602b2" + dependencies: + babel-runtime "^6.22.0" + babel-template "^6.24.1" + +babel-messages@^6.23.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e" + dependencies: + babel-runtime "^6.22.0" + +babel-plugin-ava-throws-helper@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/babel-plugin-ava-throws-helper/-/babel-plugin-ava-throws-helper-1.0.0.tgz#8fe6e79d2fd19838b5c3649f89cfb03fd563e241" + dependencies: + babel-template "^6.7.0" + babel-types "^6.7.2" + +babel-plugin-check-es2015-constants@^6.8.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz#35157b101426fd2ffd3da3f75c7d1e91835bbf8a" + dependencies: + babel-runtime "^6.22.0" + +babel-plugin-espower@^2.3.2: + version "2.3.2" + resolved "https://registry.yarnpkg.com/babel-plugin-espower/-/babel-plugin-espower-2.3.2.tgz#5516b8fcdb26c9f0e1d8160749f6e4c65e71271e" + dependencies: + babel-generator "^6.1.0" + babylon "^6.1.0" + call-matcher "^1.0.0" + core-js "^2.0.0" + espower-location-detector "^1.0.0" + espurify "^1.6.0" + estraverse "^4.1.1" + +babel-plugin-syntax-async-functions@^6.8.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz#cad9cad1191b5ad634bf30ae0872391e0647be95" + +babel-plugin-syntax-exponentiation-operator@^6.8.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz#9ee7e8337290da95288201a6a57f4170317830de" + +babel-plugin-syntax-trailing-function-commas@^6.20.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz#ba0360937f8d06e40180a43fe0d5616fff532cf3" + +babel-plugin-transform-async-to-generator@^6.16.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz#6536e378aff6cb1d5517ac0e40eb3e9fc8d08761" + dependencies: + babel-helper-remap-async-to-generator "^6.24.1" + babel-plugin-syntax-async-functions "^6.8.0" + babel-runtime "^6.22.0" + +babel-plugin-transform-es2015-destructuring@^6.19.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz#997bb1f1ab967f682d2b0876fe358d60e765c56d" + dependencies: + babel-runtime "^6.22.0" + +babel-plugin-transform-es2015-function-name@^6.9.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz#834c89853bc36b1af0f3a4c5dbaa94fd8eacaa8b" + dependencies: + babel-helper-function-name "^6.24.1" + babel-runtime "^6.22.0" + babel-types "^6.24.1" + +babel-plugin-transform-es2015-modules-commonjs@^6.18.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.0.tgz#0d8394029b7dc6abe1a97ef181e00758dd2e5d8a" + dependencies: + babel-plugin-transform-strict-mode "^6.24.1" + babel-runtime "^6.26.0" + babel-template "^6.26.0" + babel-types "^6.26.0" + +babel-plugin-transform-es2015-parameters@^6.21.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz#57ac351ab49caf14a97cd13b09f66fdf0a625f2b" + dependencies: + babel-helper-call-delegate "^6.24.1" + babel-helper-get-function-arity "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + +babel-plugin-transform-es2015-spread@^6.8.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz#d6d68a99f89aedc4536c81a542e8dd9f1746f8d1" + dependencies: + babel-runtime "^6.22.0" + +babel-plugin-transform-es2015-sticky-regex@^6.8.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz#00c1cdb1aca71112cdf0cf6126c2ed6b457ccdbc" + dependencies: + babel-helper-regex "^6.24.1" + babel-runtime "^6.22.0" + babel-types "^6.24.1" + +babel-plugin-transform-es2015-unicode-regex@^6.11.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz#d38b12f42ea7323f729387f18a7c5ae1faeb35e9" + dependencies: + babel-helper-regex "^6.24.1" + babel-runtime "^6.22.0" + regexpu-core "^2.0.0" + +babel-plugin-transform-exponentiation-operator@^6.8.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz#2ab0c9c7f3098fa48907772bb813fe41e8de3a0e" + dependencies: + babel-helper-builder-binary-assignment-operator-visitor "^6.24.1" + babel-plugin-syntax-exponentiation-operator "^6.8.0" + babel-runtime "^6.22.0" + +babel-plugin-transform-strict-mode@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz#d5faf7aa578a65bbe591cf5edae04a0c67020758" + dependencies: + babel-runtime "^6.22.0" + babel-types "^6.24.1" + +babel-register@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.26.0.tgz#6ed021173e2fcb486d7acb45c6009a856f647071" + dependencies: + babel-core "^6.26.0" + babel-runtime "^6.26.0" + core-js "^2.5.0" + home-or-tmp "^2.0.0" + lodash "^4.17.4" + mkdirp "^0.5.1" + source-map-support "^0.4.15" + +babel-runtime@^6.22.0, babel-runtime@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" + dependencies: + core-js "^2.4.0" + regenerator-runtime "^0.11.0" + +babel-template@^6.16.0, babel-template@^6.24.1, babel-template@^6.26.0, babel-template@^6.7.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02" + dependencies: + babel-runtime "^6.26.0" + babel-traverse "^6.26.0" + babel-types "^6.26.0" + babylon "^6.18.0" + lodash "^4.17.4" + +babel-traverse@^6.18.0, babel-traverse@^6.24.1, babel-traverse@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee" + dependencies: + babel-code-frame "^6.26.0" + babel-messages "^6.23.0" + babel-runtime "^6.26.0" + babel-types "^6.26.0" + babylon "^6.18.0" + debug "^2.6.8" + globals "^9.18.0" + invariant "^2.2.2" + lodash "^4.17.4" + +babel-types@^6.18.0, babel-types@^6.24.1, babel-types@^6.26.0, babel-types@^6.7.2: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497" + dependencies: + babel-runtime "^6.26.0" + esutils "^2.0.2" + lodash "^4.17.4" + to-fast-properties "^1.0.3" + +babylon@^6.1.0, babylon@^6.18.0: + version "6.18.0" + resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" + +balanced-match@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" + +base32-encode@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/base32-encode/-/base32-encode-0.1.0.tgz#1ebc5c9ccfabf6c278c8639288ba4e50ee2bb1f5" + +base64-js@1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.2.0.tgz#a39992d723584811982be5e290bb6a53d86700f1" + +bcrypt-pbkdf@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz#63bc5dcb61331b92bc05fd528953c33462a06f8d" + dependencies: + tweetnacl "^0.14.3" + +binary-extensions@^1.0.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.10.0.tgz#9aeb9a6c5e88638aad171e167f5900abe24835d0" + +block-stream@*: + version "0.0.9" + resolved "https://registry.yarnpkg.com/block-stream/-/block-stream-0.0.9.tgz#13ebfe778a03205cfe03751481ebb4b3300c126a" + dependencies: + inherits "~2.0.0" + +bluebird@3.4.1: + version "3.4.1" + resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.4.1.tgz#b731ddf48e2dd3bedac2e75e1215a11bcb91fa07" + +bluebird@^3.0.0, bluebird@^3.5.0: + version "3.5.1" + resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.1.tgz#d9551f9de98f1fcda1e683d17ee91a0602ee2eb9" + +boom@2.x.x: + version "2.10.1" + resolved "https://registry.yarnpkg.com/boom/-/boom-2.10.1.tgz#39c8918ceff5799f83f9492a848f625add0c766f" + dependencies: + hoek "2.x.x" + +boxen@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/boxen/-/boxen-0.6.0.tgz#8364d4248ac34ff0ef1b2f2bf49a6c60ce0d81b6" + dependencies: + ansi-align "^1.1.0" + camelcase "^2.1.0" + chalk "^1.1.1" + cli-boxes "^1.0.0" + filled-array "^1.0.0" + object-assign "^4.0.1" + repeating "^2.0.0" + string-width "^1.0.1" + widest-line "^1.0.0" + +boxen@^1.2.1: + version "1.2.2" + resolved "https://registry.yarnpkg.com/boxen/-/boxen-1.2.2.tgz#3f1d4032c30ffea9d4b02c322eaf2ea741dcbce5" + dependencies: + ansi-align "^2.0.0" + camelcase "^4.0.0" + chalk "^2.0.1" + cli-boxes "^1.0.0" + string-width "^2.0.0" + term-size "^1.2.0" + widest-line "^1.0.0" + +bplist-creator@~0.0.3: + version "0.0.7" + resolved "https://registry.yarnpkg.com/bplist-creator/-/bplist-creator-0.0.7.tgz#37df1536092824b87c42f957b01344117372ae45" + dependencies: + stream-buffers "~2.2.0" + +brace-expansion@^1.0.0, brace-expansion@^1.1.7: + version "1.1.8" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.8.tgz#c07b211c7c952ec1f8efd51a77ef0d1d3990a292" + dependencies: + balanced-match "^1.0.0" + concat-map "0.0.1" + +braces@^1.8.2: + version "1.8.5" + resolved "https://registry.yarnpkg.com/braces/-/braces-1.8.5.tgz#ba77962e12dff969d6b76711e914b737857bf6a7" + dependencies: + expand-range "^1.8.1" + preserve "^0.2.0" + repeat-element "^1.1.2" + +buf-compare@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/buf-compare/-/buf-compare-1.0.1.tgz#fef28da8b8113a0a0db4430b0b6467b69730b34a" + +buffer-alloc-unsafe@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/buffer-alloc-unsafe/-/buffer-alloc-unsafe-0.1.1.tgz#ffe1f67551dd055737de253337bfe853dfab1a6a" + +buffer-alloc@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/buffer-alloc/-/buffer-alloc-1.1.0.tgz#05514d33bf1656d3540c684f65b1202e90eca303" + dependencies: + buffer-alloc-unsafe "^0.1.0" + buffer-fill "^0.1.0" + +buffer-equal@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/buffer-equal/-/buffer-equal-1.0.0.tgz#59616b498304d556abd466966b22eeda3eca5fbe" + +buffer-fill@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/buffer-fill/-/buffer-fill-0.1.0.tgz#ca9470e8d4d1b977fd7543f4e2ab6a7dc95101a8" + +buffer-from@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-0.1.1.tgz#57b18b1da0a19ec06f33837a5275a242351bd75e" + dependencies: + is-array-buffer-x "^1.0.13" + +builtin-modules@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" + +byline@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/byline/-/byline-5.0.0.tgz#741c5216468eadc457b03410118ad77de8c1ddb1" + +cached-constructors-x@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/cached-constructors-x/-/cached-constructors-x-1.0.0.tgz#c421e3892a4b6f7794434bdcffd1299b330c181b" + +caching-transform@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/caching-transform/-/caching-transform-1.0.1.tgz#6dbdb2f20f8d8fbce79f3e94e9d1742dcdf5c0a1" + dependencies: + md5-hex "^1.2.0" + mkdirp "^0.5.1" + write-file-atomic "^1.1.4" + +call-matcher@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/call-matcher/-/call-matcher-1.0.1.tgz#5134d077984f712a54dad3cbf62de28dce416ca8" + dependencies: + core-js "^2.0.0" + deep-equal "^1.0.0" + espurify "^1.6.0" + estraverse "^4.0.0" + +call-signature@0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/call-signature/-/call-signature-0.0.2.tgz#a84abc825a55ef4cb2b028bd74e205a65b9a4996" + +camelcase-keys@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7" + dependencies: + camelcase "^2.0.0" + map-obj "^1.0.0" + +camelcase@^1.0.2: + version "1.2.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-1.2.1.tgz#9bb5304d2e0b56698b2c758b08a3eaa9daa58a39" + +camelcase@^2.0.0, camelcase@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" + +camelcase@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a" + +camelcase@^4.0.0, camelcase@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" + +capture-stack-trace@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/capture-stack-trace/-/capture-stack-trace-1.0.0.tgz#4a6fa07399c26bba47f0b2496b4d0fb408c5550d" + +caseless@~0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" + +center-align@^0.1.1: + version "0.1.3" + resolved "https://registry.yarnpkg.com/center-align/-/center-align-0.1.3.tgz#aa0d32629b6ee972200411cbd4461c907bc2b7ad" + dependencies: + align-text "^0.1.3" + lazy-cache "^1.0.3" + +chalk@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-0.4.0.tgz#5199a3ddcd0c1efe23bc08c1b027b06176e0c64f" + dependencies: + ansi-styles "~1.0.0" + has-color "~0.1.0" + strip-ansi "~0.1.0" + +chalk@^1.0.0, chalk@^1.1.1, chalk@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" + dependencies: + ansi-styles "^2.2.1" + escape-string-regexp "^1.0.2" + has-ansi "^2.0.0" + strip-ansi "^3.0.0" + supports-color "^2.0.0" + +chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.2.0.tgz#477b3bf2f9b8fd5ca9e429747e37f724ee7af240" + dependencies: + ansi-styles "^3.1.0" + escape-string-regexp "^1.0.5" + supports-color "^4.0.0" + +chokidar@^1.4.2: + version "1.7.0" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-1.7.0.tgz#798e689778151c8076b4b360e5edd28cda2bb468" + dependencies: + anymatch "^1.3.0" + async-each "^1.0.0" + glob-parent "^2.0.0" + inherits "^2.0.1" + is-binary-path "^1.0.0" + is-glob "^2.0.0" + path-is-absolute "^1.0.0" + readdirp "^2.0.0" + optionalDependencies: + fsevents "^1.0.0" + +ci-info@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-1.1.1.tgz#47b44df118c48d2597b56d342e7e25791060171a" + +clean-stack@^1.1.1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-1.3.0.tgz#9e821501ae979986c46b1d66d2d432db2fd4ae31" + +clean-yaml-object@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/clean-yaml-object/-/clean-yaml-object-0.1.0.tgz#63fb110dc2ce1a84dc21f6d9334876d010ae8b68" + +cli-boxes@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-1.0.0.tgz#4fa917c3e59c94a004cd61f8ee509da651687143" + +cli-cursor@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" + dependencies: + restore-cursor "^2.0.0" + +cli-spinners@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-1.1.0.tgz#f1847b168844d917a671eb9d147e3df497c90d06" + +cli-truncate@^0.2.0: + version "0.2.1" + resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-0.2.1.tgz#9f15cfbb0705005369216c626ac7d05ab90dd574" + dependencies: + slice-ansi "0.0.4" + string-width "^1.0.1" + +cli-width@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.0.tgz#ff19ede8a9a5e579324147b0c11f0fbcbabed639" + +cliui@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-2.1.0.tgz#4b475760ff80264c762c3a1719032e91c7fea0d1" + dependencies: + center-align "^0.1.1" + right-align "^0.1.1" + wordwrap "0.0.2" + +cliui@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d" + dependencies: + string-width "^1.0.1" + strip-ansi "^3.0.1" + wrap-ansi "^2.0.0" + +clone@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.2.tgz#260b7a99ebb1edfe247538175f783243cb19d149" + +cmd-shim@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/cmd-shim/-/cmd-shim-2.0.2.tgz#6fcbda99483a8fd15d7d30a196ca69d688a2efdb" + dependencies: + graceful-fs "^4.1.2" + mkdirp "~0.5.0" + +co-with-promise@^4.6.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/co-with-promise/-/co-with-promise-4.6.0.tgz#413e7db6f5893a60b942cf492c4bec93db415ab7" + dependencies: + pinkie-promise "^1.0.0" + +co@^4.6.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" + +code-excerpt@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/code-excerpt/-/code-excerpt-2.1.0.tgz#5dcc081e88f4a7e3b554e9e35d7ef232d47f8147" + dependencies: + convert-to-spaces "^1.0.1" + +code-point-at@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" + +color-convert@^1.9.0: + version "1.9.0" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.0.tgz#1accf97dd739b983bf994d56fec8f95853641b7a" + dependencies: + color-name "^1.1.1" + +color-convert@~0.5.0: + version "0.5.3" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-0.5.3.tgz#bdb6c69ce660fadffe0b0007cc447e1b9f7282bd" + +color-name@^1.1.1: + version "1.1.3" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + +colors@1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/colors/-/colors-1.0.3.tgz#0433f44d809680fdeb60ed260f1b0c262e82a40b" + +colors@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/colors/-/colors-1.1.2.tgz#168a4701756b6a7f51a12ce0c97bfa28c084ed63" + +columnify@^1.5.4: + version "1.5.4" + resolved "https://registry.yarnpkg.com/columnify/-/columnify-1.5.4.tgz#4737ddf1c7b69a8a7c340570782e947eec8e78bb" + dependencies: + strip-ansi "^3.0.0" + wcwidth "^1.0.0" + +combined-stream@^1.0.5, combined-stream@~1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.5.tgz#938370a57b4a51dea2c77c15d5c5fdf895164009" + dependencies: + delayed-stream "~1.0.0" + +command-join@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/command-join/-/command-join-2.0.0.tgz#52e8b984f4872d952ff1bdc8b98397d27c7144cf" + +commander@2.9.0: + version "2.9.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.9.0.tgz#9c99094176e12240cb22d6c5146098400fe0f7d4" + dependencies: + graceful-readlink ">= 1.0.0" + +common-path-prefix@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/common-path-prefix/-/common-path-prefix-1.0.0.tgz#cd52f6f0712e0baab97d6f9732874f22f47752c0" + +commondir@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" + +compare-func@^1.3.1: + version "1.3.2" + resolved "https://registry.yarnpkg.com/compare-func/-/compare-func-1.3.2.tgz#99dd0ba457e1f9bc722b12c08ec33eeab31fa648" + dependencies: + array-ify "^1.0.0" + dot-prop "^3.0.0" + +concat-map@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + +concat-stream@^1.4.10: + version "1.6.0" + resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.0.tgz#0aac662fd52be78964d5532f694784e70110acf7" + dependencies: + inherits "^2.0.3" + readable-stream "^2.2.2" + typedarray "^0.0.6" + +configstore@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/configstore/-/configstore-2.1.0.tgz#737a3a7036e9886102aa6099e47bb33ab1aba1a1" + dependencies: + dot-prop "^3.0.0" + graceful-fs "^4.1.2" + mkdirp "^0.5.0" + object-assign "^4.0.1" + os-tmpdir "^1.0.0" + osenv "^0.1.0" + uuid "^2.0.1" + write-file-atomic "^1.1.2" + xdg-basedir "^2.0.0" + +configstore@^3.0.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/configstore/-/configstore-3.1.1.tgz#094ee662ab83fad9917678de114faaea8fcdca90" + dependencies: + dot-prop "^4.1.0" + graceful-fs "^4.1.2" + make-dir "^1.0.0" + unique-string "^1.0.0" + write-file-atomic "^2.0.0" + xdg-basedir "^3.0.0" + +console-control-strings@^1.0.0, console-control-strings@~1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" + +conventional-changelog-angular@^1.5.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/conventional-changelog-angular/-/conventional-changelog-angular-1.5.1.tgz#974e73aa1c39c392e4364f2952bd9a62904e9ea3" + dependencies: + compare-func "^1.3.1" + q "^1.4.1" + +conventional-changelog-atom@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/conventional-changelog-atom/-/conventional-changelog-atom-0.1.1.tgz#d40a9b297961b53c745e5d1718fd1a3379f6a92f" + dependencies: + q "^1.4.1" + +conventional-changelog-cli@^1.3.2: + version "1.3.4" + resolved "https://registry.yarnpkg.com/conventional-changelog-cli/-/conventional-changelog-cli-1.3.4.tgz#38f7ff7ac7bca92ea110897ea08b473f2055a27c" + dependencies: + add-stream "^1.0.0" + conventional-changelog "^1.1.6" + lodash "^4.1.0" + meow "^3.7.0" + tempfile "^1.1.1" + +conventional-changelog-codemirror@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/conventional-changelog-codemirror/-/conventional-changelog-codemirror-0.2.0.tgz#3cc925955f3b14402827b15168049821972d9459" + dependencies: + q "^1.4.1" + +conventional-changelog-core@^1.9.2: + version "1.9.2" + resolved "https://registry.yarnpkg.com/conventional-changelog-core/-/conventional-changelog-core-1.9.2.tgz#a09b6b959161671ff45b93cc9efb0444e7c845c0" + dependencies: + conventional-changelog-writer "^2.0.1" + conventional-commits-parser "^2.0.0" + dateformat "^1.0.12" + get-pkg-repo "^1.0.0" + git-raw-commits "^1.2.0" + git-remote-origin-url "^2.0.0" + git-semver-tags "^1.2.2" + lodash "^4.0.0" + normalize-package-data "^2.3.5" + q "^1.4.1" + read-pkg "^1.1.0" + read-pkg-up "^1.0.1" + through2 "^2.0.0" + +conventional-changelog-ember@^0.2.8: + version "0.2.8" + resolved "https://registry.yarnpkg.com/conventional-changelog-ember/-/conventional-changelog-ember-0.2.8.tgz#65e686da83d23b67133d1f853908c87f948035c0" + dependencies: + q "^1.4.1" + +conventional-changelog-eslint@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/conventional-changelog-eslint/-/conventional-changelog-eslint-0.2.0.tgz#b4b9b5dc09417844d87c7bcfb16bdcc686c4b1c1" + dependencies: + q "^1.4.1" + +conventional-changelog-express@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/conventional-changelog-express/-/conventional-changelog-express-0.2.0.tgz#8d666ad41b10ebf964a4602062ddd2e00deb518d" + dependencies: + q "^1.4.1" + +conventional-changelog-jquery@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/conventional-changelog-jquery/-/conventional-changelog-jquery-0.1.0.tgz#0208397162e3846986e71273b6c79c5b5f80f510" + dependencies: + q "^1.4.1" + +conventional-changelog-jscs@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/conventional-changelog-jscs/-/conventional-changelog-jscs-0.1.0.tgz#0479eb443cc7d72c58bf0bcf0ef1d444a92f0e5c" + dependencies: + q "^1.4.1" + +conventional-changelog-jshint@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/conventional-changelog-jshint/-/conventional-changelog-jshint-0.2.0.tgz#63ad7aec66cd1ae559bafe80348c4657a6eb1872" + dependencies: + compare-func "^1.3.1" + q "^1.4.1" + +conventional-changelog-writer@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/conventional-changelog-writer/-/conventional-changelog-writer-2.0.1.tgz#47c10d0faba526b78d194389d1e931d09ee62372" + dependencies: + compare-func "^1.3.1" + conventional-commits-filter "^1.0.0" + dateformat "^1.0.11" + handlebars "^4.0.2" + json-stringify-safe "^5.0.1" + lodash "^4.0.0" + meow "^3.3.0" + semver "^5.0.1" + split "^1.0.0" + through2 "^2.0.0" + +conventional-changelog@^1.1.0, conventional-changelog@^1.1.6: + version "1.1.6" + resolved "https://registry.yarnpkg.com/conventional-changelog/-/conventional-changelog-1.1.6.tgz#ebd9b1ab63766c715f903f654626b6b1c0da7762" + dependencies: + conventional-changelog-angular "^1.5.1" + conventional-changelog-atom "^0.1.1" + conventional-changelog-codemirror "^0.2.0" + conventional-changelog-core "^1.9.2" + conventional-changelog-ember "^0.2.8" + conventional-changelog-eslint "^0.2.0" + conventional-changelog-express "^0.2.0" + conventional-changelog-jquery "^0.1.0" + conventional-changelog-jscs "^0.1.0" + conventional-changelog-jshint "^0.2.0" + +conventional-commits-filter@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/conventional-commits-filter/-/conventional-commits-filter-1.0.0.tgz#6fc2a659372bc3f2339cf9ffff7e1b0344b93039" + dependencies: + is-subset "^0.1.1" + modify-values "^1.0.0" + +conventional-commits-parser@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/conventional-commits-parser/-/conventional-commits-parser-2.0.0.tgz#71d01910cb0a99aeb20c144e50f81f4df3178447" + dependencies: + JSONStream "^1.0.4" + is-text-path "^1.0.0" + lodash "^4.2.1" + meow "^3.3.0" + split2 "^2.0.0" + through2 "^2.0.0" + trim-off-newlines "^1.0.0" + +conventional-recommended-bump@^1.0.0, conventional-recommended-bump@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/conventional-recommended-bump/-/conventional-recommended-bump-1.0.2.tgz#31856443ab6f9453a1827650e7cc15ec28769645" + dependencies: + concat-stream "^1.4.10" + conventional-commits-filter "^1.0.0" + conventional-commits-parser "^2.0.0" + git-raw-commits "^1.2.0" + git-semver-tags "^1.2.2" + meow "^3.3.0" + object-assign "^4.0.1" + +convert-source-map@^1.2.0, convert-source-map@^1.3.0, convert-source-map@^1.5.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.5.0.tgz#9acd70851c6d5dfdd93d9282e5edf94a03ff46b5" + +convert-to-spaces@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/convert-to-spaces/-/convert-to-spaces-1.0.2.tgz#7e3e48bbe6d997b1417ddca2868204b4d3d85715" + +core-assert@^0.2.0: + version "0.2.1" + resolved "https://registry.yarnpkg.com/core-assert/-/core-assert-0.2.1.tgz#f85e2cf9bfed28f773cc8b3fa5c5b69bdc02fe3f" + dependencies: + buf-compare "^1.0.0" + is-error "^2.2.0" + +core-js@^2.0.0, core-js@^2.4.0, core-js@^2.5.0: + version "2.5.1" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.1.tgz#ae6874dc66937789b80754ff5428df66819ca50b" + +core-util-is@1.0.2, core-util-is@~1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" + +cp-file@^3.1.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/cp-file/-/cp-file-3.2.0.tgz#6f83616254624f0ad58aa4aa8d076f026be7e188" + dependencies: + graceful-fs "^4.1.2" + mkdirp "^0.5.0" + nested-error-stacks "^1.0.1" + object-assign "^4.0.1" + pify "^2.3.0" + pinkie-promise "^2.0.0" + readable-stream "^2.1.4" + +create-error-class@^3.0.0, create-error-class@^3.0.1: + version "3.0.2" + resolved "https://registry.yarnpkg.com/create-error-class/-/create-error-class-3.0.2.tgz#06be7abef947a3f14a30fd610671d401bca8b7b6" + dependencies: + capture-stack-trace "^1.0.0" + +cross-env@^3.2.3: + version "3.2.4" + resolved "https://registry.yarnpkg.com/cross-env/-/cross-env-3.2.4.tgz#9e0585f277864ed421ce756f81a980ff0d698aba" + dependencies: + cross-spawn "^5.1.0" + is-windows "^1.0.0" + +cross-spawn-async@^2.1.1: + version "2.2.5" + resolved "https://registry.yarnpkg.com/cross-spawn-async/-/cross-spawn-async-2.2.5.tgz#845ff0c0834a3ded9d160daca6d390906bb288cc" + dependencies: + lru-cache "^4.0.0" + which "^1.2.8" + +cross-spawn@^4: + version "4.0.2" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-4.0.2.tgz#7b9247621c23adfdd3856004a823cbe397424d41" + dependencies: + lru-cache "^4.0.1" + which "^1.2.9" + +cross-spawn@^5.0.1, cross-spawn@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" + dependencies: + lru-cache "^4.0.1" + shebang-command "^1.2.0" + which "^1.2.9" + +cryptiles@2.x.x: + version "2.0.5" + resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-2.0.5.tgz#3bdfecdc608147c1c67202fa291e7dca59eaa3b8" + dependencies: + boom "2.x.x" + +crypto-random-string@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-1.0.0.tgz#a230f64f568310e1498009940790ec99545bca7e" + +currently-unhandled@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea" + dependencies: + array-find-index "^1.0.1" + +dargs@^4.0.1: + version "4.1.0" + resolved "https://registry.yarnpkg.com/dargs/-/dargs-4.1.0.tgz#03a9dbb4b5c2f139bf14ae53f0b8a2a6a86f4e17" + dependencies: + number-is-nan "^1.0.0" + +dashdash@^1.12.0: + version "1.14.1" + resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" + dependencies: + assert-plus "^1.0.0" + +date-time@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/date-time/-/date-time-0.1.1.tgz#ed2f6d93d9790ce2fd66d5b5ff3edd5bbcbf3b07" + +dateformat@^1.0.11, dateformat@^1.0.12: + version "1.0.12" + resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-1.0.12.tgz#9f124b67594c937ff706932e4a642cca8dbbfee9" + dependencies: + get-stdin "^4.0.1" + meow "^3.3.0" + +debug-log@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/debug-log/-/debug-log-1.0.1.tgz#2307632d4c04382b8df8a32f70b895046d52745f" + +debug@^2.2.0, debug@^2.6.1, debug@^2.6.3, debug@^2.6.8: + version "2.6.9" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" + dependencies: + ms "2.0.0" + +decamelize@^1.0.0, decamelize@^1.1.1, decamelize@^1.1.2: + version "1.2.0" + resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" + +dedent@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" + +deep-equal@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" + +deep-extend@~0.4.0: + version "0.4.2" + resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.4.2.tgz#48b699c27e334bf89f10892be432f6e4c7d34a7f" + +default-require-extensions@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/default-require-extensions/-/default-require-extensions-1.0.0.tgz#f37ea15d3e13ffd9b437d33e1a75b5fb97874cb8" + dependencies: + strip-bom "^2.0.0" + +defaults@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.3.tgz#c656051e9817d9ff08ed881477f3fe4019f3ef7d" + dependencies: + clone "^1.0.2" + +delayed-stream@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" + +delegates@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" + +detect-indent@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208" + dependencies: + repeating "^2.0.0" + +detect-indent@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-5.0.0.tgz#3871cc0a6a002e8c3e5b3cf7f336264675f06b9d" + +diff@^3.0.0, diff@^3.0.1: + version "3.4.0" + resolved "https://registry.yarnpkg.com/diff/-/diff-3.4.0.tgz#b1d85507daf3964828de54b37d0d73ba67dda56c" + +dir-compare@^1.3.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/dir-compare/-/dir-compare-1.4.0.tgz#afa00ab99c0fb1c412b48dc65e8f4378d257f006" + dependencies: + bluebird "3.4.1" + buffer-equal "1.0.0" + colors "1.0.3" + commander "2.9.0" + minimatch "3.0.2" + +dot-prop@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-3.0.0.tgz#1b708af094a49c9a0e7dbcad790aba539dac1177" + dependencies: + is-obj "^1.0.0" + +dot-prop@^4.1.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-4.2.0.tgz#1f19e0c2e1aa0e32797c49799f2837ac6af69c57" + dependencies: + is-obj "^1.0.0" + +dotenv@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-4.0.0.tgz#864ef1379aced55ce6f95debecdce179f7a0cd1d" + +ds-store@^0.1.5: + version "0.1.6" + resolved "https://registry.yarnpkg.com/ds-store/-/ds-store-0.1.6.tgz#d1024ef746ed0c13f0f7fec85c7e858e8c4b7ca7" + dependencies: + bplist-creator "~0.0.3" + macos-alias "~0.2.5" + tn1150 "^0.1.0" + +duplexer2@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/duplexer2/-/duplexer2-0.1.4.tgz#8b12dab878c0d69e3e7891051662a32fc6bddcc1" + dependencies: + readable-stream "^2.0.2" + +duplexer3@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" + +duplexer@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.1.tgz#ace6ff808c1ce66b57d1ebf97977acb02334cfc1" + +ecc-jsbn@~0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505" + dependencies: + jsbn "~0.1.0" + +empower-core@^0.6.1: + version "0.6.2" + resolved "https://registry.yarnpkg.com/empower-core/-/empower-core-0.6.2.tgz#5adef566088e31fba80ba0a36df47d7094169144" + dependencies: + call-signature "0.0.2" + core-js "^2.0.0" + +equal-length@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/equal-length/-/equal-length-1.0.1.tgz#21ca112d48ab24b4e1e7ffc0e5339d31fdfc274c" + +error-ex@^1.2.0, error-ex@^1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.1.tgz#f855a86ce61adc4e8621c3cda21e7a7612c3a8dc" + dependencies: + is-arrayish "^0.2.1" + +escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.4, escape-string-regexp@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + +espower-location-detector@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/espower-location-detector/-/espower-location-detector-1.0.0.tgz#a17b7ecc59d30e179e2bef73fb4137704cb331b5" + dependencies: + is-url "^1.2.1" + path-is-absolute "^1.0.0" + source-map "^0.5.0" + xtend "^4.0.0" + +espurify@^1.6.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/espurify/-/espurify-1.7.0.tgz#1c5cf6cbccc32e6f639380bd4f991fab9ba9d226" + dependencies: + core-js "^2.0.0" + +estraverse@^4.0.0, estraverse@^4.1.1: + version "4.2.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" + +esutils@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" + +execa@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-0.4.0.tgz#4eb6467a36a095fabb2970ff9d5e3fb7bce6ebc3" + dependencies: + cross-spawn-async "^2.1.1" + is-stream "^1.1.0" + npm-run-path "^1.0.0" + object-assign "^4.0.1" + path-key "^1.0.0" + strip-eof "^1.0.0" + +execa@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-0.7.0.tgz#944becd34cc41ee32a63a9faf27ad5a65fc59777" + dependencies: + cross-spawn "^5.0.1" + get-stream "^3.0.0" + is-stream "^1.1.0" + npm-run-path "^2.0.0" + p-finally "^1.0.0" + signal-exit "^3.0.0" + strip-eof "^1.0.0" + +execa@^0.8.0: + version "0.8.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-0.8.0.tgz#d8d76bbc1b55217ed190fd6dd49d3c774ecfc8da" + dependencies: + cross-spawn "^5.0.1" + get-stream "^3.0.0" + is-stream "^1.1.0" + npm-run-path "^2.0.0" + p-finally "^1.0.0" + signal-exit "^3.0.0" + strip-eof "^1.0.0" + +expand-brackets@^0.1.4: + version "0.1.5" + resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b" + dependencies: + is-posix-bracket "^0.1.0" + +expand-range@^1.8.1: + version "1.8.2" + resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-1.8.2.tgz#a299effd335fe2721ebae8e257ec79644fc85337" + dependencies: + fill-range "^2.1.0" + +extend@~3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.1.tgz#a755ea7bc1adfcc5a31ce7e762dbaadc5e636444" + +external-editor@^2.0.4: + version "2.0.5" + resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-2.0.5.tgz#52c249a3981b9ba187c7cacf5beb50bf1d91a6bc" + dependencies: + iconv-lite "^0.4.17" + jschardet "^1.4.2" + tmp "^0.0.33" + +extglob@^0.3.1: + version "0.3.2" + resolved "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1" + dependencies: + is-extglob "^1.0.0" + +extsprintf@1.3.0, extsprintf@^1.2.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" + +figures@^1.5.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/figures/-/figures-1.7.0.tgz#cbe1e3affcf1cd44b80cadfed28dc793a9701d2e" + dependencies: + escape-string-regexp "^1.0.5" + object-assign "^4.1.0" + +figures@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" + dependencies: + escape-string-regexp "^1.0.5" + +filename-regex@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.1.tgz#c1c4b9bee3e09725ddb106b75c1e301fe2f18b26" + +fill-range@^2.1.0: + version "2.2.3" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-2.2.3.tgz#50b77dfd7e469bc7492470963699fe7a8485a723" + dependencies: + is-number "^2.1.0" + isobject "^2.0.0" + randomatic "^1.1.3" + repeat-element "^1.1.2" + repeat-string "^1.5.2" + +filled-array@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/filled-array/-/filled-array-1.1.0.tgz#c3c4f6c663b923459a9aa29912d2d031f1507f84" + +find-cache-dir@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-0.1.1.tgz#c8defae57c8a52a8a784f9e31c57c742e993a0b9" + dependencies: + commondir "^1.0.1" + mkdirp "^0.5.1" + pkg-dir "^1.0.0" + +find-up@^1.0.0, find-up@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" + dependencies: + path-exists "^2.0.0" + pinkie-promise "^2.0.0" + +find-up@^2.0.0, find-up@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" + dependencies: + locate-path "^2.0.0" + +findup-sync@~0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-0.3.0.tgz#37930aa5d816b777c03445e1966cc6790a4c0b16" + dependencies: + glob "~5.0.0" + +fmix@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/fmix/-/fmix-0.1.0.tgz#c7bbf124dec42c9d191cfb947d0a9778dd986c0c" + dependencies: + imul "^1.0.0" + +fn-name@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/fn-name/-/fn-name-2.0.1.tgz#5214d7537a4d06a4a301c0cc262feb84188002e7" + +for-in@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" + +for-own@^0.1.4: + version "0.1.5" + resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.5.tgz#5265c681a4f294dabbf17c9509b6763aa84510ce" + dependencies: + for-in "^1.0.1" + +foreground-child@^1.3.3, foreground-child@^1.5.3: + version "1.5.6" + resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-1.5.6.tgz#4fd71ad2dfde96789b980a5c0a295937cb2f5ce9" + dependencies: + cross-spawn "^4" + signal-exit "^3.0.0" + +forever-agent@~0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" + +form-data@~2.1.1: + version "2.1.4" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.4.tgz#33c183acf193276ecaa98143a69e94bfee1750d1" + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.5" + mime-types "^2.1.12" + +fs-access@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/fs-access/-/fs-access-1.0.1.tgz#d6a87f262271cefebec30c553407fb995da8777a" + dependencies: + null-check "^1.0.0" + +fs-extra@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-3.0.1.tgz#3794f378c58b342ea7dbbb23095109c4b3b62291" + dependencies: + graceful-fs "^4.1.2" + jsonfile "^3.0.0" + universalify "^0.1.0" + +fs-extra@^4.0.1: + version "4.0.2" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-4.0.2.tgz#f91704c53d1b461f893452b0c307d9997647ab6b" + dependencies: + graceful-fs "^4.1.2" + jsonfile "^4.0.0" + universalify "^0.1.0" + +fs-temp@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/fs-temp/-/fs-temp-1.1.2.tgz#cc52f038bbefe510f6bcd09ec592b79d0f69253f" + dependencies: + random-path "^0.1.0" + +fs-xattr@^0.1.14: + version "0.1.17" + resolved "https://registry.yarnpkg.com/fs-xattr/-/fs-xattr-0.1.17.tgz#ee943483c6fe9704a8f0e1476e8145a9886f8b0f" + dependencies: + buffer-from "^0.1.1" + nan "^2.3.2" + +fs.realpath@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + +fsevents@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.1.2.tgz#3282b713fb3ad80ede0e9fcf4611b5aa6fc033f4" + dependencies: + nan "^2.3.0" + node-pre-gyp "^0.6.36" + +fstream-ignore@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/fstream-ignore/-/fstream-ignore-1.0.5.tgz#9c31dae34767018fe1d249b24dada67d092da105" + dependencies: + fstream "^1.0.0" + inherits "2" + minimatch "^3.0.0" + +fstream@^1.0.0, fstream@^1.0.10, fstream@^1.0.2: + version "1.0.11" + resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.11.tgz#5c1fb1f117477114f0632a0eb4b71b3cb0fd3171" + dependencies: + graceful-fs "^4.1.2" + inherits "~2.0.0" + mkdirp ">=0.5 0" + rimraf "2" + +gauge@~2.7.3: + version "2.7.4" + resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" + dependencies: + aproba "^1.0.3" + console-control-strings "^1.0.0" + has-unicode "^2.0.0" + object-assign "^4.1.0" + signal-exit "^3.0.0" + string-width "^1.0.1" + strip-ansi "^3.0.1" + wide-align "^1.1.0" + +generate-function@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/generate-function/-/generate-function-2.0.0.tgz#6858fe7c0969b7d4e9093337647ac79f60dfbe74" + +generate-object-property@^1.1.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/generate-object-property/-/generate-object-property-1.2.0.tgz#9c0e1c40308ce804f4783618b937fa88f99d50d0" + dependencies: + is-property "^1.0.0" + +get-caller-file@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.2.tgz#f702e63127e7e231c160a80c1554acb70d5047e5" + +get-pkg-repo@^1.0.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/get-pkg-repo/-/get-pkg-repo-1.4.0.tgz#c73b489c06d80cc5536c2c853f9e05232056972d" + dependencies: + hosted-git-info "^2.1.4" + meow "^3.3.0" + normalize-package-data "^2.3.0" + parse-github-repo-url "^1.3.0" + through2 "^2.0.0" + +get-port@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/get-port/-/get-port-2.1.0.tgz#8783f9dcebd1eea495a334e1a6a251e78887ab1a" + dependencies: + pinkie-promise "^2.0.0" + +get-port@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/get-port/-/get-port-3.2.0.tgz#dd7ce7de187c06c8bf353796ac71e099f0980ebc" + +get-stdin@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" + +get-stream@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" + +getpass@^0.1.1: + version "0.1.7" + resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" + dependencies: + assert-plus "^1.0.0" + +git-raw-commits@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/git-raw-commits/-/git-raw-commits-1.2.0.tgz#0f3a8bfd99ae0f2d8b9224d58892975e9a52d03c" + dependencies: + dargs "^4.0.1" + lodash.template "^4.0.2" + meow "^3.3.0" + split2 "^2.0.0" + through2 "^2.0.0" + +git-remote-origin-url@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/git-remote-origin-url/-/git-remote-origin-url-2.0.0.tgz#5282659dae2107145a11126112ad3216ec5fa65f" + dependencies: + gitconfiglocal "^1.0.0" + pify "^2.3.0" + +git-semver-tags@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/git-semver-tags/-/git-semver-tags-1.2.2.tgz#a2139be1bf6e337e125f3eb8bb8fc6f5d4d6445f" + dependencies: + meow "^3.3.0" + semver "^5.0.1" + +gitconfiglocal@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/gitconfiglocal/-/gitconfiglocal-1.0.0.tgz#41d045f3851a5ea88f03f24ca1c6178114464b9b" + dependencies: + ini "^1.3.2" + +glob-base@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4" + dependencies: + glob-parent "^2.0.0" + is-glob "^2.0.0" + +glob-parent@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-2.0.0.tgz#81383d72db054fcccf5336daa902f182f6edbb28" + dependencies: + is-glob "^2.0.0" + +glob-parent@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" + dependencies: + is-glob "^3.1.0" + path-dirname "^1.0.0" + +glob@^7.0.3, glob@^7.0.5, glob@^7.0.6, glob@^7.1.1, glob@^7.1.2: + version "7.1.2" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.0.4" + once "^1.3.0" + path-is-absolute "^1.0.0" + +glob@~5.0.0: + version "5.0.15" + resolved "https://registry.yarnpkg.com/glob/-/glob-5.0.15.tgz#1bc936b9e02f4a603fcc222ecf7633d30b8b93b1" + dependencies: + inflight "^1.0.4" + inherits "2" + minimatch "2 || 3" + once "^1.3.0" + path-is-absolute "^1.0.0" + +global-dirs@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/global-dirs/-/global-dirs-0.1.0.tgz#10d34039e0df04272e262cf24224f7209434df4f" + dependencies: + ini "^1.3.4" + +globals@^9.18.0: + version "9.18.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" + +globby@^6.0.0, globby@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/globby/-/globby-6.1.0.tgz#f5a6d70e8395e21c858fb0489d64df02424d506c" + dependencies: + array-union "^1.0.1" + glob "^7.0.3" + object-assign "^4.0.1" + pify "^2.0.0" + pinkie-promise "^2.0.0" + +got@^5.0.0: + version "5.7.1" + resolved "https://registry.yarnpkg.com/got/-/got-5.7.1.tgz#5f81635a61e4a6589f180569ea4e381680a51f35" + dependencies: + create-error-class "^3.0.1" + duplexer2 "^0.1.4" + is-redirect "^1.0.0" + is-retry-allowed "^1.0.0" + is-stream "^1.0.0" + lowercase-keys "^1.0.0" + node-status-codes "^1.0.0" + object-assign "^4.0.1" + parse-json "^2.1.0" + pinkie-promise "^2.0.0" + read-all-stream "^3.0.0" + readable-stream "^2.0.5" + timed-out "^3.0.0" + unzip-response "^1.0.2" + url-parse-lax "^1.0.0" + +got@^6.7.1: + version "6.7.1" + resolved "https://registry.yarnpkg.com/got/-/got-6.7.1.tgz#240cd05785a9a18e561dc1b44b41c763ef1e8db0" + dependencies: + create-error-class "^3.0.0" + duplexer3 "^0.1.4" + get-stream "^3.0.0" + is-redirect "^1.0.0" + is-retry-allowed "^1.0.0" + is-stream "^1.0.0" + lowercase-keys "^1.0.0" + safe-buffer "^5.0.1" + timed-out "^4.0.0" + unzip-response "^2.0.1" + url-parse-lax "^1.0.0" + +graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6: + version "4.1.11" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" + +"graceful-readlink@>= 1.0.0": + version "1.0.1" + resolved "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz#4cafad76bc62f02fa039b2f94e9a3dd3a391a725" + +handlebars@^4.0.2, handlebars@^4.0.3: + version "4.0.11" + resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.0.11.tgz#630a35dfe0294bc281edae6ffc5d329fc7982dcc" + dependencies: + async "^1.4.0" + optimist "^0.6.1" + source-map "^0.4.4" + optionalDependencies: + uglify-js "^2.6" + +har-schema@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-1.0.5.tgz#d263135f43307c02c602afc8fe95970c0151369e" + +har-validator@~4.2.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-4.2.1.tgz#33481d0f1bbff600dd203d75812a6a5fba002e2a" + dependencies: + ajv "^4.9.1" + har-schema "^1.0.5" + +has-ansi@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" + dependencies: + ansi-regex "^2.0.0" + +has-color@~0.1.0: + version "0.1.7" + resolved "https://registry.yarnpkg.com/has-color/-/has-color-0.1.7.tgz#67144a5260c34fc3cca677d041daf52fe7b78b2f" + +has-flag@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-1.0.0.tgz#9d9e793165ce017a00f00418c43f942a7b1d11fa" + +has-flag@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51" + +has-own-property-x@^3.1.1: + version "3.2.0" + resolved "https://registry.yarnpkg.com/has-own-property-x/-/has-own-property-x-3.2.0.tgz#1c4b112a577c8cb5805469556e54b6e959e4ded9" + dependencies: + cached-constructors-x "^1.0.0" + to-object-x "^1.5.0" + to-property-key-x "^2.0.2" + +has-symbol-support-x@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/has-symbol-support-x/-/has-symbol-support-x-1.4.1.tgz#66ec2e377e0c7d7ccedb07a3a84d77510ff1bc4c" + +has-to-string-tag-x@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz#a045ab383d7b4b2012a00148ab0aa5f290044d4d" + dependencies: + has-symbol-support-x "^1.4.1" + +has-unicode@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" + +has-yarn@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-yarn/-/has-yarn-1.0.0.tgz#89e25db604b725c8f5976fff0addc921b828a5a7" + +hawk@3.1.3, hawk@~3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/hawk/-/hawk-3.1.3.tgz#078444bd7c1640b0fe540d2c9b73d59678e8e1c4" + dependencies: + boom "2.x.x" + cryptiles "2.x.x" + hoek "2.x.x" + sntp "1.x.x" + +hoek@2.x.x: + version "2.16.3" + resolved "https://registry.yarnpkg.com/hoek/-/hoek-2.16.3.tgz#20bb7403d3cea398e91dc4710a8ff1b8274a25ed" + +home-or-tmp@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8" + dependencies: + os-homedir "^1.0.0" + os-tmpdir "^1.0.1" + +hosted-git-info@^2.1.4, hosted-git-info@^2.5.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.5.0.tgz#6d60e34b3abbc8313062c3b798ef8d901a07af3c" + +http-signature@~1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.1.1.tgz#df72e267066cd0ac67fb76adf8e134a8fbcf91bf" + dependencies: + assert-plus "^0.2.0" + jsprim "^1.2.2" + sshpk "^1.7.0" + +iconv-lite@^0.4.17: + version "0.4.19" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.19.tgz#f7468f60135f5e5dad3399c0a81be9a1603a082b" + +ignore-by-default@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/ignore-by-default/-/ignore-by-default-1.0.1.tgz#48ca6d72f6c6a3af00a9ad4ae6876be3889e2b09" + +image-size@^0.5.0: + version "0.5.5" + resolved "https://registry.yarnpkg.com/image-size/-/image-size-0.5.5.tgz#09dfd4ab9d20e29eb1c3e80b8990378df9e3cb9c" + +import-lazy@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/import-lazy/-/import-lazy-2.1.0.tgz#05698e3d45c88e8d7e9d92cb0584e77f096f3e43" + +imul@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/imul/-/imul-1.0.1.tgz#9d5867161e8b3de96c2c38d5dc7cb102f35e2ac9" + +imurmurhash@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + +indent-string@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80" + dependencies: + repeating "^2.0.0" + +indent-string@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-3.2.0.tgz#4a5fd6d27cc332f37e5419a504dbb837105c9289" + +infinity-x@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/infinity-x/-/infinity-x-1.0.0.tgz#cea2d75181d820961b0f72d78e7c4e06fdd55a07" + +inflight@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + dependencies: + once "^1.3.0" + wrappy "1" + +inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1, inherits@~2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" + +ini@^1.3.2, ini@^1.3.4, ini@~1.3.0: + version "1.3.4" + resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.4.tgz#0537cb79daf59b59a1a517dff706c86ec039162e" + +inquirer@^3.2.2: + version "3.3.0" + resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-3.3.0.tgz#9dd2f2ad765dcab1ff0443b491442a20ba227dc9" + dependencies: + ansi-escapes "^3.0.0" + chalk "^2.0.0" + cli-cursor "^2.1.0" + cli-width "^2.0.0" + external-editor "^2.0.4" + figures "^2.0.0" + lodash "^4.3.0" + mute-stream "0.0.7" + run-async "^2.2.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.6" + +invariant@^2.2.2: + version "2.2.2" + resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.2.tgz#9e1f56ac0acdb6bf303306f338be3b204ae60360" + dependencies: + loose-envify "^1.0.0" + +invert-kv@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6" + +irregular-plurals@^1.0.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/irregular-plurals/-/irregular-plurals-1.4.0.tgz#2ca9b033651111855412f16be5d77c62a458a766" + +is-array-buffer-x@^1.0.13: + version "1.7.0" + resolved "https://registry.yarnpkg.com/is-array-buffer-x/-/is-array-buffer-x-1.7.0.tgz#4b0b10427b64aa3437767adf4fc07702c59b2371" + dependencies: + attempt-x "^1.1.0" + has-to-string-tag-x "^1.4.1" + is-object-like-x "^1.5.1" + object-get-own-property-descriptor-x "^3.2.0" + to-string-tag-x "^1.4.1" + +is-arrayish@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" + +is-binary-path@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" + dependencies: + binary-extensions "^1.0.0" + +is-buffer@^1.1.5: + version "1.1.5" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.5.tgz#1f3b26ef613b214b88cbca23cc6c01d87961eecc" + +is-builtin-module@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe" + dependencies: + builtin-modules "^1.0.0" + +is-ci@^1.0.10, is-ci@^1.0.7: + version "1.0.10" + resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-1.0.10.tgz#f739336b2632365061a9d48270cd56ae3369318e" + dependencies: + ci-info "^1.0.0" + +is-date-object@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16" + +is-dotfile@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1" + +is-equal-shallow@^0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz#2238098fc221de0bcfa5d9eac4c45d638aa1c534" + dependencies: + is-primitive "^2.0.0" + +is-error@^2.2.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/is-error/-/is-error-2.2.1.tgz#684a96d84076577c98f4cdb40c6d26a5123bf19c" + +is-extendable@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" + +is-extglob@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0" + +is-extglob@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + +is-falsey-x@^1.0.0, is-falsey-x@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-falsey-x/-/is-falsey-x-1.0.1.tgz#c469951adc95b8b3fdbf90929b335a7de937d17f" + dependencies: + to-boolean-x "^1.0.1" + +is-finite-x@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/is-finite-x/-/is-finite-x-3.0.2.tgz#a6ec683cfb2bc1a918a1ff59d178edbcea54f7a6" + dependencies: + infinity-x "^1.0.0" + is-nan-x "^1.0.1" + +is-finite@^1.0.0, is-finite@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa" + dependencies: + number-is-nan "^1.0.0" + +is-fullwidth-code-point@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" + dependencies: + number-is-nan "^1.0.0" + +is-fullwidth-code-point@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" + +is-function-x@^3.2.0, is-function-x@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/is-function-x/-/is-function-x-3.3.0.tgz#7d16bc113853db206d5e40a8b32caf99bd4ff7c0" + dependencies: + attempt-x "^1.1.1" + has-to-string-tag-x "^1.4.1" + is-falsey-x "^1.0.1" + is-primitive "^2.0.0" + normalize-space-x "^3.0.0" + replace-comments-x "^2.0.0" + to-boolean-x "^1.0.1" + to-string-tag-x "^1.4.2" + +is-generator-fn@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-1.0.0.tgz#969d49e1bb3329f6bb7f09089be26578b2ddd46a" + +is-glob@^2.0.0, is-glob@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-2.0.1.tgz#d096f926a3ded5600f3fdfd91198cb0888c2d863" + dependencies: + is-extglob "^1.0.0" + +is-glob@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" + dependencies: + is-extglob "^2.1.0" + +is-index-x@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-index-x/-/is-index-x-1.1.0.tgz#43dac97b3a04f30191530833f45ac35001682ee2" + dependencies: + math-clamp-x "^1.2.0" + max-safe-integer "^1.0.1" + to-integer-x "^3.0.0" + to-number-x "^2.0.0" + to-string-symbols-supported-x "^1.0.0" + +is-installed-globally@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/is-installed-globally/-/is-installed-globally-0.1.0.tgz#0dfd98f5a9111716dd535dda6492f67bf3d25a80" + dependencies: + global-dirs "^0.1.0" + is-path-inside "^1.0.0" + +is-my-json-valid@^2.13.1: + version "2.16.1" + resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.16.1.tgz#5a846777e2c2620d1e69104e5d3a03b1f6088f11" + dependencies: + generate-function "^2.0.0" + generate-object-property "^1.1.0" + jsonpointer "^4.0.0" + xtend "^4.0.0" + +is-nan-x@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-nan-x/-/is-nan-x-1.0.1.tgz#de747ebcc8bddeb66f367c17caca7eba843855c0" + +is-nil-x@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/is-nil-x/-/is-nil-x-1.4.1.tgz#bd9e7b08b4cd732f9dcbde13d93291bb2ec2e248" + dependencies: + lodash.isnull "^3.0.0" + validate.io-undefined "^1.0.3" + +is-npm@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-npm/-/is-npm-1.0.0.tgz#f2fb63a65e4905b406c86072765a1a4dc793b9f4" + +is-number@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f" + dependencies: + kind-of "^3.0.2" + +is-number@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" + dependencies: + kind-of "^3.0.2" + +is-obj@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" + +is-object-like-x@^1.5.1: + version "1.6.0" + resolved "https://registry.yarnpkg.com/is-object-like-x/-/is-object-like-x-1.6.0.tgz#a8c4a95bd6b95db174e0e4730171a160ec73be82" + dependencies: + is-function-x "^3.3.0" + is-primitive "^2.0.0" + +is-observable@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/is-observable/-/is-observable-0.2.0.tgz#b361311d83c6e5d726cabf5e250b0237106f5ae2" + dependencies: + symbol-observable "^0.2.2" + +is-path-inside@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.0.tgz#fc06e5a1683fbda13de667aff717bbc10a48f37f" + dependencies: + path-is-inside "^1.0.1" + +is-plain-obj@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" + +is-posix-bracket@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz#3334dc79774368e92f016e6fbc0a88f5cd6e6bc4" + +is-primitive@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-primitive/-/is-primitive-2.0.0.tgz#207bab91638499c07b2adf240a41a87210034575" + +is-promise@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" + +is-property@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84" + +is-redirect@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-redirect/-/is-redirect-1.0.0.tgz#1d03dded53bd8db0f30c26e4f95d36fc7c87dc24" + +is-retry-allowed@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz#11a060568b67339444033d0125a61a20d564fb34" + +is-stream@^1.0.0, is-stream@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" + +is-string@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.4.tgz#cc3a9b69857d621e963725a24caeec873b826e64" + +is-subset@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/is-subset/-/is-subset-0.1.1.tgz#8a59117d932de1de00f245fcdd39ce43f1e939a6" + +is-symbol@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.1.tgz#3cc59f00025194b6ab2e38dbae6689256b660572" + +is-text-path@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-text-path/-/is-text-path-1.0.1.tgz#4e1aa0fb51bfbcb3e92688001397202c1775b66e" + dependencies: + text-extensions "^1.0.0" + +is-typedarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" + +is-url@^1.2.1: + version "1.2.2" + resolved "https://registry.yarnpkg.com/is-url/-/is-url-1.2.2.tgz#498905a593bf47cc2d9e7f738372bbf7696c7f26" + +is-utf8@^0.2.0, is-utf8@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" + +is-windows@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.1.tgz#310db70f742d259a16a369202b51af84233310d9" + +isarray@1.0.0, isarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + +isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + +isobject@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" + dependencies: + isarray "1.0.0" + +isstream@~0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" + +istanbul-lib-coverage@^1.1.0, istanbul-lib-coverage@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-1.1.1.tgz#73bfb998885299415c93d38a3e9adf784a77a9da" + +istanbul-lib-hook@^1.0.6: + version "1.0.7" + resolved "https://registry.yarnpkg.com/istanbul-lib-hook/-/istanbul-lib-hook-1.0.7.tgz#dd6607f03076578fe7d6f2a630cf143b49bacddc" + dependencies: + append-transform "^0.4.0" + +istanbul-lib-instrument@^1.7.1: + version "1.8.0" + resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-1.8.0.tgz#66f6c9421cc9ec4704f76f2db084ba9078a2b532" + dependencies: + babel-generator "^6.18.0" + babel-template "^6.16.0" + babel-traverse "^6.18.0" + babel-types "^6.18.0" + babylon "^6.18.0" + istanbul-lib-coverage "^1.1.1" + semver "^5.3.0" + +istanbul-lib-report@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-1.1.1.tgz#f0e55f56655ffa34222080b7a0cd4760e1405fc9" + dependencies: + istanbul-lib-coverage "^1.1.1" + mkdirp "^0.5.1" + path-parse "^1.0.5" + supports-color "^3.1.2" + +istanbul-lib-source-maps@^1.2.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-1.2.1.tgz#a6fe1acba8ce08eebc638e572e294d267008aa0c" + dependencies: + debug "^2.6.3" + istanbul-lib-coverage "^1.1.1" + mkdirp "^0.5.1" + rimraf "^2.6.1" + source-map "^0.5.3" + +istanbul-reports@^1.1.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-1.1.2.tgz#0fb2e3f6aa9922bd3ce45d05d8ab4d5e8e07bd4f" + dependencies: + handlebars "^4.0.3" + +jest-diff@^18.1.0: + version "18.1.0" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-18.1.0.tgz#4ff79e74dd988c139195b365dc65d87f606f4803" + dependencies: + chalk "^1.1.3" + diff "^3.0.0" + jest-matcher-utils "^18.1.0" + pretty-format "^18.1.0" + +jest-file-exists@^17.0.0: + version "17.0.0" + resolved "https://registry.yarnpkg.com/jest-file-exists/-/jest-file-exists-17.0.0.tgz#7f63eb73a1c43a13f461be261768b45af2cdd169" + +jest-matcher-utils@^18.1.0: + version "18.1.0" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-18.1.0.tgz#1ac4651955ee2a60cef1e7fcc98cdfd773c0f932" + dependencies: + chalk "^1.1.3" + pretty-format "^18.1.0" + +jest-mock@^18.0.0: + version "18.0.0" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-18.0.0.tgz#5c248846ea33fa558b526f5312ab4a6765e489b3" + +jest-snapshot@^18.1.0: + version "18.1.0" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-18.1.0.tgz#55b96d2ee639c9bce76f87f2a3fd40b71c7a5916" + dependencies: + jest-diff "^18.1.0" + jest-file-exists "^17.0.0" + jest-matcher-utils "^18.1.0" + jest-util "^18.1.0" + natural-compare "^1.4.0" + pretty-format "^18.1.0" + +jest-util@^18.1.0: + version "18.1.0" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-18.1.0.tgz#3a99c32114ab17f84be094382527006e6d4bfc6a" + dependencies: + chalk "^1.1.1" + diff "^3.0.0" + graceful-fs "^4.1.6" + jest-file-exists "^17.0.0" + jest-mock "^18.0.0" + mkdirp "^0.5.1" + +js-tokens@^3.0.0, js-tokens@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" + +jsbn@~0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" + +jschardet@^1.4.2: + version "1.5.1" + resolved "https://registry.yarnpkg.com/jschardet/-/jschardet-1.5.1.tgz#c519f629f86b3a5bedba58a88d311309eec097f9" + +jsesc@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b" + +jsesc@~0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" + +json-schema@0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" + +json-stable-stringify@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af" + dependencies: + jsonify "~0.0.0" + +json-stringify-safe@^5.0.1, json-stringify-safe@~5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" + +json5@^0.5.1: + version "0.5.1" + resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" + +jsonfile@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-3.0.1.tgz#a5ecc6f65f53f662c4415c7675a0331d0992ec66" + optionalDependencies: + graceful-fs "^4.1.6" + +jsonfile@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" + optionalDependencies: + graceful-fs "^4.1.6" + +jsonify@~0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" + +jsonparse@^1.2.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-1.3.1.tgz#3f4dae4a91fac315f71062f8521cc239f1366280" + +jsonpointer@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.0.1.tgz#4fd92cb34e0e9db3c89c8622ecf51f9b978c6cb9" + +jsprim@^1.2.2: + version "1.4.1" + resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" + dependencies: + assert-plus "1.0.0" + extsprintf "1.3.0" + json-schema "0.2.3" + verror "1.10.0" + +kind-of@^3.0.2: + version "3.2.2" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" + dependencies: + is-buffer "^1.1.5" + +kind-of@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" + dependencies: + is-buffer "^1.1.5" + +last-line-stream@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/last-line-stream/-/last-line-stream-1.0.0.tgz#d1b64d69f86ff24af2d04883a2ceee14520a5600" + dependencies: + through2 "^2.0.0" + +latest-version@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/latest-version/-/latest-version-2.0.0.tgz#56f8d6139620847b8017f8f1f4d78e211324168b" + dependencies: + package-json "^2.0.0" + +latest-version@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/latest-version/-/latest-version-3.1.0.tgz#a205383fea322b33b5ae3b18abee0dc2f356ee15" + dependencies: + package-json "^4.0.0" + +lazy-cache@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e" + +lazy-req@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/lazy-req/-/lazy-req-1.1.0.tgz#bdaebead30f8d824039ce0ce149d4daa07ba1fac" + +lcid@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835" + dependencies: + invert-kv "^1.0.0" + +lerna@^2.0.0-rc.3: + version "2.4.0" + resolved "https://registry.yarnpkg.com/lerna/-/lerna-2.4.0.tgz#7b76446b154bafb9cba8996f3dc233f1cb6ca7c3" + dependencies: + async "^1.5.0" + chalk "^2.1.0" + cmd-shim "^2.0.2" + columnify "^1.5.4" + command-join "^2.0.0" + conventional-changelog-cli "^1.3.2" + conventional-recommended-bump "^1.0.1" + dedent "^0.7.0" + execa "^0.8.0" + find-up "^2.1.0" + fs-extra "^4.0.1" + get-port "^3.2.0" + glob "^7.1.2" + glob-parent "^3.1.0" + globby "^6.1.0" + graceful-fs "^4.1.11" + hosted-git-info "^2.5.0" + inquirer "^3.2.2" + is-ci "^1.0.10" + load-json-file "^3.0.0" + lodash "^4.17.4" + minimatch "^3.0.4" + npmlog "^4.1.2" + p-finally "^1.0.0" + path-exists "^3.0.0" + read-cmd-shim "^1.0.1" + read-pkg "^2.0.0" + rimraf "^2.6.1" + safe-buffer "^5.1.1" + semver "^5.4.1" + signal-exit "^3.0.2" + strong-log-transformer "^1.0.6" + temp-write "^3.3.0" + write-file-atomic "^2.3.0" + write-json-file "^2.2.0" + write-pkg "^3.1.0" + yargs "^8.0.2" + +load-json-file@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" + dependencies: + graceful-fs "^4.1.2" + parse-json "^2.2.0" + pify "^2.0.0" + pinkie-promise "^2.0.0" + strip-bom "^2.0.0" + +load-json-file@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8" + dependencies: + graceful-fs "^4.1.2" + parse-json "^2.2.0" + pify "^2.0.0" + strip-bom "^3.0.0" + +load-json-file@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-3.0.0.tgz#7eb3735d983a7ed2262ade4ff769af5369c5c440" + dependencies: + graceful-fs "^4.1.2" + parse-json "^3.0.0" + pify "^2.0.0" + strip-bom "^3.0.0" + +locate-path@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" + dependencies: + p-locate "^2.0.0" + path-exists "^3.0.0" + +lodash._reinterpolate@~3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" + +lodash.debounce@^4.0.3: + version "4.0.8" + resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" + +lodash.difference@^4.3.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.difference/-/lodash.difference-4.5.0.tgz#9ccb4e505d486b91651345772885a2df27fd017c" + +lodash.flatten@^4.2.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/lodash.flatten/-/lodash.flatten-4.4.0.tgz#f31c22225a9632d2bbf8e4addbef240aa765a61f" + +lodash.isequal@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz#415c4478f2bcc30120c22ce10ed3226f7d3e18e0" + +lodash.isnull@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/lodash.isnull/-/lodash.isnull-3.0.0.tgz#fafbe59ea1dca27eed786534039dd84c2e07c56e" + +lodash.template@^4.0.2: + version "4.4.0" + resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-4.4.0.tgz#e73a0385c8355591746e020b99679c690e68fba0" + dependencies: + lodash._reinterpolate "~3.0.0" + lodash.templatesettings "^4.0.0" + +lodash.templatesettings@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-4.1.0.tgz#2b4d4e95ba440d915ff08bc899e4553666713316" + dependencies: + lodash._reinterpolate "~3.0.0" + +lodash@^4.0.0, lodash@^4.1.0, lodash@^4.17.4, lodash@^4.2.1, lodash@^4.3.0: + version "4.17.4" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" + +longest@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/longest/-/longest-1.0.1.tgz#30a0b2da38f73770e8294a0d22e6625ed77d0097" + +loose-envify@^1.0.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.3.1.tgz#d1a8ad33fa9ce0e713d65fdd0ac8b748d478c848" + dependencies: + js-tokens "^3.0.0" + +loud-rejection@^1.0.0, loud-rejection@^1.2.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f" + dependencies: + currently-unhandled "^0.4.1" + signal-exit "^3.0.0" + +lowercase-keys@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.0.tgz#4e3366b39e7f5457e35f1324bdf6f88d0bfc7306" + +lru-cache@^4.0.0, lru-cache@^4.0.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.1.tgz#622e32e82488b49279114a4f9ecf45e7cd6bba55" + dependencies: + pseudomap "^1.0.2" + yallist "^2.1.2" + +macos-alias@~0.2.5: + version "0.2.11" + resolved "https://registry.yarnpkg.com/macos-alias/-/macos-alias-0.2.11.tgz#feeea6c13ba119814a43fc43c470b31e59ef718a" + dependencies: + nan "^2.4.0" + +make-dir@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.0.0.tgz#97a011751e91dd87cfadef58832ebb04936de978" + dependencies: + pify "^2.3.0" + +map-obj@^1.0.0, map-obj@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" + +matcher@^0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/matcher/-/matcher-0.1.2.tgz#ef20cbde64c24c50cc61af5b83ee0b1b8ff00101" + dependencies: + escape-string-regexp "^1.0.4" + +math-clamp-x@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/math-clamp-x/-/math-clamp-x-1.2.0.tgz#8b537be0645bbba7ee73ee16091e7d6018c5edcf" + dependencies: + to-number-x "^2.0.0" + +math-sign-x@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/math-sign-x/-/math-sign-x-3.0.0.tgz#d5286022b48e150c384729a86042e0835264c3ed" + dependencies: + is-nan-x "^1.0.1" + to-number-x "^2.0.0" + +max-safe-integer@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/max-safe-integer/-/max-safe-integer-1.0.1.tgz#f38060be2c563d8c02e6d48af39122fd83b6f410" + +max-timeout@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/max-timeout/-/max-timeout-1.0.0.tgz#b68f69a2f99e0b476fd4cb23e2059ca750715e1f" + +md5-hex@^1.2.0, md5-hex@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/md5-hex/-/md5-hex-1.3.0.tgz#d2c4afe983c4370662179b8cad145219135046c4" + dependencies: + md5-o-matic "^0.1.1" + +md5-hex@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/md5-hex/-/md5-hex-2.0.0.tgz#d0588e9f1c74954492ecd24ac0ac6ce997d92e33" + dependencies: + md5-o-matic "^0.1.1" + +md5-o-matic@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/md5-o-matic/-/md5-o-matic-0.1.1.tgz#822bccd65e117c514fab176b25945d54100a03c3" + +mem@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/mem/-/mem-1.1.0.tgz#5edd52b485ca1d900fe64895505399a0dfa45f76" + dependencies: + mimic-fn "^1.0.0" + +meow@^3.3.0, meow@^3.7.0: + version "3.7.0" + resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb" + dependencies: + camelcase-keys "^2.0.0" + decamelize "^1.1.2" + loud-rejection "^1.0.0" + map-obj "^1.0.1" + minimist "^1.1.3" + normalize-package-data "^2.3.4" + object-assign "^4.0.1" + read-pkg-up "^1.0.1" + redent "^1.0.0" + trim-newlines "^1.0.0" + +merge-source-map@^1.0.2: + version "1.0.4" + resolved "https://registry.yarnpkg.com/merge-source-map/-/merge-source-map-1.0.4.tgz#a5de46538dae84d4114cc5ea02b4772a6346701f" + dependencies: + source-map "^0.5.6" + +micromatch@^2.1.5, micromatch@^2.3.11: + version "2.3.11" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565" + dependencies: + arr-diff "^2.0.0" + array-unique "^0.2.1" + braces "^1.8.2" + expand-brackets "^0.1.4" + extglob "^0.3.1" + filename-regex "^2.0.0" + is-extglob "^1.0.0" + is-glob "^2.0.1" + kind-of "^3.0.2" + normalize-path "^2.0.1" + object.omit "^2.0.0" + parse-glob "^3.0.4" + regex-cache "^0.4.2" + +mime-db@~1.30.0: + version "1.30.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.30.0.tgz#74c643da2dd9d6a45399963465b26d5ca7d71f01" + +mime-types@^2.1.12, mime-types@~2.1.7: + version "2.1.17" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.17.tgz#09d7a393f03e995a79f8af857b70a9e0ab16557a" + dependencies: + mime-db "~1.30.0" + +mimic-fn@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.1.0.tgz#e667783d92e89dbd342818b5230b9d62a672ad18" + +"minimatch@2 || 3", minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" + dependencies: + brace-expansion "^1.1.7" + +minimatch@3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.2.tgz#0f398a7300ea441e9c348c83d98ab8c9dbf9c40a" + dependencies: + brace-expansion "^1.0.0" + +minimist@0.0.8: + version "0.0.8" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" + +minimist@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.1.0.tgz#99df657a52574c21c9057497df742790b2b4c0de" + +minimist@^1.1.3, minimist@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" + +minimist@~0.0.1: + version "0.0.10" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf" + +"mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0: + version "0.5.1" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" + dependencies: + minimist "0.0.8" + +modify-values@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/modify-values/-/modify-values-1.0.0.tgz#e2b6cdeb9ce19f99317a53722f3dbf5df5eaaab2" + +moment@^2.6.0: + version "2.19.1" + resolved "https://registry.yarnpkg.com/moment/-/moment-2.19.1.tgz#56da1a2d1cbf01d38b7e1afc31c10bcfa1929167" + +ms@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + +ms@^0.7.1: + version "0.7.3" + resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.3.tgz#708155a5e44e33f5fd0fc53e81d0d40a91be1fff" + +multimatch@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/multimatch/-/multimatch-2.1.0.tgz#9c7906a22fb4c02919e2f5f75161b4cdbd4b2a2b" + dependencies: + array-differ "^1.0.0" + array-union "^1.0.1" + arrify "^1.0.0" + minimatch "^3.0.0" + +murmur-32@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/murmur-32/-/murmur-32-0.1.0.tgz#c1a79d4fc5fabf0405749d0aff77c41402055861" + dependencies: + array-buffer-from-string "^0.1.0" + fmix "^0.1.0" + imul "^1.0.0" + +mute-stream@0.0.7: + version "0.0.7" + resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" + +nan-x@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/nan-x/-/nan-x-1.0.0.tgz#0ee78e8d1cd0592d5b4260a5940154545c61c121" + +nan@^2.3.0: + version "2.7.0" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.7.0.tgz#d95bf721ec877e08db276ed3fc6eb78f9083ad46" + +nan@^2.3.2, nan@^2.4.0: + version "2.8.0" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.8.0.tgz#ed715f3fe9de02b57a5e6252d90a96675e1f085a" + +natural-compare@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" + +nested-error-stacks@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/nested-error-stacks/-/nested-error-stacks-1.0.2.tgz#19f619591519f096769a5ba9a86e6eeec823c3cf" + dependencies: + inherits "~2.0.1" + +node-pre-gyp@^0.6.36: + version "0.6.38" + resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.38.tgz#e92a20f83416415bb4086f6d1fb78b3da73d113d" + dependencies: + hawk "3.1.3" + mkdirp "^0.5.1" + nopt "^4.0.1" + npmlog "^4.0.2" + rc "^1.1.7" + request "2.81.0" + rimraf "^2.6.1" + semver "^5.3.0" + tar "^2.2.1" + tar-pack "^3.4.0" + +node-status-codes@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/node-status-codes/-/node-status-codes-1.0.0.tgz#5ae5541d024645d32a58fcddc9ceecea7ae3ac2f" + +nopt@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" + dependencies: + abbrev "1" + osenv "^0.1.4" + +normalize-package-data@^2.3.0, normalize-package-data@^2.3.2, normalize-package-data@^2.3.4, normalize-package-data@^2.3.5: + version "2.4.0" + resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f" + dependencies: + hosted-git-info "^2.1.4" + is-builtin-module "^1.0.0" + semver "2 || 3 || 4 || 5" + validate-npm-package-license "^3.0.1" + +normalize-path@^2.0.0, normalize-path@^2.0.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" + dependencies: + remove-trailing-separator "^1.0.1" + +normalize-space-x@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/normalize-space-x/-/normalize-space-x-3.0.0.tgz#17907d6c7c724a4f9567471cbb319553bc0f8882" + dependencies: + cached-constructors-x "^1.0.0" + trim-x "^3.0.0" + white-space-x "^3.0.0" + +npm-run-path@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-1.0.0.tgz#f5c32bf595fe81ae927daec52e82f8b000ac3c8f" + dependencies: + path-key "^1.0.0" + +npm-run-path@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" + dependencies: + path-key "^2.0.0" + +npmlog@^4.0.2, npmlog@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" + dependencies: + are-we-there-yet "~1.1.2" + console-control-strings "~1.1.0" + gauge "~2.7.3" + set-blocking "~2.0.0" + +null-check@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/null-check/-/null-check-1.0.0.tgz#977dffd7176012b9ec30d2a39db5cf72a0439edd" + +number-is-nan@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" + +nyc@^10.1.2: + version "10.3.2" + resolved "https://registry.yarnpkg.com/nyc/-/nyc-10.3.2.tgz#f27f4d91f2a9db36c24f574ff5c6efff0233de46" + dependencies: + archy "^1.0.0" + arrify "^1.0.1" + caching-transform "^1.0.0" + convert-source-map "^1.3.0" + debug-log "^1.0.1" + default-require-extensions "^1.0.0" + find-cache-dir "^0.1.1" + find-up "^1.1.2" + foreground-child "^1.5.3" + glob "^7.0.6" + istanbul-lib-coverage "^1.1.0" + istanbul-lib-hook "^1.0.6" + istanbul-lib-instrument "^1.7.1" + istanbul-lib-report "^1.1.0" + istanbul-lib-source-maps "^1.2.0" + istanbul-reports "^1.1.0" + md5-hex "^1.2.0" + merge-source-map "^1.0.2" + micromatch "^2.3.11" + mkdirp "^0.5.0" + resolve-from "^2.0.0" + rimraf "^2.5.4" + signal-exit "^3.0.1" + spawn-wrap "1.2.4" + test-exclude "^4.1.0" + yargs "^7.1.0" + yargs-parser "^5.0.0" + +oauth-sign@~0.8.1: + version "0.8.2" + resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43" + +object-assign@^4.0.1, object-assign@^4.1.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + +object-get-own-property-descriptor-x@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/object-get-own-property-descriptor-x/-/object-get-own-property-descriptor-x-3.2.0.tgz#464585ad03e66108ed166c99325b8d2c5ba93712" + dependencies: + attempt-x "^1.1.0" + has-own-property-x "^3.1.1" + has-symbol-support-x "^1.4.1" + is-falsey-x "^1.0.0" + is-index-x "^1.0.0" + is-primitive "^2.0.0" + is-string "^1.0.4" + property-is-enumerable-x "^1.1.0" + to-object-x "^1.4.1" + to-property-key-x "^2.0.1" + +object.omit@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa" + dependencies: + for-own "^0.1.4" + is-extendable "^0.1.1" + +observable-to-promise@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/observable-to-promise/-/observable-to-promise-0.4.0.tgz#28afe71645308f2d41d71f47ad3fece1a377e52b" + dependencies: + is-observable "^0.2.0" + symbol-observable "^0.2.2" + +once@^1.3.0, once@^1.3.3: + version "1.4.0" + resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + dependencies: + wrappy "1" + +onetime@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4" + dependencies: + mimic-fn "^1.0.0" + +optimist@^0.6.1, optimist@~0.6.0: + version "0.6.1" + resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.6.1.tgz#da3ea74686fa21a19a111c326e90eb15a0196686" + dependencies: + minimist "~0.0.1" + wordwrap "~0.0.2" + +option-chain@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/option-chain/-/option-chain-0.1.1.tgz#e9b811e006f1c0f54802f28295bfc8970f8dcfbd" + dependencies: + object-assign "^4.0.1" + +os-homedir@^1.0.0, os-homedir@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" + +os-locale@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-1.4.0.tgz#20f9f17ae29ed345e8bde583b13d2009803c14d9" + dependencies: + lcid "^1.0.0" + +os-locale@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-2.1.0.tgz#42bc2900a6b5b8bd17376c8e882b65afccf24bf2" + dependencies: + execa "^0.7.0" + lcid "^1.0.0" + mem "^1.1.0" + +os-tmpdir@^1.0.0, os-tmpdir@^1.0.1, os-tmpdir@~1.0.1, os-tmpdir@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" + +osenv@^0.1.0, osenv@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.4.tgz#42fe6d5953df06c8064be6f176c3d05aaaa34644" + dependencies: + os-homedir "^1.0.0" + os-tmpdir "^1.0.0" + +p-finally@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" + +p-limit@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.1.0.tgz#b07ff2d9a5d88bec806035895a2bab66a27988bc" + +p-locate@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" + dependencies: + p-limit "^1.1.0" + +package-hash@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/package-hash/-/package-hash-1.2.0.tgz#003e56cd57b736a6ed6114cc2b81542672770e44" + dependencies: + md5-hex "^1.3.0" + +package-json@^2.0.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/package-json/-/package-json-2.4.0.tgz#0d15bd67d1cbbddbb2ca222ff2edb86bcb31a8bb" + dependencies: + got "^5.0.0" + registry-auth-token "^3.0.1" + registry-url "^3.0.3" + semver "^5.1.0" + +package-json@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/package-json/-/package-json-4.0.1.tgz#8869a0401253661c4c4ca3da6c2121ed555f5eed" + dependencies: + got "^6.7.1" + registry-auth-token "^3.0.1" + registry-url "^3.0.3" + semver "^5.1.0" + +parse-color@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/parse-color/-/parse-color-1.0.0.tgz#7b748b95a83f03f16a94f535e52d7f3d94658619" + dependencies: + color-convert "~0.5.0" + +parse-github-repo-url@^1.3.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/parse-github-repo-url/-/parse-github-repo-url-1.4.1.tgz#9e7d8bb252a6cb6ba42595060b7bf6df3dbc1f50" + +parse-glob@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/parse-glob/-/parse-glob-3.0.4.tgz#b2c376cfb11f35513badd173ef0bb6e3a388391c" + dependencies: + glob-base "^0.3.0" + is-dotfile "^1.0.0" + is-extglob "^1.0.0" + is-glob "^2.0.0" + +parse-int-x@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/parse-int-x/-/parse-int-x-2.0.0.tgz#9f979d4115930df2f4706a41810b9c712405552f" + dependencies: + cached-constructors-x "^1.0.0" + nan-x "^1.0.0" + to-string-x "^1.4.2" + trim-left-x "^3.0.0" + +parse-json@^2.1.0, parse-json@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" + dependencies: + error-ex "^1.2.0" + +parse-json@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-3.0.0.tgz#fa6f47b18e23826ead32f263e744d0e1e847fb13" + dependencies: + error-ex "^1.3.1" + +parse-ms@^0.1.0: + version "0.1.2" + resolved "https://registry.yarnpkg.com/parse-ms/-/parse-ms-0.1.2.tgz#dd3fa25ed6c2efc7bdde12ad9b46c163aa29224e" + +parse-ms@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/parse-ms/-/parse-ms-1.0.1.tgz#56346d4749d78f23430ca0c713850aef91aa361d" + +path-dirname@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" + +path-exists@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" + dependencies: + pinkie-promise "^2.0.0" + +path-exists@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" + +path-is-absolute@^1.0.0, path-is-absolute@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + +path-is-inside@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" + +path-key@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-1.0.0.tgz#5d53d578019646c0d68800db4e146e6bdc2ac7af" + +path-key@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" + +path-parse@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.5.tgz#3c1adf871ea9cd6c9431b6ea2bd74a0ff055c4c1" + +path-type@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" + dependencies: + graceful-fs "^4.1.2" + pify "^2.0.0" + pinkie-promise "^2.0.0" + +path-type@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73" + dependencies: + pify "^2.0.0" + +performance-now@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-0.2.0.tgz#33ef30c5c77d4ea21c5a53869d91b56d8f2555e5" + +pify@^2.0.0, pify@^2.2.0, pify@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" + +pify@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" + +pinkie-promise@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-1.0.0.tgz#d1da67f5482563bb7cf57f286ae2822ecfbf3670" + dependencies: + pinkie "^1.0.0" + +pinkie-promise@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" + dependencies: + pinkie "^2.0.0" + +pinkie@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-1.0.0.tgz#5a47f28ba1015d0201bda7bf0f358e47bec8c7e4" + +pinkie@^2.0.0: + version "2.0.4" + resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" + +pkg-conf@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/pkg-conf/-/pkg-conf-2.0.0.tgz#071c87650403bccfb9c627f58751bfe47c067279" + dependencies: + find-up "^2.0.0" + load-json-file "^2.0.0" + +pkg-dir@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-1.0.0.tgz#7a4b508a8d5bb2d629d447056ff4e9c9314cf3d4" + dependencies: + find-up "^1.0.0" + +plist@^2.0.1: + version "2.1.0" + resolved "https://registry.yarnpkg.com/plist/-/plist-2.1.0.tgz#57ccdb7a0821df21831217a3cad54e3e146a1025" + dependencies: + base64-js "1.2.0" + xmlbuilder "8.2.2" + xmldom "0.1.x" + +plur@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/plur/-/plur-1.0.0.tgz#db85c6814f5e5e5a3b49efc28d604fec62975156" + +plur@^2.0.0: + version "2.1.2" + resolved "https://registry.yarnpkg.com/plur/-/plur-2.1.2.tgz#7482452c1a0f508e3e344eaec312c91c29dc655a" + dependencies: + irregular-plurals "^1.0.0" + +prepend-http@^1.0.1: + version "1.0.4" + resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" + +preserve@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b" + +pretty-format@^18.1.0: + version "18.1.0" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-18.1.0.tgz#fb65a86f7a7f9194963eee91865c1bcf1039e284" + dependencies: + ansi-styles "^2.2.1" + +pretty-ms@^0.2.1: + version "0.2.2" + resolved "https://registry.yarnpkg.com/pretty-ms/-/pretty-ms-0.2.2.tgz#da879a682ff33a37011046f13d627f67c73b84f6" + dependencies: + parse-ms "^0.1.0" + +pretty-ms@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/pretty-ms/-/pretty-ms-2.1.0.tgz#4257c256df3fb0b451d6affaab021884126981dc" + dependencies: + is-finite "^1.0.1" + parse-ms "^1.0.0" + plur "^1.0.0" + +private@^0.1.7: + version "0.1.8" + resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff" + +process-nextick-args@~1.0.6: + version "1.0.7" + resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3" + +progress@^1.1.8: + version "1.1.8" + resolved "https://registry.yarnpkg.com/progress/-/progress-1.1.8.tgz#e260c78f6161cdd9b0e56cc3e0a85de17c7a57be" + +property-is-enumerable-x@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/property-is-enumerable-x/-/property-is-enumerable-x-1.1.0.tgz#7ca48917476cd0914b37809bfd05776a0d942f6f" + dependencies: + to-object-x "^1.4.1" + to-property-key-x "^2.0.1" + +pseudomap@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" + +punycode@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" + +q@^1.4.1: + version "1.5.0" + resolved "https://registry.yarnpkg.com/q/-/q-1.5.0.tgz#dd01bac9d06d30e6f219aecb8253ee9ebdc308f1" + +qs@~6.4.0: + version "6.4.0" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.0.tgz#13e26d28ad6b0ffaa91312cd3bf708ed351e7233" + +random-path@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/random-path/-/random-path-0.1.1.tgz#f8f4d36f75a134ca15fd39c7d7505fbf163b634c" + dependencies: + base32-encode "^0.1.0" + murmur-32 "^0.1.0" + +randomatic@^1.1.3: + version "1.1.7" + resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-1.1.7.tgz#c7abe9cc8b87c0baa876b19fde83fd464797e38c" + dependencies: + is-number "^3.0.0" + kind-of "^4.0.0" + +rc@^1.0.1, rc@^1.1.6, rc@^1.1.7: + version "1.2.2" + resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.2.tgz#d8ce9cb57e8d64d9c7badd9876c7c34cbe3c7077" + dependencies: + deep-extend "~0.4.0" + ini "~1.3.0" + minimist "^1.2.0" + strip-json-comments "~2.0.1" + +rcedit@^0.8.0: + version "0.8.0" + resolved "https://registry.yarnpkg.com/rcedit/-/rcedit-0.8.0.tgz#dc3130aeb028f4a658ac2e3c8e6d047222dac948" + +read-all-stream@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/read-all-stream/-/read-all-stream-3.1.0.tgz#35c3e177f2078ef789ee4bfafa4373074eaef4fa" + dependencies: + pinkie-promise "^2.0.0" + readable-stream "^2.0.0" + +read-cmd-shim@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/read-cmd-shim/-/read-cmd-shim-1.0.1.tgz#2d5d157786a37c055d22077c32c53f8329e91c7b" + dependencies: + graceful-fs "^4.1.2" + +read-pkg-up@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" + dependencies: + find-up "^1.0.0" + read-pkg "^1.0.0" + +read-pkg-up@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be" + dependencies: + find-up "^2.0.0" + read-pkg "^2.0.0" + +read-pkg@^1.0.0, read-pkg@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" + dependencies: + load-json-file "^1.0.0" + normalize-package-data "^2.3.2" + path-type "^1.0.0" + +read-pkg@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8" + dependencies: + load-json-file "^2.0.0" + normalize-package-data "^2.3.2" + path-type "^2.0.0" + +readable-stream@^2.0.0, readable-stream@^2.0.2, readable-stream@^2.0.5, readable-stream@^2.0.6, readable-stream@^2.1.4, readable-stream@^2.1.5, readable-stream@^2.2.2: + version "2.3.3" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.3.tgz#368f2512d79f9d46fdfc71349ae7878bbc1eb95c" + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.3" + isarray "~1.0.0" + process-nextick-args "~1.0.6" + safe-buffer "~5.1.1" + string_decoder "~1.0.3" + util-deprecate "~1.0.1" + +readdirp@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.1.0.tgz#4ed0ad060df3073300c48440373f72d1cc642d78" + dependencies: + graceful-fs "^4.1.2" + minimatch "^3.0.2" + readable-stream "^2.0.2" + set-immediate-shim "^1.0.1" + +redent@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde" + dependencies: + indent-string "^2.1.0" + strip-indent "^1.0.1" + +regenerate@^1.2.1: + version "1.3.3" + resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.3.3.tgz#0c336d3980553d755c39b586ae3b20aa49c82b7f" + +regenerator-runtime@^0.11.0: + version "0.11.0" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.0.tgz#7e54fe5b5ccd5d6624ea6255c3473be090b802e1" + +regex-cache@^0.4.2: + version "0.4.4" + resolved "https://registry.yarnpkg.com/regex-cache/-/regex-cache-0.4.4.tgz#75bdc58a2a1496cec48a12835bc54c8d562336dd" + dependencies: + is-equal-shallow "^0.1.3" + +regexpu-core@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-2.0.0.tgz#49d038837b8dcf8bfa5b9a42139938e6ea2ae240" + dependencies: + regenerate "^1.2.1" + regjsgen "^0.2.0" + regjsparser "^0.1.4" + +registry-auth-token@^3.0.1: + version "3.3.1" + resolved "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-3.3.1.tgz#fb0d3289ee0d9ada2cbb52af5dfe66cb070d3006" + dependencies: + rc "^1.1.6" + safe-buffer "^5.0.1" + +registry-url@^3.0.3: + version "3.1.0" + resolved "https://registry.yarnpkg.com/registry-url/-/registry-url-3.1.0.tgz#3d4ef870f73dde1d77f0cf9a381432444e174942" + dependencies: + rc "^1.0.1" + +regjsgen@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7" + +regjsparser@^0.1.4: + version "0.1.5" + resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.1.5.tgz#7ee8f84dc6fa792d3fd0ae228d24bd949ead205c" + dependencies: + jsesc "~0.5.0" + +remove-trailing-separator@^1.0.1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" + +repeat-element@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.2.tgz#ef089a178d1483baae4d93eb98b4f9e4e11d990a" + +repeat-string@^1.5.2, repeat-string@^1.5.4: + version "1.6.1" + resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" + +repeating@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda" + dependencies: + is-finite "^1.0.0" + +replace-comments-x@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/replace-comments-x/-/replace-comments-x-2.0.0.tgz#a5cec18efd912aad78a7c3c4b69d01768556d140" + dependencies: + require-coercible-to-string-x "^1.0.0" + to-string-x "^1.4.2" + +request-progress@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/request-progress/-/request-progress-3.0.0.tgz#4ca754081c7fec63f505e4faa825aa06cd669dbe" + dependencies: + throttleit "^1.0.0" + +request@2.81.0, request@^2.80.0: + version "2.81.0" + resolved "https://registry.yarnpkg.com/request/-/request-2.81.0.tgz#c6928946a0e06c5f8d6f8a9333469ffda46298a0" + dependencies: + aws-sign2 "~0.6.0" + aws4 "^1.2.1" + caseless "~0.12.0" + combined-stream "~1.0.5" + extend "~3.0.0" + forever-agent "~0.6.1" + form-data "~2.1.1" + har-validator "~4.2.1" + hawk "~3.1.3" + http-signature "~1.1.0" + is-typedarray "~1.0.0" + isstream "~0.1.2" + json-stringify-safe "~5.0.1" + mime-types "~2.1.7" + oauth-sign "~0.8.1" + performance-now "^0.2.0" + qs "~6.4.0" + safe-buffer "^5.0.1" + stringstream "~0.0.4" + tough-cookie "~2.3.0" + tunnel-agent "^0.6.0" + uuid "^3.0.0" + +require-coercible-to-string-x@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/require-coercible-to-string-x/-/require-coercible-to-string-x-1.0.0.tgz#367b3e9ca67e00324c411b0b498453a74cd5569e" + dependencies: + require-object-coercible-x "^1.4.1" + to-string-x "^1.4.2" + +require-directory@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" + +require-main-filename@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" + +require-object-coercible-x@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/require-object-coercible-x/-/require-object-coercible-x-1.4.1.tgz#75b9fb5bda2d15cf705a5714f108e8b40ca3eb2e" + dependencies: + is-nil-x "^1.4.1" + +require-precompiled@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/require-precompiled/-/require-precompiled-0.1.0.tgz#5a1b52eb70ebed43eb982e974c85ab59571e56fa" + +resolve-cwd@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-1.0.0.tgz#4eaeea41ed040d1702457df64a42b2b07d246f9f" + dependencies: + resolve-from "^2.0.0" + +resolve-from@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-2.0.0.tgz#9480ab20e94ffa1d9e80a804c7ea147611966b57" + +resolve@^1.1.7: + version "1.4.0" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.4.0.tgz#a75be01c53da25d934a98ebd0e4c4a7312f92a86" + dependencies: + path-parse "^1.0.5" + +restore-cursor@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" + dependencies: + onetime "^2.0.0" + signal-exit "^3.0.2" + +right-align@^0.1.1: + version "0.1.3" + resolved "https://registry.yarnpkg.com/right-align/-/right-align-0.1.3.tgz#61339b722fe6a3515689210d24e14c96148613ef" + dependencies: + align-text "^0.1.1" + +rimraf@2, rimraf@^2.3.3, rimraf@^2.5.1, rimraf@^2.5.4, rimraf@^2.6.1: + version "2.6.2" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36" + dependencies: + glob "^7.0.5" + +run-async@^2.2.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.3.0.tgz#0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0" + dependencies: + is-promise "^2.1.0" + +rx-lite-aggregates@^4.0.8: + version "4.0.8" + resolved "https://registry.yarnpkg.com/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz#753b87a89a11c95467c4ac1626c4efc4e05c67be" + dependencies: + rx-lite "*" + +rx-lite@*, rx-lite@^4.0.8: + version "4.0.8" + resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-4.0.8.tgz#0b1e11af8bc44836f04a6407e92da42467b79444" + +safe-buffer@^5.0.1, safe-buffer@^5.1.1, safe-buffer@~5.1.0, safe-buffer@~5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" + +semver-diff@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/semver-diff/-/semver-diff-2.1.0.tgz#4bbb8437c8d37e4b0cf1a68fd726ec6d645d6d36" + dependencies: + semver "^5.0.3" + +"semver@2 || 3 || 4 || 5", semver@^5.0.1, semver@^5.0.3, semver@^5.1.0, semver@^5.3.0, semver@^5.4.1: + version "5.4.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.4.1.tgz#e059c09d8571f0540823733433505d3a2f00b18e" + +set-blocking@^2.0.0, set-blocking@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" + +set-immediate-shim@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz#4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61" + +shebang-command@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" + dependencies: + shebang-regex "^1.0.0" + +shebang-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" + +signal-exit@^2.0.0: + version "2.1.2" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-2.1.2.tgz#375879b1f92ebc3b334480d038dc546a6d558564" + +signal-exit@^3.0.0, signal-exit@^3.0.1, signal-exit@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" + +slash@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55" + +slice-ansi@0.0.4: + version "0.0.4" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-0.0.4.tgz#edbf8903f66f7ce2f8eafd6ceed65e264c831b35" + +slide@^1.1.5: + version "1.1.6" + resolved "https://registry.yarnpkg.com/slide/-/slide-1.1.6.tgz#56eb027d65b4d2dce6cb2e2d32c4d4afc9e1d707" + +sntp@1.x.x: + version "1.0.9" + resolved "https://registry.yarnpkg.com/sntp/-/sntp-1.0.9.tgz#6541184cc90aeea6c6e7b35e2659082443c66198" + dependencies: + hoek "2.x.x" + +sort-keys@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-2.0.0.tgz#658535584861ec97d730d6cf41822e1f56684128" + dependencies: + is-plain-obj "^1.0.0" + +source-map-support@^0.4.0, source-map-support@^0.4.11, source-map-support@^0.4.15: + version "0.4.18" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.18.tgz#0286a6de8be42641338594e97ccea75f0a2c585f" + dependencies: + source-map "^0.5.6" + +source-map@^0.4.4: + version "0.4.4" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b" + dependencies: + amdefine ">=0.0.4" + +source-map@^0.5.0, source-map@^0.5.3, source-map@^0.5.6, source-map@~0.5.1: + version "0.5.7" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" + +spawn-wrap@1.2.4: + version "1.2.4" + resolved "https://registry.yarnpkg.com/spawn-wrap/-/spawn-wrap-1.2.4.tgz#920eb211a769c093eebfbd5b0e7a5d2e68ab2e40" + dependencies: + foreground-child "^1.3.3" + mkdirp "^0.5.0" + os-homedir "^1.0.1" + rimraf "^2.3.3" + signal-exit "^2.0.0" + which "^1.2.4" + +spdx-correct@~1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-1.0.2.tgz#4b3073d933ff51f3912f03ac5519498a4150db40" + dependencies: + spdx-license-ids "^1.0.2" + +spdx-expression-parse@~1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz#9bdf2f20e1f40ed447fbe273266191fced51626c" + +spdx-license-ids@^1.0.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz#c9df7a3424594ade6bd11900d596696dc06bac57" + +split2@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/split2/-/split2-2.2.0.tgz#186b2575bcf83e85b7d18465756238ee4ee42493" + dependencies: + through2 "^2.0.2" + +split@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/split/-/split-1.0.1.tgz#605bd9be303aa59fb35f9229fbea0ddec9ea07d9" + dependencies: + through "2" + +sshpk@^1.7.0: + version "1.13.1" + resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.13.1.tgz#512df6da6287144316dc4c18fe1cf1d940739be3" + dependencies: + asn1 "~0.2.3" + assert-plus "^1.0.0" + dashdash "^1.12.0" + getpass "^0.1.1" + optionalDependencies: + bcrypt-pbkdf "^1.0.0" + ecc-jsbn "~0.1.1" + jsbn "~0.1.0" + tweetnacl "~0.14.0" + +stack-utils@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-1.0.1.tgz#d4f33ab54e8e38778b0ca5cfd3b3afb12db68620" + +standard-version@^4.0.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/standard-version/-/standard-version-4.2.0.tgz#3017e8c5ced2a92db7501790255c3ba85157375d" + dependencies: + chalk "^1.1.3" + conventional-changelog "^1.1.0" + conventional-recommended-bump "^1.0.0" + figures "^1.5.0" + fs-access "^1.0.0" + semver "^5.1.0" + yargs "^8.0.1" + +stream-buffers@~2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/stream-buffers/-/stream-buffers-2.2.0.tgz#91d5f5130d1cef96dcfa7f726945188741d09ee4" + +string-width@^1.0.1, string-width@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" + dependencies: + code-point-at "^1.0.0" + is-fullwidth-code-point "^1.0.0" + strip-ansi "^3.0.0" + +string-width@^2.0.0, string-width@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" + dependencies: + is-fullwidth-code-point "^2.0.0" + strip-ansi "^4.0.0" + +string_decoder@~1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.0.3.tgz#0fc67d7c141825de94282dd536bec6b9bce860ab" + dependencies: + safe-buffer "~5.1.0" + +stringstream@~0.0.4: + version "0.0.5" + resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.5.tgz#4e484cd4de5a0bbbee18e46307710a8a81621878" + +strip-ansi@^3.0.0, strip-ansi@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" + dependencies: + ansi-regex "^2.0.0" + +strip-ansi@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" + dependencies: + ansi-regex "^3.0.0" + +strip-ansi@~0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-0.1.1.tgz#39e8a98d044d150660abe4a6808acf70bb7bc991" + +strip-bom-buf@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/strip-bom-buf/-/strip-bom-buf-1.0.0.tgz#1cb45aaf57530f4caf86c7f75179d2c9a51dd572" + dependencies: + is-utf8 "^0.2.1" + +strip-bom@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" + dependencies: + is-utf8 "^0.2.0" + +strip-bom@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" + +strip-eof@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" + +strip-indent@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2" + dependencies: + get-stdin "^4.0.1" + +strip-json-comments@~2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" + +strong-log-transformer@^1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/strong-log-transformer/-/strong-log-transformer-1.0.6.tgz#f7fb93758a69a571140181277eea0c2eb1301fa3" + dependencies: + byline "^5.0.0" + duplexer "^0.1.1" + minimist "^0.1.0" + moment "^2.6.0" + through "^2.3.4" + +supports-color@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" + +supports-color@^3.1.2: + version "3.2.3" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.2.3.tgz#65ac0504b3954171d8a64946b2ae3cbb8a5f54f6" + dependencies: + has-flag "^1.0.0" + +supports-color@^4.0.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.5.0.tgz#be7a0de484dec5c5cddf8b3d59125044912f635b" + dependencies: + has-flag "^2.0.0" + +symbol-observable@^0.2.2: + version "0.2.4" + resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-0.2.4.tgz#95a83db26186d6af7e7a18dbd9760a2f86d08f40" + +tar-pack@^3.4.0: + version "3.4.0" + resolved "https://registry.yarnpkg.com/tar-pack/-/tar-pack-3.4.0.tgz#23be2d7f671a8339376cbdb0b8fe3fdebf317984" + dependencies: + debug "^2.2.0" + fstream "^1.0.10" + fstream-ignore "^1.0.5" + once "^1.3.3" + readable-stream "^2.1.4" + rimraf "^2.5.1" + tar "^2.2.1" + uid-number "^0.0.6" + +tar@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.1.tgz#8e4d2a256c0e2185c6b18ad694aec968b83cb1d1" + dependencies: + block-stream "*" + fstream "^1.0.2" + inherits "2" + +temp-dir@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/temp-dir/-/temp-dir-1.0.0.tgz#0a7c0ea26d3a39afa7e0ebea9c1fc0bc4daa011d" + +temp-write@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/temp-write/-/temp-write-3.3.0.tgz#c1a96de2b36061342eae81f44ff001aec8f615a9" + dependencies: + graceful-fs "^4.1.2" + is-stream "^1.1.0" + make-dir "^1.0.0" + pify "^2.2.0" + temp-dir "^1.0.0" + uuid "^3.0.1" + +tempfile@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/tempfile/-/tempfile-1.1.1.tgz#5bcc4eaecc4ab2c707d8bc11d99ccc9a2cb287f2" + dependencies: + os-tmpdir "^1.0.0" + uuid "^2.0.1" + +term-size@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/term-size/-/term-size-1.2.0.tgz#458b83887f288fc56d6fffbfad262e26638efa69" + dependencies: + execa "^0.7.0" + +test-exclude@^4.1.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-4.1.1.tgz#4d84964b0966b0087ecc334a2ce002d3d9341e26" + dependencies: + arrify "^1.0.1" + micromatch "^2.3.11" + object-assign "^4.1.0" + read-pkg-up "^1.0.1" + require-main-filename "^1.0.1" + +text-extensions@^1.0.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/text-extensions/-/text-extensions-1.7.0.tgz#faaaba2625ed746d568a23e4d0aacd9bf08a8b39" + +text-table@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" + +throttleit@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/throttleit/-/throttleit-1.0.0.tgz#9e785836daf46743145a5984b6268d828528ac6c" + +through2@^2.0.0, through2@^2.0.2: + version "2.0.3" + resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.3.tgz#0004569b37c7c74ba39c43f3ced78d1ad94140be" + dependencies: + readable-stream "^2.1.5" + xtend "~4.0.1" + +through@2, "through@>=2.2.7 <3", through@^2.3.4, through@^2.3.6: + version "2.3.8" + resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" + +time-require@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/time-require/-/time-require-0.1.2.tgz#f9e12cb370fc2605e11404582ba54ef5ca2b2d98" + dependencies: + chalk "^0.4.0" + date-time "^0.1.1" + pretty-ms "^0.2.1" + text-table "^0.2.0" + +timed-out@^3.0.0: + version "3.1.3" + resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-3.1.3.tgz#95860bfcc5c76c277f8f8326fd0f5b2e20eba217" + +timed-out@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-4.0.1.tgz#f32eacac5a175bea25d7fab565ab3ed8741ef56f" + +tmp@0.0.31: + version "0.0.31" + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.31.tgz#8f38ab9438e17315e5dbd8b3657e8bfb277ae4a7" + dependencies: + os-tmpdir "~1.0.1" + +tmp@^0.0.33: + version "0.0.33" + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" + dependencies: + os-tmpdir "~1.0.2" + +tn1150@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/tn1150/-/tn1150-0.1.0.tgz#673503d24d56b87de8b8c77fee3fc0853d59a18d" + dependencies: + unorm "^1.4.1" + +to-boolean-x@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/to-boolean-x/-/to-boolean-x-1.0.1.tgz#724128dacc5bea75a93ad471be7ee9277561b2c1" + +to-fast-properties@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" + +to-integer-x@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/to-integer-x/-/to-integer-x-3.0.0.tgz#9f3b80e668c7f0ae45e6926b40d95f52c1addc74" + dependencies: + is-finite-x "^3.0.2" + is-nan-x "^1.0.1" + math-sign-x "^3.0.0" + to-number-x "^2.0.0" + +to-number-x@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/to-number-x/-/to-number-x-2.0.0.tgz#c9099d7ded8fd327132a2987df2dcc8baf36df4d" + dependencies: + cached-constructors-x "^1.0.0" + nan-x "^1.0.0" + parse-int-x "^2.0.0" + to-primitive-x "^1.1.0" + trim-x "^3.0.0" + +to-object-x@^1.4.1, to-object-x@^1.5.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/to-object-x/-/to-object-x-1.5.0.tgz#bd69dd4e104d77acc0cc0d84f5ac48f630aebe3c" + dependencies: + cached-constructors-x "^1.0.0" + require-object-coercible-x "^1.4.1" + +to-primitive-x@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/to-primitive-x/-/to-primitive-x-1.1.0.tgz#41ce2c13e3e246e0e5d0a8829a0567c6015833f8" + dependencies: + has-symbol-support-x "^1.4.1" + is-date-object "^1.0.1" + is-function-x "^3.2.0" + is-nil-x "^1.4.1" + is-primitive "^2.0.0" + is-symbol "^1.0.1" + require-object-coercible-x "^1.4.1" + validate.io-undefined "^1.0.3" + +to-property-key-x@^2.0.1, to-property-key-x@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/to-property-key-x/-/to-property-key-x-2.0.2.tgz#b19aa8e22faa0ff7d1c102cfbc657af73413cfa1" + dependencies: + has-symbol-support-x "^1.4.1" + to-primitive-x "^1.1.0" + to-string-x "^1.4.2" + +to-string-symbols-supported-x@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/to-string-symbols-supported-x/-/to-string-symbols-supported-x-1.0.0.tgz#d435eb72312fe885b18047a96d59c75641476872" + dependencies: + cached-constructors-x "^1.0.0" + has-symbol-support-x "^1.4.1" + is-symbol "^1.0.1" + +to-string-tag-x@^1.4.1, to-string-tag-x@^1.4.2: + version "1.4.2" + resolved "https://registry.yarnpkg.com/to-string-tag-x/-/to-string-tag-x-1.4.2.tgz#916a0c72d2f93dc27fccfe0ea0ce26cd78be21de" + dependencies: + lodash.isnull "^3.0.0" + validate.io-undefined "^1.0.3" + +to-string-x@^1.4.2: + version "1.4.2" + resolved "https://registry.yarnpkg.com/to-string-x/-/to-string-x-1.4.2.tgz#7d9a2528e159a9214e668137c1e10a045abe6279" + dependencies: + is-symbol "^1.0.1" + +tough-cookie@~2.3.0: + version "2.3.3" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.3.tgz#0b618a5565b6dea90bf3425d04d55edc475a7561" + dependencies: + punycode "^1.4.1" + +trim-left-x@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/trim-left-x/-/trim-left-x-3.0.0.tgz#356cf055896726b9754425e841398842e90b4cdf" + dependencies: + cached-constructors-x "^1.0.0" + require-coercible-to-string-x "^1.0.0" + white-space-x "^3.0.0" + +trim-newlines@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613" + +trim-off-newlines@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/trim-off-newlines/-/trim-off-newlines-1.0.1.tgz#9f9ba9d9efa8764c387698bcbfeb2c848f11adb3" + +trim-right-x@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/trim-right-x/-/trim-right-x-3.0.0.tgz#28c4cd37d5981f50ace9b52e3ce9106f4d2d22c0" + dependencies: + cached-constructors-x "^1.0.0" + require-coercible-to-string-x "^1.0.0" + white-space-x "^3.0.0" + +trim-right@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" + +trim-x@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/trim-x/-/trim-x-3.0.0.tgz#24efdcd027b748bbfc246a0139ad1749befef024" + dependencies: + trim-left-x "^3.0.0" + trim-right-x "^3.0.0" + +tslint@^4.5.1: + version "4.5.1" + resolved "https://registry.yarnpkg.com/tslint/-/tslint-4.5.1.tgz#05356871bef23a434906734006fc188336ba824b" + dependencies: + babel-code-frame "^6.20.0" + colors "^1.1.2" + diff "^3.0.1" + findup-sync "~0.3.0" + glob "^7.1.1" + optimist "~0.6.0" + resolve "^1.1.7" + tsutils "^1.1.0" + update-notifier "^2.0.0" + +tsutils@^1.1.0: + version "1.9.1" + resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-1.9.1.tgz#b9f9ab44e55af9681831d5f28d0aeeaf5c750cb0" + +tunnel-agent@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" + dependencies: + safe-buffer "^5.0.1" + +tweetnacl@^0.14.3, tweetnacl@~0.14.0: + version "0.14.5" + resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" + +typedarray@^0.0.6: + version "0.0.6" + resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" + +typescript@^2.2.1: + version "2.5.3" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-2.5.3.tgz#df3dcdc38f3beb800d4bc322646b04a3f6ca7f0d" + +uglify-js@^2.6: + version "2.8.29" + resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.8.29.tgz#29c5733148057bb4e1f75df35b7a9cb72e6a59dd" + dependencies: + source-map "~0.5.1" + yargs "~3.10.0" + optionalDependencies: + uglify-to-browserify "~1.0.0" + +uglify-to-browserify@~1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7" + +uid-number@^0.0.6: + version "0.0.6" + resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81" + +uid2@0.0.3: + version "0.0.3" + resolved "https://registry.yarnpkg.com/uid2/-/uid2-0.0.3.tgz#483126e11774df2f71b8b639dcd799c376162b82" + +unique-string@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-1.0.0.tgz#9e1057cca851abb93398f8b33ae187b99caec11a" + dependencies: + crypto-random-string "^1.0.0" + +unique-temp-dir@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unique-temp-dir/-/unique-temp-dir-1.0.0.tgz#6dce95b2681ca003eebfb304a415f9cbabcc5385" + dependencies: + mkdirp "^0.5.1" + os-tmpdir "^1.0.1" + uid2 "0.0.3" + +universalify@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.1.tgz#fa71badd4437af4c148841e3b3b165f9e9e590b7" + +unorm@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/unorm/-/unorm-1.4.1.tgz#364200d5f13646ca8bcd44490271335614792300" + +unzip-response@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/unzip-response/-/unzip-response-1.0.2.tgz#b984f0877fc0a89c2c773cc1ef7b5b232b5b06fe" + +unzip-response@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/unzip-response/-/unzip-response-2.0.1.tgz#d2f0f737d16b0615e72a6935ed04214572d56f97" + +update-notifier@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/update-notifier/-/update-notifier-1.0.3.tgz#8f92c515482bd6831b7c93013e70f87552c7cf5a" + dependencies: + boxen "^0.6.0" + chalk "^1.0.0" + configstore "^2.0.0" + is-npm "^1.0.0" + latest-version "^2.0.0" + lazy-req "^1.1.0" + semver-diff "^2.0.0" + xdg-basedir "^2.0.0" + +update-notifier@^2.0.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/update-notifier/-/update-notifier-2.3.0.tgz#4e8827a6bb915140ab093559d7014e3ebb837451" + dependencies: + boxen "^1.2.1" + chalk "^2.0.1" + configstore "^3.0.0" + import-lazy "^2.1.0" + is-installed-globally "^0.1.0" + is-npm "^1.0.0" + latest-version "^3.0.0" + semver-diff "^2.0.0" + xdg-basedir "^3.0.0" + +url-parse-lax@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-1.0.0.tgz#7af8f303645e9bd79a272e7a14ac68bc0609da73" + dependencies: + prepend-http "^1.0.1" + +util-deprecate@~1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + +uuid@^2.0.1: + version "2.0.3" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-2.0.3.tgz#67e2e863797215530dff318e5bf9dcebfd47b21a" + +uuid@^3.0.0, uuid@^3.0.1: + version "3.1.0" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.1.0.tgz#3dd3d3e790abc24d7b0d3a034ffababe28ebbc04" + +validate-npm-package-license@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz#2804babe712ad3379459acfbe24746ab2c303fbc" + dependencies: + spdx-correct "~1.0.0" + spdx-expression-parse "~1.0.0" + +validate.io-undefined@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/validate.io-undefined/-/validate.io-undefined-1.0.3.tgz#7e27fcbb315b841e78243431897671929e20b7f4" + +verror@1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" + dependencies: + assert-plus "^1.0.0" + core-util-is "1.0.2" + extsprintf "^1.2.0" + +wcwidth@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/wcwidth/-/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8" + dependencies: + defaults "^1.0.3" + +which-module@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f" + +which-module@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" + +which@^1.2.4, which@^1.2.8, which@^1.2.9: + version "1.3.0" + resolved "https://registry.yarnpkg.com/which/-/which-1.3.0.tgz#ff04bdfc010ee547d780bec38e1ac1c2777d253a" + dependencies: + isexe "^2.0.0" + +white-space-x@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/white-space-x/-/white-space-x-3.0.0.tgz#c8e31ed4fecf4f3feebe6532e6046008a666a3e1" + +wide-align@^1.1.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.2.tgz#571e0f1b0604636ebc0dfc21b0339bbe31341710" + dependencies: + string-width "^1.0.2" + +widest-line@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-1.0.0.tgz#0c09c85c2a94683d0d7eaf8ee097d564bf0e105c" + dependencies: + string-width "^1.0.1" + +window-size@0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d" + +wordwrap@0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.2.tgz#b79669bb42ecb409f83d583cad52ca17eaa1643f" + +wordwrap@~0.0.2: + version "0.0.3" + resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107" + +wrap-ansi@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" + dependencies: + string-width "^1.0.1" + strip-ansi "^3.0.1" + +wrappy@1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + +write-file-atomic@^1.1.2, write-file-atomic@^1.1.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-1.3.4.tgz#f807a4f0b1d9e913ae7a48112e6cc3af1991b45f" + dependencies: + graceful-fs "^4.1.11" + imurmurhash "^0.1.4" + slide "^1.1.5" + +write-file-atomic@^2.0.0, write-file-atomic@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.3.0.tgz#1ff61575c2e2a4e8e510d6fa4e243cce183999ab" + dependencies: + graceful-fs "^4.1.11" + imurmurhash "^0.1.4" + signal-exit "^3.0.2" + +write-json-file@^2.2.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/write-json-file/-/write-json-file-2.3.0.tgz#2b64c8a33004d54b8698c76d585a77ceb61da32f" + dependencies: + detect-indent "^5.0.0" + graceful-fs "^4.1.2" + make-dir "^1.0.0" + pify "^3.0.0" + sort-keys "^2.0.0" + write-file-atomic "^2.0.0" + +write-pkg@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/write-pkg/-/write-pkg-3.1.0.tgz#030a9994cc9993d25b4e75a9f1a1923607291ce9" + dependencies: + sort-keys "^2.0.0" + write-json-file "^2.2.0" + +xdg-basedir@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-2.0.0.tgz#edbc903cc385fc04523d966a335504b5504d1bd2" + dependencies: + os-homedir "^1.0.0" + +xdg-basedir@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-3.0.0.tgz#496b2cc109eca8dbacfe2dc72b603c17c5870ad4" + +xmlbuilder@8.2.2: + version "8.2.2" + resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-8.2.2.tgz#69248673410b4ba42e1a6136551d2922335aa773" + +xmldom@0.1.x: + version "0.1.27" + resolved "https://registry.yarnpkg.com/xmldom/-/xmldom-0.1.27.tgz#d501f97b3bdb403af8ef9ecc20573187aadac0e9" + +xtend@^4.0.0, xtend@~4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" + +y18n@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41" + +yallist@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" + +yargs-parser@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-5.0.0.tgz#275ecf0d7ffe05c77e64e7c86e4cd94bf0e1228a" + dependencies: + camelcase "^3.0.0" + +yargs-parser@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-7.0.0.tgz#8d0ac42f16ea55debd332caf4c4038b3e3f5dfd9" + dependencies: + camelcase "^4.1.0" + +yargs@^7.0.1, yargs@^7.1.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-7.1.0.tgz#6ba318eb16961727f5d284f8ea003e8d6154d0c8" + dependencies: + camelcase "^3.0.0" + cliui "^3.2.0" + decamelize "^1.1.1" + get-caller-file "^1.0.1" + os-locale "^1.4.0" + read-pkg-up "^1.0.1" + require-directory "^2.1.1" + require-main-filename "^1.0.1" + set-blocking "^2.0.0" + string-width "^1.0.2" + which-module "^1.0.0" + y18n "^3.2.1" + yargs-parser "^5.0.0" + +yargs@^8.0.1, yargs@^8.0.2: + version "8.0.2" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-8.0.2.tgz#6299a9055b1cefc969ff7e79c1d918dceb22c360" + dependencies: + camelcase "^4.1.0" + cliui "^3.2.0" + decamelize "^1.1.1" + get-caller-file "^1.0.1" + os-locale "^2.0.0" + read-pkg-up "^2.0.0" + require-directory "^2.1.1" + require-main-filename "^1.0.1" + set-blocking "^2.0.0" + string-width "^2.0.0" + which-module "^2.0.0" + y18n "^3.2.1" + yargs-parser "^7.0.0" + +yargs@~3.10.0: + version "3.10.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.10.0.tgz#f7ee7bd857dd7c1d2d38c0e74efbd681d1431fd1" + dependencies: + camelcase "^1.0.2" + cliui "^2.1.0" + decamelize "^1.0.0" + window-size "0.1.0" From c9afe6d42bfd89ce8da5994cbff7d1b0ea6bb080 Mon Sep 17 00:00:00 2001 From: Myer Nore Date: Thu, 14 Dec 2017 14:51:52 -0500 Subject: [PATCH 16/24] remove mac signing. see https://stackoverflow.com/q/47820846/78202 --- src/lib/Builder.ts | 59 ------------------------------------- src/lib/config/MacConfig.ts | 5 ---- 2 files changed, 64 deletions(-) diff --git a/src/lib/Builder.ts b/src/lib/Builder.ts index 2e19c59..36f4633 100644 --- a/src/lib/Builder.ts +++ b/src/lib/Builder.ts @@ -15,7 +15,6 @@ import { } from 'fs-extra'; import {basename, dirname, resolve} from 'path'; -import * as Appdmg from 'appdmg'; import * as semver from 'semver'; import {NsisVersionInfo} from './common'; import {BuildConfig} from './config'; @@ -882,55 +881,6 @@ export class Builder { await versionInfo.save(); } - protected async buildDmgTarget(platform: string, arch: string, sourceDir: string, pkg: any, config: BuildConfig) { - - if (platform !== 'mac') { - if (!this.options.mute) { - // noinspection TsLint - console.info(`Skip building dmg target for ${ platform }.`); - } - return; - } - if (!config.mac.appdmg) { - if (!this.options.mute) { - // noinspection TsLint - console.info(`Skipping .dmg creation, since appdmg config was not found`); - } - return; - } - - const appdmgConfig = config.mac.appdmg as Appdmg.Options; - const containingFolderName = basename(sourceDir); - const destFile = resolve(this.dir, config.output, `${containingFolderName}.dmg`); - const appDmgConfig = { - ...appdmgConfig, - basepath: sourceDir, - target: destFile, - }; - debug(`using target path for dmg: `, destFile); - debug(`using appDmg config options: `, appDmgConfig); - - const dmgPromise = new Promise((resolve, reject) => { - const dmgCreator = Appdmg(appDmgConfig); - - dmgCreator.on('finish', () => { - if (!this.options.mute) { - // noinspection TsLint - console.info('dmg target: end'); - } - resolve(); - }); - - dmgCreator.on('error', (err) => { - console.error(`error while creating dmg: `, err); - reject(err); - }); - }); - - await dmgPromise; - - } - protected async buildTask(platform: string, arch: string, pkg: any, config: BuildConfig) { if (platform === 'mac' && arch === 'x86' && !config.nwVersion.includes('0.12.3')) { @@ -1010,15 +960,6 @@ export class Builder { console.info(`Building nsis7z target ends within ${ this.getTimeDiff(started) }s.`); } break; - case 'dmg': - if (!this.options.mute) { - console.info(`Building dmg target starts...`); - } - await this.buildDmgTarget(platform, arch, targetDir, pkg, config); - if (!this.options.mute) { - console.info(`Building dmg target ends within ${ this.getTimeDiff(started) }s.`); - } - break; default: throw new Error('ERROR_UNKNOWN_TARGET'); } diff --git a/src/lib/config/MacConfig.ts b/src/lib/config/MacConfig.ts index a808446..860b3f1 100644 --- a/src/lib/config/MacConfig.ts +++ b/src/lib/config/MacConfig.ts @@ -1,4 +1,3 @@ -import * as appdmg from 'appdmg'; import {SignableConfig} from './SignableConfig'; export class MacConfig extends SignableConfig { @@ -10,7 +9,6 @@ export class MacConfig extends SignableConfig { public copyright: string = ''; public icon: string = undefined; public plistStrings: any = {}; - public appdmg: appdmg.Options | object = {}; constructor(options: any = {}) { super(options); @@ -23,9 +21,6 @@ export class MacConfig extends SignableConfig { Object.keys(this).map((key) => { if (options[key] !== undefined) { switch (key) { - case 'appdmg': - this.appdmg = options.appdmg as appdmg.Options; - break; default: (this)[key] = options[key]; break; From 2876b4e51f25d20b618e7b230bd055d33d9ff31d Mon Sep 17 00:00:00 2001 From: Myer Nore Date: Thu, 14 Dec 2017 14:52:08 -0500 Subject: [PATCH 17/24] remove mac signing. see https://stackoverflow.com/q/47820846/78202 --- package.json | 1 - 1 file changed, 1 deletion(-) diff --git a/package.json b/package.json index bb6f9da..e3dbda3 100644 --- a/package.json +++ b/package.json @@ -49,7 +49,6 @@ }, "dependencies": { "7zip-bin": "^2.0.4", - "appdmg": "^0.5.2", "bluebird": "^3.5.0", "debug": "^2.6.1", "dir-compare": "^1.3.0", From 88e70cbc6ec01fb898f5073faa869af441611ba8 Mon Sep 17 00:00:00 2001 From: Myer Nore Date: Fri, 15 Dec 2017 11:56:42 -0500 Subject: [PATCH 18/24] make windows signing work again after adding mac signing * refix issue where we got EPERM scandir on glob in signApp * update globby --- package.json | 2 +- src/lib/Builder.ts | 27 ++- yarn.lock | 538 +++------------------------------------------ 3 files changed, 51 insertions(+), 516 deletions(-) diff --git a/package.json b/package.json index e3dbda3..8a1e95e 100644 --- a/package.json +++ b/package.json @@ -54,7 +54,7 @@ "dir-compare": "^1.3.0", "dotenv": "^4.0.0", "fs-extra": "^3.0.1", - "globby": "^6.1.0", + "globby": "^7.1.1", "plist": "^2.0.1", "progress": "^1.1.8", "rcedit": "^0.8.0", diff --git a/src/lib/Builder.ts b/src/lib/Builder.ts index 36f4633..a7f6549 100644 --- a/src/lib/Builder.ts +++ b/src/lib/Builder.ts @@ -295,21 +295,24 @@ export class Builder { if (signtoolPath && cliArgsInterpolated) { const resolvedSigntool = resolve(signtoolPath); if (await fileExistsAsync(resolvedSigntool) && filesToSignGlobs) { - debug(`signApp: searching for files to sign with pattern ${filesToSignGlobs}`); // ignore EPERM issues with scandir // https://github.com/isaacs/node-glob/issues/284 const nodeGlobArgs = {strict: false, cwd, ignore}; + debug(`signApp: about to use glob to search for files:`, filesToSignGlobs, nodeGlobArgs); const filesToSign = await globby(filesToSignGlobs, nodeGlobArgs); if (filesToSign) { + debug(`signApp: found files to sign:`, filesToSign); if (isWin) { + const cliArgsArr = cliArgsInterpolated.concat(filesToSign); + debug(`signWinApp: before signing, cliArgs will be`, cliArgsArr); const {code} = await spawnAsync( - resolvedSigntool, cliArgsInterpolated, {cwd}); + resolvedSigntool, cliArgsArr, {cwd}); if (code !== 0) { throw new Error( - `ERROR_SIGNING args = ${ cliArgsInterpolated.join(' ') }`); + `ERROR_SIGNING args = ${ cliArgsArr.join(' ') }`); } } else { - // on mac, sign from inside out / from deepest to shallowest path + // on mac, sign from from deepest to shallowest path const depthSortedFiles = sortByDepth(filesToSign); debug(`signApp: Mac - about to sign: `, depthSortedFiles, nodeGlobArgs, cliArgsInterpolated); // noinspection TsLint @@ -340,9 +343,9 @@ export class Builder { // noinspection TsLint console.log(`SignApp: run build with DEBUG=build* to see error details`); } - // noinspection TsLint - console.log(`signApp: signing ends-----------------`); } + // noinspection TsLint + console.log(`signApp: signing ends-----------------`); } else { debug(`signWinApp: no files to sign matched ${filesToSignGlobs}`); } @@ -781,7 +784,7 @@ export class Builder { if (doSigning) { const uninstallerComposer = new SignableNsisInstaller(true, { ...nsisComposerOptions, - output: resolve(sourceDir, 'make-Uninstall.exe') + output: resolve(sourceDir, 'make-Uninstall.exe'), }); const uninstallerGeneratorPath = await this.doNsisBuild(sourceDir, uninstallerComposer, '-uninstaller-generator'); @@ -790,8 +793,13 @@ export class Builder { // remove the uninstaller generator await remove(uninstallerGeneratorPath); // sign the generated installer - await this.signApp(config.win, sourceDir, ['**/*.+(exe|dll)'], - [basename(uninstallerGeneratorPath)]); + debug('signApp: before signing installer contents including uninstaller'); + await this.signApp(config.win, sourceDir, + ['**/*.+(exe|dll)'], + [ + basename(uninstallerGeneratorPath), + uninstallerGeneratorPath.replace('\\\\', '\\')], + ); installerComposer = new SignableNsisInstaller(false, nsisComposerOptions); } @@ -799,6 +807,7 @@ export class Builder { await this.doNsisBuild(sourceDir, installerComposer); if (doSigning) { + debug('signApp: before signing installer'); await this.signApp(config.win, distDir, [installerFileName]); } diff --git a/yarn.lock b/yarn.lock index 096f7e7..c94fe63 100644 --- a/yarn.lock +++ b/yarn.lock @@ -215,23 +215,6 @@ anymatch@^1.3.0: micromatch "^2.1.5" normalize-path "^2.0.0" -appdmg@^0.5.2: - version "0.5.2" - resolved "https://registry.yarnpkg.com/appdmg/-/appdmg-0.5.2.tgz#85732299b508f040473fa43ab6f6bce8b7eadc98" - dependencies: - async "^1.4.2" - buffer-alloc "^1.1.0" - cp-file "^3.1.0" - ds-store "^0.1.5" - execa "^0.4.0" - fs-temp "^1.0.0" - fs-xattr "^0.1.14" - image-size "^0.5.0" - is-my-json-valid "^2.13.1" - minimist "^1.1.3" - parse-color "^1.0.0" - repeat-string "^1.5.4" - append-transform@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/append-transform/-/append-transform-0.4.0.tgz#d76ebf8ca94d276e247a36bad44a4b74ab611991" @@ -267,10 +250,6 @@ arr-flatten@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" -array-buffer-from-string@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/array-buffer-from-string/-/array-buffer-from-string-0.1.0.tgz#3b14351f86149d84efc612c5ada7ed85169d7b07" - array-differ@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-1.0.0.tgz#eff52e3758249d33be402b8bb8e564bb2b5d4031" @@ -317,7 +296,7 @@ async-each@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d" -async@^1.4.0, async@^1.4.2, async@^1.5.0: +async@^1.4.0, async@^1.5.0: version "1.5.2" resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" @@ -325,10 +304,6 @@ asynckit@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" -attempt-x@^1.1.0, attempt-x@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/attempt-x/-/attempt-x-1.1.1.tgz#fba64e96ce03c3e0bd92c92622061c4df387cb76" - auto-bind@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/auto-bind/-/auto-bind-1.1.0.tgz#93b864dc7ee01a326281775d5c75ca0a751e5961" @@ -730,10 +705,6 @@ balanced-match@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" -base32-encode@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/base32-encode/-/base32-encode-0.1.0.tgz#1ebc5c9ccfabf6c278c8639288ba4e50ee2bb1f5" - base64-js@1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.2.0.tgz#a39992d723584811982be5e290bb6a53d86700f1" @@ -794,12 +765,6 @@ boxen@^1.2.1: term-size "^1.2.0" widest-line "^1.0.0" -bplist-creator@~0.0.3: - version "0.0.7" - resolved "https://registry.yarnpkg.com/bplist-creator/-/bplist-creator-0.0.7.tgz#37df1536092824b87c42f957b01344117372ae45" - dependencies: - stream-buffers "~2.2.0" - brace-expansion@^1.0.0, brace-expansion@^1.1.7: version "1.1.8" resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.8.tgz#c07b211c7c952ec1f8efd51a77ef0d1d3990a292" @@ -819,31 +784,10 @@ buf-compare@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/buf-compare/-/buf-compare-1.0.1.tgz#fef28da8b8113a0a0db4430b0b6467b69730b34a" -buffer-alloc-unsafe@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/buffer-alloc-unsafe/-/buffer-alloc-unsafe-0.1.1.tgz#ffe1f67551dd055737de253337bfe853dfab1a6a" - -buffer-alloc@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/buffer-alloc/-/buffer-alloc-1.1.0.tgz#05514d33bf1656d3540c684f65b1202e90eca303" - dependencies: - buffer-alloc-unsafe "^0.1.0" - buffer-fill "^0.1.0" - buffer-equal@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/buffer-equal/-/buffer-equal-1.0.0.tgz#59616b498304d556abd466966b22eeda3eca5fbe" -buffer-fill@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/buffer-fill/-/buffer-fill-0.1.0.tgz#ca9470e8d4d1b977fd7543f4e2ab6a7dc95101a8" - -buffer-from@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-0.1.1.tgz#57b18b1da0a19ec06f33837a5275a242351bd75e" - dependencies: - is-array-buffer-x "^1.0.13" - builtin-modules@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" @@ -852,10 +796,6 @@ byline@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/byline/-/byline-5.0.0.tgz#741c5216468eadc457b03410118ad77de8c1ddb1" -cached-constructors-x@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/cached-constructors-x/-/cached-constructors-x-1.0.0.tgz#c421e3892a4b6f7794434bdcffd1299b330c181b" - caching-transform@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/caching-transform/-/caching-transform-1.0.1.tgz#6dbdb2f20f8d8fbce79f3e94e9d1742dcdf5c0a1" @@ -1046,10 +986,6 @@ color-convert@^1.9.0: dependencies: color-name "^1.1.1" -color-convert@~0.5.0: - version "0.5.3" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-0.5.3.tgz#bdb6c69ce660fadffe0b0007cc447e1b9f7282bd" - color-name@^1.1.1: version "1.1.3" resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" @@ -1309,18 +1245,6 @@ core-util-is@1.0.2, core-util-is@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" -cp-file@^3.1.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/cp-file/-/cp-file-3.2.0.tgz#6f83616254624f0ad58aa4aa8d076f026be7e188" - dependencies: - graceful-fs "^4.1.2" - mkdirp "^0.5.0" - nested-error-stacks "^1.0.1" - object-assign "^4.0.1" - pify "^2.3.0" - pinkie-promise "^2.0.0" - readable-stream "^2.1.4" - create-error-class@^3.0.0, create-error-class@^3.0.1: version "3.0.2" resolved "https://registry.yarnpkg.com/create-error-class/-/create-error-class-3.0.2.tgz#06be7abef947a3f14a30fd610671d401bca8b7b6" @@ -1334,13 +1258,6 @@ cross-env@^3.2.3: cross-spawn "^5.1.0" is-windows "^1.0.0" -cross-spawn-async@^2.1.1: - version "2.2.5" - resolved "https://registry.yarnpkg.com/cross-spawn-async/-/cross-spawn-async-2.2.5.tgz#845ff0c0834a3ded9d160daca6d390906bb288cc" - dependencies: - lru-cache "^4.0.0" - which "^1.2.8" - cross-spawn@^4: version "4.0.2" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-4.0.2.tgz#7b9247621c23adfdd3856004a823cbe397424d41" @@ -1465,6 +1382,13 @@ dir-compare@^1.3.0: commander "2.9.0" minimatch "3.0.2" +dir-glob@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-2.0.0.tgz#0b205d2b6aef98238ca286598a8204d29d0a0034" + dependencies: + arrify "^1.0.1" + path-type "^3.0.0" + dot-prop@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-3.0.0.tgz#1b708af094a49c9a0e7dbcad790aba539dac1177" @@ -1481,14 +1405,6 @@ dotenv@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-4.0.0.tgz#864ef1379aced55ce6f95debecdce179f7a0cd1d" -ds-store@^0.1.5: - version "0.1.6" - resolved "https://registry.yarnpkg.com/ds-store/-/ds-store-0.1.6.tgz#d1024ef746ed0c13f0f7fec85c7e858e8c4b7ca7" - dependencies: - bplist-creator "~0.0.3" - macos-alias "~0.2.5" - tn1150 "^0.1.0" - duplexer2@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/duplexer2/-/duplexer2-0.1.4.tgz#8b12dab878c0d69e3e7891051662a32fc6bddcc1" @@ -1553,17 +1469,6 @@ esutils@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" -execa@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-0.4.0.tgz#4eb6467a36a095fabb2970ff9d5e3fb7bce6ebc3" - dependencies: - cross-spawn-async "^2.1.1" - is-stream "^1.1.0" - npm-run-path "^1.0.0" - object-assign "^4.0.1" - path-key "^1.0.0" - strip-eof "^1.0.0" - execa@^0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/execa/-/execa-0.7.0.tgz#944becd34cc41ee32a63a9faf27ad5a65fc59777" @@ -1680,12 +1585,6 @@ findup-sync@~0.3.0: dependencies: glob "~5.0.0" -fmix@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/fmix/-/fmix-0.1.0.tgz#c7bbf124dec42c9d191cfb947d0a9778dd986c0c" - dependencies: - imul "^1.0.0" - fn-name@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/fn-name/-/fn-name-2.0.1.tgz#5214d7537a4d06a4a301c0cc262feb84188002e7" @@ -1741,19 +1640,6 @@ fs-extra@^4.0.1: jsonfile "^4.0.0" universalify "^0.1.0" -fs-temp@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/fs-temp/-/fs-temp-1.1.2.tgz#cc52f038bbefe510f6bcd09ec592b79d0f69253f" - dependencies: - random-path "^0.1.0" - -fs-xattr@^0.1.14: - version "0.1.17" - resolved "https://registry.yarnpkg.com/fs-xattr/-/fs-xattr-0.1.17.tgz#ee943483c6fe9704a8f0e1476e8145a9886f8b0f" - dependencies: - buffer-from "^0.1.1" - nan "^2.3.2" - fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" @@ -1795,16 +1681,6 @@ gauge@~2.7.3: strip-ansi "^3.0.1" wide-align "^1.1.0" -generate-function@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/generate-function/-/generate-function-2.0.0.tgz#6858fe7c0969b7d4e9093337647ac79f60dfbe74" - -generate-object-property@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/generate-object-property/-/generate-object-property-1.2.0.tgz#9c0e1c40308ce804f4783618b937fa88f99d50d0" - dependencies: - is-property "^1.0.0" - get-caller-file@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.2.tgz#f702e63127e7e231c160a80c1554acb70d5047e5" @@ -1934,6 +1810,17 @@ globby@^6.0.0, globby@^6.1.0: pify "^2.0.0" pinkie-promise "^2.0.0" +globby@^7.1.1: + version "7.1.1" + resolved "https://registry.yarnpkg.com/globby/-/globby-7.1.1.tgz#fb2ccff9401f8600945dfada97440cca972b8680" + dependencies: + array-union "^1.0.1" + dir-glob "^2.0.0" + glob "^7.1.2" + ignore "^3.3.5" + pify "^3.0.0" + slash "^1.0.0" + got@^5.0.0: version "5.7.1" resolved "https://registry.yarnpkg.com/got/-/got-5.7.1.tgz#5f81635a61e4a6589f180569ea4e381680a51f35" @@ -2017,24 +1904,6 @@ has-flag@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51" -has-own-property-x@^3.1.1: - version "3.2.0" - resolved "https://registry.yarnpkg.com/has-own-property-x/-/has-own-property-x-3.2.0.tgz#1c4b112a577c8cb5805469556e54b6e959e4ded9" - dependencies: - cached-constructors-x "^1.0.0" - to-object-x "^1.5.0" - to-property-key-x "^2.0.2" - -has-symbol-support-x@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/has-symbol-support-x/-/has-symbol-support-x-1.4.1.tgz#66ec2e377e0c7d7ccedb07a3a84d77510ff1bc4c" - -has-to-string-tag-x@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz#a045ab383d7b4b2012a00148ab0aa5f290044d4d" - dependencies: - has-symbol-support-x "^1.4.1" - has-unicode@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" @@ -2083,18 +1952,14 @@ ignore-by-default@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/ignore-by-default/-/ignore-by-default-1.0.1.tgz#48ca6d72f6c6a3af00a9ad4ae6876be3889e2b09" -image-size@^0.5.0: - version "0.5.5" - resolved "https://registry.yarnpkg.com/image-size/-/image-size-0.5.5.tgz#09dfd4ab9d20e29eb1c3e80b8990378df9e3cb9c" +ignore@^3.3.5: + version "3.3.7" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.7.tgz#612289bfb3c220e186a58118618d5be8c1bab021" import-lazy@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/import-lazy/-/import-lazy-2.1.0.tgz#05698e3d45c88e8d7e9d92cb0584e77f096f3e43" -imul@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/imul/-/imul-1.0.1.tgz#9d5867161e8b3de96c2c38d5dc7cb102f35e2ac9" - imurmurhash@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" @@ -2109,10 +1974,6 @@ indent-string@^3.0.0: version "3.2.0" resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-3.2.0.tgz#4a5fd6d27cc332f37e5419a504dbb837105c9289" -infinity-x@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/infinity-x/-/infinity-x-1.0.0.tgz#cea2d75181d820961b0f72d78e7c4e06fdd55a07" - inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" @@ -2120,7 +1981,7 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1, inherits@~2.0.3: +inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" @@ -2161,16 +2022,6 @@ irregular-plurals@^1.0.0: version "1.4.0" resolved "https://registry.yarnpkg.com/irregular-plurals/-/irregular-plurals-1.4.0.tgz#2ca9b033651111855412f16be5d77c62a458a766" -is-array-buffer-x@^1.0.13: - version "1.7.0" - resolved "https://registry.yarnpkg.com/is-array-buffer-x/-/is-array-buffer-x-1.7.0.tgz#4b0b10427b64aa3437767adf4fc07702c59b2371" - dependencies: - attempt-x "^1.1.0" - has-to-string-tag-x "^1.4.1" - is-object-like-x "^1.5.1" - object-get-own-property-descriptor-x "^3.2.0" - to-string-tag-x "^1.4.1" - is-arrayish@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" @@ -2197,10 +2048,6 @@ is-ci@^1.0.10, is-ci@^1.0.7: dependencies: ci-info "^1.0.0" -is-date-object@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16" - is-dotfile@^1.0.0: version "1.0.3" resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1" @@ -2227,19 +2074,6 @@ is-extglob@^2.1.0: version "2.1.1" resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" -is-falsey-x@^1.0.0, is-falsey-x@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-falsey-x/-/is-falsey-x-1.0.1.tgz#c469951adc95b8b3fdbf90929b335a7de937d17f" - dependencies: - to-boolean-x "^1.0.1" - -is-finite-x@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/is-finite-x/-/is-finite-x-3.0.2.tgz#a6ec683cfb2bc1a918a1ff59d178edbcea54f7a6" - dependencies: - infinity-x "^1.0.0" - is-nan-x "^1.0.1" - is-finite@^1.0.0, is-finite@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa" @@ -2256,19 +2090,6 @@ is-fullwidth-code-point@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" -is-function-x@^3.2.0, is-function-x@^3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/is-function-x/-/is-function-x-3.3.0.tgz#7d16bc113853db206d5e40a8b32caf99bd4ff7c0" - dependencies: - attempt-x "^1.1.1" - has-to-string-tag-x "^1.4.1" - is-falsey-x "^1.0.1" - is-primitive "^2.0.0" - normalize-space-x "^3.0.0" - replace-comments-x "^2.0.0" - to-boolean-x "^1.0.1" - to-string-tag-x "^1.4.2" - is-generator-fn@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-1.0.0.tgz#969d49e1bb3329f6bb7f09089be26578b2ddd46a" @@ -2285,16 +2106,6 @@ is-glob@^3.1.0: dependencies: is-extglob "^2.1.0" -is-index-x@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-index-x/-/is-index-x-1.1.0.tgz#43dac97b3a04f30191530833f45ac35001682ee2" - dependencies: - math-clamp-x "^1.2.0" - max-safe-integer "^1.0.1" - to-integer-x "^3.0.0" - to-number-x "^2.0.0" - to-string-symbols-supported-x "^1.0.0" - is-installed-globally@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/is-installed-globally/-/is-installed-globally-0.1.0.tgz#0dfd98f5a9111716dd535dda6492f67bf3d25a80" @@ -2302,26 +2113,6 @@ is-installed-globally@^0.1.0: global-dirs "^0.1.0" is-path-inside "^1.0.0" -is-my-json-valid@^2.13.1: - version "2.16.1" - resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.16.1.tgz#5a846777e2c2620d1e69104e5d3a03b1f6088f11" - dependencies: - generate-function "^2.0.0" - generate-object-property "^1.1.0" - jsonpointer "^4.0.0" - xtend "^4.0.0" - -is-nan-x@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-nan-x/-/is-nan-x-1.0.1.tgz#de747ebcc8bddeb66f367c17caca7eba843855c0" - -is-nil-x@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/is-nil-x/-/is-nil-x-1.4.1.tgz#bd9e7b08b4cd732f9dcbde13d93291bb2ec2e248" - dependencies: - lodash.isnull "^3.0.0" - validate.io-undefined "^1.0.3" - is-npm@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-npm/-/is-npm-1.0.0.tgz#f2fb63a65e4905b406c86072765a1a4dc793b9f4" @@ -2342,13 +2133,6 @@ is-obj@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" -is-object-like-x@^1.5.1: - version "1.6.0" - resolved "https://registry.yarnpkg.com/is-object-like-x/-/is-object-like-x-1.6.0.tgz#a8c4a95bd6b95db174e0e4730171a160ec73be82" - dependencies: - is-function-x "^3.3.0" - is-primitive "^2.0.0" - is-observable@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/is-observable/-/is-observable-0.2.0.tgz#b361311d83c6e5d726cabf5e250b0237106f5ae2" @@ -2377,10 +2161,6 @@ is-promise@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" -is-property@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84" - is-redirect@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-redirect/-/is-redirect-1.0.0.tgz#1d03dded53bd8db0f30c26e4f95d36fc7c87dc24" @@ -2393,18 +2173,10 @@ is-stream@^1.0.0, is-stream@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" -is-string@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.4.tgz#cc3a9b69857d621e963725a24caeec873b826e64" - is-subset@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/is-subset/-/is-subset-0.1.1.tgz#8a59117d932de1de00f245fcdd39ce43f1e939a6" -is-symbol@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.1.tgz#3cc59f00025194b6ab2e38dbae6689256b660572" - is-text-path@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/is-text-path/-/is-text-path-1.0.1.tgz#4e1aa0fb51bfbcb3e92688001397202c1775b66e" @@ -2596,10 +2368,6 @@ jsonparse@^1.2.0: version "1.3.1" resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-1.3.1.tgz#3f4dae4a91fac315f71062f8521cc239f1366280" -jsonpointer@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.0.1.tgz#4fd92cb34e0e9db3c89c8622ecf51f9b978c6cb9" - jsprim@^1.2.2: version "1.4.1" resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" @@ -2750,10 +2518,6 @@ lodash.isequal@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz#415c4478f2bcc30120c22ce10ed3226f7d3e18e0" -lodash.isnull@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/lodash.isnull/-/lodash.isnull-3.0.0.tgz#fafbe59ea1dca27eed786534039dd84c2e07c56e" - lodash.template@^4.0.2: version "4.4.0" resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-4.4.0.tgz#e73a0385c8355591746e020b99679c690e68fba0" @@ -2792,19 +2556,13 @@ lowercase-keys@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.0.tgz#4e3366b39e7f5457e35f1324bdf6f88d0bfc7306" -lru-cache@^4.0.0, lru-cache@^4.0.1: +lru-cache@^4.0.1: version "4.1.1" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.1.tgz#622e32e82488b49279114a4f9ecf45e7cd6bba55" dependencies: pseudomap "^1.0.2" yallist "^2.1.2" -macos-alias@~0.2.5: - version "0.2.11" - resolved "https://registry.yarnpkg.com/macos-alias/-/macos-alias-0.2.11.tgz#feeea6c13ba119814a43fc43c470b31e59ef718a" - dependencies: - nan "^2.4.0" - make-dir@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.0.0.tgz#97a011751e91dd87cfadef58832ebb04936de978" @@ -2821,23 +2579,6 @@ matcher@^0.1.1: dependencies: escape-string-regexp "^1.0.4" -math-clamp-x@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/math-clamp-x/-/math-clamp-x-1.2.0.tgz#8b537be0645bbba7ee73ee16091e7d6018c5edcf" - dependencies: - to-number-x "^2.0.0" - -math-sign-x@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/math-sign-x/-/math-sign-x-3.0.0.tgz#d5286022b48e150c384729a86042e0835264c3ed" - dependencies: - is-nan-x "^1.0.1" - to-number-x "^2.0.0" - -max-safe-integer@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/max-safe-integer/-/max-safe-integer-1.0.1.tgz#f38060be2c563d8c02e6d48af39122fd83b6f410" - max-timeout@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/max-timeout/-/max-timeout-1.0.0.tgz#b68f69a2f99e0b476fd4cb23e2059ca750715e1f" @@ -2976,40 +2717,18 @@ multimatch@^2.1.0: arrify "^1.0.0" minimatch "^3.0.0" -murmur-32@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/murmur-32/-/murmur-32-0.1.0.tgz#c1a79d4fc5fabf0405749d0aff77c41402055861" - dependencies: - array-buffer-from-string "^0.1.0" - fmix "^0.1.0" - imul "^1.0.0" - mute-stream@0.0.7: version "0.0.7" resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" -nan-x@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/nan-x/-/nan-x-1.0.0.tgz#0ee78e8d1cd0592d5b4260a5940154545c61c121" - nan@^2.3.0: version "2.7.0" resolved "https://registry.yarnpkg.com/nan/-/nan-2.7.0.tgz#d95bf721ec877e08db276ed3fc6eb78f9083ad46" -nan@^2.3.2, nan@^2.4.0: - version "2.8.0" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.8.0.tgz#ed715f3fe9de02b57a5e6252d90a96675e1f085a" - natural-compare@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" -nested-error-stacks@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/nested-error-stacks/-/nested-error-stacks-1.0.2.tgz#19f619591519f096769a5ba9a86e6eeec823c3cf" - dependencies: - inherits "~2.0.1" - node-pre-gyp@^0.6.36: version "0.6.38" resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.38.tgz#e92a20f83416415bb4086f6d1fb78b3da73d113d" @@ -3051,20 +2770,6 @@ normalize-path@^2.0.0, normalize-path@^2.0.1: dependencies: remove-trailing-separator "^1.0.1" -normalize-space-x@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/normalize-space-x/-/normalize-space-x-3.0.0.tgz#17907d6c7c724a4f9567471cbb319553bc0f8882" - dependencies: - cached-constructors-x "^1.0.0" - trim-x "^3.0.0" - white-space-x "^3.0.0" - -npm-run-path@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-1.0.0.tgz#f5c32bf595fe81ae927daec52e82f8b000ac3c8f" - dependencies: - path-key "^1.0.0" - npm-run-path@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" @@ -3128,21 +2833,6 @@ object-assign@^4.0.1, object-assign@^4.1.0: version "4.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" -object-get-own-property-descriptor-x@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/object-get-own-property-descriptor-x/-/object-get-own-property-descriptor-x-3.2.0.tgz#464585ad03e66108ed166c99325b8d2c5ba93712" - dependencies: - attempt-x "^1.1.0" - has-own-property-x "^3.1.1" - has-symbol-support-x "^1.4.1" - is-falsey-x "^1.0.0" - is-index-x "^1.0.0" - is-primitive "^2.0.0" - is-string "^1.0.4" - property-is-enumerable-x "^1.1.0" - to-object-x "^1.4.1" - to-property-key-x "^2.0.1" - object.omit@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa" @@ -3249,12 +2939,6 @@ package-json@^4.0.0: registry-url "^3.0.3" semver "^5.1.0" -parse-color@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/parse-color/-/parse-color-1.0.0.tgz#7b748b95a83f03f16a94f535e52d7f3d94658619" - dependencies: - color-convert "~0.5.0" - parse-github-repo-url@^1.3.0: version "1.4.1" resolved "https://registry.yarnpkg.com/parse-github-repo-url/-/parse-github-repo-url-1.4.1.tgz#9e7d8bb252a6cb6ba42595060b7bf6df3dbc1f50" @@ -3268,15 +2952,6 @@ parse-glob@^3.0.4: is-extglob "^1.0.0" is-glob "^2.0.0" -parse-int-x@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/parse-int-x/-/parse-int-x-2.0.0.tgz#9f979d4115930df2f4706a41810b9c712405552f" - dependencies: - cached-constructors-x "^1.0.0" - nan-x "^1.0.0" - to-string-x "^1.4.2" - trim-left-x "^3.0.0" - parse-json@^2.1.0, parse-json@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" @@ -3319,10 +2994,6 @@ path-is-inside@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" -path-key@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-1.0.0.tgz#5d53d578019646c0d68800db4e146e6bdc2ac7af" - path-key@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" @@ -3345,6 +3016,12 @@ path-type@^2.0.0: dependencies: pify "^2.0.0" +path-type@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" + dependencies: + pify "^3.0.0" + performance-now@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-0.2.0.tgz#33ef30c5c77d4ea21c5a53869d91b56d8f2555e5" @@ -3448,13 +3125,6 @@ progress@^1.1.8: version "1.1.8" resolved "https://registry.yarnpkg.com/progress/-/progress-1.1.8.tgz#e260c78f6161cdd9b0e56cc3e0a85de17c7a57be" -property-is-enumerable-x@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/property-is-enumerable-x/-/property-is-enumerable-x-1.1.0.tgz#7ca48917476cd0914b37809bfd05776a0d942f6f" - dependencies: - to-object-x "^1.4.1" - to-property-key-x "^2.0.1" - pseudomap@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" @@ -3471,13 +3141,6 @@ qs@~6.4.0: version "6.4.0" resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.0.tgz#13e26d28ad6b0ffaa91312cd3bf708ed351e7233" -random-path@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/random-path/-/random-path-0.1.1.tgz#f8f4d36f75a134ca15fd39c7d7505fbf163b634c" - dependencies: - base32-encode "^0.1.0" - murmur-32 "^0.1.0" - randomatic@^1.1.3: version "1.1.7" resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-1.1.7.tgz#c7abe9cc8b87c0baa876b19fde83fd464797e38c" @@ -3622,7 +3285,7 @@ repeat-element@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.2.tgz#ef089a178d1483baae4d93eb98b4f9e4e11d990a" -repeat-string@^1.5.2, repeat-string@^1.5.4: +repeat-string@^1.5.2: version "1.6.1" resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" @@ -3632,13 +3295,6 @@ repeating@^2.0.0: dependencies: is-finite "^1.0.0" -replace-comments-x@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/replace-comments-x/-/replace-comments-x-2.0.0.tgz#a5cec18efd912aad78a7c3c4b69d01768556d140" - dependencies: - require-coercible-to-string-x "^1.0.0" - to-string-x "^1.4.2" - request-progress@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/request-progress/-/request-progress-3.0.0.tgz#4ca754081c7fec63f505e4faa825aa06cd669dbe" @@ -3672,13 +3328,6 @@ request@2.81.0, request@^2.80.0: tunnel-agent "^0.6.0" uuid "^3.0.0" -require-coercible-to-string-x@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/require-coercible-to-string-x/-/require-coercible-to-string-x-1.0.0.tgz#367b3e9ca67e00324c411b0b498453a74cd5569e" - dependencies: - require-object-coercible-x "^1.4.1" - to-string-x "^1.4.2" - require-directory@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" @@ -3687,12 +3336,6 @@ require-main-filename@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" -require-object-coercible-x@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/require-object-coercible-x/-/require-object-coercible-x-1.4.1.tgz#75b9fb5bda2d15cf705a5714f108e8b40ca3eb2e" - dependencies: - is-nil-x "^1.4.1" - require-precompiled@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/require-precompiled/-/require-precompiled-0.1.0.tgz#5a1b52eb70ebed43eb982e974c85ab59571e56fa" @@ -3895,10 +3538,6 @@ standard-version@^4.0.0: semver "^5.1.0" yargs "^8.0.1" -stream-buffers@~2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/stream-buffers/-/stream-buffers-2.2.0.tgz#91d5f5130d1cef96dcfa7f726945188741d09ee4" - string-width@^1.0.1, string-width@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" @@ -4111,102 +3750,16 @@ tmp@^0.0.33: dependencies: os-tmpdir "~1.0.2" -tn1150@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/tn1150/-/tn1150-0.1.0.tgz#673503d24d56b87de8b8c77fee3fc0853d59a18d" - dependencies: - unorm "^1.4.1" - -to-boolean-x@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/to-boolean-x/-/to-boolean-x-1.0.1.tgz#724128dacc5bea75a93ad471be7ee9277561b2c1" - to-fast-properties@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" -to-integer-x@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/to-integer-x/-/to-integer-x-3.0.0.tgz#9f3b80e668c7f0ae45e6926b40d95f52c1addc74" - dependencies: - is-finite-x "^3.0.2" - is-nan-x "^1.0.1" - math-sign-x "^3.0.0" - to-number-x "^2.0.0" - -to-number-x@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/to-number-x/-/to-number-x-2.0.0.tgz#c9099d7ded8fd327132a2987df2dcc8baf36df4d" - dependencies: - cached-constructors-x "^1.0.0" - nan-x "^1.0.0" - parse-int-x "^2.0.0" - to-primitive-x "^1.1.0" - trim-x "^3.0.0" - -to-object-x@^1.4.1, to-object-x@^1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/to-object-x/-/to-object-x-1.5.0.tgz#bd69dd4e104d77acc0cc0d84f5ac48f630aebe3c" - dependencies: - cached-constructors-x "^1.0.0" - require-object-coercible-x "^1.4.1" - -to-primitive-x@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/to-primitive-x/-/to-primitive-x-1.1.0.tgz#41ce2c13e3e246e0e5d0a8829a0567c6015833f8" - dependencies: - has-symbol-support-x "^1.4.1" - is-date-object "^1.0.1" - is-function-x "^3.2.0" - is-nil-x "^1.4.1" - is-primitive "^2.0.0" - is-symbol "^1.0.1" - require-object-coercible-x "^1.4.1" - validate.io-undefined "^1.0.3" - -to-property-key-x@^2.0.1, to-property-key-x@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/to-property-key-x/-/to-property-key-x-2.0.2.tgz#b19aa8e22faa0ff7d1c102cfbc657af73413cfa1" - dependencies: - has-symbol-support-x "^1.4.1" - to-primitive-x "^1.1.0" - to-string-x "^1.4.2" - -to-string-symbols-supported-x@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/to-string-symbols-supported-x/-/to-string-symbols-supported-x-1.0.0.tgz#d435eb72312fe885b18047a96d59c75641476872" - dependencies: - cached-constructors-x "^1.0.0" - has-symbol-support-x "^1.4.1" - is-symbol "^1.0.1" - -to-string-tag-x@^1.4.1, to-string-tag-x@^1.4.2: - version "1.4.2" - resolved "https://registry.yarnpkg.com/to-string-tag-x/-/to-string-tag-x-1.4.2.tgz#916a0c72d2f93dc27fccfe0ea0ce26cd78be21de" - dependencies: - lodash.isnull "^3.0.0" - validate.io-undefined "^1.0.3" - -to-string-x@^1.4.2: - version "1.4.2" - resolved "https://registry.yarnpkg.com/to-string-x/-/to-string-x-1.4.2.tgz#7d9a2528e159a9214e668137c1e10a045abe6279" - dependencies: - is-symbol "^1.0.1" - tough-cookie@~2.3.0: version "2.3.3" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.3.tgz#0b618a5565b6dea90bf3425d04d55edc475a7561" dependencies: punycode "^1.4.1" -trim-left-x@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/trim-left-x/-/trim-left-x-3.0.0.tgz#356cf055896726b9754425e841398842e90b4cdf" - dependencies: - cached-constructors-x "^1.0.0" - require-coercible-to-string-x "^1.0.0" - white-space-x "^3.0.0" - trim-newlines@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613" @@ -4215,25 +3768,10 @@ trim-off-newlines@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/trim-off-newlines/-/trim-off-newlines-1.0.1.tgz#9f9ba9d9efa8764c387698bcbfeb2c848f11adb3" -trim-right-x@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/trim-right-x/-/trim-right-x-3.0.0.tgz#28c4cd37d5981f50ace9b52e3ce9106f4d2d22c0" - dependencies: - cached-constructors-x "^1.0.0" - require-coercible-to-string-x "^1.0.0" - white-space-x "^3.0.0" - trim-right@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" -trim-x@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/trim-x/-/trim-x-3.0.0.tgz#24efdcd027b748bbfc246a0139ad1749befef024" - dependencies: - trim-left-x "^3.0.0" - trim-right-x "^3.0.0" - tslint@^4.5.1: version "4.5.1" resolved "https://registry.yarnpkg.com/tslint/-/tslint-4.5.1.tgz#05356871bef23a434906734006fc188336ba824b" @@ -4309,10 +3847,6 @@ universalify@^0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.1.tgz#fa71badd4437af4c148841e3b3b165f9e9e590b7" -unorm@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/unorm/-/unorm-1.4.1.tgz#364200d5f13646ca8bcd44490271335614792300" - unzip-response@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/unzip-response/-/unzip-response-1.0.2.tgz#b984f0877fc0a89c2c773cc1ef7b5b232b5b06fe" @@ -4373,10 +3907,6 @@ validate-npm-package-license@^3.0.1: spdx-correct "~1.0.0" spdx-expression-parse "~1.0.0" -validate.io-undefined@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/validate.io-undefined/-/validate.io-undefined-1.0.3.tgz#7e27fcbb315b841e78243431897671929e20b7f4" - verror@1.10.0: version "1.10.0" resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" @@ -4399,16 +3929,12 @@ which-module@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" -which@^1.2.4, which@^1.2.8, which@^1.2.9: +which@^1.2.4, which@^1.2.9: version "1.3.0" resolved "https://registry.yarnpkg.com/which/-/which-1.3.0.tgz#ff04bdfc010ee547d780bec38e1ac1c2777d253a" dependencies: isexe "^2.0.0" -white-space-x@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/white-space-x/-/white-space-x-3.0.0.tgz#c8e31ed4fecf4f3feebe6532e6046008a666a3e1" - wide-align@^1.1.0: version "1.1.2" resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.2.tgz#571e0f1b0604636ebc0dfc21b0339bbe31341710" From 24c485149797d3167ba857e5326aa3876fdf540a Mon Sep 17 00:00:00 2001 From: Myer Nore Date: Fri, 15 Dec 2017 12:53:58 -0500 Subject: [PATCH 19/24] create extra arg for nodir:false because of new features in globby --- src/lib/util/index.ts | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/lib/util/index.ts b/src/lib/util/index.ts index 06e4208..035624f 100644 --- a/src/lib/util/index.ts +++ b/src/lib/util/index.ts @@ -128,12 +128,14 @@ export function findRuntimeRoot(platform: string, runtimeDir: string): Promise { if(matches.length == 0) { + debug('findRuntimeRoot: matches', matches); const err = new Error('ERROR_EMPTY_MATCHES'); return reject(err); } From 013d5e3b29311377abe81304b212008f558ea17e Mon Sep 17 00:00:00 2001 From: Myer Nore Date: Fri, 15 Dec 2017 13:15:46 -0500 Subject: [PATCH 20/24] clarify error message for mac signing --- src/lib/Builder.ts | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/lib/Builder.ts b/src/lib/Builder.ts index a7f6549..3959329 100644 --- a/src/lib/Builder.ts +++ b/src/lib/Builder.ts @@ -340,6 +340,11 @@ export class Builder { console.log(`SignApp: encountered ${uniqueErrs.length} errors`); // noinspection TsLint uniqueErrs.map((err) => console.log(`SignApp: err - ${err}`)); + + // noinspection TsLint + console.log("SignApp: it's possible that if there is a single null error " + + "then this is a recoverable error."); + // noinspection TsLint console.log(`SignApp: run build with DEBUG=build* to see error details`); } From a8bec03d89687137e5bcccf68cfaf95ddd722f20 Mon Sep 17 00:00:00 2001 From: Myer Nore Date: Fri, 15 Dec 2017 13:44:57 -0500 Subject: [PATCH 21/24] remove unneeded appdmg in package.json --- package.json | 1 - 1 file changed, 1 deletion(-) diff --git a/package.json b/package.json index 8a1e95e..797c6fa 100644 --- a/package.json +++ b/package.json @@ -26,7 +26,6 @@ }, "homepage": "https://github.com/evshiron/nwjs-builder-phoenix#readme", "devDependencies": { - "@types/appdmg": "^0.5.0", "@types/bluebird": "^3.5.3", "@types/debug": "0.0.29", "@types/dotenv": "^4.0.1", From 6471c2df4e1aac88ab7851479928c5c8bd2642c2 Mon Sep 17 00:00:00 2001 From: Myer Nore Date: Fri, 15 Dec 2017 14:30:40 -0500 Subject: [PATCH 22/24] export spawnAsync --- src/lib/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/index.ts b/src/lib/index.ts index bef4345..53a5273 100644 --- a/src/lib/index.ts +++ b/src/lib/index.ts @@ -4,4 +4,4 @@ import 'source-map-support/register'; export * from './Runner'; export * from './Builder'; export * from './Downloader'; -export { findExecutable } from './util'; +export { findExecutable, spawnAsync } from './util'; From 822e9dfff8d503c7eae5487c90dff92c83614f1c Mon Sep 17 00:00:00 2001 From: Myer Nore Date: Sat, 14 Jul 2018 16:01:57 -0400 Subject: [PATCH 23/24] tested in client app sat jul 14, 401 PM --- yarn.lock | 6 ------ 1 file changed, 6 deletions(-) diff --git a/yarn.lock b/yarn.lock index c94fe63..b5ebadf 100644 --- a/yarn.lock +++ b/yarn.lock @@ -54,12 +54,6 @@ ansi-styles "^2.2.1" esutils "^2.0.2" -"@types/appdmg@^0.5.0": - version "0.5.0" - resolved "https://registry.yarnpkg.com/@types/appdmg/-/appdmg-0.5.0.tgz#41f0849c6467e49f6fca95cef7e8d1e3ff1c4493" - dependencies: - "@types/node" "*" - "@types/bluebird@^3.5.3": version "3.5.16" resolved "https://registry.yarnpkg.com/@types/bluebird/-/bluebird-3.5.16.tgz#d65dbbf3bc62a0b3dd145f48dc6511b1ed8cc6bb" From 36c242118c641dd76fd3ca639c5c5c688c2cf050 Mon Sep 17 00:00:00 2001 From: Myer Nore Date: Sat, 14 Jul 2018 16:32:44 -0400 Subject: [PATCH 24/24] Clarify documentation RE: signing --- README.md | 17 +++++++++++------ docs/Options.md | 4 ++-- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 0a10665..91ddaf0 100644 --- a/README.md +++ b/README.md @@ -2,16 +2,21 @@ # nwjs-builder-phoenix [![npm version](https://img.shields.io/npm/v/nwjs-builder-phoenix.svg)](https://npmjs.org/package/nwjs-builder-phoenix) [![Standard Version](https://img.shields.io/badge/release-standard%20version-brightgreen.svg)](https://github.com/conventional-changelog/standard-version) -A possible solution to build and package a ready for distribution NW.js app for Windows, macOS and Linux. +A possible solution to build and package a ready for distribution `nw.js` +app for Windows, macOS and Linux. ## Why Bother? -We already has official `nw-builder` and `nwjs-builder`, which was built as an alternative before `nw-builder` would support 0.13.x and later versions. -`nw-builder` has made little progress on the way, and `nwjs-builder` has been hard to continue due to personal and historic reasons. +`nw-builder` and `nwjs-builder` were built before `nw-builder` supported +0.13.x and later versions. Both have stalled along the way. -`electron-builder` inspired me when I became an Electron user later, loose files excluding, various target formats, auto updater, artifacts publishing and code signing, amazing! +When I became an Electron user, `electron-builder` inspired me: one can +exclude files, support various targets, support auto-updating, publish +artifacts, and support code signing. It really is a step ahead of `nw.js`. -Although NW.js has much lesser popularity than Electron, and is really troubled by historic headaches, let's have something modern. +`nw.js` still supports many use cases not supported by Electron, so we +need something more modern like `electron-builder`, but for `nw.js`. +That's why `nwjs-builder-phoenix` exists. ## Features @@ -27,7 +32,7 @@ Although NW.js has much lesser popularity than Electron, and is really troubled * `nwjs-ffmpeg-prebuilt` integration * [Auto Updater](./packages/nsis-compat-tester/) * TODO Rebuilding native modules -* Code signing (Windows only for now; see [Windows build options](./docs/Options.md#buildwin---winconfig)) +* Code signing (mac and windows) * Ideas appreciated :) ## Getting Started diff --git a/docs/Options.md b/docs/Options.md index 5e0a65c..67f5591 100644 --- a/docs/Options.md +++ b/docs/Options.md @@ -32,8 +32,8 @@ fileVersion | string | File version. Defaults to `${ productVersion }` versionStrings | { [key: string]: string } | `rcedit` version strings. Defaults to `{}`. icon | string | .ico icon file relative to the project root. Defaults to `undefined`. signing | `{}` | contains parameters for Microsoft Authenticode signing (optional). If any parameters are included, all parameters are required. -signing.signtoolPath | string | Absolute path to signtool.exe, e.g. `"C:\\Program Files (x86)\\Windows Kits\\8.1\\bin\\x64\\signtool.exe"` -signing.cliArgs | string | Args to pass to signtool.exe EXCEPT for executables to sign, e.g. `"sign /debug /f E:\\codesigning.crt.pfx /p top$3c37pa$$ /tr http://timestamp.comodoca.com/?td=sha256 /td sha256 /fd sha256 /v"` +signing.signtoolPath | string | Absolute path to signing tool, e.g. `"C:\\Program Files (x86)\\Windows Kits\\8.1\\bin\\x64\\signtool.exe"` on windows or `/usr/bin/codesign` on mac. The idea is to provide the full path to the signing executable, and all of the items will be added as arguments to that executable. +signing.cliArgs | string | Args to pass to the binary at `signing.signtoolPath` EXCEPT for executables to sign. Windows example: `"sign /debug /f E:\\codesigning.crt.pfx /p top$3c37pa$$ /tr http://timestamp.comodoca.com/?td=sha256 /td sha256 /fd sha256 /v"`. Mac example: `--force --verify --sign ${MY_SIGNING_IDENTITY}` ## build.mac <- [MacConfig](../src/lib/config/MacConfig.ts)