From 2967829f234e771309326fecad1740cc5a799881 Mon Sep 17 00:00:00 2001 From: Olivier Guinart Date: Mon, 4 Sep 2017 17:50:23 -0700 Subject: [PATCH] Implementation of tooltips on hover --- .vscode/launch.json | 27 +- .vscode/tasks.json | 22 + Images/VSCode01.JPG | Bin 45969 -> 0 bytes Images/merlin32VSCodeNearest.gif | Bin 0 -> 71466 bytes package-lock.json | 2532 ++++++++++++++++++++++++++++++ package.json | 47 +- src/extension.ts | 70 + strings/resources.json | 166 ++ strings/resources.json.d.ts | 3 + tsconfig.json | 15 + 10 files changed, 2859 insertions(+), 23 deletions(-) create mode 100644 .vscode/tasks.json delete mode 100644 Images/VSCode01.JPG create mode 100644 Images/merlin32VSCodeNearest.gif create mode 100644 package-lock.json create mode 100644 src/extension.ts create mode 100644 strings/resources.json create mode 100644 strings/resources.json.d.ts create mode 100644 tsconfig.json diff --git a/.vscode/launch.json b/.vscode/launch.json index 8384213..1b94ffc 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -1,13 +1,18 @@ -// A launch configuration that launches the extension inside a new window { - "version": "0.1.0", - "configurations": [ - { - "name": "Launch Extension", - "type": "extensionHost", - "request": "launch", - "runtimeExecutable": "${execPath}", - "args": ["--extensionDevelopmentPath=${workspaceRoot}" ] - } - ] + "version": "0.1.0", + "configurations": [ + { + "name": "Launch Extension", + "type": "extensionHost", + "request": "launch", + "runtimeExecutable": "${execPath}", + "args": [ + "--extensionDevelopmentPath=${workspaceRoot}" + ], + "stopOnEntry": false, + "sourceMaps": true, + "outFiles": ["${workspaceRoot}/out/**/*.js"], + "preLaunchTask": "npm" + } + ] } \ No newline at end of file diff --git a/.vscode/tasks.json b/.vscode/tasks.json new file mode 100644 index 0000000..6de436a --- /dev/null +++ b/.vscode/tasks.json @@ -0,0 +1,22 @@ +// A task runner that calls a custom npm script that compiles the extension. +{ + "version": "0.1.0", + + // we want to run npm + "command": "npm", + + // the command is a shell script + "isShellCommand": true, + + // show the output window only if unrecognized errors occur. + "showOutput": "silent", + + // we run the custom script "compile" as defined in package.json + "args": ["run", "compile"], + + // The tsc compiler is started in watching mode + "isWatching": true, + + // use the standard tsc in watch mode problem matcher to find compile problems in the output. + "problemMatcher": "$tsc-watch" +} \ No newline at end of file diff --git a/Images/VSCode01.JPG b/Images/VSCode01.JPG deleted file mode 100644 index 33be350225ec259b7331f2f46732654c1aca5502..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 45969 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 Hzfb-z8oW@> diff --git a/Images/merlin32VSCodeNearest.gif b/Images/merlin32VSCodeNearest.gif new file mode 100644 index 0000000000000000000000000000000000000000..3f0c7788befc2d417672e19600496b3ba910b7a6 GIT binary patch literal 71466 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 f#JPXTjq>{WyE`m%Cy!%wp^&-a_(1KIP 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�L40DWCpw#h34U)`3_Q2fL>Kt{RX7bfSn}VRxJ>> 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 bQ^K6CKfoMMC3){x4WDf}XT*Wz!Oi~#5bga! literal 0 HcmV?d00001 diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..7d87782 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,2532 @@ +{ + "name": "merlin32", + "version": "0.0.1", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "@types/mocha": { + "version": "2.2.42", + "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-2.2.42.tgz", + "integrity": "sha512-b6gVDoxEbAQGwbV7gSzeFw/hy3/eEAokztktdzl4bHvGgb9K5zW4mVQDlVYch2w31m8t/J7L2iqhQvz3r5edCQ==", + "dev": true + }, + "@types/node": { + "version": "6.0.88", + "resolved": "https://registry.npmjs.org/@types/node/-/node-6.0.88.tgz", + "integrity": "sha512-bYDPZTX0/s1aihdjLuAgogUAT5M+TpoWChEMea2p0yOcfn5bu3k6cJb9cp6nw268XeSNIGGr+4+/8V5K6BGzLQ==", + "dev": true + }, + "ajv": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz", + "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=", + "dev": true, + "requires": { + "co": "4.6.0", + "json-stable-stringify": "1.0.1" + } + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "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, + "requires": { + "arr-flatten": "1.1.0" + } + }, + "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-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "dev": true, + "requires": { + "array-uniq": "1.0.3" + } + }, + "array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", + "dev": true + }, + "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=", + "dev": true + }, + "assert-plus": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz", + "integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ=", + "dev": true + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", + "dev": true + }, + "aws-sign2": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz", + "integrity": "sha1-FDQt0428yU0OW4fXY81jYSwOeU8=", + "dev": true + }, + "aws4": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.6.0.tgz", + "integrity": "sha1-g+9cqGCysy5KDe7e6MdxudtXRx4=", + "dev": true + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "bcrypt-pbkdf": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz", + "integrity": "sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40=", + "dev": true, + "optional": true, + "requires": { + "tweetnacl": "0.14.5" + } + }, + "beeper": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/beeper/-/beeper-1.1.1.tgz", + "integrity": "sha1-5tXqjF2tABMEpwsiY4RH9pyy+Ak=", + "dev": true + }, + "block-stream": { + "version": "0.0.9", + "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", + "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", + "dev": true, + "requires": { + "inherits": "2.0.3" + } + }, + "boom": { + "version": "2.10.1", + "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz", + "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=", + "dev": true, + "requires": { + "hoek": "2.16.3" + } + }, + "brace-expansion": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", + "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=", + "dev": true, + "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, + "requires": { + "expand-range": "1.8.2", + "preserve": "0.2.0", + "repeat-element": "1.1.2" + } + }, + "browser-stdout": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.0.tgz", + "integrity": "sha1-81HTKWnTL6XXpVZxVCY9korjvR8=", + "dev": true + }, + "buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=", + "dev": true + }, + "caseless": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.11.0.tgz", + "integrity": "sha1-cVuW6phBWTzDMGeSP17GDr2k99c=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "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" + } + }, + "clone": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.2.tgz", + "integrity": "sha1-Jgt6meux7f4kdTgXX3gyQ8sZ0Uk=", + "dev": true + }, + "clone-buffer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/clone-buffer/-/clone-buffer-1.0.0.tgz", + "integrity": "sha1-4+JbIHrE5wGvch4staFnksrD3Fg=", + "dev": true + }, + "clone-stats": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz", + "integrity": "sha1-uI+UqCzzi4eR1YBG6kAprYjKmdE=", + "dev": true + }, + "cloneable-readable": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/cloneable-readable/-/cloneable-readable-1.0.0.tgz", + "integrity": "sha1-pikNQT8hemEjL5XkWP84QYz7ARc=", + "dev": true, + "requires": { + "inherits": "2.0.3", + "process-nextick-args": "1.0.7", + "through2": "2.0.3" + } + }, + "co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", + "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=", + "dev": true, + "requires": { + "delayed-stream": "1.0.0" + } + }, + "commander": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.11.0.tgz", + "integrity": "sha512-b0553uYA5YAEGgyYIGYROzKQ7X5RAqedkfjiZxwi0kL1g3bOaBNNZfYkzt/CL0umgD5wc9Jec2FbB98CjkMRvQ==", + "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=", + "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 + }, + "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=", + "dev": true + }, + "cryptiles": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz", + "integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=", + "dev": true, + "requires": { + "boom": "2.10.1" + } + }, + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "dev": true, + "requires": { + "assert-plus": "1.0.0" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "dev": true + } + } + }, + "dateformat": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-2.0.0.tgz", + "integrity": "sha1-J0Pjq7XD/CRi5SfcpEXgTp9N7hc=", + "dev": true + }, + "debug": { + "version": "2.6.8", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.8.tgz", + "integrity": "sha1-5zFTHKLt4n0YgiJCfaF4IdaP9Pw=", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "deep-assign": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/deep-assign/-/deep-assign-1.0.0.tgz", + "integrity": "sha1-sJJ0O+hCfcYh6gBnzex+cN0Z83s=", + "dev": true, + "requires": { + "is-obj": "1.0.1" + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "dev": true + }, + "diff": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.2.0.tgz", + "integrity": "sha1-yc45Okt8vQsFinJck98pkCeGj/k=", + "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.0.2", + "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.0.2.tgz", + "integrity": "sha1-xhTc9n4vsUmVqRcR5aYX6KYKMds=", + "dev": true, + "requires": { + "readable-stream": "1.1.14" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "dev": true, + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "0.0.1", + "string_decoder": "0.10.31" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true + } + } + }, + "duplexify": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.5.1.tgz", + "integrity": "sha512-j5goxHTwVED1Fpe5hh3q9R93Kip0Bg2KVAt4f8CEYM3UEwYcPSvWbXaUQOzdX/HtiNomipv+gU7ASQPDbV7pGQ==", + "dev": true, + "requires": { + "end-of-stream": "1.4.0", + "inherits": "2.0.3", + "readable-stream": "2.3.3", + "stream-shift": "1.0.0" + } + }, + "ecc-jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz", + "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=", + "dev": true, + "optional": true, + "requires": { + "jsbn": "0.1.1" + } + }, + "end-of-stream": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.0.tgz", + "integrity": "sha1-epDYM+/abPpurA9JSduw+tOmMgY=", + "dev": true, + "requires": { + "once": "1.4.0" + } + }, + "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 + }, + "event-stream": { + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/event-stream/-/event-stream-3.3.4.tgz", + "integrity": "sha1-SrTJoPWlTbkzi0w02Gv86PSzVXE=", + "dev": true, + "requires": { + "duplexer": "0.1.1", + "from": "0.1.7", + "map-stream": "0.1.0", + "pause-stream": "0.0.11", + "split": "0.3.3", + "stream-combiner": "0.0.4", + "through": "2.3.8" + } + }, + "expand-brackets": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", + "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", + "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, + "requires": { + "fill-range": "2.2.3" + } + }, + "extend": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz", + "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=", + "dev": true + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "0.1.1" + } + }, + "extglob": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", + "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", + "dev": true, + "requires": { + "is-extglob": "1.0.0" + }, + "dependencies": { + "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 + } + } + }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", + "dev": true + }, + "fancy-log": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.0.tgz", + "integrity": "sha1-Rb4X0Cu5kX1gzP/UmVyZnmyMmUg=", + "dev": true, + "requires": { + "chalk": "1.1.3", + "time-stamp": "1.1.0" + } + }, + "fd-slicer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.0.1.tgz", + "integrity": "sha1-i1vL2ewyfFBBv5qwI/1nUPEXfmU=", + "dev": true, + "requires": { + "pend": "1.2.0" + } + }, + "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, + "requires": { + "is-number": "2.1.0", + "isobject": "2.1.0", + "randomatic": "1.1.7", + "repeat-element": "1.1.2", + "repeat-string": "1.6.1" + } + }, + "first-chunk-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/first-chunk-stream/-/first-chunk-stream-1.0.0.tgz", + "integrity": "sha1-Wb+1DNkF9g18OUzT2ayqtOatk04=", + "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, + "requires": { + "for-in": "1.0.2" + } + }, + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "dev": true + }, + "form-data": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.1.4.tgz", + "integrity": "sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE=", + "dev": true, + "requires": { + "asynckit": "0.4.0", + "combined-stream": "1.0.5", + "mime-types": "2.1.17" + } + }, + "from": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/from/-/from-0.1.7.tgz", + "integrity": "sha1-g8YK/Fi5xWmXAH7Rp2izqzA6RP4=", + "dev": true + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "fstream": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.11.tgz", + "integrity": "sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE=", + "dev": true, + "requires": { + "graceful-fs": "4.1.11", + "inherits": "2.0.3", + "mkdirp": "0.5.1", + "rimraf": "2.6.1" + } + }, + "generate-function": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.0.0.tgz", + "integrity": "sha1-aFj+fAlpt9TpCTM3ZHrHn2DfvnQ=", + "dev": true + }, + "generate-object-property": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz", + "integrity": "sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA=", + "dev": true, + "requires": { + "is-property": "1.0.2" + } + }, + "getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "dev": true, + "requires": { + "assert-plus": "1.0.0" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "dev": true + } + } + }, + "glob": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", + "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", + "dev": 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" + } + }, + "glob-base": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", + "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", + "dev": true, + "requires": { + "glob-parent": "2.0.0", + "is-glob": "2.0.1" + }, + "dependencies": { + "glob-parent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", + "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", + "dev": true, + "requires": { + "is-glob": "2.0.1" + } + }, + "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-glob": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "dev": true, + "requires": { + "is-extglob": "1.0.0" + } + } + } + }, + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "dev": true, + "requires": { + "is-glob": "3.1.0", + "path-dirname": "1.0.2" + } + }, + "glob-stream": { + "version": "5.3.5", + "resolved": "https://registry.npmjs.org/glob-stream/-/glob-stream-5.3.5.tgz", + "integrity": "sha1-pVZlqajM3EGRWofHAeMtTgFvrSI=", + "dev": true, + "requires": { + "extend": "3.0.1", + "glob": "5.0.15", + "glob-parent": "3.1.0", + "micromatch": "2.3.11", + "ordered-read-streams": "0.3.0", + "through2": "0.6.5", + "to-absolute-glob": "0.1.1", + "unique-stream": "2.2.1" + }, + "dependencies": { + "glob": { + "version": "5.0.15", + "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", + "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", + "dev": true, + "requires": { + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + } + }, + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "dev": true, + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "0.0.1", + "string_decoder": "0.10.31" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true + }, + "through2": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", + "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=", + "dev": true, + "requires": { + "readable-stream": "1.0.34", + "xtend": "4.0.1" + } + } + } + }, + "glogg": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/glogg/-/glogg-1.0.0.tgz", + "integrity": "sha1-f+DxmfV6yQbPUS/urY+Q7kooT8U=", + "dev": true, + "requires": { + "sparkles": "1.0.0" + } + }, + "graceful-fs": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", + "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", + "dev": true + }, + "graceful-readlink": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", + "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=", + "dev": true + }, + "growl": { + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/growl/-/growl-1.9.2.tgz", + "integrity": "sha1-Dqd0NxXbjY3ixe3hd14bRayFwC8=", + "dev": true + }, + "gulp-chmod": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/gulp-chmod/-/gulp-chmod-2.0.0.tgz", + "integrity": "sha1-AMOQuSigeZslGsz2MaoJ4BzGKZw=", + "dev": true, + "requires": { + "deep-assign": "1.0.0", + "stat-mode": "0.2.2", + "through2": "2.0.3" + } + }, + "gulp-filter": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/gulp-filter/-/gulp-filter-5.0.1.tgz", + "integrity": "sha512-5olRzAhFdXB2klCu1lnazP65aO9YdA/5WfC9VdInIc8PrUeDIoZfaA3Edb0yUBGhVdHv4eHKL9Fg5tUoEJ9z5A==", + "dev": true, + "requires": { + "gulp-util": "3.0.8", + "multimatch": "2.1.0", + "streamfilter": "1.0.5" + } + }, + "gulp-gunzip": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/gulp-gunzip/-/gulp-gunzip-0.0.3.tgz", + "integrity": "sha1-e24HsPWP09QlFcSOrVpj3wVy9i8=", + "dev": true, + "requires": { + "through2": "0.6.5", + "vinyl": "0.4.6" + }, + "dependencies": { + "clone": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/clone/-/clone-0.2.0.tgz", + "integrity": "sha1-xhJqkK1Pctv1rNskPMN3JP6T/B8=", + "dev": true + }, + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "dev": true, + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "0.0.1", + "string_decoder": "0.10.31" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true + }, + "through2": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", + "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=", + "dev": true, + "requires": { + "readable-stream": "1.0.34", + "xtend": "4.0.1" + } + }, + "vinyl": { + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-0.4.6.tgz", + "integrity": "sha1-LzVsh6VQolVGHza76ypbqL94SEc=", + "dev": true, + "requires": { + "clone": "0.2.0", + "clone-stats": "0.0.1" + } + } + } + }, + "gulp-remote-src": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/gulp-remote-src/-/gulp-remote-src-0.4.3.tgz", + "integrity": "sha1-VyjP1kNDPdSEXd7wlp8PlxoqtKE=", + "dev": true, + "requires": { + "event-stream": "3.3.4", + "node.extend": "1.1.6", + "request": "2.79.0", + "through2": "2.0.3", + "vinyl": "2.0.2" + }, + "dependencies": { + "clone-stats": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-1.0.0.tgz", + "integrity": "sha1-s3gt/4u1R04Yuba/D9/ngvh3doA=", + "dev": true + }, + "replace-ext": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.0.tgz", + "integrity": "sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs=", + "dev": true + }, + "request": { + "version": "2.79.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.79.0.tgz", + "integrity": "sha1-Tf5b9r6LjNw3/Pk+BLZVd3InEN4=", + "dev": true, + "requires": { + "aws-sign2": "0.6.0", + "aws4": "1.6.0", + "caseless": "0.11.0", + "combined-stream": "1.0.5", + "extend": "3.0.1", + "forever-agent": "0.6.1", + "form-data": "2.1.4", + "har-validator": "2.0.6", + "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.17", + "oauth-sign": "0.8.2", + "qs": "6.3.2", + "stringstream": "0.0.5", + "tough-cookie": "2.3.2", + "tunnel-agent": "0.4.3", + "uuid": "3.1.0" + } + }, + "vinyl": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-2.0.2.tgz", + "integrity": "sha1-CjcT2NTpIhxY8QyhbAEWyeJe2nw=", + "dev": true, + "requires": { + "clone": "1.0.2", + "clone-buffer": "1.0.0", + "clone-stats": "1.0.0", + "cloneable-readable": "1.0.0", + "is-stream": "1.1.0", + "remove-trailing-separator": "1.1.0", + "replace-ext": "1.0.0" + } + } + } + }, + "gulp-sourcemaps": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/gulp-sourcemaps/-/gulp-sourcemaps-1.6.0.tgz", + "integrity": "sha1-uG/zSdgBzrVuHZ59x7vLS33uYAw=", + "dev": true, + "requires": { + "convert-source-map": "1.5.0", + "graceful-fs": "4.1.11", + "strip-bom": "2.0.0", + "through2": "2.0.3", + "vinyl": "1.2.0" + }, + "dependencies": { + "vinyl": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz", + "integrity": "sha1-XIgDbPVl5d8FVYv8kR+GVt8hiIQ=", + "dev": true, + "requires": { + "clone": "1.0.2", + "clone-stats": "0.0.1", + "replace-ext": "0.0.1" + } + } + } + }, + "gulp-symdest": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/gulp-symdest/-/gulp-symdest-1.1.0.tgz", + "integrity": "sha1-wWUyBzLRks5W/ZQnH/oSMjS/KuA=", + "dev": true, + "requires": { + "event-stream": "3.3.4", + "mkdirp": "0.5.1", + "queue": "3.1.0", + "vinyl-fs": "2.4.4" + } + }, + "gulp-untar": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/gulp-untar/-/gulp-untar-0.0.6.tgz", + "integrity": "sha1-1r3v3n6ajgVMnxYjhaB4LEvnQAA=", + "dev": true, + "requires": { + "event-stream": "3.3.4", + "gulp-util": "3.0.8", + "streamifier": "0.1.1", + "tar": "2.2.1", + "through2": "2.0.3" + } + }, + "gulp-util": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/gulp-util/-/gulp-util-3.0.8.tgz", + "integrity": "sha1-AFTh50RQLifATBh8PsxQXdVLu08=", + "dev": true, + "requires": { + "array-differ": "1.0.0", + "array-uniq": "1.0.3", + "beeper": "1.1.1", + "chalk": "1.1.3", + "dateformat": "2.0.0", + "fancy-log": "1.3.0", + "gulplog": "1.0.0", + "has-gulplog": "0.1.0", + "lodash._reescape": "3.0.0", + "lodash._reevaluate": "3.0.0", + "lodash._reinterpolate": "3.0.0", + "lodash.template": "3.6.2", + "minimist": "1.2.0", + "multipipe": "0.1.2", + "object-assign": "3.0.0", + "replace-ext": "0.0.1", + "through2": "2.0.3", + "vinyl": "0.5.3" + } + }, + "gulp-vinyl-zip": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/gulp-vinyl-zip/-/gulp-vinyl-zip-1.4.0.tgz", + "integrity": "sha1-VjgvLMtXIxuwR4x4c3zNVylzvuE=", + "dev": true, + "requires": { + "event-stream": "3.3.4", + "queue": "3.1.0", + "through2": "0.6.5", + "vinyl": "0.4.6", + "vinyl-fs": "2.4.4", + "yauzl": "2.8.0", + "yazl": "2.4.2" + }, + "dependencies": { + "clone": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/clone/-/clone-0.2.0.tgz", + "integrity": "sha1-xhJqkK1Pctv1rNskPMN3JP6T/B8=", + "dev": true + }, + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "dev": true, + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "0.0.1", + "string_decoder": "0.10.31" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true + }, + "through2": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", + "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=", + "dev": true, + "requires": { + "readable-stream": "1.0.34", + "xtend": "4.0.1" + } + }, + "vinyl": { + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-0.4.6.tgz", + "integrity": "sha1-LzVsh6VQolVGHza76ypbqL94SEc=", + "dev": true, + "requires": { + "clone": "0.2.0", + "clone-stats": "0.0.1" + } + } + } + }, + "gulplog": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/gulplog/-/gulplog-1.0.0.tgz", + "integrity": "sha1-4oxNRdBey77YGDY86PnFkmIp/+U=", + "dev": true, + "requires": { + "glogg": "1.0.0" + } + }, + "har-schema": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-1.0.5.tgz", + "integrity": "sha1-0mMTX0MwfALGAq/I/pWXDAFRNp4=", + "dev": true + }, + "har-validator": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-2.0.6.tgz", + "integrity": "sha1-zcvAgYgmWtEZtqWnyKtw7s+10n0=", + "dev": true, + "requires": { + "chalk": "1.1.3", + "commander": "2.11.0", + "is-my-json-valid": "2.16.1", + "pinkie-promise": "2.0.1" + } + }, + "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, + "requires": { + "ansi-regex": "2.1.1" + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "has-gulplog": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/has-gulplog/-/has-gulplog-0.1.0.tgz", + "integrity": "sha1-ZBTIKRNpfaUVkDl9r7EvIpZ4Ec4=", + "dev": true, + "requires": { + "sparkles": "1.0.0" + } + }, + "hawk": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz", + "integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=", + "dev": true, + "requires": { + "boom": "2.10.1", + "cryptiles": "2.0.5", + "hoek": "2.16.3", + "sntp": "1.0.9" + } + }, + "hoek": { + "version": "2.16.3", + "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", + "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=", + "dev": true + }, + "http-signature": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz", + "integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=", + "dev": true, + "requires": { + "assert-plus": "0.2.0", + "jsprim": "1.4.1", + "sshpk": "1.13.1" + } + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "requires": { + "once": "1.4.0", + "wrappy": "1.0.2" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true + }, + "is": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/is/-/is-3.2.1.tgz", + "integrity": "sha1-0Kwq1V63sL7JJqUmb2xmKqqD3KU=", + "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-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, + "requires": { + "is-primitive": "2.0.0" + } + }, + "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": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "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, + "requires": { + "is-extglob": "2.1.1" + } + }, + "is-my-json-valid": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.16.1.tgz", + "integrity": "sha512-ochPsqWS1WXj8ZnMIV0vnNXooaMhp7cyL4FMSIPKTtnV0Ha/T19G2b9kkhcNsabV9bxYkze7/aLZJb/bYuFduQ==", + "dev": true, + "requires": { + "generate-function": "2.0.0", + "generate-object-property": "1.2.0", + "jsonpointer": "4.0.1", + "xtend": "4.0.1" + } + }, + "is-number": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", + "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", + "dev": true, + "requires": { + "kind-of": "3.2.2" + } + }, + "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-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-property": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz", + "integrity": "sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ=", + "dev": true + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "dev": true + }, + "is-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", + "dev": true + }, + "is-valid-glob": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/is-valid-glob/-/is-valid-glob-0.3.0.tgz", + "integrity": "sha1-1LVcafUYhvm2XHDWwmItN+KfSP4=", + "dev": true + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "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, + "requires": { + "isarray": "1.0.0" + } + }, + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", + "dev": true + }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "dev": true, + "optional": true + }, + "json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", + "dev": true + }, + "json-stable-stringify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", + "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", + "dev": true, + "requires": { + "jsonify": "0.0.0" + } + }, + "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=", + "dev": true + }, + "json3": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/json3/-/json3-3.3.2.tgz", + "integrity": "sha1-PAQ0dD35Pi9cQq7nsZvLSDV19OE=", + "dev": true + }, + "jsonify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", + "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", + "dev": true + }, + "jsonpointer": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-4.0.1.tgz", + "integrity": "sha1-T9kss04OnbPInIYi7PUfm5eMbLk=", + "dev": true + }, + "jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "dev": true, + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "dev": true + } + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "1.1.5" + } + }, + "lazystream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz", + "integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=", + "dev": true, + "requires": { + "readable-stream": "2.3.3" + } + }, + "lodash._baseassign": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz", + "integrity": "sha1-jDigmVAPIVrQnlnxci/QxSv+Ck4=", + "dev": true, + "requires": { + "lodash._basecopy": "3.0.1", + "lodash.keys": "3.1.2" + } + }, + "lodash._basecopy": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz", + "integrity": "sha1-jaDmqHbPNEwK2KVIghEd08XHyjY=", + "dev": true + }, + "lodash._basecreate": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/lodash._basecreate/-/lodash._basecreate-3.0.3.tgz", + "integrity": "sha1-G8ZhYU2qf8MRt9A78WgGoCE8+CE=", + "dev": true + }, + "lodash._basetostring": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz", + "integrity": "sha1-0YYdh3+CSlL2aYMtyvPuFVZqB9U=", + "dev": true + }, + "lodash._basevalues": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/lodash._basevalues/-/lodash._basevalues-3.0.0.tgz", + "integrity": "sha1-W3dXYoAr3j0yl1A+JjAIIP32Ybc=", + "dev": true + }, + "lodash._getnative": { + "version": "3.9.1", + "resolved": "https://registry.npmjs.org/lodash._getnative/-/lodash._getnative-3.9.1.tgz", + "integrity": "sha1-VwvH3t5G1hzc3mh9ZdPuy6o6r/U=", + "dev": true + }, + "lodash._isiterateecall": { + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz", + "integrity": "sha1-UgOte6Ql+uhCRg5pbbnPPmqsBXw=", + "dev": true + }, + "lodash._reescape": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/lodash._reescape/-/lodash._reescape-3.0.0.tgz", + "integrity": "sha1-Kx1vXf4HyKNVdT5fJ/rH8c3hYWo=", + "dev": true + }, + "lodash._reevaluate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/lodash._reevaluate/-/lodash._reevaluate-3.0.0.tgz", + "integrity": "sha1-WLx0xAZklTrgsSTYBpltrKQx4u0=", + "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._root": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/lodash._root/-/lodash._root-3.0.1.tgz", + "integrity": "sha1-+6HEUkwZ7ppfgTa0YJ8BfPTe1pI=", + "dev": true + }, + "lodash.create": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/lodash.create/-/lodash.create-3.1.1.tgz", + "integrity": "sha1-1/KEnw29p+BGgruM1yqwIkYd6+c=", + "dev": true, + "requires": { + "lodash._baseassign": "3.2.0", + "lodash._basecreate": "3.0.3", + "lodash._isiterateecall": "3.0.9" + } + }, + "lodash.escape": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/lodash.escape/-/lodash.escape-3.2.0.tgz", + "integrity": "sha1-mV7g3BjBtIzJLv+ucaEKq1tIdpg=", + "dev": true, + "requires": { + "lodash._root": "3.0.1" + } + }, + "lodash.isarguments": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz", + "integrity": "sha1-L1c9hcaiQon/AGY7SRwdM4/zRYo=", + "dev": true + }, + "lodash.isarray": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/lodash.isarray/-/lodash.isarray-3.0.4.tgz", + "integrity": "sha1-eeTriMNqgSKvhvhEqpvNhRtfu1U=", + "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.keys": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-3.1.2.tgz", + "integrity": "sha1-TbwEcrFWvlCgsoaFXRvQsMZWCYo=", + "dev": true, + "requires": { + "lodash._getnative": "3.9.1", + "lodash.isarguments": "3.1.0", + "lodash.isarray": "3.0.4" + } + }, + "lodash.restparam": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/lodash.restparam/-/lodash.restparam-3.6.1.tgz", + "integrity": "sha1-k2pOMJ7zMKdkXtQUWYbIWuWyCAU=", + "dev": true + }, + "lodash.template": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-3.6.2.tgz", + "integrity": "sha1-+M3sxhaaJVvpCYrosMU9N4kx0U8=", + "dev": true, + "requires": { + "lodash._basecopy": "3.0.1", + "lodash._basetostring": "3.0.1", + "lodash._basevalues": "3.0.0", + "lodash._isiterateecall": "3.0.9", + "lodash._reinterpolate": "3.0.0", + "lodash.escape": "3.2.0", + "lodash.keys": "3.1.2", + "lodash.restparam": "3.6.1", + "lodash.templatesettings": "3.1.1" + } + }, + "lodash.templatesettings": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-3.1.1.tgz", + "integrity": "sha1-+zB4RHU7Zrnxr6VOJix0UwfbqOU=", + "dev": true, + "requires": { + "lodash._reinterpolate": "3.0.0", + "lodash.escape": "3.2.0" + } + }, + "map-stream": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/map-stream/-/map-stream-0.1.0.tgz", + "integrity": "sha1-5WqpTEyAVaFkBKBnS3jyFffI4ZQ=", + "dev": true + }, + "merge-stream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-1.0.1.tgz", + "integrity": "sha1-QEEgLVCKNCugAXQAjfDCUbjBNeE=", + "dev": true, + "requires": { + "readable-stream": "2.3.3" + } + }, + "micromatch": { + "version": "2.3.11", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", + "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", + "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" + }, + "dependencies": { + "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-glob": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "dev": true, + "requires": { + "is-extglob": "1.0.0" + } + } + } + }, + "mime-db": { + "version": "1.30.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.30.0.tgz", + "integrity": "sha1-dMZD2i3Z1qRTmZY0ZbJtXKfXHwE=", + "dev": true + }, + "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=", + "dev": true, + "requires": { + "mime-db": "1.30.0" + } + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "requires": { + "brace-expansion": "1.1.8" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + }, + "dependencies": { + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true + } + } + }, + "mocha": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-3.5.0.tgz", + "integrity": "sha512-pIU2PJjrPYvYRqVpjXzj76qltO9uBYI7woYAMoxbSefsa+vqAfptjoeevd6bUgwD0mPIO+hv9f7ltvsNreL2PA==", + "dev": true, + "requires": { + "browser-stdout": "1.3.0", + "commander": "2.9.0", + "debug": "2.6.8", + "diff": "3.2.0", + "escape-string-regexp": "1.0.5", + "glob": "7.1.1", + "growl": "1.9.2", + "json3": "3.3.2", + "lodash.create": "3.1.1", + "mkdirp": "0.5.1", + "supports-color": "3.1.2" + }, + "dependencies": { + "commander": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.9.0.tgz", + "integrity": "sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q=", + "dev": true, + "requires": { + "graceful-readlink": "1.0.1" + } + }, + "glob": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.1.tgz", + "integrity": "sha1-gFIR3wT6rxxjo2ADBs31reULLsg=", + "dev": 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" + } + }, + "supports-color": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.1.2.tgz", + "integrity": "sha1-cqJiiU2dQIuVbKBf83su2KbiotU=", + "dev": true, + "requires": { + "has-flag": "1.0.0" + } + } + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "multimatch": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-2.1.0.tgz", + "integrity": "sha1-nHkGoi+0wCkZ4vX3UWG0zb1LKis=", + "dev": true, + "requires": { + "array-differ": "1.0.0", + "array-union": "1.0.2", + "arrify": "1.0.1", + "minimatch": "3.0.4" + } + }, + "multipipe": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/multipipe/-/multipipe-0.1.2.tgz", + "integrity": "sha1-Ko8t33Du1WTf8tV/HhoTfZ8FB4s=", + "dev": true, + "requires": { + "duplexer2": "0.0.2" + } + }, + "node.extend": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/node.extend/-/node.extend-1.1.6.tgz", + "integrity": "sha1-p7iCyC1sk6SGOlUEvV3o7IYli5Y=", + "dev": true, + "requires": { + "is": "3.2.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, + "requires": { + "remove-trailing-separator": "1.1.0" + } + }, + "oauth-sign": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", + "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=", + "dev": true + }, + "object-assign": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-3.0.0.tgz", + "integrity": "sha1-m+3VygiXlJvKR+f/QIBi1Un1h/I=", + "dev": true + }, + "object.omit": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", + "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", + "dev": true, + "requires": { + "for-own": "0.1.5", + "is-extendable": "0.1.1" + } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "requires": { + "wrappy": "1.0.2" + } + }, + "ordered-read-streams": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/ordered-read-streams/-/ordered-read-streams-0.3.0.tgz", + "integrity": "sha1-cTfmmzKYuzQiR6G77jiByA4v14s=", + "dev": true, + "requires": { + "is-stream": "1.1.0", + "readable-stream": "2.3.3" + } + }, + "parse-glob": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", + "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", + "dev": true, + "requires": { + "glob-base": "0.3.0", + "is-dotfile": "1.0.3", + "is-extglob": "1.0.0", + "is-glob": "2.0.1" + }, + "dependencies": { + "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-glob": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "dev": true, + "requires": { + "is-extglob": "1.0.0" + } + } + } + }, + "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-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=", + "dev": true + }, + "pause-stream": { + "version": "0.0.11", + "resolved": "https://registry.npmjs.org/pause-stream/-/pause-stream-0.0.11.tgz", + "integrity": "sha1-/lo0sMvOErWqaitAPuLnO2AvFEU=", + "dev": true, + "requires": { + "through": "2.3.8" + } + }, + "pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=", + "dev": true + }, + "performance-now": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-0.2.0.tgz", + "integrity": "sha1-M+8wxcd9TqIcWlOGnZG1bY8lVeU=", + "dev": true + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "dev": true + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dev": true, + "requires": { + "pinkie": "2.0.4" + } + }, + "preserve": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", + "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=", + "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 + }, + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + }, + "qs": { + "version": "6.3.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.3.2.tgz", + "integrity": "sha1-51vV9uJoEioqDgvaYwslUMFmUCw=", + "dev": true + }, + "querystringify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-1.0.0.tgz", + "integrity": "sha1-YoYkIRLFtxL6ZU5SZlK/ahP/Bcs=", + "dev": true + }, + "queue": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/queue/-/queue-3.1.0.tgz", + "integrity": "sha1-bEnQHwCeIlZ4h4nyv/rGuLmZBYU=", + "dev": true, + "requires": { + "inherits": "2.0.3" + } + }, + "randomatic": { + "version": "1.1.7", + "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, + "requires": { + "is-buffer": "1.1.5" + } + } + } + }, + "kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "dev": true, + "requires": { + "is-buffer": "1.1.5" + } + } + } + }, + "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, + "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" + } + }, + "regex-cache": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", + "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", + "dev": true, + "requires": { + "is-equal-shallow": "0.1.3" + } + }, + "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 + }, + "replace-ext": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-0.0.1.tgz", + "integrity": "sha1-KbvZIHinOfC8zitO5B6DeVNSKSQ=", + "dev": true + }, + "request": { + "version": "2.81.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.81.0.tgz", + "integrity": "sha1-xpKJRqDgbF+Nb4qTM0af/aRimKA=", + "dev": 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.17", + "oauth-sign": "0.8.2", + "performance-now": "0.2.0", + "qs": "6.4.0", + "safe-buffer": "5.1.1", + "stringstream": "0.0.5", + "tough-cookie": "2.3.2", + "tunnel-agent": "0.6.0", + "uuid": "3.1.0" + }, + "dependencies": { + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", + "dev": true + }, + "har-validator": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-4.2.1.tgz", + "integrity": "sha1-M0gdDxu/9gDdID11gSpqX7oALio=", + "dev": true, + "requires": { + "ajv": "4.11.8", + "har-schema": "1.0.5" + } + }, + "qs": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.4.0.tgz", + "integrity": "sha1-E+JtKK1rD/qpExLNO/cI7TUecjM=", + "dev": true + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "dev": true, + "requires": { + "safe-buffer": "5.1.1" + } + } + } + }, + "requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=", + "dev": true + }, + "rimraf": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.1.tgz", + "integrity": "sha1-wjOOxkPfeht/5cVPqG9XQopV8z0=", + "dev": true, + "requires": { + "glob": "7.1.2" + } + }, + "safe-buffer": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", + "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==", + "dev": true + }, + "semver": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", + "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==", + "dev": true + }, + "sntp": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz", + "integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=", + "dev": true, + "requires": { + "hoek": "2.16.3" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "source-map-support": { + "version": "0.4.17", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.17.tgz", + "integrity": "sha512-30c1Ch8FSjV0FwC253iftbbj0dU/OXoSg1LAEGZJUlGgjTNj6cu+DVqJWWIZJY5RXLWV4eFtR+4ouo0VIOYOTg==", + "dev": true, + "requires": { + "source-map": "0.5.7" + } + }, + "sparkles": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/sparkles/-/sparkles-1.0.0.tgz", + "integrity": "sha1-Gsu/tZJDbRC76PeFt8xvgoFQEsM=", + "dev": true + }, + "split": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/split/-/split-0.3.3.tgz", + "integrity": "sha1-zQ7qXmOiEd//frDwkcQTPi0N0o8=", + "dev": true, + "requires": { + "through": "2.3.8" + } + }, + "sshpk": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.13.1.tgz", + "integrity": "sha1-US322mKHFEMW3EwY/hzx2UBzm+M=", + "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" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "dev": true + } + } + }, + "stat-mode": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/stat-mode/-/stat-mode-0.2.2.tgz", + "integrity": "sha1-5sgLYjEj19gM8TLOU480YokHJQI=", + "dev": true + }, + "stream-combiner": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/stream-combiner/-/stream-combiner-0.0.4.tgz", + "integrity": "sha1-TV5DPBhSYd3mI8o/RMWGvPXErRQ=", + "dev": true, + "requires": { + "duplexer": "0.1.1" + } + }, + "stream-shift": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.0.tgz", + "integrity": "sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI=", + "dev": true + }, + "streamfilter": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/streamfilter/-/streamfilter-1.0.5.tgz", + "integrity": "sha1-h1BxEb644phFFxe1Ec/tjwAqv1M=", + "dev": true, + "requires": { + "readable-stream": "2.3.3" + } + }, + "streamifier": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/streamifier/-/streamifier-0.1.1.tgz", + "integrity": "sha1-l+mNj6TRBdYqJpHR3AfoINuN/E8=", + "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, + "requires": { + "safe-buffer": "5.1.1" + } + }, + "stringstream": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.5.tgz", + "integrity": "sha1-TkhM1N5aC7vuGORjB3EKioFiGHg=", + "dev": true + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "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=", + "dev": true, + "requires": { + "is-utf8": "0.2.1" + } + }, + "strip-bom-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-bom-stream/-/strip-bom-stream-1.0.0.tgz", + "integrity": "sha1-5xRDmFd9Uaa+0PoZlPoF9D/ZiO4=", + "dev": true, + "requires": { + "first-chunk-stream": "1.0.0", + "strip-bom": "2.0.0" + } + }, + "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 + }, + "tar": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz", + "integrity": "sha1-jk0qJWwOIYXGsYrWlK7JaLg8sdE=", + "dev": true, + "requires": { + "block-stream": "0.0.9", + "fstream": "1.0.11", + "inherits": "2.0.3" + } + }, + "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, + "requires": { + "readable-stream": "2.3.3", + "xtend": "4.0.1" + } + }, + "through2-filter": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/through2-filter/-/through2-filter-2.0.0.tgz", + "integrity": "sha1-YLxVoNrLdghdsfna6Zq0P4PWIuw=", + "dev": true, + "requires": { + "through2": "2.0.3", + "xtend": "4.0.1" + } + }, + "time-stamp": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-1.1.0.tgz", + "integrity": "sha1-dkpaEa9QVhkhsTPztE5hhofg9cM=", + "dev": true + }, + "to-absolute-glob": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/to-absolute-glob/-/to-absolute-glob-0.1.1.tgz", + "integrity": "sha1-HN+kcqnvUMI57maZm2YsoOs5k38=", + "dev": true, + "requires": { + "extend-shallow": "2.0.1" + } + }, + "tough-cookie": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.2.tgz", + "integrity": "sha1-8IH3bkyFcg5sN6X6ztc3FQ2EByo=", + "dev": true, + "requires": { + "punycode": "1.4.1" + } + }, + "tunnel-agent": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.3.tgz", + "integrity": "sha1-Y3PbdpCf5XDgjXNYM2Xtgop07us=", + "dev": true + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "dev": true, + "optional": true + }, + "typescript": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-2.5.2.tgz", + "integrity": "sha1-A4qV99m7tCCxvzW6MdTFwd0//jQ=", + "dev": true + }, + "unique-stream": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/unique-stream/-/unique-stream-2.2.1.tgz", + "integrity": "sha1-WqADz76Uxf+GbE59ZouxxNuts2k=", + "dev": true, + "requires": { + "json-stable-stringify": "1.0.1", + "through2-filter": "2.0.0" + } + }, + "url-parse": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.1.9.tgz", + "integrity": "sha1-xn8dd11R8KGJEd17P/rSe7nlvRk=", + "dev": true, + "requires": { + "querystringify": "1.0.0", + "requires-port": "1.0.0" + } + }, + "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==", + "dev": true + }, + "vali-date": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/vali-date/-/vali-date-1.0.0.tgz", + "integrity": "sha1-G5BKWWCfsyjvB4E4Qgk09rhnCaY=", + "dev": true + }, + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "dev": true, + "requires": { + "assert-plus": "1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "1.3.0" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "dev": true + } + } + }, + "vinyl": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-0.5.3.tgz", + "integrity": "sha1-sEVbOPxeDPMNQyUTLkYZcMIJHN4=", + "dev": true, + "requires": { + "clone": "1.0.2", + "clone-stats": "0.0.1", + "replace-ext": "0.0.1" + } + }, + "vinyl-fs": { + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-2.4.4.tgz", + "integrity": "sha1-vm/zJwy1Xf19MGNkDegfJddTIjk=", + "dev": true, + "requires": { + "duplexify": "3.5.1", + "glob-stream": "5.3.5", + "graceful-fs": "4.1.11", + "gulp-sourcemaps": "1.6.0", + "is-valid-glob": "0.3.0", + "lazystream": "1.0.0", + "lodash.isequal": "4.5.0", + "merge-stream": "1.0.1", + "mkdirp": "0.5.1", + "object-assign": "4.1.1", + "readable-stream": "2.3.3", + "strip-bom": "2.0.0", + "strip-bom-stream": "1.0.0", + "through2": "2.0.3", + "through2-filter": "2.0.0", + "vali-date": "1.0.0", + "vinyl": "1.2.0" + }, + "dependencies": { + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true + }, + "vinyl": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz", + "integrity": "sha1-XIgDbPVl5d8FVYv8kR+GVt8hiIQ=", + "dev": true, + "requires": { + "clone": "1.0.2", + "clone-stats": "0.0.1", + "replace-ext": "0.0.1" + } + } + } + }, + "vinyl-source-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/vinyl-source-stream/-/vinyl-source-stream-1.1.0.tgz", + "integrity": "sha1-RMvlEIIFJ53rDFZTwJSiiHk4sas=", + "dev": true, + "requires": { + "through2": "0.6.5", + "vinyl": "0.4.6" + }, + "dependencies": { + "clone": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/clone/-/clone-0.2.0.tgz", + "integrity": "sha1-xhJqkK1Pctv1rNskPMN3JP6T/B8=", + "dev": true + }, + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "dev": true, + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "0.0.1", + "string_decoder": "0.10.31" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true + }, + "through2": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", + "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=", + "dev": true, + "requires": { + "readable-stream": "1.0.34", + "xtend": "4.0.1" + } + }, + "vinyl": { + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-0.4.6.tgz", + "integrity": "sha1-LzVsh6VQolVGHza76ypbqL94SEc=", + "dev": true, + "requires": { + "clone": "0.2.0", + "clone-stats": "0.0.1" + } + } + } + }, + "vscode": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/vscode/-/vscode-1.1.5.tgz", + "integrity": "sha1-EOsQQAGEDD3QgTgV/UoF+PyILRQ=", + "dev": true, + "requires": { + "glob": "7.1.2", + "gulp-chmod": "2.0.0", + "gulp-filter": "5.0.1", + "gulp-gunzip": "0.0.3", + "gulp-remote-src": "0.4.3", + "gulp-symdest": "1.1.0", + "gulp-untar": "0.0.6", + "gulp-vinyl-zip": "1.4.0", + "mocha": "3.5.0", + "request": "2.81.0", + "semver": "5.4.1", + "source-map-support": "0.4.17", + "url-parse": "1.1.9", + "vinyl-source-stream": "1.1.0" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + }, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", + "dev": true + }, + "yauzl": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.8.0.tgz", + "integrity": "sha1-eUUK/yKyqcWkHvVOAtuQfM+/nuI=", + "dev": true, + "requires": { + "buffer-crc32": "0.2.13", + "fd-slicer": "1.0.1" + } + }, + "yazl": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/yazl/-/yazl-2.4.2.tgz", + "integrity": "sha1-FMsZCD4eJacAksFYiqvg9OTdTYg=", + "dev": true, + "requires": { + "buffer-crc32": "0.2.13" + } + } + } +} diff --git a/package.json b/package.json index de3f63e..bbfad5c 100644 --- a/package.json +++ b/package.json @@ -10,17 +10,40 @@ "categories": [ "Languages" ], + "activationEvents": [ + "onLanguage:merlin32" + ], + "main": "./out/extension", "contributes": { - "languages": [{ - "id": "merlin32", - "aliases": ["Merlin32", "merlin32"], - "extensions": [".s"], - "configuration": "./language-configuration.json" - }], - "grammars": [{ - "language": "merlin32", - "scopeName": "source.asm.merlin32", - "path": "./syntaxes/merlin32.tmLanguage.json" - }] + "languages": [ + { + "id": "merlin32", + "aliases": [ + "Merlin32", + "merlin32" + ], + "extensions": [ + ".s" + ], + "configuration": "./language-configuration.json" + } + ], + "grammars": [ + { + "language": "merlin32", + "scopeName": "source.asm.merlin32", + "path": "./syntaxes/merlin32.tmLanguage.json" + } + ] + }, + "scripts": { + "vscode:prepublish": "tsc -p ./", + "compile": "tsc -watch -p ./", + "postinstall": "node ./node_modules/vscode/bin/install" + }, + "devDependencies": { + "vscode": "^1.0.3", + "typescript": "^2.1.5", + "@types/node": "^6.0.52" } -} \ No newline at end of file +} diff --git a/src/extension.ts b/src/extension.ts new file mode 100644 index 0000000..f865d12 --- /dev/null +++ b/src/extension.ts @@ -0,0 +1,70 @@ +import * as vscode from 'vscode'; +import * as data from '../strings/resources.json'; + +// this method is called when vs code is activated +export function activate(context: vscode.ExtensionContext) { + + function initializeOpcodesRegex() { + let r : string = "\\b("; + for (var prop in data) { + if (prop != "--^") { + r += prop + "|"; + } + } + // The last '|(--\\^)' group below is the ELUP synomym, + // not considered a word per regex standards, so not in \b boundaries group. + return r.substr(0, r.length - 1) + ")\\b|(--\\^)"; + } + + let regEx = new RegExp(initializeOpcodesRegex(), 'gi'); + + // create an empty decorator type (no need for border around the opcode nor different background color) + // this is just to enable hover. + const opcodesDecorationType = vscode.window.createTextEditorDecorationType({ + }); + + let activeEditor = vscode.window.activeTextEditor; + if (activeEditor) { + triggerUpdateDecorations(); + } + + vscode.window.onDidChangeActiveTextEditor(editor => { + activeEditor = editor; + if (editor) { + triggerUpdateDecorations(); + } + }, null, context.subscriptions); + + vscode.workspace.onDidChangeTextDocument(event => { + if (activeEditor && event.document === activeEditor.document) { + triggerUpdateDecorations(); + } + }, null, context.subscriptions); + + var timeout = null; + function triggerUpdateDecorations() { + if (timeout) { + clearTimeout(timeout); + } + timeout = setTimeout(updateDecorations, 500); + } + + function updateDecorations() { + if (!activeEditor) { + return; + } + const text = activeEditor.document.getText(); + const opcodes: vscode.DecorationOptions[] = []; + let match; + while (match = regEx.exec(text)) { + const startPos = activeEditor.document.positionAt(match.index); + const endPos = activeEditor.document.positionAt(match.index + match[0].length); + const decoration = { range: new vscode.Range(startPos, endPos), hoverMessage: data[match[0].toUpperCase()] }; + opcodes.push(decoration); + } + if (opcodes.length > 0) { + activeEditor.setDecorations(opcodesDecorationType, opcodes); + } + } +} + diff --git a/strings/resources.json b/strings/resources.json new file mode 100644 index 0000000..a25fe9c --- /dev/null +++ b/strings/resources.json @@ -0,0 +1,166 @@ +{ + "ADR": "Define ADdRess (3 bytes)", + "ADRL": "Define ADdRess Long (4 bytes)", + "ASC": "Define ASCii (\" positive, ' negative)", + "CHK": "Place a CHecKsum in object code", + "DA": "Define Address (2 bytes)", + "DB": "Define Byte (1 byte)", + "DC": "???", + "DCI": "Define Dextral Character Inverted", + "DDB": "Define Double Byte (2 bytes)", + "DE": "???", + "DFB": "DeFine Byte (1 byte)", + "DS": "Define Storage (x bytes) (e.g. DS 10 (put $00 in 10 bytes), DS 10,$80 (put $80 in 10 bytes))", + "DW": "Define Word (2 bytes)", + "FLS": "Define FLaShing text", + "HEX": "Define HEX data (1 byte)", + "INV": "Define INVerse text", + "REV": "Define REVerse", + "STR": "Define STRing with leading length (1 byte)", + "STRL": "Define STRing Long with leading length (2 bytes)", + + "ANOP": "???", + "AST": "Send a line of ASTerisks", + "CYC": "Calculate and print CYCle times for the code", + "DAT": "DATe stamp assembly listing", + "DEND": "Dummy section END", + "DO": "DO directive", + "DSK": "Define the name of the output binary after the directive", + "DUM": "DUMmy section start", + "ELSE": "ELSE condition", + "ELUP": "End of LUP", + "--^": "End of LUP", + "END": "END of source file", + "EQU": "Define constant values (same as =)", + "ERR": "Force ERRor", + "EXP": "Macro EXPand control", + "FIN": "Mandatory ENDdirective for IF and DO ", + "IF": "IF condition", + "KBD": "Define label from KeyBoarD", + "LNK": "Relocate code (same as DSK in Merlin 32)", + "LONGA": "???", + "LONGI": "???", + "LST": "LiSTing control", + "LSTDO": "LiSTDO OFF areas of code", + "LUP": "Repeat portions of the code (until the --^ directive)", + "MX": "Set the size for M (Accumulator) and X (X and Y Registers)", + "ORG": "Must be followed by the program's origin, e.g. org $800", + "PAG": "New PAGe", + "PAU": "PAUse", + "PUT": "Insert the content of a source file", + "PUTBIN": "???", + "REL": "Use at the start of the program to write 16 bit relocatable code", + "SAV": "Define the name of the output binary before the directive", + "SKP": "SKiP lines", + "START": "???", + "SW": "SWeet16 opcodes", + "TR": "TRuncate control", + "TTL": "TiTLe heading", + "TYP": "Set the output file type (one byte: $00-$FF)", + "USE": "Insert macros", + "USING": "???", + "USR": "???", + "XC": "???", + + "ADC": "ADd with Carry", + "ADCL": "ADd with Carry Long", + "AND": "Bitwise AND with accumulator", + "ANDL": "Bitwise AND with accumulator, Long", + "ASL": "ASL shifts all bits left one position. 0 is shifted into bit 0 and the original bit 7 is shifted into the Carry", + "BCC": "Branch if Carry Clear", + "BCS": "Branch if Carry Set", + "BEQ": "Branch if EQual/Branch if zero", + "BIT": "BIt Test", + "BMI": "Branch if MInus value", + "BNE": "Branch if Not Equal/Branch if not zero", + "BPL": "Branch if PLus value", + "BRA": "BRanch Always", + "BRK": "Software BReaK", + "BRL": "BRanch always Long", + "BVC": "Branch if oVerflow Clear", + "BVS": "Branch if oVerflow Set", + "CLC": "CLear Carry flag", + "CLD": "CLear Decimal flag", + "CLI": "CLear Interrupt flag", + "CLV": "CLear oVerflow flag", + "CMP": "CoMPare accumulator with memory", + "CMPL": "CoMPare accumulator with memory, Long", + "COP": "COProcessor empowerment (interrupt)", + "CPX": "ComPare X with memory", + "CPY": "ComPare Y with memory", + "DEC": "DECrement accumulator or memory", + "DEX": "DEcrement X", + "DEY": "Decrement Y", + "EOR": "Exclusive OR accumulator with memory", + "EORL": "Exclusive OR accumulator with memory, Long", + "INC": "INCrement accumulator or memory", + "INX": "INcrement X", + "INY": "INcrement Y", + "JML": "JuMp, Long", + "JMP": "JuMP", + "JMPL": "JuMP, Long", + "JSL": "Jump to Subroutine, Long", + "JSR": "Jump to SubRoutine", + "LDA": "LoaD Accumulator", + "LDAL": "LoaD Accumulator, Long", + "LDX": "LoaD X register", + "LDY": "LoaD Y register", + "LSR": "LSR shifts all bits right one position. 0 is shifted into bit 7 and the original bit 0 is shifted into the Carry", + "MVN": "Block MoVe Negative", + "MVP": "Block MoVe Positive", + "NOP": "No OPeration", + "ORA": "Bitwise OR Accumulator with memory", + "ORAL": "Bitwise OR Accumulator with memory, Long", + "PEA": "Push Effective Address", + "PEI": "Push Effective Indirect address", + "PER": "Push program countEr Relative", + "PHA": "PusH Accumulator", + "PHB": "PusH data Bank register", + "PHD": "PusH Direct page register", + "PHK": "PusH program banK register", + "PHP": "PusH Processor status flags", + "PHX": "PusH X", + "PHY": "PusH Y", + "PLA": "Pull Accumulator", + "PLB": "Pull data Bank register", + "PLD": "Pull Direct page register", + "PLP": "Pull Processor status flags", + "PLX": "Pull X", + "PLY": "Pull Y", + "REP": "REset Processor status flag", + "ROL": "ROtate Left accumulator or memory", + "ROR": "ROtate Right accumulator or memory", + "RTI": "ReTurn from Interrupt", + "RTL": "ReTurn from subroutine, Long", + "RTS": "ReTurn from Subroutine; pulls the top two bytes off the stack (low byte first) and transfers program control to that address+1", + "SBC": "SuBtract with Carry", + "SBCL": "SuBtract with Carry Long", + "SEC": "SEt Carry flag", + "SED": "SEt Decimal flag", + "SEI": "SEt Interrupt flag", + "SEP": "SEt Processor status flag", + "STA": "STore Accumulator to memory", + "STAL": "STore Accumulator to memory, Long", + "STP": "SToP the clock", + "STX": "STore X to memory", + "STY": "STore Y to memory", + "STZ": "STore Zero to memory", + "TAX": "Transfer Accumulator to X", + "TAY": "Transfer Accumulator to Y", + "TCD": "Transfer aCcumulator to Direct page", + "TCS": "Transfer aCcumulator to Stack page", + "TDC": "Transfer Direct page to aCcumulator", + "TRB": "Test and Reset Bit", + "TSB": "Test and Set Bit", + "TSC": "Transfer Stack pointer to aCcumulator", + "TSX": "Transfer Stack pointer to X", + "TXA": "Transfer X to Accumulator", + "TXS": "Transfer X to Stack pointer", + "TXY": "Transfer X to Y", + "TYA": "Transfer Y to Accumulator", + "TYX": "Transfer Y to X", + "WAI": "WAIt for interrupt", + "WDM": "Reserved for future use, it performs no operation", + "XBA": "EXchange low and high byte of the Accumulator", + "XCE": "EXchange Carry and Emulation" +} \ No newline at end of file diff --git a/strings/resources.json.d.ts b/strings/resources.json.d.ts new file mode 100644 index 0000000..9375295 --- /dev/null +++ b/strings/resources.json.d.ts @@ -0,0 +1,3 @@ +interface Resources {} +declare const value: Resources; +export = value; \ No newline at end of file diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..6dcf60d --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,15 @@ +{ + "compilerOptions": { + "module": "commonjs", + "target": "es5", + "outDir": "out", + "lib": [ + "es6" + ], + "sourceMap": true, + "rootDir": "src" + }, + "exclude": [ + "node_modules" + ] +} \ No newline at end of file