├── .babelrc ├── .gitignore ├── LICENSE ├── README.md ├── build.sh ├── client ├── pay.js └── play.js ├── package-lock.json ├── package.json ├── src ├── app.js └── cli.js └── views ├── _payment.pug ├── _success.pug ├── pay.pug └── play.pug /.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "presets": [ 3 | ["env", { 4 | "targets": { 5 | "browsers": ["last 3 versions"] 6 | , "node": "6" 7 | } 8 | }] 9 | ] 10 | , "plugins": ["transform-object-rest-spread"] 11 | } 12 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .env 3 | dist 4 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2018 Nadav Ivgi 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | THE SOFTWARE. 20 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Lightning Jukebox 2 | 3 | [![npm release](https://img.shields.io/npm/v/lightning-jukebox.svg)](https://www.npmjs.com/package/lightning-jukebox) 4 | [![MIT license](https://img.shields.io/github/license/shesek/lightning-jukebox.svg)](https://github.com/shesek/lightning-jukebox/blob/master/LICENSE) 5 | [![Pull Requests Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](http://makeapullrequest.com) 6 | [![IRC](https://img.shields.io/badge/chat-on%20freenode-brightgreen.svg)](https://webchat.freenode.net/?channels=lightning-charge) 7 | 8 | A Lightning powered Jukebox. Pay with Bitcoin to choose your music from YouTube. 9 | 10 | [See it in action on YouTube](https://www.youtube.com/watch?v=AgGYpFJsh24) 11 | 12 | Powered by :zap: [Lightning Charge](https://github.com/ElementsProject/lightning-charge) 13 | 14 | ## HOWTO 15 | 16 | 1. [Setup Lightning Charge](https://github.com/ElementsProject/lightning-charge/blob/master/README.md#getting-started). 17 | 18 | 2. Install Lightning Jukebox and start `jukeboxd`: 19 | 20 | ```bash 21 | $ npm install -g lightning-jukebox 22 | 23 | $ jukeboxd --charge-token mySecretToken --price '0.0001 BTC' 24 | Jukebox server running on http://localhost:6100 25 | ``` 26 | 27 | You may pick a different theme from [bootswatch](https://bootswatch.com) 28 | by specifying `--theme [name]` (the default is `darkly`). 29 | 30 | 3. Navigate to `http://localhost:6100/` on the computer playing the music 31 | and click `Spawn YouTube player`. 32 | This will open a new YouTube window in a new tab. 33 | *Make sure to keep both* the page on `localhost:6100` and the youtube window open. 34 | You can use the YouTube window to start playing some initial music. 35 | 36 | 37 | 38 | 4. Make the payment page (`http://localhost:6100/pay`) available over the internet or set it up on a local device, like a tablet, near 39 | the jukebox. The payment page allows users to pay for music selection. 40 | 41 | 42 | 43 | 44 | Once a payment is made, a push notification will be sent to the player window (via websockets), 45 | which will open the requested song in the spawned youtube window. 46 | 47 | Payments can also be made directly to the jukebox API: 48 | 49 | ```bash 50 | # with a search string 51 | $ BOLT11=`curl http://localhost:6100/invoice -d video='are you shpongled full album'` 52 | $ lightning-cli decodepay $BOLT11 53 | $ lightning-cli pay $BOLT11 54 | 55 | # with a specific video id 56 | $ lightning-cli pay `curl http://localhost:6100/invoice \ 57 | -d video=https://www.youtube.com/watch?v=IDiZG-eAk30` 58 | ``` 59 | 60 | ## CLI options 61 | 62 | ```bash 63 | $ jukeboxd --help 64 | 65 | A Lightning powered Jukebox 66 | 67 | Usage 68 | $ jukeboxd [options] 69 | 70 | Options 71 | -c, --charge-url lightning charge server url [default: http://localhost:9112] 72 | -t, --charge-token lightning charge access token [required] 73 | 74 | -P, --price price to play music [default: 0.0001 BTC] 75 | -m, --theme pick theme from bootswatch.com [default: darkly] 76 | -l, --title website title [default: Lightning Jukebox] 77 | 78 | -p, --port http server port [default: 9115] 79 | -i, --host http server listen address [default: 127.0.0.1] 80 | -h, --help output usage information 81 | -v, --version output version number 82 | 83 | Example 84 | $ jukeboxd -t chargeSecretToken -P '0.0005 EUR' 85 | ``` 86 | 87 | ## Why a separate YouTube tab instead of embedding the video player? 88 | 89 | So that "auto play next" works. 90 | 91 | ## License 92 | 93 | MIT 94 | -------------------------------------------------------------------------------- /build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -xeo pipefail 3 | 4 | rm -rf dist/* 5 | 6 | babel -d dist src 7 | 8 | mkdir dist/bundles 9 | browserify client/pay.js | uglifyjs -cm > dist/bundles/pay.js 10 | browserify client/play.js | uglifyjs -cm > dist/bundles/play.js 11 | -------------------------------------------------------------------------------- /client/pay.js: -------------------------------------------------------------------------------- 1 | require('babel-polyfill') 2 | 3 | const $ = require('jquery') 4 | , B = require('bootstrap') 5 | , qrcode = require('qrcode') 6 | , payDialog = require('../views/_payment.pug') 7 | , paidDialog = require('../views/_success.pug') 8 | 9 | $(document).on('hidden.bs.modal', '.modal', e => $(e.target).remove()) 10 | 11 | $(document).on('submit', 'form.pay', async e => { 12 | e.preventDefault() 13 | 14 | $('[type=submit]').prop('disabled', true) 15 | 16 | try { 17 | const inv = await $.post('invoice', { video: $('[name=video]').val() }, null, 'json') 18 | , qr = await qrcode.toDataURL(`lightning:${ inv.payreq }`.toUpperCase(), { margin: 2, width: 300 }) 19 | , diag = $(payDialog({ ...inv, qr })).modal() 20 | 21 | updateExp(diag.find('[data-countdown-to]')) 22 | 23 | const unlisten = listen(inv.id, paid => (diag.modal('hide'), paid && success())) 24 | diag.on('hidden.bs.modal', unlisten) 25 | } 26 | finally { $(':disabled').attr('disabled', false) } 27 | }) 28 | 29 | function listen(invid, cb) { 30 | let retry = _ => listen(invid, cb) 31 | const req = $.get(`invoice/${ invid }/wait`) 32 | 33 | req.then(_ => cb(true)) 34 | .catch(err => 35 | err.status === 402 ? retry() // long polling timed out, invoice is still payable 36 | : err.status === 410 ? cb(false) // invoice expired and can no longer be paid 37 | : err.statusText === 'abort' ? null // user aborted, do nothing 38 | : setTimeout(retry, 10000)) // unknown error, re-poll after delay 39 | 40 | return _ => (retry = _ => null, req.abort()) 41 | } 42 | 43 | function success() { 44 | const diag = $(paidDialog()).modal() 45 | setTimeout(_ => diag.modal('hide'), 5000) 46 | } 47 | 48 | function updateExp(el) { 49 | const left = +el.data('countdown-to') - (Date.now()/1000|0) 50 | if (left > 0) el.text(formatDur(left)) 51 | else el.closest('.modal').modal('hide') 52 | } 53 | 54 | function formatDur(x) { 55 | const h=x/3600|0, m=x%3600/60|0, s=x%60 56 | return ''+(h>0?h+':':'')+(m<10&&h>0?'0':'')+m+':'+(s<10?'0':'')+s 57 | } 58 | 59 | setInterval(_ => 60 | $('[data-countdown-to]').each((_, el) => updateExp($(el))) 61 | , 1000) 62 | -------------------------------------------------------------------------------- /client/play.js: -------------------------------------------------------------------------------- 1 | import RWebSocket from 'reconnecting-websocket' 2 | 3 | new RWebSocket(`ws://${location.host}/ws`).addEventListener('message', msg => { 4 | const [ type, video ] = msg.data.split(':', 2) 5 | console.log(`playing by ${type}: ${video}`) 6 | 7 | window.open(type == 'id' 8 | ? `https://www.youtube.com/watch?v=${encodeURIComponent(video)}` 9 | : `https://www.google.com/search?q=site%3Ayoutube.com%2Fwatch+${encodeURIComponent(video)}&btnI=Im+Feeling+Lucky&gl=us&hl=en` 10 | , '_player') 11 | }) 12 | -------------------------------------------------------------------------------- /package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "lightning-jukebox", 3 | "version": "0.0.1", 4 | "lockfileVersion": 1, 5 | "requires": true, 6 | "dependencies": { 7 | "@types/babel-types": { 8 | "version": "7.0.1", 9 | "resolved": "https://registry.npmjs.org/@types/babel-types/-/babel-types-7.0.1.tgz", 10 | "integrity": "sha512-EkcOk09rjhivbovP8WreGRbXW20YRfe/qdgXOGq3it3u3aAOWDRNsQhL/XPAWFF7zhZZ+uR+nT+3b+TCkIap1w==" 11 | }, 12 | "@types/babylon": { 13 | "version": "6.16.2", 14 | "resolved": "https://registry.npmjs.org/@types/babylon/-/babylon-6.16.2.tgz", 15 | "integrity": "sha512-+Jty46mPaWe1VAyZbfvgJM4BAdklLWxrT5tc/RjvCgLrtk6gzRY6AOnoWFv4p6hVxhJshDdr2hGVn56alBp97Q==", 16 | "requires": { 17 | "@types/babel-types": "7.0.1" 18 | } 19 | }, 20 | "JSONStream": { 21 | "version": "1.3.2", 22 | "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.2.tgz", 23 | "integrity": "sha1-wQI3G27Dp887hHygDCC7D85Mbeo=", 24 | "dev": true, 25 | "requires": { 26 | "jsonparse": "1.3.1", 27 | "through": "2.3.8" 28 | } 29 | }, 30 | "accepts": { 31 | "version": "1.3.5", 32 | "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz", 33 | "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=", 34 | "requires": { 35 | "mime-types": "2.1.18", 36 | "negotiator": "0.6.1" 37 | } 38 | }, 39 | "acorn": { 40 | "version": "4.0.13", 41 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", 42 | "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=" 43 | }, 44 | "acorn-globals": { 45 | "version": "3.1.0", 46 | "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-3.1.0.tgz", 47 | "integrity": "sha1-/YJw9x+7SZawBPqIDuXUZXOnMb8=", 48 | "requires": { 49 | "acorn": "4.0.13" 50 | } 51 | }, 52 | "acorn-node": { 53 | "version": "1.3.0", 54 | "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.3.0.tgz", 55 | "integrity": "sha512-efP54n3d1aLfjL2UMdaXa6DsswwzJeI5rqhbFvXMrKiJ6eJFpf+7R0zN7t8IC+XKn2YOAFAv6xbBNgHUkoHWLw==", 56 | "dev": true, 57 | "requires": { 58 | "acorn": "5.5.3", 59 | "xtend": "4.0.1" 60 | }, 61 | "dependencies": { 62 | "acorn": { 63 | "version": "5.5.3", 64 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.5.3.tgz", 65 | "integrity": "sha512-jd5MkIUlbbmb07nXH0DT3y7rDVtkzDi4XZOUVWAer8ajmF/DTSSbl5oNFyDOl/OXA33Bl79+ypHhl2pN20VeOQ==", 66 | "dev": true 67 | } 68 | } 69 | }, 70 | "align-text": { 71 | "version": "0.1.4", 72 | "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", 73 | "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", 74 | "requires": { 75 | "kind-of": "3.2.2", 76 | "longest": "1.0.1", 77 | "repeat-string": "1.6.1" 78 | } 79 | }, 80 | "amdefine": { 81 | "version": "1.0.1", 82 | "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", 83 | "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=" 84 | }, 85 | "ansi-regex": { 86 | "version": "2.1.1", 87 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", 88 | "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", 89 | "dev": true 90 | }, 91 | "ansi-styles": { 92 | "version": "2.2.1", 93 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", 94 | "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", 95 | "dev": true 96 | }, 97 | "anymatch": { 98 | "version": "1.3.2", 99 | "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", 100 | "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==", 101 | "dev": true, 102 | "requires": { 103 | "micromatch": "2.3.11", 104 | "normalize-path": "2.1.1" 105 | } 106 | }, 107 | "arr-diff": { 108 | "version": "2.0.0", 109 | "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", 110 | "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", 111 | "dev": true, 112 | "requires": { 113 | "arr-flatten": "1.1.0" 114 | } 115 | }, 116 | "arr-flatten": { 117 | "version": "1.1.0", 118 | "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", 119 | "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", 120 | "dev": true 121 | }, 122 | "array-filter": { 123 | "version": "0.0.1", 124 | "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-0.0.1.tgz", 125 | "integrity": "sha1-fajPLiZijtcygDWB/SH2fKzS7uw=", 126 | "dev": true 127 | }, 128 | "array-find-index": { 129 | "version": "1.0.2", 130 | "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", 131 | "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=" 132 | }, 133 | "array-flatten": { 134 | "version": "1.1.1", 135 | "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", 136 | "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" 137 | }, 138 | "array-map": { 139 | "version": "0.0.0", 140 | "resolved": "https://registry.npmjs.org/array-map/-/array-map-0.0.0.tgz", 141 | "integrity": "sha1-iKK6tz0c97zVwbEYoAP2b2ZfpmI=", 142 | "dev": true 143 | }, 144 | "array-reduce": { 145 | "version": "0.0.0", 146 | "resolved": "https://registry.npmjs.org/array-reduce/-/array-reduce-0.0.0.tgz", 147 | "integrity": "sha1-FziZ0//Rx9k4PkR5Ul2+J4yrXys=", 148 | "dev": true 149 | }, 150 | "array-unique": { 151 | "version": "0.2.1", 152 | "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", 153 | "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", 154 | "dev": true 155 | }, 156 | "arrify": { 157 | "version": "1.0.1", 158 | "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", 159 | "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=" 160 | }, 161 | "asap": { 162 | "version": "2.0.6", 163 | "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", 164 | "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" 165 | }, 166 | "asn1.js": { 167 | "version": "4.10.1", 168 | "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", 169 | "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", 170 | "dev": true, 171 | "requires": { 172 | "bn.js": "4.11.8", 173 | "inherits": "2.0.3", 174 | "minimalistic-assert": "1.0.0" 175 | } 176 | }, 177 | "assert": { 178 | "version": "1.4.1", 179 | "resolved": "https://registry.npmjs.org/assert/-/assert-1.4.1.tgz", 180 | "integrity": "sha1-mZEtWRg2tab1s0XA8H7vwI/GXZE=", 181 | "dev": true, 182 | "requires": { 183 | "util": "0.10.3" 184 | } 185 | }, 186 | "astw": { 187 | "version": "2.2.0", 188 | "resolved": "https://registry.npmjs.org/astw/-/astw-2.2.0.tgz", 189 | "integrity": "sha1-e9QXhNMkk5h66yOba04cV6hzuRc=", 190 | "dev": true, 191 | "requires": { 192 | "acorn": "4.0.13" 193 | } 194 | }, 195 | "async-each": { 196 | "version": "1.0.1", 197 | "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz", 198 | "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=", 199 | "dev": true 200 | }, 201 | "async-limiter": { 202 | "version": "1.0.0", 203 | "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.0.tgz", 204 | "integrity": "sha512-jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg==" 205 | }, 206 | "asynckit": { 207 | "version": "0.4.0", 208 | "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", 209 | "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" 210 | }, 211 | "babel-cli": { 212 | "version": "6.26.0", 213 | "resolved": "https://registry.npmjs.org/babel-cli/-/babel-cli-6.26.0.tgz", 214 | "integrity": "sha1-UCq1SHTX24itALiHoGODzgPQAvE=", 215 | "dev": true, 216 | "requires": { 217 | "babel-core": "6.26.0", 218 | "babel-polyfill": "6.26.0", 219 | "babel-register": "6.26.0", 220 | "babel-runtime": "6.26.0", 221 | "chokidar": "1.7.0", 222 | "commander": "2.15.0", 223 | "convert-source-map": "1.5.1", 224 | "fs-readdir-recursive": "1.1.0", 225 | "glob": "7.1.2", 226 | "lodash": "4.17.5", 227 | "output-file-sync": "1.1.2", 228 | "path-is-absolute": "1.0.1", 229 | "slash": "1.0.0", 230 | "source-map": "0.5.7", 231 | "v8flags": "2.1.1" 232 | }, 233 | "dependencies": { 234 | "commander": { 235 | "version": "2.15.0", 236 | "resolved": "https://registry.npmjs.org/commander/-/commander-2.15.0.tgz", 237 | "integrity": "sha512-7B1ilBwtYSbetCgTY1NJFg+gVpestg0fdA1MhC1Vs4ssyfSXnCAjFr+QcQM9/RedXC0EaUx1sG8Smgw2VfgKEg==", 238 | "dev": true 239 | }, 240 | "convert-source-map": { 241 | "version": "1.5.1", 242 | "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.1.tgz", 243 | "integrity": "sha1-uCeAl7m8IpNl3lxiz1/K7YtVmeU=", 244 | "dev": true 245 | } 246 | } 247 | }, 248 | "babel-code-frame": { 249 | "version": "6.26.0", 250 | "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", 251 | "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", 252 | "dev": true, 253 | "requires": { 254 | "chalk": "1.1.3", 255 | "esutils": "2.0.2", 256 | "js-tokens": "3.0.2" 257 | } 258 | }, 259 | "babel-core": { 260 | "version": "6.26.0", 261 | "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.0.tgz", 262 | "integrity": "sha1-rzL3izGm/O8RnIew/Y2XU/A6C7g=", 263 | "dev": true, 264 | "requires": { 265 | "babel-code-frame": "6.26.0", 266 | "babel-generator": "6.26.1", 267 | "babel-helpers": "6.24.1", 268 | "babel-messages": "6.23.0", 269 | "babel-register": "6.26.0", 270 | "babel-runtime": "6.26.0", 271 | "babel-template": "6.26.0", 272 | "babel-traverse": "6.26.0", 273 | "babel-types": "6.26.0", 274 | "babylon": "6.18.0", 275 | "convert-source-map": "1.5.1", 276 | "debug": "2.6.9", 277 | "json5": "0.5.1", 278 | "lodash": "4.17.5", 279 | "minimatch": "3.0.4", 280 | "path-is-absolute": "1.0.1", 281 | "private": "0.1.8", 282 | "slash": "1.0.0", 283 | "source-map": "0.5.7" 284 | }, 285 | "dependencies": { 286 | "convert-source-map": { 287 | "version": "1.5.1", 288 | "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.1.tgz", 289 | "integrity": "sha1-uCeAl7m8IpNl3lxiz1/K7YtVmeU=", 290 | "dev": true 291 | } 292 | } 293 | }, 294 | "babel-generator": { 295 | "version": "6.26.1", 296 | "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", 297 | "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", 298 | "dev": true, 299 | "requires": { 300 | "babel-messages": "6.23.0", 301 | "babel-runtime": "6.26.0", 302 | "babel-types": "6.26.0", 303 | "detect-indent": "4.0.0", 304 | "jsesc": "1.3.0", 305 | "lodash": "4.17.5", 306 | "source-map": "0.5.7", 307 | "trim-right": "1.0.1" 308 | } 309 | }, 310 | "babel-helper-builder-binary-assignment-operator-visitor": { 311 | "version": "6.24.1", 312 | "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz", 313 | "integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=", 314 | "dev": true, 315 | "requires": { 316 | "babel-helper-explode-assignable-expression": "6.24.1", 317 | "babel-runtime": "6.26.0", 318 | "babel-types": "6.26.0" 319 | } 320 | }, 321 | "babel-helper-call-delegate": { 322 | "version": "6.24.1", 323 | "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz", 324 | "integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=", 325 | "dev": true, 326 | "requires": { 327 | "babel-helper-hoist-variables": "6.24.1", 328 | "babel-runtime": "6.26.0", 329 | "babel-traverse": "6.26.0", 330 | "babel-types": "6.26.0" 331 | } 332 | }, 333 | "babel-helper-define-map": { 334 | "version": "6.26.0", 335 | "resolved": "https://registry.npmjs.org/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz", 336 | "integrity": "sha1-pfVtq0GiX5fstJjH66ypgZ+Vvl8=", 337 | "dev": true, 338 | "requires": { 339 | "babel-helper-function-name": "6.24.1", 340 | "babel-runtime": "6.26.0", 341 | "babel-types": "6.26.0", 342 | "lodash": "4.17.5" 343 | } 344 | }, 345 | "babel-helper-explode-assignable-expression": { 346 | "version": "6.24.1", 347 | "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz", 348 | "integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=", 349 | "dev": true, 350 | "requires": { 351 | "babel-runtime": "6.26.0", 352 | "babel-traverse": "6.26.0", 353 | "babel-types": "6.26.0" 354 | } 355 | }, 356 | "babel-helper-function-name": { 357 | "version": "6.24.1", 358 | "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", 359 | "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", 360 | "dev": true, 361 | "requires": { 362 | "babel-helper-get-function-arity": "6.24.1", 363 | "babel-runtime": "6.26.0", 364 | "babel-template": "6.26.0", 365 | "babel-traverse": "6.26.0", 366 | "babel-types": "6.26.0" 367 | } 368 | }, 369 | "babel-helper-get-function-arity": { 370 | "version": "6.24.1", 371 | "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", 372 | "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", 373 | "dev": true, 374 | "requires": { 375 | "babel-runtime": "6.26.0", 376 | "babel-types": "6.26.0" 377 | } 378 | }, 379 | "babel-helper-hoist-variables": { 380 | "version": "6.24.1", 381 | "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz", 382 | "integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=", 383 | "dev": true, 384 | "requires": { 385 | "babel-runtime": "6.26.0", 386 | "babel-types": "6.26.0" 387 | } 388 | }, 389 | "babel-helper-optimise-call-expression": { 390 | "version": "6.24.1", 391 | "resolved": "https://registry.npmjs.org/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz", 392 | "integrity": "sha1-96E0J7qfc/j0+pk8VKl4gtEkQlc=", 393 | "dev": true, 394 | "requires": { 395 | "babel-runtime": "6.26.0", 396 | "babel-types": "6.26.0" 397 | } 398 | }, 399 | "babel-helper-regex": { 400 | "version": "6.26.0", 401 | "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz", 402 | "integrity": "sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI=", 403 | "dev": true, 404 | "requires": { 405 | "babel-runtime": "6.26.0", 406 | "babel-types": "6.26.0", 407 | "lodash": "4.17.5" 408 | } 409 | }, 410 | "babel-helper-remap-async-to-generator": { 411 | "version": "6.24.1", 412 | "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", 413 | "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", 414 | "dev": true, 415 | "requires": { 416 | "babel-helper-function-name": "6.24.1", 417 | "babel-runtime": "6.26.0", 418 | "babel-template": "6.26.0", 419 | "babel-traverse": "6.26.0", 420 | "babel-types": "6.26.0" 421 | } 422 | }, 423 | "babel-helper-replace-supers": { 424 | "version": "6.24.1", 425 | "resolved": "https://registry.npmjs.org/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz", 426 | "integrity": "sha1-v22/5Dk40XNpohPKiov3S2qQqxo=", 427 | "dev": true, 428 | "requires": { 429 | "babel-helper-optimise-call-expression": "6.24.1", 430 | "babel-messages": "6.23.0", 431 | "babel-runtime": "6.26.0", 432 | "babel-template": "6.26.0", 433 | "babel-traverse": "6.26.0", 434 | "babel-types": "6.26.0" 435 | } 436 | }, 437 | "babel-helpers": { 438 | "version": "6.24.1", 439 | "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", 440 | "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", 441 | "dev": true, 442 | "requires": { 443 | "babel-runtime": "6.26.0", 444 | "babel-template": "6.26.0" 445 | } 446 | }, 447 | "babel-messages": { 448 | "version": "6.23.0", 449 | "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", 450 | "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", 451 | "dev": true, 452 | "requires": { 453 | "babel-runtime": "6.26.0" 454 | } 455 | }, 456 | "babel-plugin-check-es2015-constants": { 457 | "version": "6.22.0", 458 | "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz", 459 | "integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=", 460 | "dev": true, 461 | "requires": { 462 | "babel-runtime": "6.26.0" 463 | } 464 | }, 465 | "babel-plugin-syntax-async-functions": { 466 | "version": "6.13.0", 467 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", 468 | "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=", 469 | "dev": true 470 | }, 471 | "babel-plugin-syntax-exponentiation-operator": { 472 | "version": "6.13.0", 473 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz", 474 | "integrity": "sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4=", 475 | "dev": true 476 | }, 477 | "babel-plugin-syntax-object-rest-spread": { 478 | "version": "6.13.0", 479 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz", 480 | "integrity": "sha1-/WU28rzhODb/o6VFjEkDpZe7O/U=", 481 | "dev": true 482 | }, 483 | "babel-plugin-syntax-trailing-function-commas": { 484 | "version": "6.22.0", 485 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz", 486 | "integrity": "sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM=", 487 | "dev": true 488 | }, 489 | "babel-plugin-transform-async-to-generator": { 490 | "version": "6.24.1", 491 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", 492 | "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", 493 | "dev": true, 494 | "requires": { 495 | "babel-helper-remap-async-to-generator": "6.24.1", 496 | "babel-plugin-syntax-async-functions": "6.13.0", 497 | "babel-runtime": "6.26.0" 498 | } 499 | }, 500 | "babel-plugin-transform-es2015-arrow-functions": { 501 | "version": "6.22.0", 502 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz", 503 | "integrity": "sha1-RSaSy3EdX3ncf4XkQM5BufJE0iE=", 504 | "dev": true, 505 | "requires": { 506 | "babel-runtime": "6.26.0" 507 | } 508 | }, 509 | "babel-plugin-transform-es2015-block-scoped-functions": { 510 | "version": "6.22.0", 511 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz", 512 | "integrity": "sha1-u8UbSflk1wy42OC5ToICRs46YUE=", 513 | "dev": true, 514 | "requires": { 515 | "babel-runtime": "6.26.0" 516 | } 517 | }, 518 | "babel-plugin-transform-es2015-block-scoping": { 519 | "version": "6.26.0", 520 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz", 521 | "integrity": "sha1-1w9SmcEwjQXBL0Y4E7CgnnOxiV8=", 522 | "dev": true, 523 | "requires": { 524 | "babel-runtime": "6.26.0", 525 | "babel-template": "6.26.0", 526 | "babel-traverse": "6.26.0", 527 | "babel-types": "6.26.0", 528 | "lodash": "4.17.5" 529 | } 530 | }, 531 | "babel-plugin-transform-es2015-classes": { 532 | "version": "6.24.1", 533 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz", 534 | "integrity": "sha1-WkxYpQyclGHlZLSyo7+ryXolhNs=", 535 | "dev": true, 536 | "requires": { 537 | "babel-helper-define-map": "6.26.0", 538 | "babel-helper-function-name": "6.24.1", 539 | "babel-helper-optimise-call-expression": "6.24.1", 540 | "babel-helper-replace-supers": "6.24.1", 541 | "babel-messages": "6.23.0", 542 | "babel-runtime": "6.26.0", 543 | "babel-template": "6.26.0", 544 | "babel-traverse": "6.26.0", 545 | "babel-types": "6.26.0" 546 | } 547 | }, 548 | "babel-plugin-transform-es2015-computed-properties": { 549 | "version": "6.24.1", 550 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz", 551 | "integrity": "sha1-b+Ko0WiV1WNPTNmZttNICjCBWbM=", 552 | "dev": true, 553 | "requires": { 554 | "babel-runtime": "6.26.0", 555 | "babel-template": "6.26.0" 556 | } 557 | }, 558 | "babel-plugin-transform-es2015-destructuring": { 559 | "version": "6.23.0", 560 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz", 561 | "integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=", 562 | "dev": true, 563 | "requires": { 564 | "babel-runtime": "6.26.0" 565 | } 566 | }, 567 | "babel-plugin-transform-es2015-duplicate-keys": { 568 | "version": "6.24.1", 569 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz", 570 | "integrity": "sha1-c+s9MQypaePvnskcU3QabxV2Qj4=", 571 | "dev": true, 572 | "requires": { 573 | "babel-runtime": "6.26.0", 574 | "babel-types": "6.26.0" 575 | } 576 | }, 577 | "babel-plugin-transform-es2015-for-of": { 578 | "version": "6.23.0", 579 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz", 580 | "integrity": "sha1-9HyVsrYT3x0+zC/bdXNiPHUkhpE=", 581 | "dev": true, 582 | "requires": { 583 | "babel-runtime": "6.26.0" 584 | } 585 | }, 586 | "babel-plugin-transform-es2015-function-name": { 587 | "version": "6.24.1", 588 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz", 589 | "integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=", 590 | "dev": true, 591 | "requires": { 592 | "babel-helper-function-name": "6.24.1", 593 | "babel-runtime": "6.26.0", 594 | "babel-types": "6.26.0" 595 | } 596 | }, 597 | "babel-plugin-transform-es2015-literals": { 598 | "version": "6.22.0", 599 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz", 600 | "integrity": "sha1-T1SgLWzWbPkVKAAZox0xklN3yi4=", 601 | "dev": true, 602 | "requires": { 603 | "babel-runtime": "6.26.0" 604 | } 605 | }, 606 | "babel-plugin-transform-es2015-modules-amd": { 607 | "version": "6.24.1", 608 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz", 609 | "integrity": "sha1-Oz5UAXI5hC1tGcMBHEvS8AoA0VQ=", 610 | "dev": true, 611 | "requires": { 612 | "babel-plugin-transform-es2015-modules-commonjs": "6.26.0", 613 | "babel-runtime": "6.26.0", 614 | "babel-template": "6.26.0" 615 | } 616 | }, 617 | "babel-plugin-transform-es2015-modules-commonjs": { 618 | "version": "6.26.0", 619 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.0.tgz", 620 | "integrity": "sha1-DYOUApt9xqvhqX7xgeAHWN0uXYo=", 621 | "dev": true, 622 | "requires": { 623 | "babel-plugin-transform-strict-mode": "6.24.1", 624 | "babel-runtime": "6.26.0", 625 | "babel-template": "6.26.0", 626 | "babel-types": "6.26.0" 627 | } 628 | }, 629 | "babel-plugin-transform-es2015-modules-systemjs": { 630 | "version": "6.24.1", 631 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz", 632 | "integrity": "sha1-/4mhQrkRmpBhlfXxBuzzBdlAfSM=", 633 | "dev": true, 634 | "requires": { 635 | "babel-helper-hoist-variables": "6.24.1", 636 | "babel-runtime": "6.26.0", 637 | "babel-template": "6.26.0" 638 | } 639 | }, 640 | "babel-plugin-transform-es2015-modules-umd": { 641 | "version": "6.24.1", 642 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz", 643 | "integrity": "sha1-rJl+YoXNGO1hdq22B9YCNErThGg=", 644 | "dev": true, 645 | "requires": { 646 | "babel-plugin-transform-es2015-modules-amd": "6.24.1", 647 | "babel-runtime": "6.26.0", 648 | "babel-template": "6.26.0" 649 | } 650 | }, 651 | "babel-plugin-transform-es2015-object-super": { 652 | "version": "6.24.1", 653 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz", 654 | "integrity": "sha1-JM72muIcuDp/hgPa0CH1cusnj40=", 655 | "dev": true, 656 | "requires": { 657 | "babel-helper-replace-supers": "6.24.1", 658 | "babel-runtime": "6.26.0" 659 | } 660 | }, 661 | "babel-plugin-transform-es2015-parameters": { 662 | "version": "6.24.1", 663 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz", 664 | "integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=", 665 | "dev": true, 666 | "requires": { 667 | "babel-helper-call-delegate": "6.24.1", 668 | "babel-helper-get-function-arity": "6.24.1", 669 | "babel-runtime": "6.26.0", 670 | "babel-template": "6.26.0", 671 | "babel-traverse": "6.26.0", 672 | "babel-types": "6.26.0" 673 | } 674 | }, 675 | "babel-plugin-transform-es2015-shorthand-properties": { 676 | "version": "6.24.1", 677 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz", 678 | "integrity": "sha1-JPh11nIch2YbvZmkYi5R8U3jiqA=", 679 | "dev": true, 680 | "requires": { 681 | "babel-runtime": "6.26.0", 682 | "babel-types": "6.26.0" 683 | } 684 | }, 685 | "babel-plugin-transform-es2015-spread": { 686 | "version": "6.22.0", 687 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz", 688 | "integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=", 689 | "dev": true, 690 | "requires": { 691 | "babel-runtime": "6.26.0" 692 | } 693 | }, 694 | "babel-plugin-transform-es2015-sticky-regex": { 695 | "version": "6.24.1", 696 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz", 697 | "integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=", 698 | "dev": true, 699 | "requires": { 700 | "babel-helper-regex": "6.26.0", 701 | "babel-runtime": "6.26.0", 702 | "babel-types": "6.26.0" 703 | } 704 | }, 705 | "babel-plugin-transform-es2015-template-literals": { 706 | "version": "6.22.0", 707 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz", 708 | "integrity": "sha1-qEs0UPfp+PH2g51taH2oS7EjbY0=", 709 | "dev": true, 710 | "requires": { 711 | "babel-runtime": "6.26.0" 712 | } 713 | }, 714 | "babel-plugin-transform-es2015-typeof-symbol": { 715 | "version": "6.23.0", 716 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz", 717 | "integrity": "sha1-3sCfHN3/lLUqxz1QXITfWdzOs3I=", 718 | "dev": true, 719 | "requires": { 720 | "babel-runtime": "6.26.0" 721 | } 722 | }, 723 | "babel-plugin-transform-es2015-unicode-regex": { 724 | "version": "6.24.1", 725 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz", 726 | "integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=", 727 | "dev": true, 728 | "requires": { 729 | "babel-helper-regex": "6.26.0", 730 | "babel-runtime": "6.26.0", 731 | "regexpu-core": "2.0.0" 732 | } 733 | }, 734 | "babel-plugin-transform-exponentiation-operator": { 735 | "version": "6.24.1", 736 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz", 737 | "integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=", 738 | "dev": true, 739 | "requires": { 740 | "babel-helper-builder-binary-assignment-operator-visitor": "6.24.1", 741 | "babel-plugin-syntax-exponentiation-operator": "6.13.0", 742 | "babel-runtime": "6.26.0" 743 | } 744 | }, 745 | "babel-plugin-transform-object-rest-spread": { 746 | "version": "6.26.0", 747 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz", 748 | "integrity": "sha1-DzZpLVD+9rfi1LOsFHgTepY7ewY=", 749 | "dev": true, 750 | "requires": { 751 | "babel-plugin-syntax-object-rest-spread": "6.13.0", 752 | "babel-runtime": "6.26.0" 753 | } 754 | }, 755 | "babel-plugin-transform-regenerator": { 756 | "version": "6.26.0", 757 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz", 758 | "integrity": "sha1-4HA2lvveJ/Cj78rPi03KL3s6jy8=", 759 | "dev": true, 760 | "requires": { 761 | "regenerator-transform": "0.10.1" 762 | } 763 | }, 764 | "babel-plugin-transform-strict-mode": { 765 | "version": "6.24.1", 766 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", 767 | "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=", 768 | "dev": true, 769 | "requires": { 770 | "babel-runtime": "6.26.0", 771 | "babel-types": "6.26.0" 772 | } 773 | }, 774 | "babel-polyfill": { 775 | "version": "6.26.0", 776 | "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.26.0.tgz", 777 | "integrity": "sha1-N5k3q8Z9eJWXCtxiHyhM2WbPIVM=", 778 | "requires": { 779 | "babel-runtime": "6.26.0", 780 | "core-js": "2.5.3", 781 | "regenerator-runtime": "0.10.5" 782 | } 783 | }, 784 | "babel-preset-env": { 785 | "version": "1.6.1", 786 | "resolved": "https://registry.npmjs.org/babel-preset-env/-/babel-preset-env-1.6.1.tgz", 787 | "integrity": "sha512-W6VIyA6Ch9ePMI7VptNn2wBM6dbG0eSz25HEiL40nQXCsXGTGZSTZu1Iap+cj3Q0S5a7T9+529l/5Bkvd+afNA==", 788 | "dev": true, 789 | "requires": { 790 | "babel-plugin-check-es2015-constants": "6.22.0", 791 | "babel-plugin-syntax-trailing-function-commas": "6.22.0", 792 | "babel-plugin-transform-async-to-generator": "6.24.1", 793 | "babel-plugin-transform-es2015-arrow-functions": "6.22.0", 794 | "babel-plugin-transform-es2015-block-scoped-functions": "6.22.0", 795 | "babel-plugin-transform-es2015-block-scoping": "6.26.0", 796 | "babel-plugin-transform-es2015-classes": "6.24.1", 797 | "babel-plugin-transform-es2015-computed-properties": "6.24.1", 798 | "babel-plugin-transform-es2015-destructuring": "6.23.0", 799 | "babel-plugin-transform-es2015-duplicate-keys": "6.24.1", 800 | "babel-plugin-transform-es2015-for-of": "6.23.0", 801 | "babel-plugin-transform-es2015-function-name": "6.24.1", 802 | "babel-plugin-transform-es2015-literals": "6.22.0", 803 | "babel-plugin-transform-es2015-modules-amd": "6.24.1", 804 | "babel-plugin-transform-es2015-modules-commonjs": "6.26.0", 805 | "babel-plugin-transform-es2015-modules-systemjs": "6.24.1", 806 | "babel-plugin-transform-es2015-modules-umd": "6.24.1", 807 | "babel-plugin-transform-es2015-object-super": "6.24.1", 808 | "babel-plugin-transform-es2015-parameters": "6.24.1", 809 | "babel-plugin-transform-es2015-shorthand-properties": "6.24.1", 810 | "babel-plugin-transform-es2015-spread": "6.22.0", 811 | "babel-plugin-transform-es2015-sticky-regex": "6.24.1", 812 | "babel-plugin-transform-es2015-template-literals": "6.22.0", 813 | "babel-plugin-transform-es2015-typeof-symbol": "6.23.0", 814 | "babel-plugin-transform-es2015-unicode-regex": "6.24.1", 815 | "babel-plugin-transform-exponentiation-operator": "6.24.1", 816 | "babel-plugin-transform-regenerator": "6.26.0", 817 | "browserslist": "2.11.3", 818 | "invariant": "2.2.3", 819 | "semver": "5.5.0" 820 | } 821 | }, 822 | "babel-register": { 823 | "version": "6.26.0", 824 | "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", 825 | "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", 826 | "dev": true, 827 | "requires": { 828 | "babel-core": "6.26.0", 829 | "babel-runtime": "6.26.0", 830 | "core-js": "2.5.3", 831 | "home-or-tmp": "2.0.0", 832 | "lodash": "4.17.5", 833 | "mkdirp": "0.5.1", 834 | "source-map-support": "0.4.18" 835 | } 836 | }, 837 | "babel-runtime": { 838 | "version": "6.26.0", 839 | "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", 840 | "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", 841 | "requires": { 842 | "core-js": "2.5.3", 843 | "regenerator-runtime": "0.11.1" 844 | }, 845 | "dependencies": { 846 | "regenerator-runtime": { 847 | "version": "0.11.1", 848 | "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", 849 | "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" 850 | } 851 | } 852 | }, 853 | "babel-template": { 854 | "version": "6.26.0", 855 | "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", 856 | "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", 857 | "dev": true, 858 | "requires": { 859 | "babel-runtime": "6.26.0", 860 | "babel-traverse": "6.26.0", 861 | "babel-types": "6.26.0", 862 | "babylon": "6.18.0", 863 | "lodash": "4.17.5" 864 | } 865 | }, 866 | "babel-traverse": { 867 | "version": "6.26.0", 868 | "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", 869 | "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", 870 | "dev": true, 871 | "requires": { 872 | "babel-code-frame": "6.26.0", 873 | "babel-messages": "6.23.0", 874 | "babel-runtime": "6.26.0", 875 | "babel-types": "6.26.0", 876 | "babylon": "6.18.0", 877 | "debug": "2.6.9", 878 | "globals": "9.18.0", 879 | "invariant": "2.2.3", 880 | "lodash": "4.17.5" 881 | } 882 | }, 883 | "babel-types": { 884 | "version": "6.26.0", 885 | "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", 886 | "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", 887 | "requires": { 888 | "babel-runtime": "6.26.0", 889 | "esutils": "2.0.2", 890 | "lodash": "4.17.5", 891 | "to-fast-properties": "1.0.3" 892 | } 893 | }, 894 | "babelify": { 895 | "version": "8.0.0", 896 | "resolved": "https://registry.npmjs.org/babelify/-/babelify-8.0.0.tgz", 897 | "integrity": "sha512-xVr63fKEvMWUrrIbqlHYsMcc5Zdw4FSVesAHgkgajyCE1W8gbm9rbMakqavhxKvikGYMhEcqxTwB/gQmQ6lBtw==", 898 | "dev": true 899 | }, 900 | "babylon": { 901 | "version": "6.18.0", 902 | "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", 903 | "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==" 904 | }, 905 | "balanced-match": { 906 | "version": "1.0.0", 907 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", 908 | "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", 909 | "dev": true 910 | }, 911 | "base64-js": { 912 | "version": "1.2.3", 913 | "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.2.3.tgz", 914 | "integrity": "sha512-MsAhsUW1GxCdgYSO6tAfZrNapmUKk7mWx/k5mFY/A1gBtkaCaNapTg+FExCw1r9yeaZhqx/xPg43xgTFH6KL5w==", 915 | "dev": true 916 | }, 917 | "basic-auth": { 918 | "version": "2.0.0", 919 | "resolved": "https://registry.npmjs.org/basic-auth/-/basic-auth-2.0.0.tgz", 920 | "integrity": "sha1-AV2z81PgLlY3d1X5YnQuiYHnu7o=", 921 | "requires": { 922 | "safe-buffer": "5.1.1" 923 | } 924 | }, 925 | "binary-extensions": { 926 | "version": "1.11.0", 927 | "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.11.0.tgz", 928 | "integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=", 929 | "dev": true 930 | }, 931 | "bn.js": { 932 | "version": "4.11.8", 933 | "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", 934 | "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==", 935 | "dev": true 936 | }, 937 | "body-parser": { 938 | "version": "1.18.2", 939 | "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.2.tgz", 940 | "integrity": "sha1-h2eKGdhLR9hZuDGZvVm84iKxBFQ=", 941 | "requires": { 942 | "bytes": "3.0.0", 943 | "content-type": "1.0.4", 944 | "debug": "2.6.9", 945 | "depd": "1.1.2", 946 | "http-errors": "1.6.2", 947 | "iconv-lite": "0.4.19", 948 | "on-finished": "2.3.0", 949 | "qs": "6.5.1", 950 | "raw-body": "2.3.2", 951 | "type-is": "1.6.16" 952 | } 953 | }, 954 | "bootstrap": { 955 | "version": "4.0.0", 956 | "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-4.0.0.tgz", 957 | "integrity": "sha512-gulJE5dGFo6Q61V/whS6VM4WIyrlydXfCgkE+Gxe5hjrJ8rXLLZlALq7zq2RPhOc45PSwQpJkrTnc2KgD6cvmA==" 958 | }, 959 | "bootswatch": { 960 | "version": "4.0.0", 961 | "resolved": "https://registry.npmjs.org/bootswatch/-/bootswatch-4.0.0.tgz", 962 | "integrity": "sha1-38qwKMA8CaWIiNN9fOn2yMM0mMw=", 963 | "requires": { 964 | "bootstrap": "4.0.0", 965 | "jquery": "3.3.1", 966 | "popper.js": "1.12.9" 967 | } 968 | }, 969 | "brace-expansion": { 970 | "version": "1.1.11", 971 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", 972 | "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", 973 | "dev": true, 974 | "requires": { 975 | "balanced-match": "1.0.0", 976 | "concat-map": "0.0.1" 977 | } 978 | }, 979 | "braces": { 980 | "version": "1.8.5", 981 | "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", 982 | "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", 983 | "dev": true, 984 | "requires": { 985 | "expand-range": "1.8.2", 986 | "preserve": "0.2.0", 987 | "repeat-element": "1.1.2" 988 | } 989 | }, 990 | "brorand": { 991 | "version": "1.1.0", 992 | "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", 993 | "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", 994 | "dev": true 995 | }, 996 | "browser-pack": { 997 | "version": "6.0.4", 998 | "resolved": "https://registry.npmjs.org/browser-pack/-/browser-pack-6.0.4.tgz", 999 | "integrity": "sha512-Q4Rvn7P6ObyWfc4stqLWHtG1MJ8vVtjgT24Zbu+8UTzxYuZouqZsmNRRTFVMY/Ux0eIKv1d+JWzsInTX+fdHPQ==", 1000 | "dev": true, 1001 | "requires": { 1002 | "JSONStream": "1.3.2", 1003 | "combine-source-map": "0.8.0", 1004 | "defined": "1.0.0", 1005 | "safe-buffer": "5.1.1", 1006 | "through2": "2.0.3", 1007 | "umd": "3.0.3" 1008 | } 1009 | }, 1010 | "browser-resolve": { 1011 | "version": "1.11.2", 1012 | "resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.2.tgz", 1013 | "integrity": "sha1-j/CbCixCFxihBRwmCzLkj0QpOM4=", 1014 | "dev": true, 1015 | "requires": { 1016 | "resolve": "1.1.7" 1017 | }, 1018 | "dependencies": { 1019 | "resolve": { 1020 | "version": "1.1.7", 1021 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", 1022 | "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=", 1023 | "dev": true 1024 | } 1025 | } 1026 | }, 1027 | "browserify": { 1028 | "version": "16.1.1", 1029 | "resolved": "https://registry.npmjs.org/browserify/-/browserify-16.1.1.tgz", 1030 | "integrity": "sha512-iSH21jK0+IApV8YHOfmGt1qsGd74oflQ1Ko/28JOkWLFNBngAQfKb6WYIJ9CufH8vycqKX1sYU3y7ZrVhwevAg==", 1031 | "dev": true, 1032 | "requires": { 1033 | "JSONStream": "1.3.2", 1034 | "assert": "1.4.1", 1035 | "browser-pack": "6.0.4", 1036 | "browser-resolve": "1.11.2", 1037 | "browserify-zlib": "0.2.0", 1038 | "buffer": "5.1.0", 1039 | "cached-path-relative": "1.0.1", 1040 | "concat-stream": "1.6.1", 1041 | "console-browserify": "1.1.0", 1042 | "constants-browserify": "1.0.0", 1043 | "crypto-browserify": "3.12.0", 1044 | "defined": "1.0.0", 1045 | "deps-sort": "2.0.0", 1046 | "domain-browser": "1.2.0", 1047 | "duplexer2": "0.1.4", 1048 | "events": "2.0.0", 1049 | "glob": "7.1.2", 1050 | "has": "1.0.1", 1051 | "htmlescape": "1.1.1", 1052 | "https-browserify": "1.0.0", 1053 | "inherits": "2.0.3", 1054 | "insert-module-globals": "7.0.2", 1055 | "labeled-stream-splicer": "2.0.0", 1056 | "mkdirp": "0.5.1", 1057 | "module-deps": "6.0.0", 1058 | "os-browserify": "0.3.0", 1059 | "parents": "1.0.1", 1060 | "path-browserify": "0.0.0", 1061 | "process": "0.11.10", 1062 | "punycode": "1.4.1", 1063 | "querystring-es3": "0.2.1", 1064 | "read-only-stream": "2.0.0", 1065 | "readable-stream": "2.3.5", 1066 | "resolve": "1.5.0", 1067 | "shasum": "1.0.2", 1068 | "shell-quote": "1.6.1", 1069 | "stream-browserify": "2.0.1", 1070 | "stream-http": "2.8.1", 1071 | "string_decoder": "1.0.3", 1072 | "subarg": "1.0.0", 1073 | "syntax-error": "1.4.0", 1074 | "through2": "2.0.3", 1075 | "timers-browserify": "1.4.2", 1076 | "tty-browserify": "0.0.1", 1077 | "url": "0.11.0", 1078 | "util": "0.10.3", 1079 | "vm-browserify": "0.0.4", 1080 | "xtend": "4.0.1" 1081 | } 1082 | }, 1083 | "browserify-aes": { 1084 | "version": "1.1.1", 1085 | "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.1.1.tgz", 1086 | "integrity": "sha512-UGnTYAnB2a3YuYKIRy1/4FB2HdM866E0qC46JXvVTYKlBlZlnvfpSfY6OKfXZAkv70eJ2a1SqzpAo5CRhZGDFg==", 1087 | "dev": true, 1088 | "requires": { 1089 | "buffer-xor": "1.0.3", 1090 | "cipher-base": "1.0.4", 1091 | "create-hash": "1.1.3", 1092 | "evp_bytestokey": "1.0.3", 1093 | "inherits": "2.0.3", 1094 | "safe-buffer": "5.1.1" 1095 | } 1096 | }, 1097 | "browserify-cipher": { 1098 | "version": "1.0.0", 1099 | "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.0.tgz", 1100 | "integrity": "sha1-mYgkSHS/XtTijalWZtzWasj8Njo=", 1101 | "dev": true, 1102 | "requires": { 1103 | "browserify-aes": "1.1.1", 1104 | "browserify-des": "1.0.0", 1105 | "evp_bytestokey": "1.0.3" 1106 | } 1107 | }, 1108 | "browserify-des": { 1109 | "version": "1.0.0", 1110 | "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.0.tgz", 1111 | "integrity": "sha1-2qJ3cXRwki7S/hhZQRihdUOXId0=", 1112 | "dev": true, 1113 | "requires": { 1114 | "cipher-base": "1.0.4", 1115 | "des.js": "1.0.0", 1116 | "inherits": "2.0.3" 1117 | } 1118 | }, 1119 | "browserify-middleware": { 1120 | "version": "8.1.0", 1121 | "resolved": "https://registry.npmjs.org/browserify-middleware/-/browserify-middleware-8.1.0.tgz", 1122 | "integrity": "sha512-x9rdT2T1vUr8vgJyE6UdFNLkLduR3ssSjCAMF7GLlAAFR/C0TWgu3QKhyVqxF7HIdcq0Skus9xoRkEDzQCZd1Q==", 1123 | "dev": true, 1124 | "requires": { 1125 | "browserify": "16.1.1", 1126 | "ms": "0.7.3", 1127 | "prepare-response": "2.1.1", 1128 | "promise": "7.3.1", 1129 | "uglify-es": "3.3.9", 1130 | "watchify": "3.11.0" 1131 | }, 1132 | "dependencies": { 1133 | "commander": { 1134 | "version": "2.13.0", 1135 | "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz", 1136 | "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==", 1137 | "dev": true 1138 | }, 1139 | "ms": { 1140 | "version": "0.7.3", 1141 | "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.3.tgz", 1142 | "integrity": "sha1-cIFVpeROM/X9D8U+gdDUCpG+H/8=", 1143 | "dev": true 1144 | }, 1145 | "source-map": { 1146 | "version": "0.6.1", 1147 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", 1148 | "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", 1149 | "dev": true 1150 | }, 1151 | "uglify-es": { 1152 | "version": "3.3.9", 1153 | "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", 1154 | "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", 1155 | "dev": true, 1156 | "requires": { 1157 | "commander": "2.13.0", 1158 | "source-map": "0.6.1" 1159 | } 1160 | } 1161 | } 1162 | }, 1163 | "browserify-rsa": { 1164 | "version": "4.0.1", 1165 | "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", 1166 | "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", 1167 | "dev": true, 1168 | "requires": { 1169 | "bn.js": "4.11.8", 1170 | "randombytes": "2.0.6" 1171 | } 1172 | }, 1173 | "browserify-sign": { 1174 | "version": "4.0.4", 1175 | "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz", 1176 | "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", 1177 | "dev": true, 1178 | "requires": { 1179 | "bn.js": "4.11.8", 1180 | "browserify-rsa": "4.0.1", 1181 | "create-hash": "1.1.3", 1182 | "create-hmac": "1.1.6", 1183 | "elliptic": "6.4.0", 1184 | "inherits": "2.0.3", 1185 | "parse-asn1": "5.1.0" 1186 | } 1187 | }, 1188 | "browserify-transform-tools": { 1189 | "version": "1.7.0", 1190 | "resolved": "https://registry.npmjs.org/browserify-transform-tools/-/browserify-transform-tools-1.7.0.tgz", 1191 | "integrity": "sha1-g+J3Ih9jJZvtLn6yooOpcKUB9MQ=", 1192 | "dev": true, 1193 | "requires": { 1194 | "falafel": "2.1.0", 1195 | "through": "2.3.8" 1196 | } 1197 | }, 1198 | "browserify-zlib": { 1199 | "version": "0.2.0", 1200 | "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", 1201 | "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", 1202 | "dev": true, 1203 | "requires": { 1204 | "pako": "1.0.6" 1205 | } 1206 | }, 1207 | "browserslist": { 1208 | "version": "2.11.3", 1209 | "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-2.11.3.tgz", 1210 | "integrity": "sha512-yWu5cXT7Av6mVwzWc8lMsJMHWn4xyjSuGYi4IozbVTLUOEYPSagUB8kiMDUHA1fS3zjr8nkxkn9jdvug4BBRmA==", 1211 | "dev": true, 1212 | "requires": { 1213 | "caniuse-lite": "1.0.30000813", 1214 | "electron-to-chromium": "1.3.37" 1215 | } 1216 | }, 1217 | "buffer": { 1218 | "version": "5.1.0", 1219 | "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.1.0.tgz", 1220 | "integrity": "sha512-YkIRgwsZwJWTnyQrsBTWefizHh+8GYj3kbL1BTiAQ/9pwpino0G7B2gp5tx/FUBqUlvtxV85KNR3mwfAtv15Yw==", 1221 | "dev": true, 1222 | "requires": { 1223 | "base64-js": "1.2.3", 1224 | "ieee754": "1.1.8" 1225 | } 1226 | }, 1227 | "buffer-xor": { 1228 | "version": "1.0.3", 1229 | "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", 1230 | "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", 1231 | "dev": true 1232 | }, 1233 | "builtin-modules": { 1234 | "version": "1.1.1", 1235 | "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", 1236 | "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=" 1237 | }, 1238 | "builtin-status-codes": { 1239 | "version": "3.0.0", 1240 | "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", 1241 | "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", 1242 | "dev": true 1243 | }, 1244 | "bytes": { 1245 | "version": "3.0.0", 1246 | "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", 1247 | "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=" 1248 | }, 1249 | "cached-path-relative": { 1250 | "version": "1.0.1", 1251 | "resolved": "https://registry.npmjs.org/cached-path-relative/-/cached-path-relative-1.0.1.tgz", 1252 | "integrity": "sha1-0JxLUoAKpMB44t2BqGmqyQ0uVOc=", 1253 | "dev": true 1254 | }, 1255 | "camelcase": { 1256 | "version": "1.2.1", 1257 | "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", 1258 | "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=" 1259 | }, 1260 | "camelcase-keys": { 1261 | "version": "4.2.0", 1262 | "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-4.2.0.tgz", 1263 | "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=", 1264 | "requires": { 1265 | "camelcase": "4.1.0", 1266 | "map-obj": "2.0.0", 1267 | "quick-lru": "1.1.0" 1268 | }, 1269 | "dependencies": { 1270 | "camelcase": { 1271 | "version": "4.1.0", 1272 | "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", 1273 | "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=" 1274 | } 1275 | } 1276 | }, 1277 | "can-promise": { 1278 | "version": "0.0.1", 1279 | "resolved": "https://registry.npmjs.org/can-promise/-/can-promise-0.0.1.tgz", 1280 | "integrity": "sha512-gzVrHyyrvgt0YpDm7pn04MQt8gjh0ZAhN4ZDyCRtGl6YnuuK6b4aiUTD7G52r9l4YNmxfTtEscb92vxtAlL6XQ==", 1281 | "dev": true, 1282 | "requires": { 1283 | "window-or-global": "1.0.1" 1284 | } 1285 | }, 1286 | "caniuse-lite": { 1287 | "version": "1.0.30000813", 1288 | "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000813.tgz", 1289 | "integrity": "sha512-A8ITSmH5SFdMFdC704ggjg+x2z5PzQmVlG8tavwnfvbC33Q1UYrj0+G+Xm0SNAnd4He36fwUE/KEWytOEchw+A==", 1290 | "dev": true 1291 | }, 1292 | "center-align": { 1293 | "version": "0.1.3", 1294 | "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", 1295 | "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", 1296 | "requires": { 1297 | "align-text": "0.1.4", 1298 | "lazy-cache": "1.0.4" 1299 | } 1300 | }, 1301 | "chalk": { 1302 | "version": "1.1.3", 1303 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", 1304 | "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", 1305 | "dev": true, 1306 | "requires": { 1307 | "ansi-styles": "2.2.1", 1308 | "escape-string-regexp": "1.0.5", 1309 | "has-ansi": "2.0.0", 1310 | "strip-ansi": "3.0.1", 1311 | "supports-color": "2.0.0" 1312 | } 1313 | }, 1314 | "character-parser": { 1315 | "version": "2.2.0", 1316 | "resolved": "https://registry.npmjs.org/character-parser/-/character-parser-2.2.0.tgz", 1317 | "integrity": "sha1-x84o821LzZdE5f/CxfzeHHMmH8A=", 1318 | "requires": { 1319 | "is-regex": "1.0.4" 1320 | } 1321 | }, 1322 | "chokidar": { 1323 | "version": "1.7.0", 1324 | "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz", 1325 | "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=", 1326 | "dev": true, 1327 | "requires": { 1328 | "anymatch": "1.3.2", 1329 | "async-each": "1.0.1", 1330 | "fsevents": "1.1.3", 1331 | "glob-parent": "2.0.0", 1332 | "inherits": "2.0.3", 1333 | "is-binary-path": "1.0.1", 1334 | "is-glob": "2.0.1", 1335 | "path-is-absolute": "1.0.1", 1336 | "readdirp": "2.1.0" 1337 | } 1338 | }, 1339 | "cipher-base": { 1340 | "version": "1.0.4", 1341 | "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", 1342 | "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", 1343 | "dev": true, 1344 | "requires": { 1345 | "inherits": "2.0.3", 1346 | "safe-buffer": "5.1.1" 1347 | } 1348 | }, 1349 | "clean-css": { 1350 | "version": "3.4.28", 1351 | "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-3.4.28.tgz", 1352 | "integrity": "sha1-vxlF6C/ICPVWlebd6uwBQA79A/8=", 1353 | "requires": { 1354 | "commander": "2.8.1", 1355 | "source-map": "0.4.4" 1356 | }, 1357 | "dependencies": { 1358 | "source-map": { 1359 | "version": "0.4.4", 1360 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", 1361 | "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", 1362 | "requires": { 1363 | "amdefine": "1.0.1" 1364 | } 1365 | } 1366 | } 1367 | }, 1368 | "cliui": { 1369 | "version": "2.1.0", 1370 | "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", 1371 | "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", 1372 | "requires": { 1373 | "center-align": "0.1.3", 1374 | "right-align": "0.1.3", 1375 | "wordwrap": "0.0.2" 1376 | } 1377 | }, 1378 | "code-point-at": { 1379 | "version": "1.1.0", 1380 | "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", 1381 | "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", 1382 | "dev": true 1383 | }, 1384 | "combine-source-map": { 1385 | "version": "0.8.0", 1386 | "resolved": "https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.8.0.tgz", 1387 | "integrity": "sha1-pY0N8ELBhvz4IqjoAV9UUNLXmos=", 1388 | "dev": true, 1389 | "requires": { 1390 | "convert-source-map": "1.1.3", 1391 | "inline-source-map": "0.6.2", 1392 | "lodash.memoize": "3.0.4", 1393 | "source-map": "0.5.7" 1394 | } 1395 | }, 1396 | "combined-stream": { 1397 | "version": "1.0.6", 1398 | "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz", 1399 | "integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=", 1400 | "requires": { 1401 | "delayed-stream": "1.0.0" 1402 | } 1403 | }, 1404 | "commander": { 1405 | "version": "2.8.1", 1406 | "resolved": "https://registry.npmjs.org/commander/-/commander-2.8.1.tgz", 1407 | "integrity": "sha1-Br42f+v9oMMwqh4qBy09yXYkJdQ=", 1408 | "requires": { 1409 | "graceful-readlink": "1.0.1" 1410 | } 1411 | }, 1412 | "component-emitter": { 1413 | "version": "1.2.1", 1414 | "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", 1415 | "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=" 1416 | }, 1417 | "concat-map": { 1418 | "version": "0.0.1", 1419 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", 1420 | "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", 1421 | "dev": true 1422 | }, 1423 | "concat-stream": { 1424 | "version": "1.6.1", 1425 | "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.1.tgz", 1426 | "integrity": "sha512-gslSSJx03QKa59cIKqeJO9HQ/WZMotvYJCuaUULrLpjj8oG40kV2Z+gz82pVxlTkOADi4PJxQPPfhl1ELYrrXw==", 1427 | "dev": true, 1428 | "requires": { 1429 | "inherits": "2.0.3", 1430 | "readable-stream": "2.3.5", 1431 | "typedarray": "0.0.6" 1432 | } 1433 | }, 1434 | "console-browserify": { 1435 | "version": "1.1.0", 1436 | "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", 1437 | "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", 1438 | "dev": true, 1439 | "requires": { 1440 | "date-now": "0.1.4" 1441 | } 1442 | }, 1443 | "constantinople": { 1444 | "version": "3.1.2", 1445 | "resolved": "https://registry.npmjs.org/constantinople/-/constantinople-3.1.2.tgz", 1446 | "integrity": "sha512-yePcBqEFhLOqSBtwYOGGS1exHo/s1xjekXiinh4itpNQGCu4KA1euPh1fg07N2wMITZXQkBz75Ntdt1ctGZouw==", 1447 | "requires": { 1448 | "@types/babel-types": "7.0.1", 1449 | "@types/babylon": "6.16.2", 1450 | "babel-types": "6.26.0", 1451 | "babylon": "6.18.0" 1452 | } 1453 | }, 1454 | "constants-browserify": { 1455 | "version": "1.0.0", 1456 | "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", 1457 | "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", 1458 | "dev": true 1459 | }, 1460 | "content-disposition": { 1461 | "version": "0.5.2", 1462 | "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", 1463 | "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=" 1464 | }, 1465 | "content-type": { 1466 | "version": "1.0.4", 1467 | "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", 1468 | "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" 1469 | }, 1470 | "convert-source-map": { 1471 | "version": "1.1.3", 1472 | "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.1.3.tgz", 1473 | "integrity": "sha1-SCnId+n+SbMWHzvzZziI4gRpmGA=", 1474 | "dev": true 1475 | }, 1476 | "cookie": { 1477 | "version": "0.3.1", 1478 | "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", 1479 | "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=" 1480 | }, 1481 | "cookie-signature": { 1482 | "version": "1.0.6", 1483 | "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", 1484 | "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" 1485 | }, 1486 | "cookiejar": { 1487 | "version": "2.1.1", 1488 | "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.1.tgz", 1489 | "integrity": "sha1-Qa1XsbVVlR7BcUEqgZQrHoIA00o=" 1490 | }, 1491 | "core-js": { 1492 | "version": "2.5.3", 1493 | "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz", 1494 | "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=" 1495 | }, 1496 | "core-util-is": { 1497 | "version": "1.0.2", 1498 | "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", 1499 | "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" 1500 | }, 1501 | "create-ecdh": { 1502 | "version": "4.0.0", 1503 | "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.0.tgz", 1504 | "integrity": "sha1-iIxyNZbN92EvZJgjPuvXo1MBc30=", 1505 | "dev": true, 1506 | "requires": { 1507 | "bn.js": "4.11.8", 1508 | "elliptic": "6.4.0" 1509 | } 1510 | }, 1511 | "create-hash": { 1512 | "version": "1.1.3", 1513 | "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.1.3.tgz", 1514 | "integrity": "sha1-YGBCrIuSYnUPSDyt2rD1gZFy2P0=", 1515 | "dev": true, 1516 | "requires": { 1517 | "cipher-base": "1.0.4", 1518 | "inherits": "2.0.3", 1519 | "ripemd160": "2.0.1", 1520 | "sha.js": "2.4.10" 1521 | } 1522 | }, 1523 | "create-hmac": { 1524 | "version": "1.1.6", 1525 | "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.6.tgz", 1526 | "integrity": "sha1-rLniIaThe9sHbpBlfEK5PjcmzwY=", 1527 | "dev": true, 1528 | "requires": { 1529 | "cipher-base": "1.0.4", 1530 | "create-hash": "1.1.3", 1531 | "inherits": "2.0.3", 1532 | "ripemd160": "2.0.1", 1533 | "safe-buffer": "5.1.1", 1534 | "sha.js": "2.4.10" 1535 | } 1536 | }, 1537 | "cross-spawn": { 1538 | "version": "5.1.0", 1539 | "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", 1540 | "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", 1541 | "dev": true, 1542 | "requires": { 1543 | "lru-cache": "4.1.2", 1544 | "shebang-command": "1.2.0", 1545 | "which": "1.3.0" 1546 | } 1547 | }, 1548 | "crypto-browserify": { 1549 | "version": "3.12.0", 1550 | "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", 1551 | "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", 1552 | "dev": true, 1553 | "requires": { 1554 | "browserify-cipher": "1.0.0", 1555 | "browserify-sign": "4.0.4", 1556 | "create-ecdh": "4.0.0", 1557 | "create-hash": "1.1.3", 1558 | "create-hmac": "1.1.6", 1559 | "diffie-hellman": "5.0.2", 1560 | "inherits": "2.0.3", 1561 | "pbkdf2": "3.0.14", 1562 | "public-encrypt": "4.0.0", 1563 | "randombytes": "2.0.6", 1564 | "randomfill": "1.0.4" 1565 | } 1566 | }, 1567 | "currently-unhandled": { 1568 | "version": "0.4.1", 1569 | "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", 1570 | "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", 1571 | "requires": { 1572 | "array-find-index": "1.0.2" 1573 | } 1574 | }, 1575 | "date-now": { 1576 | "version": "0.1.4", 1577 | "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz", 1578 | "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=", 1579 | "dev": true 1580 | }, 1581 | "debug": { 1582 | "version": "2.6.9", 1583 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", 1584 | "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", 1585 | "requires": { 1586 | "ms": "2.0.0" 1587 | } 1588 | }, 1589 | "decamelize": { 1590 | "version": "1.2.0", 1591 | "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", 1592 | "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" 1593 | }, 1594 | "decamelize-keys": { 1595 | "version": "1.1.0", 1596 | "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", 1597 | "integrity": "sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk=", 1598 | "requires": { 1599 | "decamelize": "1.2.0", 1600 | "map-obj": "1.0.1" 1601 | }, 1602 | "dependencies": { 1603 | "map-obj": { 1604 | "version": "1.0.1", 1605 | "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", 1606 | "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=" 1607 | } 1608 | } 1609 | }, 1610 | "defined": { 1611 | "version": "1.0.0", 1612 | "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz", 1613 | "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=", 1614 | "dev": true 1615 | }, 1616 | "delayed-stream": { 1617 | "version": "1.0.0", 1618 | "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", 1619 | "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" 1620 | }, 1621 | "depd": { 1622 | "version": "1.1.2", 1623 | "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", 1624 | "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" 1625 | }, 1626 | "deps-sort": { 1627 | "version": "2.0.0", 1628 | "resolved": "https://registry.npmjs.org/deps-sort/-/deps-sort-2.0.0.tgz", 1629 | "integrity": "sha1-CRckkC6EZYJg65EHSMzNGvbiH7U=", 1630 | "dev": true, 1631 | "requires": { 1632 | "JSONStream": "1.3.2", 1633 | "shasum": "1.0.2", 1634 | "subarg": "1.0.0", 1635 | "through2": "2.0.3" 1636 | } 1637 | }, 1638 | "des.js": { 1639 | "version": "1.0.0", 1640 | "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz", 1641 | "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=", 1642 | "dev": true, 1643 | "requires": { 1644 | "inherits": "2.0.3", 1645 | "minimalistic-assert": "1.0.0" 1646 | } 1647 | }, 1648 | "destroy": { 1649 | "version": "1.0.4", 1650 | "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", 1651 | "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" 1652 | }, 1653 | "detect-indent": { 1654 | "version": "4.0.0", 1655 | "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", 1656 | "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", 1657 | "dev": true, 1658 | "requires": { 1659 | "repeating": "2.0.1" 1660 | } 1661 | }, 1662 | "detective": { 1663 | "version": "5.1.0", 1664 | "resolved": "https://registry.npmjs.org/detective/-/detective-5.1.0.tgz", 1665 | "integrity": "sha512-TFHMqfOvxlgrfVzTEkNBSh9SvSNX/HfF4OFI2QFGCyPm02EsyILqnUeb5P6q7JZ3SFNTBL5t2sePRgrN4epUWQ==", 1666 | "dev": true, 1667 | "requires": { 1668 | "acorn-node": "1.3.0", 1669 | "defined": "1.0.0", 1670 | "minimist": "1.2.0" 1671 | } 1672 | }, 1673 | "diffie-hellman": { 1674 | "version": "5.0.2", 1675 | "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.2.tgz", 1676 | "integrity": "sha1-tYNXOScM/ias9jIJn97SoH8gnl4=", 1677 | "dev": true, 1678 | "requires": { 1679 | "bn.js": "4.11.8", 1680 | "miller-rabin": "4.0.1", 1681 | "randombytes": "2.0.6" 1682 | } 1683 | }, 1684 | "dijkstrajs": { 1685 | "version": "1.0.1", 1686 | "resolved": "https://registry.npmjs.org/dijkstrajs/-/dijkstrajs-1.0.1.tgz", 1687 | "integrity": "sha1-082BIh4+pAdCz83lVtTpnpjdxxs=", 1688 | "dev": true 1689 | }, 1690 | "doctypes": { 1691 | "version": "1.1.0", 1692 | "resolved": "https://registry.npmjs.org/doctypes/-/doctypes-1.1.0.tgz", 1693 | "integrity": "sha1-6oCxBqh1OHdOijpKWv4pPeSJ4Kk=" 1694 | }, 1695 | "domain-browser": { 1696 | "version": "1.2.0", 1697 | "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", 1698 | "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", 1699 | "dev": true 1700 | }, 1701 | "duplexer2": { 1702 | "version": "0.1.4", 1703 | "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", 1704 | "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=", 1705 | "dev": true, 1706 | "requires": { 1707 | "readable-stream": "2.3.5" 1708 | } 1709 | }, 1710 | "ee-first": { 1711 | "version": "1.1.1", 1712 | "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", 1713 | "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" 1714 | }, 1715 | "electron-to-chromium": { 1716 | "version": "1.3.37", 1717 | "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.37.tgz", 1718 | "integrity": "sha1-SpJzTgBEyM8LFVO+V+riGkxuX6s=", 1719 | "dev": true 1720 | }, 1721 | "elliptic": { 1722 | "version": "6.4.0", 1723 | "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.0.tgz", 1724 | "integrity": "sha1-ysmvh2LIWDYYcAPI3+GT5eLq5d8=", 1725 | "dev": true, 1726 | "requires": { 1727 | "bn.js": "4.11.8", 1728 | "brorand": "1.1.0", 1729 | "hash.js": "1.1.3", 1730 | "hmac-drbg": "1.0.1", 1731 | "inherits": "2.0.3", 1732 | "minimalistic-assert": "1.0.0", 1733 | "minimalistic-crypto-utils": "1.0.1" 1734 | } 1735 | }, 1736 | "encodeurl": { 1737 | "version": "1.0.2", 1738 | "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", 1739 | "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" 1740 | }, 1741 | "error-ex": { 1742 | "version": "1.3.1", 1743 | "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz", 1744 | "integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=", 1745 | "requires": { 1746 | "is-arrayish": "0.2.1" 1747 | } 1748 | }, 1749 | "escape-html": { 1750 | "version": "1.0.3", 1751 | "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", 1752 | "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" 1753 | }, 1754 | "escape-string-regexp": { 1755 | "version": "1.0.5", 1756 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", 1757 | "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", 1758 | "dev": true 1759 | }, 1760 | "esutils": { 1761 | "version": "2.0.2", 1762 | "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", 1763 | "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=" 1764 | }, 1765 | "etag": { 1766 | "version": "1.8.1", 1767 | "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", 1768 | "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" 1769 | }, 1770 | "events": { 1771 | "version": "2.0.0", 1772 | "resolved": "https://registry.npmjs.org/events/-/events-2.0.0.tgz", 1773 | "integrity": "sha512-r/M5YkNg9zwI8QbSf7tsDWWJvO3PGwZXyG7GpFAxtMASnHL2eblFd7iHiGPtyGKKFPZ59S63NeX10Ws6WqGDcg==", 1774 | "dev": true 1775 | }, 1776 | "eventsource": { 1777 | "version": "1.0.5", 1778 | "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-1.0.5.tgz", 1779 | "integrity": "sha512-IzjLaND9GBK3+fBPhmvG/Yq3FhSDGHnucJCDWhNsneLlN+HX5jeaSpl3Folr2PipGmyUsd/T2Vrua+s6I2aTgQ==", 1780 | "requires": { 1781 | "original": "1.0.0" 1782 | } 1783 | }, 1784 | "evp_bytestokey": { 1785 | "version": "1.0.3", 1786 | "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", 1787 | "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", 1788 | "dev": true, 1789 | "requires": { 1790 | "md5.js": "1.3.4", 1791 | "safe-buffer": "5.1.1" 1792 | } 1793 | }, 1794 | "execa": { 1795 | "version": "0.7.0", 1796 | "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", 1797 | "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", 1798 | "dev": true, 1799 | "requires": { 1800 | "cross-spawn": "5.1.0", 1801 | "get-stream": "3.0.0", 1802 | "is-stream": "1.1.0", 1803 | "npm-run-path": "2.0.2", 1804 | "p-finally": "1.0.0", 1805 | "signal-exit": "3.0.2", 1806 | "strip-eof": "1.0.0" 1807 | } 1808 | }, 1809 | "expand-brackets": { 1810 | "version": "0.1.5", 1811 | "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", 1812 | "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", 1813 | "dev": true, 1814 | "requires": { 1815 | "is-posix-bracket": "0.1.1" 1816 | } 1817 | }, 1818 | "expand-range": { 1819 | "version": "1.8.2", 1820 | "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", 1821 | "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", 1822 | "dev": true, 1823 | "requires": { 1824 | "fill-range": "2.2.3" 1825 | } 1826 | }, 1827 | "express": { 1828 | "version": "4.16.2", 1829 | "resolved": "https://registry.npmjs.org/express/-/express-4.16.2.tgz", 1830 | "integrity": "sha1-41xt/i1kt9ygpc1PIXgb4ymeB2w=", 1831 | "requires": { 1832 | "accepts": "1.3.5", 1833 | "array-flatten": "1.1.1", 1834 | "body-parser": "1.18.2", 1835 | "content-disposition": "0.5.2", 1836 | "content-type": "1.0.4", 1837 | "cookie": "0.3.1", 1838 | "cookie-signature": "1.0.6", 1839 | "debug": "2.6.9", 1840 | "depd": "1.1.2", 1841 | "encodeurl": "1.0.2", 1842 | "escape-html": "1.0.3", 1843 | "etag": "1.8.1", 1844 | "finalhandler": "1.1.0", 1845 | "fresh": "0.5.2", 1846 | "merge-descriptors": "1.0.1", 1847 | "methods": "1.1.2", 1848 | "on-finished": "2.3.0", 1849 | "parseurl": "1.3.2", 1850 | "path-to-regexp": "0.1.7", 1851 | "proxy-addr": "2.0.3", 1852 | "qs": "6.5.1", 1853 | "range-parser": "1.2.0", 1854 | "safe-buffer": "5.1.1", 1855 | "send": "0.16.1", 1856 | "serve-static": "1.13.1", 1857 | "setprototypeof": "1.1.0", 1858 | "statuses": "1.3.1", 1859 | "type-is": "1.6.16", 1860 | "utils-merge": "1.0.1", 1861 | "vary": "1.1.2" 1862 | }, 1863 | "dependencies": { 1864 | "setprototypeof": { 1865 | "version": "1.1.0", 1866 | "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", 1867 | "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==" 1868 | }, 1869 | "statuses": { 1870 | "version": "1.3.1", 1871 | "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz", 1872 | "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=" 1873 | } 1874 | } 1875 | }, 1876 | "extend": { 1877 | "version": "3.0.1", 1878 | "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz", 1879 | "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=" 1880 | }, 1881 | "extglob": { 1882 | "version": "0.3.2", 1883 | "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", 1884 | "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", 1885 | "dev": true, 1886 | "requires": { 1887 | "is-extglob": "1.0.0" 1888 | } 1889 | }, 1890 | "falafel": { 1891 | "version": "2.1.0", 1892 | "resolved": "https://registry.npmjs.org/falafel/-/falafel-2.1.0.tgz", 1893 | "integrity": "sha1-lrsXdh2rqU9G0AFzizzt86Z/4Gw=", 1894 | "dev": true, 1895 | "requires": { 1896 | "acorn": "5.5.3", 1897 | "foreach": "2.0.5", 1898 | "isarray": "0.0.1", 1899 | "object-keys": "1.0.11" 1900 | }, 1901 | "dependencies": { 1902 | "acorn": { 1903 | "version": "5.5.3", 1904 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.5.3.tgz", 1905 | "integrity": "sha512-jd5MkIUlbbmb07nXH0DT3y7rDVtkzDi4XZOUVWAer8ajmF/DTSSbl5oNFyDOl/OXA33Bl79+ypHhl2pN20VeOQ==", 1906 | "dev": true 1907 | }, 1908 | "isarray": { 1909 | "version": "0.0.1", 1910 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", 1911 | "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", 1912 | "dev": true 1913 | } 1914 | } 1915 | }, 1916 | "filename-regex": { 1917 | "version": "2.0.1", 1918 | "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", 1919 | "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=", 1920 | "dev": true 1921 | }, 1922 | "fill-range": { 1923 | "version": "2.2.3", 1924 | "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.3.tgz", 1925 | "integrity": "sha1-ULd9/X5Gm8dJJHCWNpn+eoSFpyM=", 1926 | "dev": true, 1927 | "requires": { 1928 | "is-number": "2.1.0", 1929 | "isobject": "2.1.0", 1930 | "randomatic": "1.1.7", 1931 | "repeat-element": "1.1.2", 1932 | "repeat-string": "1.6.1" 1933 | } 1934 | }, 1935 | "finalhandler": { 1936 | "version": "1.1.0", 1937 | "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.0.tgz", 1938 | "integrity": "sha1-zgtoVbRYU+eRsvzGgARtiCU91/U=", 1939 | "requires": { 1940 | "debug": "2.6.9", 1941 | "encodeurl": "1.0.2", 1942 | "escape-html": "1.0.3", 1943 | "on-finished": "2.3.0", 1944 | "parseurl": "1.3.2", 1945 | "statuses": "1.3.1", 1946 | "unpipe": "1.0.0" 1947 | }, 1948 | "dependencies": { 1949 | "statuses": { 1950 | "version": "1.3.1", 1951 | "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz", 1952 | "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=" 1953 | } 1954 | } 1955 | }, 1956 | "find-up": { 1957 | "version": "2.1.0", 1958 | "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", 1959 | "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", 1960 | "requires": { 1961 | "locate-path": "2.0.0" 1962 | } 1963 | }, 1964 | "fmtbtc": { 1965 | "version": "0.0.3", 1966 | "resolved": "https://registry.npmjs.org/fmtbtc/-/fmtbtc-0.0.3.tgz", 1967 | "integrity": "sha512-3awolswh6476ce5gIvzjw6OgT7ae2WD5NSinOC/de8gLeaDQPdYlW94Hb6nCoTXMUP6AFe3eh3IQiuT+dp4c8A==", 1968 | "dev": true, 1969 | "requires": { 1970 | "move-decimal-point": "0.0.4" 1971 | } 1972 | }, 1973 | "for-in": { 1974 | "version": "1.0.2", 1975 | "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", 1976 | "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", 1977 | "dev": true 1978 | }, 1979 | "for-own": { 1980 | "version": "0.1.5", 1981 | "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", 1982 | "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", 1983 | "dev": true, 1984 | "requires": { 1985 | "for-in": "1.0.2" 1986 | } 1987 | }, 1988 | "foreach": { 1989 | "version": "2.0.5", 1990 | "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", 1991 | "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=", 1992 | "dev": true 1993 | }, 1994 | "form-data": { 1995 | "version": "2.3.2", 1996 | "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz", 1997 | "integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=", 1998 | "requires": { 1999 | "asynckit": "0.4.0", 2000 | "combined-stream": "1.0.6", 2001 | "mime-types": "2.1.18" 2002 | } 2003 | }, 2004 | "formidable": { 2005 | "version": "1.2.0", 2006 | "resolved": "https://registry.npmjs.org/formidable/-/formidable-1.2.0.tgz", 2007 | "integrity": "sha512-hr9aT30rAi7kf8Q2aaTpSP7xGMhlJ+MdrUDVZs3rxbD3L/K46A86s2VY7qC2D2kGYGBtiT/3j6wTx1eeUq5xAQ==" 2008 | }, 2009 | "forwarded": { 2010 | "version": "0.1.2", 2011 | "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", 2012 | "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=" 2013 | }, 2014 | "fresh": { 2015 | "version": "0.5.2", 2016 | "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", 2017 | "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" 2018 | }, 2019 | "fs-readdir-recursive": { 2020 | "version": "1.1.0", 2021 | "resolved": "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz", 2022 | "integrity": "sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA==", 2023 | "dev": true 2024 | }, 2025 | "fs.realpath": { 2026 | "version": "1.0.0", 2027 | "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", 2028 | "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", 2029 | "dev": true 2030 | }, 2031 | "fsevents": { 2032 | "version": "1.1.3", 2033 | "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.1.3.tgz", 2034 | "integrity": "sha512-WIr7iDkdmdbxu/Gh6eKEZJL6KPE74/5MEsf2whTOFNxbIoIixogroLdKYqB6FDav4Wavh/lZdzzd3b2KxIXC5Q==", 2035 | "dev": true, 2036 | "optional": true, 2037 | "requires": { 2038 | "nan": "2.9.2", 2039 | "node-pre-gyp": "0.6.39" 2040 | }, 2041 | "dependencies": { 2042 | "abbrev": { 2043 | "version": "1.1.0", 2044 | "bundled": true, 2045 | "dev": true, 2046 | "optional": true 2047 | }, 2048 | "ajv": { 2049 | "version": "4.11.8", 2050 | "bundled": true, 2051 | "dev": true, 2052 | "optional": true, 2053 | "requires": { 2054 | "co": "4.6.0", 2055 | "json-stable-stringify": "1.0.1" 2056 | } 2057 | }, 2058 | "ansi-regex": { 2059 | "version": "2.1.1", 2060 | "bundled": true, 2061 | "dev": true 2062 | }, 2063 | "aproba": { 2064 | "version": "1.1.1", 2065 | "bundled": true, 2066 | "dev": true, 2067 | "optional": true 2068 | }, 2069 | "are-we-there-yet": { 2070 | "version": "1.1.4", 2071 | "bundled": true, 2072 | "dev": true, 2073 | "optional": true, 2074 | "requires": { 2075 | "delegates": "1.0.0", 2076 | "readable-stream": "2.2.9" 2077 | } 2078 | }, 2079 | "asn1": { 2080 | "version": "0.2.3", 2081 | "bundled": true, 2082 | "dev": true, 2083 | "optional": true 2084 | }, 2085 | "assert-plus": { 2086 | "version": "0.2.0", 2087 | "bundled": true, 2088 | "dev": true, 2089 | "optional": true 2090 | }, 2091 | "asynckit": { 2092 | "version": "0.4.0", 2093 | "bundled": true, 2094 | "dev": true, 2095 | "optional": true 2096 | }, 2097 | "aws-sign2": { 2098 | "version": "0.6.0", 2099 | "bundled": true, 2100 | "dev": true, 2101 | "optional": true 2102 | }, 2103 | "aws4": { 2104 | "version": "1.6.0", 2105 | "bundled": true, 2106 | "dev": true, 2107 | "optional": true 2108 | }, 2109 | "balanced-match": { 2110 | "version": "0.4.2", 2111 | "bundled": true, 2112 | "dev": true 2113 | }, 2114 | "bcrypt-pbkdf": { 2115 | "version": "1.0.1", 2116 | "bundled": true, 2117 | "dev": true, 2118 | "optional": true, 2119 | "requires": { 2120 | "tweetnacl": "0.14.5" 2121 | } 2122 | }, 2123 | "block-stream": { 2124 | "version": "0.0.9", 2125 | "bundled": true, 2126 | "dev": true, 2127 | "requires": { 2128 | "inherits": "2.0.3" 2129 | } 2130 | }, 2131 | "boom": { 2132 | "version": "2.10.1", 2133 | "bundled": true, 2134 | "dev": true, 2135 | "requires": { 2136 | "hoek": "2.16.3" 2137 | } 2138 | }, 2139 | "brace-expansion": { 2140 | "version": "1.1.7", 2141 | "bundled": true, 2142 | "dev": true, 2143 | "requires": { 2144 | "balanced-match": "0.4.2", 2145 | "concat-map": "0.0.1" 2146 | } 2147 | }, 2148 | "buffer-shims": { 2149 | "version": "1.0.0", 2150 | "bundled": true, 2151 | "dev": true 2152 | }, 2153 | "caseless": { 2154 | "version": "0.12.0", 2155 | "bundled": true, 2156 | "dev": true, 2157 | "optional": true 2158 | }, 2159 | "co": { 2160 | "version": "4.6.0", 2161 | "bundled": true, 2162 | "dev": true, 2163 | "optional": true 2164 | }, 2165 | "code-point-at": { 2166 | "version": "1.1.0", 2167 | "bundled": true, 2168 | "dev": true 2169 | }, 2170 | "combined-stream": { 2171 | "version": "1.0.5", 2172 | "bundled": true, 2173 | "dev": true, 2174 | "requires": { 2175 | "delayed-stream": "1.0.0" 2176 | } 2177 | }, 2178 | "concat-map": { 2179 | "version": "0.0.1", 2180 | "bundled": true, 2181 | "dev": true 2182 | }, 2183 | "console-control-strings": { 2184 | "version": "1.1.0", 2185 | "bundled": true, 2186 | "dev": true 2187 | }, 2188 | "core-util-is": { 2189 | "version": "1.0.2", 2190 | "bundled": true, 2191 | "dev": true 2192 | }, 2193 | "cryptiles": { 2194 | "version": "2.0.5", 2195 | "bundled": true, 2196 | "dev": true, 2197 | "requires": { 2198 | "boom": "2.10.1" 2199 | } 2200 | }, 2201 | "dashdash": { 2202 | "version": "1.14.1", 2203 | "bundled": true, 2204 | "dev": true, 2205 | "optional": true, 2206 | "requires": { 2207 | "assert-plus": "1.0.0" 2208 | }, 2209 | "dependencies": { 2210 | "assert-plus": { 2211 | "version": "1.0.0", 2212 | "bundled": true, 2213 | "dev": true, 2214 | "optional": true 2215 | } 2216 | } 2217 | }, 2218 | "debug": { 2219 | "version": "2.6.8", 2220 | "bundled": true, 2221 | "optional": true, 2222 | "requires": { 2223 | "ms": "2.0.0" 2224 | } 2225 | }, 2226 | "deep-extend": { 2227 | "version": "0.4.2", 2228 | "bundled": true, 2229 | "dev": true, 2230 | "optional": true 2231 | }, 2232 | "delayed-stream": { 2233 | "version": "1.0.0", 2234 | "bundled": true, 2235 | "dev": true 2236 | }, 2237 | "delegates": { 2238 | "version": "1.0.0", 2239 | "bundled": true, 2240 | "dev": true, 2241 | "optional": true 2242 | }, 2243 | "detect-libc": { 2244 | "version": "1.0.2", 2245 | "bundled": true, 2246 | "dev": true, 2247 | "optional": true 2248 | }, 2249 | "ecc-jsbn": { 2250 | "version": "0.1.1", 2251 | "bundled": true, 2252 | "dev": true, 2253 | "optional": true, 2254 | "requires": { 2255 | "jsbn": "0.1.1" 2256 | } 2257 | }, 2258 | "extend": { 2259 | "version": "3.0.1", 2260 | "bundled": true, 2261 | "dev": true, 2262 | "optional": true 2263 | }, 2264 | "extsprintf": { 2265 | "version": "1.0.2", 2266 | "bundled": true, 2267 | "dev": true 2268 | }, 2269 | "forever-agent": { 2270 | "version": "0.6.1", 2271 | "bundled": true, 2272 | "dev": true, 2273 | "optional": true 2274 | }, 2275 | "form-data": { 2276 | "version": "2.1.4", 2277 | "bundled": true, 2278 | "optional": true, 2279 | "requires": { 2280 | "asynckit": "0.4.0", 2281 | "combined-stream": "1.0.5", 2282 | "mime-types": "2.1.15" 2283 | } 2284 | }, 2285 | "fs.realpath": { 2286 | "version": "1.0.0", 2287 | "bundled": true, 2288 | "dev": true 2289 | }, 2290 | "fstream": { 2291 | "version": "1.0.11", 2292 | "bundled": true, 2293 | "dev": true, 2294 | "requires": { 2295 | "graceful-fs": "4.1.11", 2296 | "inherits": "2.0.3", 2297 | "mkdirp": "0.5.1", 2298 | "rimraf": "2.6.1" 2299 | } 2300 | }, 2301 | "fstream-ignore": { 2302 | "version": "1.0.5", 2303 | "bundled": true, 2304 | "dev": true, 2305 | "optional": true, 2306 | "requires": { 2307 | "fstream": "1.0.11", 2308 | "inherits": "2.0.3", 2309 | "minimatch": "3.0.4" 2310 | } 2311 | }, 2312 | "gauge": { 2313 | "version": "2.7.4", 2314 | "bundled": true, 2315 | "dev": true, 2316 | "optional": true, 2317 | "requires": { 2318 | "aproba": "1.1.1", 2319 | "console-control-strings": "1.1.0", 2320 | "has-unicode": "2.0.1", 2321 | "object-assign": "4.1.1", 2322 | "signal-exit": "3.0.2", 2323 | "string-width": "1.0.2", 2324 | "strip-ansi": "3.0.1", 2325 | "wide-align": "1.1.2" 2326 | } 2327 | }, 2328 | "getpass": { 2329 | "version": "0.1.7", 2330 | "bundled": true, 2331 | "dev": true, 2332 | "optional": true, 2333 | "requires": { 2334 | "assert-plus": "1.0.0" 2335 | }, 2336 | "dependencies": { 2337 | "assert-plus": { 2338 | "version": "1.0.0", 2339 | "bundled": true, 2340 | "dev": true, 2341 | "optional": true 2342 | } 2343 | } 2344 | }, 2345 | "glob": { 2346 | "version": "7.1.2", 2347 | "bundled": true, 2348 | "dev": true, 2349 | "requires": { 2350 | "fs.realpath": "1.0.0", 2351 | "inflight": "1.0.6", 2352 | "inherits": "2.0.3", 2353 | "minimatch": "3.0.4", 2354 | "once": "1.4.0", 2355 | "path-is-absolute": "1.0.1" 2356 | } 2357 | }, 2358 | "graceful-fs": { 2359 | "version": "4.1.11", 2360 | "bundled": true, 2361 | "dev": true 2362 | }, 2363 | "har-schema": { 2364 | "version": "1.0.5", 2365 | "bundled": true, 2366 | "dev": true, 2367 | "optional": true 2368 | }, 2369 | "har-validator": { 2370 | "version": "4.2.1", 2371 | "bundled": true, 2372 | "optional": true, 2373 | "requires": { 2374 | "ajv": "4.11.8", 2375 | "har-schema": "1.0.5" 2376 | } 2377 | }, 2378 | "has-unicode": { 2379 | "version": "2.0.1", 2380 | "bundled": true, 2381 | "dev": true, 2382 | "optional": true 2383 | }, 2384 | "hawk": { 2385 | "version": "3.1.3", 2386 | "bundled": true, 2387 | "dev": true, 2388 | "requires": { 2389 | "boom": "2.10.1", 2390 | "cryptiles": "2.0.5", 2391 | "hoek": "2.16.3", 2392 | "sntp": "1.0.9" 2393 | } 2394 | }, 2395 | "hoek": { 2396 | "version": "2.16.3", 2397 | "bundled": true, 2398 | "dev": true 2399 | }, 2400 | "http-signature": { 2401 | "version": "1.1.1", 2402 | "bundled": true, 2403 | "dev": true, 2404 | "optional": true, 2405 | "requires": { 2406 | "assert-plus": "0.2.0", 2407 | "jsprim": "1.4.0", 2408 | "sshpk": "1.13.0" 2409 | } 2410 | }, 2411 | "inflight": { 2412 | "version": "1.0.6", 2413 | "bundled": true, 2414 | "dev": true, 2415 | "requires": { 2416 | "once": "1.4.0", 2417 | "wrappy": "1.0.2" 2418 | } 2419 | }, 2420 | "inherits": { 2421 | "version": "2.0.3", 2422 | "bundled": true, 2423 | "dev": true 2424 | }, 2425 | "ini": { 2426 | "version": "1.3.4", 2427 | "bundled": true, 2428 | "dev": true, 2429 | "optional": true 2430 | }, 2431 | "is-fullwidth-code-point": { 2432 | "version": "1.0.0", 2433 | "bundled": true, 2434 | "requires": { 2435 | "number-is-nan": "1.0.1" 2436 | } 2437 | }, 2438 | "is-typedarray": { 2439 | "version": "1.0.0", 2440 | "bundled": true, 2441 | "dev": true, 2442 | "optional": true 2443 | }, 2444 | "isarray": { 2445 | "version": "1.0.0", 2446 | "bundled": true, 2447 | "dev": true 2448 | }, 2449 | "isstream": { 2450 | "version": "0.1.2", 2451 | "bundled": true, 2452 | "dev": true, 2453 | "optional": true 2454 | }, 2455 | "jodid25519": { 2456 | "version": "1.0.2", 2457 | "bundled": true, 2458 | "dev": true, 2459 | "optional": true, 2460 | "requires": { 2461 | "jsbn": "0.1.1" 2462 | } 2463 | }, 2464 | "jsbn": { 2465 | "version": "0.1.1", 2466 | "bundled": true, 2467 | "dev": true, 2468 | "optional": true 2469 | }, 2470 | "json-schema": { 2471 | "version": "0.2.3", 2472 | "bundled": true, 2473 | "dev": true, 2474 | "optional": true 2475 | }, 2476 | "json-stable-stringify": { 2477 | "version": "1.0.1", 2478 | "bundled": true, 2479 | "dev": true, 2480 | "optional": true, 2481 | "requires": { 2482 | "jsonify": "0.0.0" 2483 | } 2484 | }, 2485 | "json-stringify-safe": { 2486 | "version": "5.0.1", 2487 | "bundled": true, 2488 | "dev": true, 2489 | "optional": true 2490 | }, 2491 | "jsonify": { 2492 | "version": "0.0.0", 2493 | "bundled": true, 2494 | "dev": true, 2495 | "optional": true 2496 | }, 2497 | "jsprim": { 2498 | "version": "1.4.0", 2499 | "bundled": true, 2500 | "dev": true, 2501 | "optional": true, 2502 | "requires": { 2503 | "assert-plus": "1.0.0", 2504 | "extsprintf": "1.0.2", 2505 | "json-schema": "0.2.3", 2506 | "verror": "1.3.6" 2507 | }, 2508 | "dependencies": { 2509 | "assert-plus": { 2510 | "version": "1.0.0", 2511 | "bundled": true, 2512 | "optional": true 2513 | } 2514 | } 2515 | }, 2516 | "mime-db": { 2517 | "version": "1.27.0", 2518 | "bundled": true 2519 | }, 2520 | "mime-types": { 2521 | "version": "2.1.15", 2522 | "bundled": true, 2523 | "requires": { 2524 | "mime-db": "1.27.0" 2525 | } 2526 | }, 2527 | "minimatch": { 2528 | "version": "3.0.4", 2529 | "bundled": true, 2530 | "requires": { 2531 | "brace-expansion": "1.1.7" 2532 | } 2533 | }, 2534 | "minimist": { 2535 | "version": "0.0.8", 2536 | "bundled": true 2537 | }, 2538 | "mkdirp": { 2539 | "version": "0.5.1", 2540 | "bundled": true, 2541 | "requires": { 2542 | "minimist": "0.0.8" 2543 | } 2544 | }, 2545 | "ms": { 2546 | "version": "2.0.0", 2547 | "bundled": true, 2548 | "optional": true 2549 | }, 2550 | "node-pre-gyp": { 2551 | "version": "0.6.39", 2552 | "bundled": true, 2553 | "dev": true, 2554 | "optional": true, 2555 | "requires": { 2556 | "detect-libc": "1.0.2", 2557 | "hawk": "3.1.3", 2558 | "mkdirp": "0.5.1", 2559 | "nopt": "4.0.1", 2560 | "npmlog": "4.1.0", 2561 | "rc": "1.2.1", 2562 | "request": "2.81.0", 2563 | "rimraf": "2.6.1", 2564 | "semver": "5.3.0", 2565 | "tar": "2.2.1", 2566 | "tar-pack": "3.4.0" 2567 | } 2568 | }, 2569 | "nopt": { 2570 | "version": "4.0.1", 2571 | "bundled": true, 2572 | "dev": true, 2573 | "optional": true, 2574 | "requires": { 2575 | "abbrev": "1.1.0", 2576 | "osenv": "0.1.4" 2577 | } 2578 | }, 2579 | "npmlog": { 2580 | "version": "4.1.0", 2581 | "bundled": true, 2582 | "dev": true, 2583 | "optional": true, 2584 | "requires": { 2585 | "are-we-there-yet": "1.1.4", 2586 | "console-control-strings": "1.1.0", 2587 | "gauge": "2.7.4", 2588 | "set-blocking": "2.0.0" 2589 | } 2590 | }, 2591 | "number-is-nan": { 2592 | "version": "1.0.1", 2593 | "bundled": true 2594 | }, 2595 | "oauth-sign": { 2596 | "version": "0.8.2", 2597 | "bundled": true, 2598 | "optional": true 2599 | }, 2600 | "object-assign": { 2601 | "version": "4.1.1", 2602 | "bundled": true, 2603 | "optional": true 2604 | }, 2605 | "once": { 2606 | "version": "1.4.0", 2607 | "bundled": true, 2608 | "dev": true, 2609 | "requires": { 2610 | "wrappy": "1.0.2" 2611 | } 2612 | }, 2613 | "os-homedir": { 2614 | "version": "1.0.2", 2615 | "bundled": true, 2616 | "optional": true 2617 | }, 2618 | "os-tmpdir": { 2619 | "version": "1.0.2", 2620 | "bundled": true, 2621 | "optional": true 2622 | }, 2623 | "osenv": { 2624 | "version": "0.1.4", 2625 | "bundled": true, 2626 | "dev": true, 2627 | "optional": true, 2628 | "requires": { 2629 | "os-homedir": "1.0.2", 2630 | "os-tmpdir": "1.0.2" 2631 | } 2632 | }, 2633 | "path-is-absolute": { 2634 | "version": "1.0.1", 2635 | "bundled": true, 2636 | "dev": true 2637 | }, 2638 | "performance-now": { 2639 | "version": "0.2.0", 2640 | "bundled": true, 2641 | "dev": true, 2642 | "optional": true 2643 | }, 2644 | "process-nextick-args": { 2645 | "version": "1.0.7", 2646 | "bundled": true, 2647 | "dev": true 2648 | }, 2649 | "punycode": { 2650 | "version": "1.4.1", 2651 | "bundled": true, 2652 | "dev": true, 2653 | "optional": true 2654 | }, 2655 | "qs": { 2656 | "version": "6.4.0", 2657 | "bundled": true, 2658 | "dev": true, 2659 | "optional": true 2660 | }, 2661 | "rc": { 2662 | "version": "1.2.1", 2663 | "bundled": true, 2664 | "dev": true, 2665 | "optional": true, 2666 | "requires": { 2667 | "deep-extend": "0.4.2", 2668 | "ini": "1.3.4", 2669 | "minimist": "1.2.0", 2670 | "strip-json-comments": "2.0.1" 2671 | }, 2672 | "dependencies": { 2673 | "minimist": { 2674 | "version": "1.2.0", 2675 | "bundled": true, 2676 | "dev": true, 2677 | "optional": true 2678 | } 2679 | } 2680 | }, 2681 | "readable-stream": { 2682 | "version": "2.2.9", 2683 | "bundled": true, 2684 | "dev": true, 2685 | "requires": { 2686 | "buffer-shims": "1.0.0", 2687 | "core-util-is": "1.0.2", 2688 | "inherits": "2.0.3", 2689 | "isarray": "1.0.0", 2690 | "process-nextick-args": "1.0.7", 2691 | "string_decoder": "1.0.1", 2692 | "util-deprecate": "1.0.2" 2693 | } 2694 | }, 2695 | "request": { 2696 | "version": "2.81.0", 2697 | "bundled": true, 2698 | "dev": true, 2699 | "optional": true, 2700 | "requires": { 2701 | "aws-sign2": "0.6.0", 2702 | "aws4": "1.6.0", 2703 | "caseless": "0.12.0", 2704 | "combined-stream": "1.0.5", 2705 | "extend": "3.0.1", 2706 | "forever-agent": "0.6.1", 2707 | "form-data": "2.1.4", 2708 | "har-validator": "4.2.1", 2709 | "hawk": "3.1.3", 2710 | "http-signature": "1.1.1", 2711 | "is-typedarray": "1.0.0", 2712 | "isstream": "0.1.2", 2713 | "json-stringify-safe": "5.0.1", 2714 | "mime-types": "2.1.15", 2715 | "oauth-sign": "0.8.2", 2716 | "performance-now": "0.2.0", 2717 | "qs": "6.4.0", 2718 | "safe-buffer": "5.0.1", 2719 | "stringstream": "0.0.5", 2720 | "tough-cookie": "2.3.2", 2721 | "tunnel-agent": "0.6.0", 2722 | "uuid": "3.0.1" 2723 | } 2724 | }, 2725 | "rimraf": { 2726 | "version": "2.6.1", 2727 | "bundled": true, 2728 | "dev": true, 2729 | "requires": { 2730 | "glob": "7.1.2" 2731 | } 2732 | }, 2733 | "safe-buffer": { 2734 | "version": "5.0.1", 2735 | "bundled": true, 2736 | "dev": true 2737 | }, 2738 | "semver": { 2739 | "version": "5.3.0", 2740 | "bundled": true, 2741 | "dev": true, 2742 | "optional": true 2743 | }, 2744 | "set-blocking": { 2745 | "version": "2.0.0", 2746 | "bundled": true, 2747 | "dev": true, 2748 | "optional": true 2749 | }, 2750 | "signal-exit": { 2751 | "version": "3.0.2", 2752 | "bundled": true, 2753 | "dev": true, 2754 | "optional": true 2755 | }, 2756 | "sntp": { 2757 | "version": "1.0.9", 2758 | "bundled": true, 2759 | "dev": true, 2760 | "requires": { 2761 | "hoek": "2.16.3" 2762 | } 2763 | }, 2764 | "sshpk": { 2765 | "version": "1.13.0", 2766 | "bundled": true, 2767 | "dev": true, 2768 | "optional": true, 2769 | "requires": { 2770 | "asn1": "0.2.3", 2771 | "assert-plus": "1.0.0", 2772 | "bcrypt-pbkdf": "1.0.1", 2773 | "dashdash": "1.14.1", 2774 | "ecc-jsbn": "0.1.1", 2775 | "getpass": "0.1.7", 2776 | "jodid25519": "1.0.2", 2777 | "jsbn": "0.1.1", 2778 | "tweetnacl": "0.14.5" 2779 | }, 2780 | "dependencies": { 2781 | "assert-plus": { 2782 | "version": "1.0.0", 2783 | "bundled": true, 2784 | "dev": true, 2785 | "optional": true 2786 | } 2787 | } 2788 | }, 2789 | "string-width": { 2790 | "version": "1.0.2", 2791 | "bundled": true, 2792 | "dev": true, 2793 | "requires": { 2794 | "code-point-at": "1.1.0", 2795 | "is-fullwidth-code-point": "1.0.0", 2796 | "strip-ansi": "3.0.1" 2797 | } 2798 | }, 2799 | "string_decoder": { 2800 | "version": "1.0.1", 2801 | "bundled": true, 2802 | "dev": true, 2803 | "requires": { 2804 | "safe-buffer": "5.0.1" 2805 | } 2806 | }, 2807 | "stringstream": { 2808 | "version": "0.0.5", 2809 | "bundled": true, 2810 | "dev": true, 2811 | "optional": true 2812 | }, 2813 | "strip-ansi": { 2814 | "version": "3.0.1", 2815 | "bundled": true, 2816 | "dev": true, 2817 | "requires": { 2818 | "ansi-regex": "2.1.1" 2819 | } 2820 | }, 2821 | "strip-json-comments": { 2822 | "version": "2.0.1", 2823 | "bundled": true, 2824 | "dev": true, 2825 | "optional": true 2826 | }, 2827 | "tar": { 2828 | "version": "2.2.1", 2829 | "bundled": true, 2830 | "dev": true, 2831 | "requires": { 2832 | "block-stream": "0.0.9", 2833 | "fstream": "1.0.11", 2834 | "inherits": "2.0.3" 2835 | } 2836 | }, 2837 | "tar-pack": { 2838 | "version": "3.4.0", 2839 | "bundled": true, 2840 | "dev": true, 2841 | "optional": true, 2842 | "requires": { 2843 | "debug": "2.6.8", 2844 | "fstream": "1.0.11", 2845 | "fstream-ignore": "1.0.5", 2846 | "once": "1.4.0", 2847 | "readable-stream": "2.2.9", 2848 | "rimraf": "2.6.1", 2849 | "tar": "2.2.1", 2850 | "uid-number": "0.0.6" 2851 | } 2852 | }, 2853 | "tough-cookie": { 2854 | "version": "2.3.2", 2855 | "bundled": true, 2856 | "dev": true, 2857 | "optional": true, 2858 | "requires": { 2859 | "punycode": "1.4.1" 2860 | } 2861 | }, 2862 | "tunnel-agent": { 2863 | "version": "0.6.0", 2864 | "bundled": true, 2865 | "dev": true, 2866 | "optional": true, 2867 | "requires": { 2868 | "safe-buffer": "5.0.1" 2869 | } 2870 | }, 2871 | "tweetnacl": { 2872 | "version": "0.14.5", 2873 | "bundled": true, 2874 | "dev": true, 2875 | "optional": true 2876 | }, 2877 | "uid-number": { 2878 | "version": "0.0.6", 2879 | "bundled": true, 2880 | "dev": true, 2881 | "optional": true 2882 | }, 2883 | "util-deprecate": { 2884 | "version": "1.0.2", 2885 | "bundled": true, 2886 | "dev": true 2887 | }, 2888 | "uuid": { 2889 | "version": "3.0.1", 2890 | "bundled": true, 2891 | "dev": true, 2892 | "optional": true 2893 | }, 2894 | "verror": { 2895 | "version": "1.3.6", 2896 | "bundled": true, 2897 | "dev": true, 2898 | "optional": true, 2899 | "requires": { 2900 | "extsprintf": "1.0.2" 2901 | } 2902 | }, 2903 | "wide-align": { 2904 | "version": "1.1.2", 2905 | "bundled": true, 2906 | "dev": true, 2907 | "optional": true, 2908 | "requires": { 2909 | "string-width": "1.0.2" 2910 | } 2911 | }, 2912 | "wrappy": { 2913 | "version": "1.0.2", 2914 | "bundled": true, 2915 | "dev": true 2916 | } 2917 | } 2918 | }, 2919 | "function-bind": { 2920 | "version": "1.1.1", 2921 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", 2922 | "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" 2923 | }, 2924 | "get-caller-file": { 2925 | "version": "1.0.2", 2926 | "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.2.tgz", 2927 | "integrity": "sha1-9wLmMSfn4jHBYKgMFVSstw1QR+U=", 2928 | "dev": true 2929 | }, 2930 | "get-stream": { 2931 | "version": "3.0.0", 2932 | "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", 2933 | "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", 2934 | "dev": true 2935 | }, 2936 | "glob": { 2937 | "version": "7.1.2", 2938 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", 2939 | "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", 2940 | "dev": true, 2941 | "requires": { 2942 | "fs.realpath": "1.0.0", 2943 | "inflight": "1.0.6", 2944 | "inherits": "2.0.3", 2945 | "minimatch": "3.0.4", 2946 | "once": "1.4.0", 2947 | "path-is-absolute": "1.0.1" 2948 | } 2949 | }, 2950 | "glob-base": { 2951 | "version": "0.3.0", 2952 | "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", 2953 | "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", 2954 | "dev": true, 2955 | "requires": { 2956 | "glob-parent": "2.0.0", 2957 | "is-glob": "2.0.1" 2958 | } 2959 | }, 2960 | "glob-parent": { 2961 | "version": "2.0.0", 2962 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", 2963 | "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", 2964 | "dev": true, 2965 | "requires": { 2966 | "is-glob": "2.0.1" 2967 | } 2968 | }, 2969 | "globals": { 2970 | "version": "9.18.0", 2971 | "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", 2972 | "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", 2973 | "dev": true 2974 | }, 2975 | "graceful-fs": { 2976 | "version": "4.1.11", 2977 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", 2978 | "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=" 2979 | }, 2980 | "graceful-readlink": { 2981 | "version": "1.0.1", 2982 | "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", 2983 | "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=" 2984 | }, 2985 | "has": { 2986 | "version": "1.0.1", 2987 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.1.tgz", 2988 | "integrity": "sha1-hGFzP1OLCDfJNh45qauelwTcLyg=", 2989 | "requires": { 2990 | "function-bind": "1.1.1" 2991 | } 2992 | }, 2993 | "has-ansi": { 2994 | "version": "2.0.0", 2995 | "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", 2996 | "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", 2997 | "dev": true, 2998 | "requires": { 2999 | "ansi-regex": "2.1.1" 3000 | } 3001 | }, 3002 | "hash-base": { 3003 | "version": "2.0.2", 3004 | "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-2.0.2.tgz", 3005 | "integrity": "sha1-ZuodhW206KVHDK32/OI65SRO8uE=", 3006 | "dev": true, 3007 | "requires": { 3008 | "inherits": "2.0.3" 3009 | } 3010 | }, 3011 | "hash.js": { 3012 | "version": "1.1.3", 3013 | "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.3.tgz", 3014 | "integrity": "sha512-/UETyP0W22QILqS+6HowevwhEFJ3MBJnwTf75Qob9Wz9t0DPuisL8kW8YZMK62dHAKE1c1p+gY1TtOLY+USEHA==", 3015 | "dev": true, 3016 | "requires": { 3017 | "inherits": "2.0.3", 3018 | "minimalistic-assert": "1.0.0" 3019 | } 3020 | }, 3021 | "hmac-drbg": { 3022 | "version": "1.0.1", 3023 | "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", 3024 | "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", 3025 | "dev": true, 3026 | "requires": { 3027 | "hash.js": "1.1.3", 3028 | "minimalistic-assert": "1.0.0", 3029 | "minimalistic-crypto-utils": "1.0.1" 3030 | } 3031 | }, 3032 | "home-or-tmp": { 3033 | "version": "2.0.0", 3034 | "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", 3035 | "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", 3036 | "dev": true, 3037 | "requires": { 3038 | "os-homedir": "1.0.2", 3039 | "os-tmpdir": "1.0.2" 3040 | } 3041 | }, 3042 | "hosted-git-info": { 3043 | "version": "2.6.0", 3044 | "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.6.0.tgz", 3045 | "integrity": "sha512-lIbgIIQA3lz5XaB6vxakj6sDHADJiZadYEJB+FgA+C4nubM1NwcuvUr9EJPmnH1skZqpqUzWborWo8EIUi0Sdw==" 3046 | }, 3047 | "htmlescape": { 3048 | "version": "1.1.1", 3049 | "resolved": "https://registry.npmjs.org/htmlescape/-/htmlescape-1.1.1.tgz", 3050 | "integrity": "sha1-OgPtwiFLyjtmQko+eVk0lQnLA1E=", 3051 | "dev": true 3052 | }, 3053 | "http-errors": { 3054 | "version": "1.6.2", 3055 | "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz", 3056 | "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=", 3057 | "requires": { 3058 | "depd": "1.1.1", 3059 | "inherits": "2.0.3", 3060 | "setprototypeof": "1.0.3", 3061 | "statuses": "1.4.0" 3062 | }, 3063 | "dependencies": { 3064 | "depd": { 3065 | "version": "1.1.1", 3066 | "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz", 3067 | "integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k=" 3068 | } 3069 | } 3070 | }, 3071 | "https-browserify": { 3072 | "version": "1.0.0", 3073 | "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", 3074 | "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", 3075 | "dev": true 3076 | }, 3077 | "iconv-lite": { 3078 | "version": "0.4.19", 3079 | "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", 3080 | "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==" 3081 | }, 3082 | "ieee754": { 3083 | "version": "1.1.8", 3084 | "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.8.tgz", 3085 | "integrity": "sha1-vjPUCsEO8ZJnAfbwii2G+/0a0+Q=", 3086 | "dev": true 3087 | }, 3088 | "indent-string": { 3089 | "version": "3.2.0", 3090 | "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", 3091 | "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=" 3092 | }, 3093 | "indexof": { 3094 | "version": "0.0.1", 3095 | "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", 3096 | "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=", 3097 | "dev": true 3098 | }, 3099 | "inflight": { 3100 | "version": "1.0.6", 3101 | "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", 3102 | "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", 3103 | "dev": true, 3104 | "requires": { 3105 | "once": "1.4.0", 3106 | "wrappy": "1.0.2" 3107 | } 3108 | }, 3109 | "inherits": { 3110 | "version": "2.0.3", 3111 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 3112 | "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" 3113 | }, 3114 | "inline-source-map": { 3115 | "version": "0.6.2", 3116 | "resolved": "https://registry.npmjs.org/inline-source-map/-/inline-source-map-0.6.2.tgz", 3117 | "integrity": "sha1-+Tk0ccGKedFyT4Y/o4tYY3Ct4qU=", 3118 | "dev": true, 3119 | "requires": { 3120 | "source-map": "0.5.7" 3121 | } 3122 | }, 3123 | "insert-module-globals": { 3124 | "version": "7.0.2", 3125 | "resolved": "https://registry.npmjs.org/insert-module-globals/-/insert-module-globals-7.0.2.tgz", 3126 | "integrity": "sha512-p3s7g96Nm62MbHRuj9ZXab0DuJNWD7qcmdUXCOQ/ZZn42DtDXfsLill7bq19lDCx3K3StypqUnuE3H2VmIJFUw==", 3127 | "dev": true, 3128 | "requires": { 3129 | "JSONStream": "1.3.2", 3130 | "combine-source-map": "0.7.2", 3131 | "concat-stream": "1.5.2", 3132 | "is-buffer": "1.1.6", 3133 | "lexical-scope": "1.2.0", 3134 | "process": "0.11.10", 3135 | "through2": "2.0.3", 3136 | "xtend": "4.0.1" 3137 | }, 3138 | "dependencies": { 3139 | "combine-source-map": { 3140 | "version": "0.7.2", 3141 | "resolved": "https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.7.2.tgz", 3142 | "integrity": "sha1-CHAxKFazB6h8xKxIbzqaYq7MwJ4=", 3143 | "dev": true, 3144 | "requires": { 3145 | "convert-source-map": "1.1.3", 3146 | "inline-source-map": "0.6.2", 3147 | "lodash.memoize": "3.0.4", 3148 | "source-map": "0.5.7" 3149 | } 3150 | }, 3151 | "concat-stream": { 3152 | "version": "1.5.2", 3153 | "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.5.2.tgz", 3154 | "integrity": "sha1-cIl4Yk2FavQaWnQd790mHadSwmY=", 3155 | "dev": true, 3156 | "requires": { 3157 | "inherits": "2.0.3", 3158 | "readable-stream": "2.0.6", 3159 | "typedarray": "0.0.6" 3160 | } 3161 | }, 3162 | "process-nextick-args": { 3163 | "version": "1.0.7", 3164 | "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", 3165 | "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=", 3166 | "dev": true 3167 | }, 3168 | "readable-stream": { 3169 | "version": "2.0.6", 3170 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz", 3171 | "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=", 3172 | "dev": true, 3173 | "requires": { 3174 | "core-util-is": "1.0.2", 3175 | "inherits": "2.0.3", 3176 | "isarray": "1.0.0", 3177 | "process-nextick-args": "1.0.7", 3178 | "string_decoder": "0.10.31", 3179 | "util-deprecate": "1.0.2" 3180 | } 3181 | }, 3182 | "string_decoder": { 3183 | "version": "0.10.31", 3184 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", 3185 | "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", 3186 | "dev": true 3187 | } 3188 | } 3189 | }, 3190 | "invariant": { 3191 | "version": "2.2.3", 3192 | "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.3.tgz", 3193 | "integrity": "sha512-7Z5PPegwDTyjbaeCnV0efcyS6vdKAU51kpEmS7QFib3P4822l8ICYyMn7qvJnc+WzLoDsuI9gPMKbJ8pCu8XtA==", 3194 | "dev": true, 3195 | "requires": { 3196 | "loose-envify": "1.3.1" 3197 | } 3198 | }, 3199 | "invert-kv": { 3200 | "version": "1.0.0", 3201 | "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", 3202 | "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", 3203 | "dev": true 3204 | }, 3205 | "ipaddr.js": { 3206 | "version": "1.6.0", 3207 | "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.6.0.tgz", 3208 | "integrity": "sha1-4/o1e3c9phnybpXwSdBVxyeW+Gs=" 3209 | }, 3210 | "is-arrayish": { 3211 | "version": "0.2.1", 3212 | "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", 3213 | "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" 3214 | }, 3215 | "is-binary-path": { 3216 | "version": "1.0.1", 3217 | "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", 3218 | "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", 3219 | "dev": true, 3220 | "requires": { 3221 | "binary-extensions": "1.11.0" 3222 | } 3223 | }, 3224 | "is-buffer": { 3225 | "version": "1.1.6", 3226 | "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", 3227 | "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" 3228 | }, 3229 | "is-builtin-module": { 3230 | "version": "1.0.0", 3231 | "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", 3232 | "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", 3233 | "requires": { 3234 | "builtin-modules": "1.1.1" 3235 | } 3236 | }, 3237 | "is-dotfile": { 3238 | "version": "1.0.3", 3239 | "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", 3240 | "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=", 3241 | "dev": true 3242 | }, 3243 | "is-equal-shallow": { 3244 | "version": "0.1.3", 3245 | "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", 3246 | "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", 3247 | "dev": true, 3248 | "requires": { 3249 | "is-primitive": "2.0.0" 3250 | } 3251 | }, 3252 | "is-expression": { 3253 | "version": "3.0.0", 3254 | "resolved": "https://registry.npmjs.org/is-expression/-/is-expression-3.0.0.tgz", 3255 | "integrity": "sha1-Oayqa+f9HzRx3ELHQW5hwkMXrJ8=", 3256 | "requires": { 3257 | "acorn": "4.0.13", 3258 | "object-assign": "4.1.1" 3259 | } 3260 | }, 3261 | "is-extendable": { 3262 | "version": "0.1.1", 3263 | "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", 3264 | "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", 3265 | "dev": true 3266 | }, 3267 | "is-extglob": { 3268 | "version": "1.0.0", 3269 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", 3270 | "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", 3271 | "dev": true 3272 | }, 3273 | "is-finite": { 3274 | "version": "1.0.2", 3275 | "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", 3276 | "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", 3277 | "dev": true, 3278 | "requires": { 3279 | "number-is-nan": "1.0.1" 3280 | } 3281 | }, 3282 | "is-fullwidth-code-point": { 3283 | "version": "1.0.0", 3284 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", 3285 | "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", 3286 | "dev": true, 3287 | "requires": { 3288 | "number-is-nan": "1.0.1" 3289 | } 3290 | }, 3291 | "is-glob": { 3292 | "version": "2.0.1", 3293 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", 3294 | "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", 3295 | "dev": true, 3296 | "requires": { 3297 | "is-extglob": "1.0.0" 3298 | } 3299 | }, 3300 | "is-number": { 3301 | "version": "2.1.0", 3302 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", 3303 | "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", 3304 | "dev": true, 3305 | "requires": { 3306 | "kind-of": "3.2.2" 3307 | } 3308 | }, 3309 | "is-plain-obj": { 3310 | "version": "1.1.0", 3311 | "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", 3312 | "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=" 3313 | }, 3314 | "is-posix-bracket": { 3315 | "version": "0.1.1", 3316 | "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", 3317 | "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=", 3318 | "dev": true 3319 | }, 3320 | "is-primitive": { 3321 | "version": "2.0.0", 3322 | "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", 3323 | "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=", 3324 | "dev": true 3325 | }, 3326 | "is-promise": { 3327 | "version": "2.1.0", 3328 | "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", 3329 | "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=" 3330 | }, 3331 | "is-regex": { 3332 | "version": "1.0.4", 3333 | "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", 3334 | "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", 3335 | "requires": { 3336 | "has": "1.0.1" 3337 | } 3338 | }, 3339 | "is-stream": { 3340 | "version": "1.1.0", 3341 | "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", 3342 | "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", 3343 | "dev": true 3344 | }, 3345 | "isarray": { 3346 | "version": "1.0.0", 3347 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", 3348 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" 3349 | }, 3350 | "isexe": { 3351 | "version": "2.0.0", 3352 | "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", 3353 | "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", 3354 | "dev": true 3355 | }, 3356 | "isobject": { 3357 | "version": "2.1.0", 3358 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", 3359 | "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", 3360 | "dev": true, 3361 | "requires": { 3362 | "isarray": "1.0.0" 3363 | } 3364 | }, 3365 | "jquery": { 3366 | "version": "3.3.1", 3367 | "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.3.1.tgz", 3368 | "integrity": "sha512-Ubldcmxp5np52/ENotGxlLe6aGMvmF4R8S6tZjsP6Knsaxd/xp3Zrh50cG93lR6nPXyUFwzN3ZSOQI0wRJNdGg==" 3369 | }, 3370 | "js-stringify": { 3371 | "version": "1.0.2", 3372 | "resolved": "https://registry.npmjs.org/js-stringify/-/js-stringify-1.0.2.tgz", 3373 | "integrity": "sha1-Fzb939lyTyijaCrcYjCufk6Weds=" 3374 | }, 3375 | "js-tokens": { 3376 | "version": "3.0.2", 3377 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", 3378 | "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", 3379 | "dev": true 3380 | }, 3381 | "jsesc": { 3382 | "version": "1.3.0", 3383 | "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", 3384 | "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", 3385 | "dev": true 3386 | }, 3387 | "json-parse-better-errors": { 3388 | "version": "1.0.1", 3389 | "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.1.tgz", 3390 | "integrity": "sha512-xyQpxeWWMKyJps9CuGJYeng6ssI5bpqS9ltQpdVQ90t4ql6NdnxFKh95JcRt2cun/DjMVNrdjniLPuMA69xmCw==" 3391 | }, 3392 | "json-stable-stringify": { 3393 | "version": "0.0.1", 3394 | "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-0.0.1.tgz", 3395 | "integrity": "sha1-YRwj6BTbN1Un34URk9tZ3Sryf0U=", 3396 | "dev": true, 3397 | "requires": { 3398 | "jsonify": "0.0.0" 3399 | } 3400 | }, 3401 | "json5": { 3402 | "version": "0.5.1", 3403 | "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", 3404 | "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", 3405 | "dev": true 3406 | }, 3407 | "jsonify": { 3408 | "version": "0.0.0", 3409 | "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", 3410 | "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", 3411 | "dev": true 3412 | }, 3413 | "jsonparse": { 3414 | "version": "1.3.1", 3415 | "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", 3416 | "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=", 3417 | "dev": true 3418 | }, 3419 | "jstransformer": { 3420 | "version": "1.0.0", 3421 | "resolved": "https://registry.npmjs.org/jstransformer/-/jstransformer-1.0.0.tgz", 3422 | "integrity": "sha1-7Yvwkh4vPx7U1cGkT2hwntJHIsM=", 3423 | "requires": { 3424 | "is-promise": "2.1.0", 3425 | "promise": "7.3.1" 3426 | } 3427 | }, 3428 | "kind-of": { 3429 | "version": "3.2.2", 3430 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 3431 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 3432 | "requires": { 3433 | "is-buffer": "1.1.6" 3434 | } 3435 | }, 3436 | "labeled-stream-splicer": { 3437 | "version": "2.0.0", 3438 | "resolved": "https://registry.npmjs.org/labeled-stream-splicer/-/labeled-stream-splicer-2.0.0.tgz", 3439 | "integrity": "sha1-pS4dE4AkwAuGscDJH2d5GLiuClk=", 3440 | "dev": true, 3441 | "requires": { 3442 | "inherits": "2.0.3", 3443 | "isarray": "0.0.1", 3444 | "stream-splicer": "2.0.0" 3445 | }, 3446 | "dependencies": { 3447 | "isarray": { 3448 | "version": "0.0.1", 3449 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", 3450 | "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", 3451 | "dev": true 3452 | } 3453 | } 3454 | }, 3455 | "lazy-cache": { 3456 | "version": "1.0.4", 3457 | "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", 3458 | "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=" 3459 | }, 3460 | "lcid": { 3461 | "version": "1.0.0", 3462 | "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", 3463 | "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", 3464 | "dev": true, 3465 | "requires": { 3466 | "invert-kv": "1.0.0" 3467 | } 3468 | }, 3469 | "lexical-scope": { 3470 | "version": "1.2.0", 3471 | "resolved": "https://registry.npmjs.org/lexical-scope/-/lexical-scope-1.2.0.tgz", 3472 | "integrity": "sha1-/Ope3HBKSzqHls3KQZw6CvryLfQ=", 3473 | "dev": true, 3474 | "requires": { 3475 | "astw": "2.2.0" 3476 | } 3477 | }, 3478 | "lightning-charge-client": { 3479 | "version": "0.1.7", 3480 | "resolved": "https://registry.npmjs.org/lightning-charge-client/-/lightning-charge-client-0.1.7.tgz", 3481 | "integrity": "sha512-LDDFt4KWaUkfwy7EWUedwcitX4T6YufSjif/lZyVuXn1YLlUGYhXgWrX2G1tJQqUFwHSaXLu54K8Zd0lFBMJ7A==", 3482 | "requires": { 3483 | "eventsource": "1.0.5", 3484 | "superagent": "3.8.2", 3485 | "superagent-baseuri": "0.1.1" 3486 | } 3487 | }, 3488 | "load-json-file": { 3489 | "version": "4.0.0", 3490 | "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", 3491 | "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", 3492 | "requires": { 3493 | "graceful-fs": "4.1.11", 3494 | "parse-json": "4.0.0", 3495 | "pify": "3.0.0", 3496 | "strip-bom": "3.0.0" 3497 | } 3498 | }, 3499 | "locate-path": { 3500 | "version": "2.0.0", 3501 | "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", 3502 | "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", 3503 | "requires": { 3504 | "p-locate": "2.0.0", 3505 | "path-exists": "3.0.0" 3506 | } 3507 | }, 3508 | "lodash": { 3509 | "version": "4.17.5", 3510 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.5.tgz", 3511 | "integrity": "sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw==" 3512 | }, 3513 | "lodash.memoize": { 3514 | "version": "3.0.4", 3515 | "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-3.0.4.tgz", 3516 | "integrity": "sha1-LcvSwofLwKVcxCMovQxzYVDVPj8=", 3517 | "dev": true 3518 | }, 3519 | "longest": { 3520 | "version": "1.0.1", 3521 | "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", 3522 | "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=" 3523 | }, 3524 | "loose-envify": { 3525 | "version": "1.3.1", 3526 | "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", 3527 | "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", 3528 | "dev": true, 3529 | "requires": { 3530 | "js-tokens": "3.0.2" 3531 | } 3532 | }, 3533 | "loud-rejection": { 3534 | "version": "1.6.0", 3535 | "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", 3536 | "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", 3537 | "requires": { 3538 | "currently-unhandled": "0.4.1", 3539 | "signal-exit": "3.0.2" 3540 | } 3541 | }, 3542 | "lru-cache": { 3543 | "version": "4.1.2", 3544 | "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.2.tgz", 3545 | "integrity": "sha512-wgeVXhrDwAWnIF/yZARsFnMBtdFXOg1b8RIrhilp+0iDYN4mdQcNZElDZ0e4B64BhaxeQ5zN7PMyvu7we1kPeQ==", 3546 | "dev": true, 3547 | "requires": { 3548 | "pseudomap": "1.0.2", 3549 | "yallist": "2.1.2" 3550 | } 3551 | }, 3552 | "map-obj": { 3553 | "version": "2.0.0", 3554 | "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-2.0.0.tgz", 3555 | "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=" 3556 | }, 3557 | "md5.js": { 3558 | "version": "1.3.4", 3559 | "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.4.tgz", 3560 | "integrity": "sha1-6b296UogpawYsENA/Fdk1bCdkB0=", 3561 | "dev": true, 3562 | "requires": { 3563 | "hash-base": "3.0.4", 3564 | "inherits": "2.0.3" 3565 | }, 3566 | "dependencies": { 3567 | "hash-base": { 3568 | "version": "3.0.4", 3569 | "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", 3570 | "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", 3571 | "dev": true, 3572 | "requires": { 3573 | "inherits": "2.0.3", 3574 | "safe-buffer": "5.1.1" 3575 | } 3576 | } 3577 | } 3578 | }, 3579 | "media-typer": { 3580 | "version": "0.3.0", 3581 | "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", 3582 | "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" 3583 | }, 3584 | "mem": { 3585 | "version": "1.1.0", 3586 | "resolved": "https://registry.npmjs.org/mem/-/mem-1.1.0.tgz", 3587 | "integrity": "sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y=", 3588 | "dev": true, 3589 | "requires": { 3590 | "mimic-fn": "1.2.0" 3591 | } 3592 | }, 3593 | "meow": { 3594 | "version": "4.0.0", 3595 | "resolved": "https://registry.npmjs.org/meow/-/meow-4.0.0.tgz", 3596 | "integrity": "sha512-Me/kel335m6vMKmEmA6c87Z6DUFW3JqkINRnxkbC+A/PUm0D5Fl2dEBQrPKnqCL9Te/CIa1MUt/0InMJhuC/sw==", 3597 | "requires": { 3598 | "camelcase-keys": "4.2.0", 3599 | "decamelize-keys": "1.1.0", 3600 | "loud-rejection": "1.6.0", 3601 | "minimist": "1.2.0", 3602 | "minimist-options": "3.0.2", 3603 | "normalize-package-data": "2.4.0", 3604 | "read-pkg-up": "3.0.0", 3605 | "redent": "2.0.0", 3606 | "trim-newlines": "2.0.0" 3607 | } 3608 | }, 3609 | "merge-descriptors": { 3610 | "version": "1.0.1", 3611 | "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", 3612 | "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" 3613 | }, 3614 | "methods": { 3615 | "version": "1.1.2", 3616 | "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", 3617 | "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" 3618 | }, 3619 | "micromatch": { 3620 | "version": "2.3.11", 3621 | "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", 3622 | "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", 3623 | "dev": true, 3624 | "requires": { 3625 | "arr-diff": "2.0.0", 3626 | "array-unique": "0.2.1", 3627 | "braces": "1.8.5", 3628 | "expand-brackets": "0.1.5", 3629 | "extglob": "0.3.2", 3630 | "filename-regex": "2.0.1", 3631 | "is-extglob": "1.0.0", 3632 | "is-glob": "2.0.1", 3633 | "kind-of": "3.2.2", 3634 | "normalize-path": "2.1.1", 3635 | "object.omit": "2.0.1", 3636 | "parse-glob": "3.0.4", 3637 | "regex-cache": "0.4.4" 3638 | } 3639 | }, 3640 | "miller-rabin": { 3641 | "version": "4.0.1", 3642 | "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", 3643 | "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", 3644 | "dev": true, 3645 | "requires": { 3646 | "bn.js": "4.11.8", 3647 | "brorand": "1.1.0" 3648 | } 3649 | }, 3650 | "mime": { 3651 | "version": "1.6.0", 3652 | "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", 3653 | "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" 3654 | }, 3655 | "mime-db": { 3656 | "version": "1.33.0", 3657 | "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz", 3658 | "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==" 3659 | }, 3660 | "mime-types": { 3661 | "version": "2.1.18", 3662 | "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", 3663 | "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", 3664 | "requires": { 3665 | "mime-db": "1.33.0" 3666 | } 3667 | }, 3668 | "mimic-fn": { 3669 | "version": "1.2.0", 3670 | "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", 3671 | "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", 3672 | "dev": true 3673 | }, 3674 | "minimalistic-assert": { 3675 | "version": "1.0.0", 3676 | "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz", 3677 | "integrity": "sha1-cCvi3aazf0g2vLP121ZkG2Sh09M=", 3678 | "dev": true 3679 | }, 3680 | "minimalistic-crypto-utils": { 3681 | "version": "1.0.1", 3682 | "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", 3683 | "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", 3684 | "dev": true 3685 | }, 3686 | "minimatch": { 3687 | "version": "3.0.4", 3688 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", 3689 | "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", 3690 | "dev": true, 3691 | "requires": { 3692 | "brace-expansion": "1.1.11" 3693 | } 3694 | }, 3695 | "minimist": { 3696 | "version": "1.2.0", 3697 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", 3698 | "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" 3699 | }, 3700 | "minimist-options": { 3701 | "version": "3.0.2", 3702 | "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-3.0.2.tgz", 3703 | "integrity": "sha512-FyBrT/d0d4+uiZRbqznPXqw3IpZZG3gl3wKWiX784FycUKVwBt0uLBFkQrtE4tZOrgo78nZp2jnKz3L65T5LdQ==", 3704 | "requires": { 3705 | "arrify": "1.0.1", 3706 | "is-plain-obj": "1.1.0" 3707 | } 3708 | }, 3709 | "mkdirp": { 3710 | "version": "0.5.1", 3711 | "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", 3712 | "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", 3713 | "dev": true, 3714 | "requires": { 3715 | "minimist": "0.0.8" 3716 | }, 3717 | "dependencies": { 3718 | "minimist": { 3719 | "version": "0.0.8", 3720 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", 3721 | "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", 3722 | "dev": true 3723 | } 3724 | } 3725 | }, 3726 | "module-deps": { 3727 | "version": "6.0.0", 3728 | "resolved": "https://registry.npmjs.org/module-deps/-/module-deps-6.0.0.tgz", 3729 | "integrity": "sha512-BKsMhJJENEM4dTgqq2MDTTHXRHcNUFegoAwlG4HO4VMdUyMcJDKgfgI+MOv6tR5Iv8G3MKZFgsSiyP3ZoosRMw==", 3730 | "dev": true, 3731 | "requires": { 3732 | "JSONStream": "1.3.2", 3733 | "browser-resolve": "1.11.2", 3734 | "cached-path-relative": "1.0.1", 3735 | "concat-stream": "1.6.1", 3736 | "defined": "1.0.0", 3737 | "detective": "5.1.0", 3738 | "duplexer2": "0.1.4", 3739 | "inherits": "2.0.3", 3740 | "parents": "1.0.1", 3741 | "readable-stream": "2.3.5", 3742 | "resolve": "1.5.0", 3743 | "stream-combiner2": "1.1.1", 3744 | "subarg": "1.0.0", 3745 | "through2": "2.0.3", 3746 | "xtend": "4.0.1" 3747 | } 3748 | }, 3749 | "morgan": { 3750 | "version": "1.9.0", 3751 | "resolved": "https://registry.npmjs.org/morgan/-/morgan-1.9.0.tgz", 3752 | "integrity": "sha1-0B+mxlhZt2/PMbPLU6OCGjEdgFE=", 3753 | "requires": { 3754 | "basic-auth": "2.0.0", 3755 | "debug": "2.6.9", 3756 | "depd": "1.1.2", 3757 | "on-finished": "2.3.0", 3758 | "on-headers": "1.0.1" 3759 | } 3760 | }, 3761 | "move-decimal-point": { 3762 | "version": "0.0.4", 3763 | "resolved": "https://registry.npmjs.org/move-decimal-point/-/move-decimal-point-0.0.4.tgz", 3764 | "integrity": "sha512-cZrpE/ykbwSmD0DnKAcKa49zaK5LaftD6DzpQDmjSMPRK6i4D4xvnVBCIuZXkpAqvon6DP9Oum2TcLZjclVB/Q==", 3765 | "dev": true 3766 | }, 3767 | "ms": { 3768 | "version": "2.0.0", 3769 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", 3770 | "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" 3771 | }, 3772 | "nan": { 3773 | "version": "2.9.2", 3774 | "resolved": "https://registry.npmjs.org/nan/-/nan-2.9.2.tgz", 3775 | "integrity": "sha512-ltW65co7f3PQWBDbqVvaU1WtFJUsNW7sWWm4HINhbMQIyVyzIeyZ8toX5TC5eeooE6piZoaEh4cZkueSKG3KYw==", 3776 | "dev": true, 3777 | "optional": true 3778 | }, 3779 | "negotiator": { 3780 | "version": "0.6.1", 3781 | "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", 3782 | "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=" 3783 | }, 3784 | "normalize-package-data": { 3785 | "version": "2.4.0", 3786 | "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", 3787 | "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==", 3788 | "requires": { 3789 | "hosted-git-info": "2.6.0", 3790 | "is-builtin-module": "1.0.0", 3791 | "semver": "5.5.0", 3792 | "validate-npm-package-license": "3.0.3" 3793 | } 3794 | }, 3795 | "normalize-path": { 3796 | "version": "2.1.1", 3797 | "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", 3798 | "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", 3799 | "dev": true, 3800 | "requires": { 3801 | "remove-trailing-separator": "1.1.0" 3802 | } 3803 | }, 3804 | "npm-run-path": { 3805 | "version": "2.0.2", 3806 | "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", 3807 | "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", 3808 | "dev": true, 3809 | "requires": { 3810 | "path-key": "2.0.1" 3811 | } 3812 | }, 3813 | "number-is-nan": { 3814 | "version": "1.0.1", 3815 | "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", 3816 | "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", 3817 | "dev": true 3818 | }, 3819 | "object-assign": { 3820 | "version": "4.1.1", 3821 | "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", 3822 | "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" 3823 | }, 3824 | "object-keys": { 3825 | "version": "1.0.11", 3826 | "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.11.tgz", 3827 | "integrity": "sha1-xUYBd4rVYPEULODgG8yotW0TQm0=", 3828 | "dev": true 3829 | }, 3830 | "object.omit": { 3831 | "version": "2.0.1", 3832 | "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", 3833 | "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", 3834 | "dev": true, 3835 | "requires": { 3836 | "for-own": "0.1.5", 3837 | "is-extendable": "0.1.1" 3838 | } 3839 | }, 3840 | "on-finished": { 3841 | "version": "2.3.0", 3842 | "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", 3843 | "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", 3844 | "requires": { 3845 | "ee-first": "1.1.1" 3846 | } 3847 | }, 3848 | "on-headers": { 3849 | "version": "1.0.1", 3850 | "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.1.tgz", 3851 | "integrity": "sha1-ko9dD0cNSTQmUepnlLCFfBAGk/c=" 3852 | }, 3853 | "once": { 3854 | "version": "1.4.0", 3855 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 3856 | "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", 3857 | "dev": true, 3858 | "requires": { 3859 | "wrappy": "1.0.2" 3860 | } 3861 | }, 3862 | "only": { 3863 | "version": "0.0.2", 3864 | "resolved": "https://registry.npmjs.org/only/-/only-0.0.2.tgz", 3865 | "integrity": "sha1-Kv3oTQPlC5qO3EROMGEKcCle37Q=" 3866 | }, 3867 | "original": { 3868 | "version": "1.0.0", 3869 | "resolved": "https://registry.npmjs.org/original/-/original-1.0.0.tgz", 3870 | "integrity": "sha1-kUf5P6FpbQS+YeAb1QuurKZWvTs=", 3871 | "requires": { 3872 | "url-parse": "1.0.5" 3873 | } 3874 | }, 3875 | "os-browserify": { 3876 | "version": "0.3.0", 3877 | "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", 3878 | "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", 3879 | "dev": true 3880 | }, 3881 | "os-homedir": { 3882 | "version": "1.0.2", 3883 | "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", 3884 | "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", 3885 | "dev": true 3886 | }, 3887 | "os-locale": { 3888 | "version": "2.1.0", 3889 | "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz", 3890 | "integrity": "sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==", 3891 | "dev": true, 3892 | "requires": { 3893 | "execa": "0.7.0", 3894 | "lcid": "1.0.0", 3895 | "mem": "1.1.0" 3896 | } 3897 | }, 3898 | "os-tmpdir": { 3899 | "version": "1.0.2", 3900 | "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", 3901 | "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", 3902 | "dev": true 3903 | }, 3904 | "outpipe": { 3905 | "version": "1.1.1", 3906 | "resolved": "https://registry.npmjs.org/outpipe/-/outpipe-1.1.1.tgz", 3907 | "integrity": "sha1-UM+GFjZeh+Ax4ppeyTOaPaRyX6I=", 3908 | "dev": true, 3909 | "requires": { 3910 | "shell-quote": "1.6.1" 3911 | } 3912 | }, 3913 | "output-file-sync": { 3914 | "version": "1.1.2", 3915 | "resolved": "https://registry.npmjs.org/output-file-sync/-/output-file-sync-1.1.2.tgz", 3916 | "integrity": "sha1-0KM+7+YaIF+suQCS6CZZjVJFznY=", 3917 | "dev": true, 3918 | "requires": { 3919 | "graceful-fs": "4.1.11", 3920 | "mkdirp": "0.5.1", 3921 | "object-assign": "4.1.1" 3922 | } 3923 | }, 3924 | "p-finally": { 3925 | "version": "1.0.0", 3926 | "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", 3927 | "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", 3928 | "dev": true 3929 | }, 3930 | "p-limit": { 3931 | "version": "1.2.0", 3932 | "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.2.0.tgz", 3933 | "integrity": "sha512-Y/OtIaXtUPr4/YpMv1pCL5L5ed0rumAaAeBSj12F+bSlMdys7i8oQF/GUJmfpTS/QoaRrS/k6pma29haJpsMng==", 3934 | "requires": { 3935 | "p-try": "1.0.0" 3936 | } 3937 | }, 3938 | "p-locate": { 3939 | "version": "2.0.0", 3940 | "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", 3941 | "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", 3942 | "requires": { 3943 | "p-limit": "1.2.0" 3944 | } 3945 | }, 3946 | "p-try": { 3947 | "version": "1.0.0", 3948 | "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", 3949 | "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=" 3950 | }, 3951 | "pako": { 3952 | "version": "1.0.6", 3953 | "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.6.tgz", 3954 | "integrity": "sha512-lQe48YPsMJAig+yngZ87Lus+NF+3mtu7DVOBu6b/gHO1YpKwIj5AWjZ/TOS7i46HD/UixzWb1zeWDZfGZ3iYcg==", 3955 | "dev": true 3956 | }, 3957 | "parents": { 3958 | "version": "1.0.1", 3959 | "resolved": "https://registry.npmjs.org/parents/-/parents-1.0.1.tgz", 3960 | "integrity": "sha1-/t1NK/GTp3dF/nHjcdc8MwfZx1E=", 3961 | "dev": true, 3962 | "requires": { 3963 | "path-platform": "0.11.15" 3964 | } 3965 | }, 3966 | "parse-asn1": { 3967 | "version": "5.1.0", 3968 | "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.0.tgz", 3969 | "integrity": "sha1-N8T5t+06tlx0gXtfJICTf7+XxxI=", 3970 | "dev": true, 3971 | "requires": { 3972 | "asn1.js": "4.10.1", 3973 | "browserify-aes": "1.1.1", 3974 | "create-hash": "1.1.3", 3975 | "evp_bytestokey": "1.0.3", 3976 | "pbkdf2": "3.0.14" 3977 | } 3978 | }, 3979 | "parse-glob": { 3980 | "version": "3.0.4", 3981 | "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", 3982 | "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", 3983 | "dev": true, 3984 | "requires": { 3985 | "glob-base": "0.3.0", 3986 | "is-dotfile": "1.0.3", 3987 | "is-extglob": "1.0.0", 3988 | "is-glob": "2.0.1" 3989 | } 3990 | }, 3991 | "parse-json": { 3992 | "version": "4.0.0", 3993 | "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", 3994 | "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", 3995 | "requires": { 3996 | "error-ex": "1.3.1", 3997 | "json-parse-better-errors": "1.0.1" 3998 | } 3999 | }, 4000 | "parseurl": { 4001 | "version": "1.3.2", 4002 | "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", 4003 | "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=" 4004 | }, 4005 | "path-browserify": { 4006 | "version": "0.0.0", 4007 | "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.0.tgz", 4008 | "integrity": "sha1-oLhwcpquIUAFt9UDLsLLuw+0RRo=", 4009 | "dev": true 4010 | }, 4011 | "path-exists": { 4012 | "version": "3.0.0", 4013 | "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", 4014 | "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" 4015 | }, 4016 | "path-is-absolute": { 4017 | "version": "1.0.1", 4018 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", 4019 | "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", 4020 | "dev": true 4021 | }, 4022 | "path-key": { 4023 | "version": "2.0.1", 4024 | "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", 4025 | "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", 4026 | "dev": true 4027 | }, 4028 | "path-parse": { 4029 | "version": "1.0.5", 4030 | "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.5.tgz", 4031 | "integrity": "sha1-PBrfhx6pzWyUMbbqK9dKD/BVxME=" 4032 | }, 4033 | "path-platform": { 4034 | "version": "0.11.15", 4035 | "resolved": "https://registry.npmjs.org/path-platform/-/path-platform-0.11.15.tgz", 4036 | "integrity": "sha1-6GQhf3TDaFDwhSt43Hv31KVyG/I=", 4037 | "dev": true 4038 | }, 4039 | "path-to-regexp": { 4040 | "version": "0.1.7", 4041 | "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", 4042 | "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" 4043 | }, 4044 | "path-type": { 4045 | "version": "3.0.0", 4046 | "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", 4047 | "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", 4048 | "requires": { 4049 | "pify": "3.0.0" 4050 | } 4051 | }, 4052 | "pbkdf2": { 4053 | "version": "3.0.14", 4054 | "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.14.tgz", 4055 | "integrity": "sha512-gjsZW9O34fm0R7PaLHRJmLLVfSoesxztjPjE9o6R+qtVJij90ltg1joIovN9GKrRW3t1PzhDDG3UMEMFfZ+1wA==", 4056 | "dev": true, 4057 | "requires": { 4058 | "create-hash": "1.1.3", 4059 | "create-hmac": "1.1.6", 4060 | "ripemd160": "2.0.1", 4061 | "safe-buffer": "5.1.1", 4062 | "sha.js": "2.4.10" 4063 | } 4064 | }, 4065 | "pify": { 4066 | "version": "3.0.0", 4067 | "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", 4068 | "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" 4069 | }, 4070 | "pngjs": { 4071 | "version": "3.3.2", 4072 | "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-3.3.2.tgz", 4073 | "integrity": "sha512-bVNd3LMXRzdo6s4ehr4XW2wFMu9cb40nPgHEjSSppm8/++Xc+g0b2QQb+SeDesgfANXbjydOr1or9YQ+pcCZPQ==", 4074 | "dev": true 4075 | }, 4076 | "popper.js": { 4077 | "version": "1.12.9", 4078 | "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.12.9.tgz", 4079 | "integrity": "sha1-DfvC3/lsRRuzMu3Pz6r1ZtMx1bM=" 4080 | }, 4081 | "prepare-response": { 4082 | "version": "2.1.1", 4083 | "resolved": "https://registry.npmjs.org/prepare-response/-/prepare-response-2.1.1.tgz", 4084 | "integrity": "sha512-WwQJDGRqIOsUqPV13TwEV+7c0u1rBGM5hs2JKSHJsRfaX1Lwqt7w1/FT5euUTP3b04tdhnWHq6JNPM7EWTbVPA==", 4085 | "dev": true, 4086 | "requires": { 4087 | "mime": "2.2.0", 4088 | "ms": "2.0.0", 4089 | "promise": "8.0.1" 4090 | }, 4091 | "dependencies": { 4092 | "mime": { 4093 | "version": "2.2.0", 4094 | "resolved": "https://registry.npmjs.org/mime/-/mime-2.2.0.tgz", 4095 | "integrity": "sha512-0Qz9uF1ATtl8RKJG4VRfOymh7PyEor6NbrI/61lRfuRe4vx9SNATrvAeTj2EWVRKjEQGskrzWkJBBY5NbaVHIA==", 4096 | "dev": true 4097 | }, 4098 | "promise": { 4099 | "version": "8.0.1", 4100 | "resolved": "https://registry.npmjs.org/promise/-/promise-8.0.1.tgz", 4101 | "integrity": "sha1-5F1osAoXZHttpxG/he1u1HII9FA=", 4102 | "dev": true, 4103 | "requires": { 4104 | "asap": "2.0.6" 4105 | } 4106 | } 4107 | } 4108 | }, 4109 | "preserve": { 4110 | "version": "0.2.0", 4111 | "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", 4112 | "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=", 4113 | "dev": true 4114 | }, 4115 | "private": { 4116 | "version": "0.1.8", 4117 | "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", 4118 | "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", 4119 | "dev": true 4120 | }, 4121 | "process": { 4122 | "version": "0.11.10", 4123 | "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", 4124 | "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", 4125 | "dev": true 4126 | }, 4127 | "process-nextick-args": { 4128 | "version": "2.0.0", 4129 | "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", 4130 | "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==" 4131 | }, 4132 | "promise": { 4133 | "version": "7.3.1", 4134 | "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", 4135 | "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", 4136 | "requires": { 4137 | "asap": "2.0.6" 4138 | } 4139 | }, 4140 | "proxy-addr": { 4141 | "version": "2.0.3", 4142 | "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.3.tgz", 4143 | "integrity": "sha512-jQTChiCJteusULxjBp8+jftSQE5Obdl3k4cnmLA6WXtK6XFuWRnvVL7aCiBqaLPM8c4ph0S4tKna8XvmIwEnXQ==", 4144 | "requires": { 4145 | "forwarded": "0.1.2", 4146 | "ipaddr.js": "1.6.0" 4147 | } 4148 | }, 4149 | "pseudomap": { 4150 | "version": "1.0.2", 4151 | "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", 4152 | "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", 4153 | "dev": true 4154 | }, 4155 | "public-encrypt": { 4156 | "version": "4.0.0", 4157 | "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.0.tgz", 4158 | "integrity": "sha1-OfaZ86RlYN1eusvKaTyvfGXBjMY=", 4159 | "dev": true, 4160 | "requires": { 4161 | "bn.js": "4.11.8", 4162 | "browserify-rsa": "4.0.1", 4163 | "create-hash": "1.1.3", 4164 | "parse-asn1": "5.1.0", 4165 | "randombytes": "2.0.6" 4166 | } 4167 | }, 4168 | "pug": { 4169 | "version": "2.0.1", 4170 | "resolved": "https://registry.npmjs.org/pug/-/pug-2.0.1.tgz", 4171 | "integrity": "sha1-J8FRYStT1ymr6OgoWqxryJNFtdA=", 4172 | "requires": { 4173 | "pug-code-gen": "2.0.1", 4174 | "pug-filters": "3.0.1", 4175 | "pug-lexer": "4.0.0", 4176 | "pug-linker": "3.0.5", 4177 | "pug-load": "2.0.11", 4178 | "pug-parser": "5.0.0", 4179 | "pug-runtime": "2.0.4", 4180 | "pug-strip-comments": "1.0.3" 4181 | } 4182 | }, 4183 | "pug-attrs": { 4184 | "version": "2.0.3", 4185 | "resolved": "https://registry.npmjs.org/pug-attrs/-/pug-attrs-2.0.3.tgz", 4186 | "integrity": "sha1-owlflw5kFR972tlX7vVftdeQXRU=", 4187 | "requires": { 4188 | "constantinople": "3.1.2", 4189 | "js-stringify": "1.0.2", 4190 | "pug-runtime": "2.0.4" 4191 | } 4192 | }, 4193 | "pug-code-gen": { 4194 | "version": "2.0.1", 4195 | "resolved": "https://registry.npmjs.org/pug-code-gen/-/pug-code-gen-2.0.1.tgz", 4196 | "integrity": "sha1-CVHsgyJddNjPxHan+Zolm199BQw=", 4197 | "requires": { 4198 | "constantinople": "3.1.2", 4199 | "doctypes": "1.1.0", 4200 | "js-stringify": "1.0.2", 4201 | "pug-attrs": "2.0.3", 4202 | "pug-error": "1.3.2", 4203 | "pug-runtime": "2.0.4", 4204 | "void-elements": "2.0.1", 4205 | "with": "5.1.1" 4206 | } 4207 | }, 4208 | "pug-error": { 4209 | "version": "1.3.2", 4210 | "resolved": "https://registry.npmjs.org/pug-error/-/pug-error-1.3.2.tgz", 4211 | "integrity": "sha1-U659nSm7A89WRJOgJhCfVMR/XyY=" 4212 | }, 4213 | "pug-filters": { 4214 | "version": "3.0.1", 4215 | "resolved": "https://registry.npmjs.org/pug-filters/-/pug-filters-3.0.1.tgz", 4216 | "integrity": "sha1-Fj73O/ux8VRNAysrQPRRMOtS3Ms=", 4217 | "requires": { 4218 | "clean-css": "3.4.28", 4219 | "constantinople": "3.1.2", 4220 | "jstransformer": "1.0.0", 4221 | "pug-error": "1.3.2", 4222 | "pug-walk": "1.1.7", 4223 | "resolve": "1.5.0", 4224 | "uglify-js": "2.8.29" 4225 | }, 4226 | "dependencies": { 4227 | "uglify-js": { 4228 | "version": "2.8.29", 4229 | "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", 4230 | "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", 4231 | "requires": { 4232 | "source-map": "0.5.7", 4233 | "uglify-to-browserify": "1.0.2", 4234 | "yargs": "3.10.0" 4235 | } 4236 | } 4237 | } 4238 | }, 4239 | "pug-lexer": { 4240 | "version": "4.0.0", 4241 | "resolved": "https://registry.npmjs.org/pug-lexer/-/pug-lexer-4.0.0.tgz", 4242 | "integrity": "sha1-IQwYRX7y4XYCQnQMXmR715TOwng=", 4243 | "requires": { 4244 | "character-parser": "2.2.0", 4245 | "is-expression": "3.0.0", 4246 | "pug-error": "1.3.2" 4247 | } 4248 | }, 4249 | "pug-linker": { 4250 | "version": "3.0.5", 4251 | "resolved": "https://registry.npmjs.org/pug-linker/-/pug-linker-3.0.5.tgz", 4252 | "integrity": "sha1-npp65ABWgtAn3uuWsAD4juuDoC8=", 4253 | "requires": { 4254 | "pug-error": "1.3.2", 4255 | "pug-walk": "1.1.7" 4256 | } 4257 | }, 4258 | "pug-load": { 4259 | "version": "2.0.11", 4260 | "resolved": "https://registry.npmjs.org/pug-load/-/pug-load-2.0.11.tgz", 4261 | "integrity": "sha1-5kjlftET/iwfRdV4WOorrWvAFSc=", 4262 | "requires": { 4263 | "object-assign": "4.1.1", 4264 | "pug-walk": "1.1.7" 4265 | } 4266 | }, 4267 | "pug-parser": { 4268 | "version": "5.0.0", 4269 | "resolved": "https://registry.npmjs.org/pug-parser/-/pug-parser-5.0.0.tgz", 4270 | "integrity": "sha1-45Stmz/KkxI5QK/4hcBuRKt+aOQ=", 4271 | "requires": { 4272 | "pug-error": "1.3.2", 4273 | "token-stream": "0.0.1" 4274 | } 4275 | }, 4276 | "pug-runtime": { 4277 | "version": "2.0.4", 4278 | "resolved": "https://registry.npmjs.org/pug-runtime/-/pug-runtime-2.0.4.tgz", 4279 | "integrity": "sha1-4XjhvaaKsujArPybztLFT9iM61g=" 4280 | }, 4281 | "pug-strip-comments": { 4282 | "version": "1.0.3", 4283 | "resolved": "https://registry.npmjs.org/pug-strip-comments/-/pug-strip-comments-1.0.3.tgz", 4284 | "integrity": "sha1-8VWVkiBu3G+FMQ2s9K+0igJa9Z8=", 4285 | "requires": { 4286 | "pug-error": "1.3.2" 4287 | } 4288 | }, 4289 | "pug-walk": { 4290 | "version": "1.1.7", 4291 | "resolved": "https://registry.npmjs.org/pug-walk/-/pug-walk-1.1.7.tgz", 4292 | "integrity": "sha1-wA1cUSi6xYBr7BXSt+fNq+QlMfM=" 4293 | }, 4294 | "pugify": { 4295 | "version": "2.2.0", 4296 | "resolved": "https://registry.npmjs.org/pugify/-/pugify-2.2.0.tgz", 4297 | "integrity": "sha512-/8Uf4MuOf/8bZO+aazkoS5m741mAPhj8jRl6YmE0Yyn1/eBBAkh4CBUNt5yO21S+t81yzy3SPJBWAtllIuHrmw==", 4298 | "dev": true, 4299 | "requires": { 4300 | "browserify-transform-tools": "1.7.0", 4301 | "convert-source-map": "1.3.0", 4302 | "pug": "2.0.1", 4303 | "source-map": "0.5.7", 4304 | "through": "2.3.8" 4305 | }, 4306 | "dependencies": { 4307 | "convert-source-map": { 4308 | "version": "1.3.0", 4309 | "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.3.0.tgz", 4310 | "integrity": "sha1-6fPpxuJyjvwmdmlqcOs4L3MQamc=", 4311 | "dev": true 4312 | } 4313 | } 4314 | }, 4315 | "punycode": { 4316 | "version": "1.4.1", 4317 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", 4318 | "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", 4319 | "dev": true 4320 | }, 4321 | "qrcode": { 4322 | "version": "1.2.0", 4323 | "resolved": "https://registry.npmjs.org/qrcode/-/qrcode-1.2.0.tgz", 4324 | "integrity": "sha512-wZK0Z0eYmOUDP2tOGzmLdeBn5Npa+4wms9GdvzH7HrywvGUq/Stz0BKUhW4DfmBf1PSrm9dNfdnVDq683Zxvag==", 4325 | "dev": true, 4326 | "requires": { 4327 | "can-promise": "0.0.1", 4328 | "dijkstrajs": "1.0.1", 4329 | "isarray": "2.0.4", 4330 | "pngjs": "3.3.2", 4331 | "yargs": "8.0.2" 4332 | }, 4333 | "dependencies": { 4334 | "camelcase": { 4335 | "version": "4.1.0", 4336 | "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", 4337 | "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", 4338 | "dev": true 4339 | }, 4340 | "cliui": { 4341 | "version": "3.2.0", 4342 | "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", 4343 | "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", 4344 | "dev": true, 4345 | "requires": { 4346 | "string-width": "1.0.2", 4347 | "strip-ansi": "3.0.1", 4348 | "wrap-ansi": "2.1.0" 4349 | }, 4350 | "dependencies": { 4351 | "string-width": { 4352 | "version": "1.0.2", 4353 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", 4354 | "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", 4355 | "dev": true, 4356 | "requires": { 4357 | "code-point-at": "1.1.0", 4358 | "is-fullwidth-code-point": "1.0.0", 4359 | "strip-ansi": "3.0.1" 4360 | } 4361 | } 4362 | } 4363 | }, 4364 | "isarray": { 4365 | "version": "2.0.4", 4366 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.4.tgz", 4367 | "integrity": "sha512-GMxXOiUirWg1xTKRipM0Ek07rX+ubx4nNVElTJdNLYmNO/2YrDkgJGw9CljXn+r4EWiDQg/8lsRdHyg2PJuUaA==", 4368 | "dev": true 4369 | }, 4370 | "load-json-file": { 4371 | "version": "2.0.0", 4372 | "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", 4373 | "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", 4374 | "dev": true, 4375 | "requires": { 4376 | "graceful-fs": "4.1.11", 4377 | "parse-json": "2.2.0", 4378 | "pify": "2.3.0", 4379 | "strip-bom": "3.0.0" 4380 | } 4381 | }, 4382 | "parse-json": { 4383 | "version": "2.2.0", 4384 | "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", 4385 | "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", 4386 | "dev": true, 4387 | "requires": { 4388 | "error-ex": "1.3.1" 4389 | } 4390 | }, 4391 | "path-type": { 4392 | "version": "2.0.0", 4393 | "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", 4394 | "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", 4395 | "dev": true, 4396 | "requires": { 4397 | "pify": "2.3.0" 4398 | } 4399 | }, 4400 | "pify": { 4401 | "version": "2.3.0", 4402 | "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", 4403 | "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", 4404 | "dev": true 4405 | }, 4406 | "read-pkg": { 4407 | "version": "2.0.0", 4408 | "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", 4409 | "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", 4410 | "dev": true, 4411 | "requires": { 4412 | "load-json-file": "2.0.0", 4413 | "normalize-package-data": "2.4.0", 4414 | "path-type": "2.0.0" 4415 | } 4416 | }, 4417 | "read-pkg-up": { 4418 | "version": "2.0.0", 4419 | "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", 4420 | "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", 4421 | "dev": true, 4422 | "requires": { 4423 | "find-up": "2.1.0", 4424 | "read-pkg": "2.0.0" 4425 | } 4426 | }, 4427 | "yargs": { 4428 | "version": "8.0.2", 4429 | "resolved": "https://registry.npmjs.org/yargs/-/yargs-8.0.2.tgz", 4430 | "integrity": "sha1-YpmpBVsc78lp/355wdkY3Osiw2A=", 4431 | "dev": true, 4432 | "requires": { 4433 | "camelcase": "4.1.0", 4434 | "cliui": "3.2.0", 4435 | "decamelize": "1.2.0", 4436 | "get-caller-file": "1.0.2", 4437 | "os-locale": "2.1.0", 4438 | "read-pkg-up": "2.0.0", 4439 | "require-directory": "2.1.1", 4440 | "require-main-filename": "1.0.1", 4441 | "set-blocking": "2.0.0", 4442 | "string-width": "2.1.1", 4443 | "which-module": "2.0.0", 4444 | "y18n": "3.2.1", 4445 | "yargs-parser": "7.0.0" 4446 | } 4447 | } 4448 | } 4449 | }, 4450 | "qs": { 4451 | "version": "6.5.1", 4452 | "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", 4453 | "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==" 4454 | }, 4455 | "querystring": { 4456 | "version": "0.2.0", 4457 | "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", 4458 | "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", 4459 | "dev": true 4460 | }, 4461 | "querystring-es3": { 4462 | "version": "0.2.1", 4463 | "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", 4464 | "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", 4465 | "dev": true 4466 | }, 4467 | "querystringify": { 4468 | "version": "0.0.4", 4469 | "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-0.0.4.tgz", 4470 | "integrity": "sha1-DPf4T5Rj/wrlHExLFC2VvjdyTZw=" 4471 | }, 4472 | "quick-lru": { 4473 | "version": "1.1.0", 4474 | "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-1.1.0.tgz", 4475 | "integrity": "sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g=" 4476 | }, 4477 | "randomatic": { 4478 | "version": "1.1.7", 4479 | "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-1.1.7.tgz", 4480 | "integrity": "sha512-D5JUjPyJbaJDkuAazpVnSfVkLlpeO3wDlPROTMLGKG1zMFNFRgrciKo1ltz/AzNTkqE0HzDx655QOL51N06how==", 4481 | "dev": true, 4482 | "requires": { 4483 | "is-number": "3.0.0", 4484 | "kind-of": "4.0.0" 4485 | }, 4486 | "dependencies": { 4487 | "is-number": { 4488 | "version": "3.0.0", 4489 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", 4490 | "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", 4491 | "dev": true, 4492 | "requires": { 4493 | "kind-of": "3.2.2" 4494 | }, 4495 | "dependencies": { 4496 | "kind-of": { 4497 | "version": "3.2.2", 4498 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 4499 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 4500 | "dev": true, 4501 | "requires": { 4502 | "is-buffer": "1.1.6" 4503 | } 4504 | } 4505 | } 4506 | }, 4507 | "kind-of": { 4508 | "version": "4.0.0", 4509 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", 4510 | "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", 4511 | "dev": true, 4512 | "requires": { 4513 | "is-buffer": "1.1.6" 4514 | } 4515 | } 4516 | } 4517 | }, 4518 | "randombytes": { 4519 | "version": "2.0.6", 4520 | "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.0.6.tgz", 4521 | "integrity": "sha512-CIQ5OFxf4Jou6uOKe9t1AOgqpeU5fd70A8NPdHSGeYXqXsPe6peOwI0cUl88RWZ6sP1vPMV3avd/R6cZ5/sP1A==", 4522 | "dev": true, 4523 | "requires": { 4524 | "safe-buffer": "5.1.1" 4525 | } 4526 | }, 4527 | "randomfill": { 4528 | "version": "1.0.4", 4529 | "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", 4530 | "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", 4531 | "dev": true, 4532 | "requires": { 4533 | "randombytes": "2.0.6", 4534 | "safe-buffer": "5.1.1" 4535 | } 4536 | }, 4537 | "range-parser": { 4538 | "version": "1.2.0", 4539 | "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", 4540 | "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=" 4541 | }, 4542 | "raw-body": { 4543 | "version": "2.3.2", 4544 | "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.2.tgz", 4545 | "integrity": "sha1-vNYMd9Prk83gBQKVw/N5OJvIj4k=", 4546 | "requires": { 4547 | "bytes": "3.0.0", 4548 | "http-errors": "1.6.2", 4549 | "iconv-lite": "0.4.19", 4550 | "unpipe": "1.0.0" 4551 | } 4552 | }, 4553 | "read-only-stream": { 4554 | "version": "2.0.0", 4555 | "resolved": "https://registry.npmjs.org/read-only-stream/-/read-only-stream-2.0.0.tgz", 4556 | "integrity": "sha1-JyT9aoET1zdkrCiNQ4YnDB2/F/A=", 4557 | "dev": true, 4558 | "requires": { 4559 | "readable-stream": "2.3.5" 4560 | } 4561 | }, 4562 | "read-pkg": { 4563 | "version": "3.0.0", 4564 | "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", 4565 | "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", 4566 | "requires": { 4567 | "load-json-file": "4.0.0", 4568 | "normalize-package-data": "2.4.0", 4569 | "path-type": "3.0.0" 4570 | } 4571 | }, 4572 | "read-pkg-up": { 4573 | "version": "3.0.0", 4574 | "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", 4575 | "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", 4576 | "requires": { 4577 | "find-up": "2.1.0", 4578 | "read-pkg": "3.0.0" 4579 | } 4580 | }, 4581 | "readable-stream": { 4582 | "version": "2.3.5", 4583 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.5.tgz", 4584 | "integrity": "sha512-tK0yDhrkygt/knjowCUiWP9YdV7c5R+8cR0r/kt9ZhBU906Fs6RpQJCEilamRJj1Nx2rWI6LkW9gKqjTkshhEw==", 4585 | "requires": { 4586 | "core-util-is": "1.0.2", 4587 | "inherits": "2.0.3", 4588 | "isarray": "1.0.0", 4589 | "process-nextick-args": "2.0.0", 4590 | "safe-buffer": "5.1.1", 4591 | "string_decoder": "1.0.3", 4592 | "util-deprecate": "1.0.2" 4593 | } 4594 | }, 4595 | "readdirp": { 4596 | "version": "2.1.0", 4597 | "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz", 4598 | "integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=", 4599 | "dev": true, 4600 | "requires": { 4601 | "graceful-fs": "4.1.11", 4602 | "minimatch": "3.0.4", 4603 | "readable-stream": "2.3.5", 4604 | "set-immediate-shim": "1.0.1" 4605 | } 4606 | }, 4607 | "reconnecting-websocket": { 4608 | "version": "3.2.2", 4609 | "resolved": "https://registry.npmjs.org/reconnecting-websocket/-/reconnecting-websocket-3.2.2.tgz", 4610 | "integrity": "sha512-SWSfoXiaHVOqXuPWFgGWeUxKnb5HIY7I/Fh5C/hy4wUOgeOh7YIMXEiv5/eHBlNs4tNzCrO5YDR9AH62NWle0Q==", 4611 | "dev": true 4612 | }, 4613 | "redent": { 4614 | "version": "2.0.0", 4615 | "resolved": "https://registry.npmjs.org/redent/-/redent-2.0.0.tgz", 4616 | "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=", 4617 | "requires": { 4618 | "indent-string": "3.2.0", 4619 | "strip-indent": "2.0.0" 4620 | } 4621 | }, 4622 | "regenerate": { 4623 | "version": "1.3.3", 4624 | "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.3.3.tgz", 4625 | "integrity": "sha512-jVpo1GadrDAK59t/0jRx5VxYWQEDkkEKi6+HjE3joFVLfDOh9Xrdh0dF1eSq+BI/SwvTQ44gSscJ8N5zYL61sg==", 4626 | "dev": true 4627 | }, 4628 | "regenerator-runtime": { 4629 | "version": "0.10.5", 4630 | "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz", 4631 | "integrity": "sha1-M2w+/BIgrc7dosn6tntaeVWjNlg=" 4632 | }, 4633 | "regenerator-transform": { 4634 | "version": "0.10.1", 4635 | "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.10.1.tgz", 4636 | "integrity": "sha512-PJepbvDbuK1xgIgnau7Y90cwaAmO/LCLMI2mPvaXq2heGMR3aWW5/BQvYrhJ8jgmQjXewXvBjzfqKcVOmhjZ6Q==", 4637 | "dev": true, 4638 | "requires": { 4639 | "babel-runtime": "6.26.0", 4640 | "babel-types": "6.26.0", 4641 | "private": "0.1.8" 4642 | } 4643 | }, 4644 | "regex-cache": { 4645 | "version": "0.4.4", 4646 | "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", 4647 | "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", 4648 | "dev": true, 4649 | "requires": { 4650 | "is-equal-shallow": "0.1.3" 4651 | } 4652 | }, 4653 | "regexpu-core": { 4654 | "version": "2.0.0", 4655 | "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz", 4656 | "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=", 4657 | "dev": true, 4658 | "requires": { 4659 | "regenerate": "1.3.3", 4660 | "regjsgen": "0.2.0", 4661 | "regjsparser": "0.1.5" 4662 | } 4663 | }, 4664 | "regjsgen": { 4665 | "version": "0.2.0", 4666 | "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", 4667 | "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", 4668 | "dev": true 4669 | }, 4670 | "regjsparser": { 4671 | "version": "0.1.5", 4672 | "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", 4673 | "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", 4674 | "dev": true, 4675 | "requires": { 4676 | "jsesc": "0.5.0" 4677 | }, 4678 | "dependencies": { 4679 | "jsesc": { 4680 | "version": "0.5.0", 4681 | "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", 4682 | "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", 4683 | "dev": true 4684 | } 4685 | } 4686 | }, 4687 | "remove-trailing-separator": { 4688 | "version": "1.1.0", 4689 | "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", 4690 | "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", 4691 | "dev": true 4692 | }, 4693 | "repeat-element": { 4694 | "version": "1.1.2", 4695 | "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz", 4696 | "integrity": "sha1-7wiaF40Ug7quTZPrmLT55OEdmQo=", 4697 | "dev": true 4698 | }, 4699 | "repeat-string": { 4700 | "version": "1.6.1", 4701 | "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", 4702 | "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" 4703 | }, 4704 | "repeating": { 4705 | "version": "2.0.1", 4706 | "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", 4707 | "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", 4708 | "dev": true, 4709 | "requires": { 4710 | "is-finite": "1.0.2" 4711 | } 4712 | }, 4713 | "require-directory": { 4714 | "version": "2.1.1", 4715 | "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", 4716 | "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", 4717 | "dev": true 4718 | }, 4719 | "require-main-filename": { 4720 | "version": "1.0.1", 4721 | "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", 4722 | "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", 4723 | "dev": true 4724 | }, 4725 | "requires-port": { 4726 | "version": "1.0.0", 4727 | "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", 4728 | "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=" 4729 | }, 4730 | "resolve": { 4731 | "version": "1.5.0", 4732 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.5.0.tgz", 4733 | "integrity": "sha512-hgoSGrc3pjzAPHNBg+KnFcK2HwlHTs/YrAGUr6qgTVUZmXv1UEXXl0bZNBKMA9fud6lRYFdPGz0xXxycPzmmiw==", 4734 | "requires": { 4735 | "path-parse": "1.0.5" 4736 | } 4737 | }, 4738 | "right-align": { 4739 | "version": "0.1.3", 4740 | "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", 4741 | "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", 4742 | "requires": { 4743 | "align-text": "0.1.4" 4744 | } 4745 | }, 4746 | "ripemd160": { 4747 | "version": "2.0.1", 4748 | "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.1.tgz", 4749 | "integrity": "sha1-D0WEKVxTo2KK9+bXmsohzlfRxuc=", 4750 | "dev": true, 4751 | "requires": { 4752 | "hash-base": "2.0.2", 4753 | "inherits": "2.0.3" 4754 | } 4755 | }, 4756 | "safe-buffer": { 4757 | "version": "5.1.1", 4758 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", 4759 | "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" 4760 | }, 4761 | "semver": { 4762 | "version": "5.5.0", 4763 | "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz", 4764 | "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==" 4765 | }, 4766 | "send": { 4767 | "version": "0.16.1", 4768 | "resolved": "https://registry.npmjs.org/send/-/send-0.16.1.tgz", 4769 | "integrity": "sha512-ElCLJdJIKPk6ux/Hocwhk7NFHpI3pVm/IZOYWqUmoxcgeyM+MpxHHKhb8QmlJDX1pU6WrgaHBkVNm73Sv7uc2A==", 4770 | "requires": { 4771 | "debug": "2.6.9", 4772 | "depd": "1.1.2", 4773 | "destroy": "1.0.4", 4774 | "encodeurl": "1.0.2", 4775 | "escape-html": "1.0.3", 4776 | "etag": "1.8.1", 4777 | "fresh": "0.5.2", 4778 | "http-errors": "1.6.2", 4779 | "mime": "1.4.1", 4780 | "ms": "2.0.0", 4781 | "on-finished": "2.3.0", 4782 | "range-parser": "1.2.0", 4783 | "statuses": "1.3.1" 4784 | }, 4785 | "dependencies": { 4786 | "mime": { 4787 | "version": "1.4.1", 4788 | "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", 4789 | "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==" 4790 | }, 4791 | "statuses": { 4792 | "version": "1.3.1", 4793 | "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz", 4794 | "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=" 4795 | } 4796 | } 4797 | }, 4798 | "serve-static": { 4799 | "version": "1.13.1", 4800 | "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.1.tgz", 4801 | "integrity": "sha512-hSMUZrsPa/I09VYFJwa627JJkNs0NrfL1Uzuup+GqHfToR2KcsXFymXSV90hoyw3M+msjFuQly+YzIH/q0MGlQ==", 4802 | "requires": { 4803 | "encodeurl": "1.0.2", 4804 | "escape-html": "1.0.3", 4805 | "parseurl": "1.3.2", 4806 | "send": "0.16.1" 4807 | } 4808 | }, 4809 | "set-blocking": { 4810 | "version": "2.0.0", 4811 | "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", 4812 | "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", 4813 | "dev": true 4814 | }, 4815 | "set-immediate-shim": { 4816 | "version": "1.0.1", 4817 | "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", 4818 | "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=", 4819 | "dev": true 4820 | }, 4821 | "setprototypeof": { 4822 | "version": "1.0.3", 4823 | "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz", 4824 | "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ=" 4825 | }, 4826 | "sha.js": { 4827 | "version": "2.4.10", 4828 | "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.10.tgz", 4829 | "integrity": "sha512-vnwmrFDlOExK4Nm16J2KMWHLrp14lBrjxMxBJpu++EnsuBmpiYaM/MEs46Vxxm/4FvdP5yTwuCTO9it5FSjrqA==", 4830 | "dev": true, 4831 | "requires": { 4832 | "inherits": "2.0.3", 4833 | "safe-buffer": "5.1.1" 4834 | } 4835 | }, 4836 | "shasum": { 4837 | "version": "1.0.2", 4838 | "resolved": "https://registry.npmjs.org/shasum/-/shasum-1.0.2.tgz", 4839 | "integrity": "sha1-5wEjENj0F/TetXEhUOVni4euVl8=", 4840 | "dev": true, 4841 | "requires": { 4842 | "json-stable-stringify": "0.0.1", 4843 | "sha.js": "2.4.10" 4844 | } 4845 | }, 4846 | "shebang-command": { 4847 | "version": "1.2.0", 4848 | "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", 4849 | "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", 4850 | "dev": true, 4851 | "requires": { 4852 | "shebang-regex": "1.0.0" 4853 | } 4854 | }, 4855 | "shebang-regex": { 4856 | "version": "1.0.0", 4857 | "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", 4858 | "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", 4859 | "dev": true 4860 | }, 4861 | "shell-quote": { 4862 | "version": "1.6.1", 4863 | "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.6.1.tgz", 4864 | "integrity": "sha1-9HgZSczkAmlxJ0MOo7PFR29IF2c=", 4865 | "dev": true, 4866 | "requires": { 4867 | "array-filter": "0.0.1", 4868 | "array-map": "0.0.0", 4869 | "array-reduce": "0.0.0", 4870 | "jsonify": "0.0.0" 4871 | } 4872 | }, 4873 | "signal-exit": { 4874 | "version": "3.0.2", 4875 | "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", 4876 | "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" 4877 | }, 4878 | "slash": { 4879 | "version": "1.0.0", 4880 | "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", 4881 | "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", 4882 | "dev": true 4883 | }, 4884 | "source-map": { 4885 | "version": "0.5.7", 4886 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", 4887 | "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" 4888 | }, 4889 | "source-map-support": { 4890 | "version": "0.4.18", 4891 | "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", 4892 | "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", 4893 | "dev": true, 4894 | "requires": { 4895 | "source-map": "0.5.7" 4896 | } 4897 | }, 4898 | "spdx-correct": { 4899 | "version": "3.0.0", 4900 | "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.0.0.tgz", 4901 | "integrity": "sha512-N19o9z5cEyc8yQQPukRCZ9EUmb4HUpnrmaL/fxS2pBo2jbfcFRVuFZ/oFC+vZz0MNNk0h80iMn5/S6qGZOL5+g==", 4902 | "requires": { 4903 | "spdx-expression-parse": "3.0.0", 4904 | "spdx-license-ids": "3.0.0" 4905 | } 4906 | }, 4907 | "spdx-exceptions": { 4908 | "version": "2.1.0", 4909 | "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.1.0.tgz", 4910 | "integrity": "sha512-4K1NsmrlCU1JJgUrtgEeTVyfx8VaYea9J9LvARxhbHtVtohPs/gFGG5yy49beySjlIMhhXZ4QqujIZEfS4l6Cg==" 4911 | }, 4912 | "spdx-expression-parse": { 4913 | "version": "3.0.0", 4914 | "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", 4915 | "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", 4916 | "requires": { 4917 | "spdx-exceptions": "2.1.0", 4918 | "spdx-license-ids": "3.0.0" 4919 | } 4920 | }, 4921 | "spdx-license-ids": { 4922 | "version": "3.0.0", 4923 | "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.0.tgz", 4924 | "integrity": "sha512-2+EPwgbnmOIl8HjGBXXMd9NAu02vLjOO1nWw4kmeRDFyHn+M/ETfHxQUK0oXg8ctgVnl9t3rosNVsZ1jG61nDA==" 4925 | }, 4926 | "statuses": { 4927 | "version": "1.4.0", 4928 | "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", 4929 | "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==" 4930 | }, 4931 | "stream-browserify": { 4932 | "version": "2.0.1", 4933 | "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.1.tgz", 4934 | "integrity": "sha1-ZiZu5fm9uZQKTkUUyvtDu3Hlyds=", 4935 | "dev": true, 4936 | "requires": { 4937 | "inherits": "2.0.3", 4938 | "readable-stream": "2.3.5" 4939 | } 4940 | }, 4941 | "stream-combiner2": { 4942 | "version": "1.1.1", 4943 | "resolved": "https://registry.npmjs.org/stream-combiner2/-/stream-combiner2-1.1.1.tgz", 4944 | "integrity": "sha1-+02KFCDqNidk4hrUeAOXvry0HL4=", 4945 | "dev": true, 4946 | "requires": { 4947 | "duplexer2": "0.1.4", 4948 | "readable-stream": "2.3.5" 4949 | } 4950 | }, 4951 | "stream-http": { 4952 | "version": "2.8.1", 4953 | "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.1.tgz", 4954 | "integrity": "sha512-cQ0jo17BLca2r0GfRdZKYAGLU6JRoIWxqSOakUMuKOT6MOK7AAlE856L33QuDmAy/eeOrhLee3dZKX0Uadu93A==", 4955 | "dev": true, 4956 | "requires": { 4957 | "builtin-status-codes": "3.0.0", 4958 | "inherits": "2.0.3", 4959 | "readable-stream": "2.3.5", 4960 | "to-arraybuffer": "1.0.1", 4961 | "xtend": "4.0.1" 4962 | } 4963 | }, 4964 | "stream-splicer": { 4965 | "version": "2.0.0", 4966 | "resolved": "https://registry.npmjs.org/stream-splicer/-/stream-splicer-2.0.0.tgz", 4967 | "integrity": "sha1-G2O+Q4oTPktnHMGTUZdgAXWRDYM=", 4968 | "dev": true, 4969 | "requires": { 4970 | "inherits": "2.0.3", 4971 | "readable-stream": "2.3.5" 4972 | } 4973 | }, 4974 | "string-width": { 4975 | "version": "2.1.1", 4976 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", 4977 | "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", 4978 | "dev": true, 4979 | "requires": { 4980 | "is-fullwidth-code-point": "2.0.0", 4981 | "strip-ansi": "4.0.0" 4982 | }, 4983 | "dependencies": { 4984 | "ansi-regex": { 4985 | "version": "3.0.0", 4986 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", 4987 | "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", 4988 | "dev": true 4989 | }, 4990 | "is-fullwidth-code-point": { 4991 | "version": "2.0.0", 4992 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", 4993 | "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", 4994 | "dev": true 4995 | }, 4996 | "strip-ansi": { 4997 | "version": "4.0.0", 4998 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", 4999 | "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", 5000 | "dev": true, 5001 | "requires": { 5002 | "ansi-regex": "3.0.0" 5003 | } 5004 | } 5005 | } 5006 | }, 5007 | "string_decoder": { 5008 | "version": "1.0.3", 5009 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", 5010 | "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", 5011 | "requires": { 5012 | "safe-buffer": "5.1.1" 5013 | } 5014 | }, 5015 | "strip-ansi": { 5016 | "version": "3.0.1", 5017 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", 5018 | "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", 5019 | "dev": true, 5020 | "requires": { 5021 | "ansi-regex": "2.1.1" 5022 | } 5023 | }, 5024 | "strip-bom": { 5025 | "version": "3.0.0", 5026 | "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", 5027 | "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=" 5028 | }, 5029 | "strip-eof": { 5030 | "version": "1.0.0", 5031 | "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", 5032 | "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", 5033 | "dev": true 5034 | }, 5035 | "strip-indent": { 5036 | "version": "2.0.0", 5037 | "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz", 5038 | "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=" 5039 | }, 5040 | "subarg": { 5041 | "version": "1.0.0", 5042 | "resolved": "https://registry.npmjs.org/subarg/-/subarg-1.0.0.tgz", 5043 | "integrity": "sha1-9izxdYHplrSPyWVpn1TAauJouNI=", 5044 | "dev": true, 5045 | "requires": { 5046 | "minimist": "1.2.0" 5047 | } 5048 | }, 5049 | "superagent": { 5050 | "version": "3.8.2", 5051 | "resolved": "https://registry.npmjs.org/superagent/-/superagent-3.8.2.tgz", 5052 | "integrity": "sha512-gVH4QfYHcY3P0f/BZzavLreHW3T1v7hG9B+hpMQotGQqurOvhv87GcMCd6LWySmBuf+BDR44TQd0aISjVHLeNQ==", 5053 | "requires": { 5054 | "component-emitter": "1.2.1", 5055 | "cookiejar": "2.1.1", 5056 | "debug": "3.1.0", 5057 | "extend": "3.0.1", 5058 | "form-data": "2.3.2", 5059 | "formidable": "1.2.0", 5060 | "methods": "1.1.2", 5061 | "mime": "1.6.0", 5062 | "qs": "6.5.1", 5063 | "readable-stream": "2.3.5" 5064 | }, 5065 | "dependencies": { 5066 | "debug": { 5067 | "version": "3.1.0", 5068 | "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", 5069 | "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", 5070 | "requires": { 5071 | "ms": "2.0.0" 5072 | } 5073 | } 5074 | } 5075 | }, 5076 | "superagent-baseuri": { 5077 | "version": "0.1.1", 5078 | "resolved": "https://registry.npmjs.org/superagent-baseuri/-/superagent-baseuri-0.1.1.tgz", 5079 | "integrity": "sha1-uWsH2//DwY2yL7GGNI5/DMTPquk=", 5080 | "requires": { 5081 | "superagent-prefix": "0.0.2", 5082 | "superagent-use": "git://github.com/shesek/superagent-use.git#30b946f04608c6e894162dee4afab10eeb4251af" 5083 | } 5084 | }, 5085 | "superagent-prefix": { 5086 | "version": "0.0.2", 5087 | "resolved": "https://registry.npmjs.org/superagent-prefix/-/superagent-prefix-0.0.2.tgz", 5088 | "integrity": "sha1-sVu7E1P4ibANJa8QtPEbNQ0gOwY=" 5089 | }, 5090 | "superagent-use": { 5091 | "version": "git://github.com/shesek/superagent-use.git#30b946f04608c6e894162dee4afab10eeb4251af", 5092 | "requires": { 5093 | "extend": "3.0.1", 5094 | "methods": "1.1.2" 5095 | } 5096 | }, 5097 | "supports-color": { 5098 | "version": "2.0.0", 5099 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", 5100 | "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", 5101 | "dev": true 5102 | }, 5103 | "syntax-error": { 5104 | "version": "1.4.0", 5105 | "resolved": "https://registry.npmjs.org/syntax-error/-/syntax-error-1.4.0.tgz", 5106 | "integrity": "sha512-YPPlu67mdnHGTup2A8ff7BC2Pjq0e0Yp/IyTFN03zWO0RcK07uLcbi7C2KpGR2FvWbaB0+bfE27a+sBKebSo7w==", 5107 | "dev": true, 5108 | "requires": { 5109 | "acorn-node": "1.3.0" 5110 | } 5111 | }, 5112 | "through": { 5113 | "version": "2.3.8", 5114 | "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", 5115 | "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", 5116 | "dev": true 5117 | }, 5118 | "through2": { 5119 | "version": "2.0.3", 5120 | "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", 5121 | "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", 5122 | "dev": true, 5123 | "requires": { 5124 | "readable-stream": "2.3.5", 5125 | "xtend": "4.0.1" 5126 | } 5127 | }, 5128 | "timers-browserify": { 5129 | "version": "1.4.2", 5130 | "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-1.4.2.tgz", 5131 | "integrity": "sha1-ycWLV1voQHN1y14kYtrO50NZ9B0=", 5132 | "dev": true, 5133 | "requires": { 5134 | "process": "0.11.10" 5135 | } 5136 | }, 5137 | "to-arraybuffer": { 5138 | "version": "1.0.1", 5139 | "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", 5140 | "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", 5141 | "dev": true 5142 | }, 5143 | "to-fast-properties": { 5144 | "version": "1.0.3", 5145 | "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", 5146 | "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=" 5147 | }, 5148 | "token-stream": { 5149 | "version": "0.0.1", 5150 | "resolved": "https://registry.npmjs.org/token-stream/-/token-stream-0.0.1.tgz", 5151 | "integrity": "sha1-zu78cXp2xDFvEm0LnbqlXX598Bo=" 5152 | }, 5153 | "trim-newlines": { 5154 | "version": "2.0.0", 5155 | "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz", 5156 | "integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=" 5157 | }, 5158 | "trim-right": { 5159 | "version": "1.0.1", 5160 | "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", 5161 | "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", 5162 | "dev": true 5163 | }, 5164 | "tty-browserify": { 5165 | "version": "0.0.1", 5166 | "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz", 5167 | "integrity": "sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==", 5168 | "dev": true 5169 | }, 5170 | "type-is": { 5171 | "version": "1.6.16", 5172 | "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.16.tgz", 5173 | "integrity": "sha512-HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q==", 5174 | "requires": { 5175 | "media-typer": "0.3.0", 5176 | "mime-types": "2.1.18" 5177 | } 5178 | }, 5179 | "typedarray": { 5180 | "version": "0.0.6", 5181 | "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", 5182 | "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", 5183 | "dev": true 5184 | }, 5185 | "uglify-js": { 5186 | "version": "3.3.15", 5187 | "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.3.15.tgz", 5188 | "integrity": "sha512-bqtBCAINYXX/OkdnqMGpbXr+OPWc00hsozRpk+dAtfnbdk2jjKiLmyOkQ7zamg648lVMnzATL8JrSN6LmaVpYA==", 5189 | "requires": { 5190 | "commander": "2.15.0", 5191 | "source-map": "0.6.1" 5192 | }, 5193 | "dependencies": { 5194 | "commander": { 5195 | "version": "2.15.0", 5196 | "resolved": "https://registry.npmjs.org/commander/-/commander-2.15.0.tgz", 5197 | "integrity": "sha512-7B1ilBwtYSbetCgTY1NJFg+gVpestg0fdA1MhC1Vs4ssyfSXnCAjFr+QcQM9/RedXC0EaUx1sG8Smgw2VfgKEg==" 5198 | }, 5199 | "source-map": { 5200 | "version": "0.6.1", 5201 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", 5202 | "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" 5203 | } 5204 | } 5205 | }, 5206 | "uglify-to-browserify": { 5207 | "version": "1.0.2", 5208 | "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", 5209 | "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=", 5210 | "optional": true 5211 | }, 5212 | "umd": { 5213 | "version": "3.0.3", 5214 | "resolved": "https://registry.npmjs.org/umd/-/umd-3.0.3.tgz", 5215 | "integrity": "sha512-4IcGSufhFshvLNcMCV80UnQVlZ5pMOC8mvNPForqwA4+lzYQuetTESLDQkeLmihq8bRcnpbQa48Wb8Lh16/xow==", 5216 | "dev": true 5217 | }, 5218 | "unpipe": { 5219 | "version": "1.0.0", 5220 | "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", 5221 | "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" 5222 | }, 5223 | "url": { 5224 | "version": "0.11.0", 5225 | "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", 5226 | "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", 5227 | "dev": true, 5228 | "requires": { 5229 | "punycode": "1.3.2", 5230 | "querystring": "0.2.0" 5231 | }, 5232 | "dependencies": { 5233 | "punycode": { 5234 | "version": "1.3.2", 5235 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", 5236 | "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", 5237 | "dev": true 5238 | } 5239 | } 5240 | }, 5241 | "url-parse": { 5242 | "version": "1.0.5", 5243 | "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.0.5.tgz", 5244 | "integrity": "sha1-CFSGBCKv3P7+tsllxmLUgAFpkns=", 5245 | "requires": { 5246 | "querystringify": "0.0.4", 5247 | "requires-port": "1.0.0" 5248 | } 5249 | }, 5250 | "user-home": { 5251 | "version": "1.1.1", 5252 | "resolved": "https://registry.npmjs.org/user-home/-/user-home-1.1.1.tgz", 5253 | "integrity": "sha1-K1viOjK2Onyd640PKNSFcko98ZA=", 5254 | "dev": true 5255 | }, 5256 | "util": { 5257 | "version": "0.10.3", 5258 | "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", 5259 | "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", 5260 | "dev": true, 5261 | "requires": { 5262 | "inherits": "2.0.1" 5263 | }, 5264 | "dependencies": { 5265 | "inherits": { 5266 | "version": "2.0.1", 5267 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", 5268 | "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", 5269 | "dev": true 5270 | } 5271 | } 5272 | }, 5273 | "util-deprecate": { 5274 | "version": "1.0.2", 5275 | "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", 5276 | "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" 5277 | }, 5278 | "utils-merge": { 5279 | "version": "1.0.1", 5280 | "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", 5281 | "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" 5282 | }, 5283 | "v8flags": { 5284 | "version": "2.1.1", 5285 | "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-2.1.1.tgz", 5286 | "integrity": "sha1-qrGh+jDUX4jdMhFIh1rALAtV5bQ=", 5287 | "dev": true, 5288 | "requires": { 5289 | "user-home": "1.1.1" 5290 | } 5291 | }, 5292 | "validate-npm-package-license": { 5293 | "version": "3.0.3", 5294 | "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.3.tgz", 5295 | "integrity": "sha512-63ZOUnL4SIXj4L0NixR3L1lcjO38crAbgrTpl28t8jjrfuiOBL5Iygm+60qPs/KsZGzPNg6Smnc/oY16QTjF0g==", 5296 | "requires": { 5297 | "spdx-correct": "3.0.0", 5298 | "spdx-expression-parse": "3.0.0" 5299 | } 5300 | }, 5301 | "vary": { 5302 | "version": "1.1.2", 5303 | "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", 5304 | "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" 5305 | }, 5306 | "vm-browserify": { 5307 | "version": "0.0.4", 5308 | "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.4.tgz", 5309 | "integrity": "sha1-XX6kW7755Kb/ZflUOOCofDV9WnM=", 5310 | "dev": true, 5311 | "requires": { 5312 | "indexof": "0.0.1" 5313 | } 5314 | }, 5315 | "void-elements": { 5316 | "version": "2.0.1", 5317 | "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", 5318 | "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=" 5319 | }, 5320 | "watchify": { 5321 | "version": "3.11.0", 5322 | "resolved": "https://registry.npmjs.org/watchify/-/watchify-3.11.0.tgz", 5323 | "integrity": "sha512-7jWG0c3cKKm2hKScnSAMUEUjRJKXUShwMPk0ASVhICycQhwND3IMAdhJYmc1mxxKzBUJTSF5HZizfrKrS6BzkA==", 5324 | "dev": true, 5325 | "requires": { 5326 | "anymatch": "1.3.2", 5327 | "browserify": "16.1.1", 5328 | "chokidar": "1.7.0", 5329 | "defined": "1.0.0", 5330 | "outpipe": "1.1.1", 5331 | "through2": "2.0.3", 5332 | "xtend": "4.0.1" 5333 | } 5334 | }, 5335 | "which": { 5336 | "version": "1.3.0", 5337 | "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz", 5338 | "integrity": "sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==", 5339 | "dev": true, 5340 | "requires": { 5341 | "isexe": "2.0.0" 5342 | } 5343 | }, 5344 | "which-module": { 5345 | "version": "2.0.0", 5346 | "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", 5347 | "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", 5348 | "dev": true 5349 | }, 5350 | "window-or-global": { 5351 | "version": "1.0.1", 5352 | "resolved": "https://registry.npmjs.org/window-or-global/-/window-or-global-1.0.1.tgz", 5353 | "integrity": "sha1-2+RboqKRqrxW1iz2bEW3+jIpRt4=", 5354 | "dev": true 5355 | }, 5356 | "window-size": { 5357 | "version": "0.1.0", 5358 | "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", 5359 | "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=" 5360 | }, 5361 | "with": { 5362 | "version": "5.1.1", 5363 | "resolved": "https://registry.npmjs.org/with/-/with-5.1.1.tgz", 5364 | "integrity": "sha1-+k2qktrzLE6pTtRTyB8EaGtXXf4=", 5365 | "requires": { 5366 | "acorn": "3.3.0", 5367 | "acorn-globals": "3.1.0" 5368 | }, 5369 | "dependencies": { 5370 | "acorn": { 5371 | "version": "3.3.0", 5372 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", 5373 | "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=" 5374 | } 5375 | } 5376 | }, 5377 | "wordwrap": { 5378 | "version": "0.0.2", 5379 | "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", 5380 | "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=" 5381 | }, 5382 | "wrap-ansi": { 5383 | "version": "2.1.0", 5384 | "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", 5385 | "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", 5386 | "dev": true, 5387 | "requires": { 5388 | "string-width": "1.0.2", 5389 | "strip-ansi": "3.0.1" 5390 | }, 5391 | "dependencies": { 5392 | "string-width": { 5393 | "version": "1.0.2", 5394 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", 5395 | "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", 5396 | "dev": true, 5397 | "requires": { 5398 | "code-point-at": "1.1.0", 5399 | "is-fullwidth-code-point": "1.0.0", 5400 | "strip-ansi": "3.0.1" 5401 | } 5402 | } 5403 | } 5404 | }, 5405 | "wrappy": { 5406 | "version": "1.0.2", 5407 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 5408 | "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", 5409 | "dev": true 5410 | }, 5411 | "ws": { 5412 | "version": "5.0.0", 5413 | "resolved": "https://registry.npmjs.org/ws/-/ws-5.0.0.tgz", 5414 | "integrity": "sha512-XXG4S0b771C68AeTHebBsJJBZMguxj7Em+D657RViuj6ppRd3tfuOhIK8eGwZGNb76C8MjQfCTfH2NN50rJN4w==", 5415 | "requires": { 5416 | "async-limiter": "1.0.0" 5417 | } 5418 | }, 5419 | "xtend": { 5420 | "version": "4.0.1", 5421 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", 5422 | "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", 5423 | "dev": true 5424 | }, 5425 | "y18n": { 5426 | "version": "3.2.1", 5427 | "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", 5428 | "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", 5429 | "dev": true 5430 | }, 5431 | "yallist": { 5432 | "version": "2.1.2", 5433 | "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", 5434 | "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", 5435 | "dev": true 5436 | }, 5437 | "yargs": { 5438 | "version": "3.10.0", 5439 | "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", 5440 | "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", 5441 | "requires": { 5442 | "camelcase": "1.2.1", 5443 | "cliui": "2.1.0", 5444 | "decamelize": "1.2.0", 5445 | "window-size": "0.1.0" 5446 | } 5447 | }, 5448 | "yargs-parser": { 5449 | "version": "7.0.0", 5450 | "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-7.0.0.tgz", 5451 | "integrity": "sha1-jQrELxbqVd69MyyvTEA4s+P139k=", 5452 | "dev": true, 5453 | "requires": { 5454 | "camelcase": "4.1.0" 5455 | }, 5456 | "dependencies": { 5457 | "camelcase": { 5458 | "version": "4.1.0", 5459 | "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", 5460 | "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", 5461 | "dev": true 5462 | } 5463 | } 5464 | } 5465 | } 5466 | } 5467 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "lightning-jukebox", 3 | "version": "0.0.1", 4 | "description": "A Lightning powered Jukebox", 5 | "bin": { 6 | "jukeboxd": "dist/cli.js" 7 | }, 8 | "scripts": { 9 | "start": "babel-node src/cli.js --node-env development", 10 | "dist": "./build.sh", 11 | "prepublishOnly": "npm run dist" 12 | }, 13 | "files": [ 14 | "dist/**", 15 | "views/**" 16 | ], 17 | "repository": "https://github.com/shesek/lightning-jukebox.git", 18 | "keywords": [ 19 | "bitcoin", 20 | "lightning", 21 | "lightning-charge", 22 | "jukebox", 23 | "micropayments" 24 | ], 25 | "author": "Nadav Ivgi", 26 | "license": "MIT", 27 | "dependencies": { 28 | "babel-polyfill": "^6.26.0", 29 | "body-parser": "^1.18.2", 30 | "bootswatch": "^4.0.0-beta.3", 31 | "express": "^4.16.2", 32 | "lightning-charge-client": "^0.1.7", 33 | "meow": "^4.0.0", 34 | "morgan": "^1.9.0", 35 | "only": "0.0.2", 36 | "pug": "^2.0.0-rc.4", 37 | "uglify-js": "^3.3.15", 38 | "ws": "^5.0.0" 39 | }, 40 | "devDependencies": { 41 | "babel-cli": "^6.26.0", 42 | "babel-plugin-transform-object-rest-spread": "^6.26.0", 43 | "babel-preset-env": "^1.6.1", 44 | "babelify": "^8.0.0", 45 | "bootstrap": "^4.0.0", 46 | "browserify-middleware": "^8.1.0", 47 | "fmtbtc": "0.0.3", 48 | "jquery": "^3.3.1", 49 | "pugify": "^2.2.0", 50 | "qrcode": "^1.2.0", 51 | "reconnecting-websocket": "^3.2.2" 52 | }, 53 | "browserify": { 54 | "transform": [ 55 | "pugify", 56 | "babelify" 57 | ] 58 | } 59 | } 60 | -------------------------------------------------------------------------------- /src/app.js: -------------------------------------------------------------------------------- 1 | import fs from 'fs' 2 | import path from 'path' 3 | import only from 'only' 4 | import WebSocket from 'ws' 5 | 6 | const app = require('express')() 7 | , charge = require('lightning-charge-client')(process.env.CHARGE_URL, process.env.CHARGE_TOKEN) 8 | 9 | const pwrap = fn => (req, res, next) => fn(req, res).catch(next) 10 | , ytRegex = /^https:\/\/[a-z]+\.youtube.com\/watch\?(?:.*&)?v=([\w-]+)/ 11 | , cssPath = require.resolve(`bootswatch/dist/${process.env.THEME || 'darkly'}/bootstrap.min.css`) 12 | , ctype = 'application/vnd.lightning.bolt11' 13 | 14 | const [ amount, currency='BTC' ] = (process.env.PRICE || '0.0001').split(' ', 2) 15 | 16 | // Settings 17 | 18 | app.set('port', process.env.PORT || 6100) 19 | app.set('host', process.env.HOST || 'localhost') 20 | app.set('title', process.env.TITLE || 'Lightning Jukebox') 21 | app.set('trust proxy', process.env.PROXIED || 'loopback') 22 | app.set('views', path.join(__dirname, '..', 'views')) 23 | app.set('view engine', 'pug') 24 | 25 | // Middleware 26 | 27 | app.use(require('morgan')('dev')) 28 | app.use(require('body-parser').json()) 29 | app.use(require('body-parser').urlencoded({ extended: false })) 30 | 31 | // Frontend 32 | 33 | app.get('/', (req, res) => res.redirect('play')) 34 | app.get('/play', (req, res) => res.render('play')) 35 | app.get('/pay', (req, res) => res.render('pay', { currency, amount })) 36 | 37 | if (fs.existsSync(path.join(__dirname, 'bundles'))) { 38 | app.use(require('express').static(path.join(__dirname, 'bundles'))) 39 | } else { 40 | app.get('/play.js', require('browserify-middleware')(require.resolve('../client/play.js'))) 41 | app.get('/pay.js', require('browserify-middleware')(require.resolve('../client/pay.js'))) 42 | } 43 | 44 | app.get('/bootstrap.min.css', (req, res) => res.sendFile(cssPath)) 45 | 46 | // API 47 | 48 | app.post('/invoice', pwrap(async (req, res, next) => { 49 | if (!req.body.video) return res.sendStatus(400) 50 | 51 | const match = req.body.video.toString().match(ytRegex) 52 | , type = match ? 'id' : 'search' 53 | , video = match ? match[1] : req.body.video 54 | 55 | const inv = await charge.invoice({ 56 | currency, amount 57 | , description: `Pay to play ${ video }` 58 | , metadata: { source: 'jukebox', type, video } 59 | , expiry: 600 60 | }) 61 | 62 | res.status(201).format({ 63 | [ctype]() { res.type(ctype).send(inv.payreq) } 64 | , json() { res.send(only(inv, 'id payreq msatoshi quoted_currency quoted_amount expires_at')) } 65 | , default() { res.type(ctype).send(inv.payreq) } 66 | }) 67 | })) 68 | 69 | app.get('/invoice/:invoice/wait', pwrap(async (req, res) => { 70 | const paid = await charge.wait(req.params.invoice, 100) 71 | res.sendStatus(paid === null ? 402 : paid ? 204 : 410) 72 | // 402 Payment Require: invoice unpaid but still payable 73 | // 204 No Content: invoice paid 74 | // 410 Gone: invoice expired without payment 75 | })) 76 | 77 | const server = app.listen(app.settings.port, app.settings.host, _ => 78 | console.log(`Jukebox server running on http://${ app.settings.host }:${ app.settings.port }`)) 79 | 80 | // WebSocket 81 | 82 | const wss = new WebSocket.Server({ server, path: '/ws' }) 83 | 84 | charge.stream().on('payment', inv => { 85 | if (inv.metadata.source === 'jukebox') { 86 | console.log(`Incoming jukebox payment, announce ${inv.metadata.type}: ${inv.metadata.video}`) 87 | 88 | wss.clients.forEach(client => 89 | (client.readyState === WebSocket.OPEN) && client.send(`${inv.metadata.type}:${inv.metadata.video}`)) 90 | } 91 | }) 92 | -------------------------------------------------------------------------------- /src/cli.js: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | 3 | const args = require('meow')(` 4 | Usage 5 | $ jukeboxd [options] 6 | 7 | Options 8 | -c, --charge-url lightning charge server url [default: http://localhost:9112] 9 | -t, --charge-token lightning charge access token [required] 10 | 11 | -P, --price price to play music [default: 0.0001 BTC] 12 | -m, --theme pick theme from bootswatch.com [default: darkly] 13 | -l, --title website title [default: Lightning Jukebox] 14 | 15 | -p, --port http server port [default: 9115] 16 | -i, --host http server listen address [default: 127.0.0.1] 17 | -h, --help output usage information 18 | -v, --version output version number 19 | 20 | Example 21 | $ jukeboxd -t chargeSecretToken -P '0.0005 EUR' 22 | 23 | `, { flags: { chargeUrl: {alias:'c'}, chargeToken: {alias:'t'} 24 | , price: {alias:'P'}, theme: {alias:'m'}, title: {alias:'l'} 25 | , port: {alias:'p'}, host: {alias:'i'} } } 26 | ).flags 27 | 28 | Object.keys(args).filter(k => k.length > 1) 29 | .forEach(k => process.env[k.replace(/([A-Z])/g, '_$1').toUpperCase()] = args[k]) 30 | 31 | process.env.CHARGE_TOKEN || (console.error('--charge-token is required'), process.exit(1)) 32 | process.env.NODE_ENV || (process.env.NODE_ENV = 'production') 33 | 34 | require('babel-polyfill') 35 | require('./app') 36 | -------------------------------------------------------------------------------- /views/_payment.pug: -------------------------------------------------------------------------------- 1 | - msat2sat = require('fmtbtc').msat2sat 2 | 3 | .modal.fade 4 | .modal-dialog.modal-sm 5 | .modal-content 6 | .modal-body.text-center 7 | h5 Pay with Lightning 8 | if msatoshi 9 | if quoted_currency && quoted_currency != 'BTC' 10 | p.font-weight-light.small #{ quoted_amount } #{ quoted_currency } ≈ #{ msat2sat(msatoshi, true) } satoshis 11 | else 12 | p.font-weight-light.small #{ msat2sat(msatoshi, true) } satoshis 13 | img.d-block.w-100.mb-3(src=qr) 14 | if !hide_payreq 15 | .input-group 16 | input.form-control(type='text', value=payreq, readonly) 17 | .input-group-append: a.btn.btn-primary(href='lightning:'+payreq) ⚡ 18 | p.text-muted.small.font-weight-light.mb-0 Invoice expires in #[span(data-countdown-to=expires_at)] 19 | -------------------------------------------------------------------------------- /views/_success.pug: -------------------------------------------------------------------------------- 1 | .modal.fade 2 | .modal-dialog.modal-sm 3 | .modal-content.alert.alert-success 4 | .modal-body.text-center 5 | h5 Payment successful! 6 | p.mb-0 Your song will begin playing shortly. 7 | -------------------------------------------------------------------------------- /views/pay.pug: -------------------------------------------------------------------------------- 1 | doctype html 2 | 3 | html.h-100 4 | title= settings.title 5 | meta(charset='utf-8') 6 | meta(name='viewport', content='width=device-width, initial-scale=1') 7 | link(rel='stylesheet', href='bootstrap.min.css') 8 | script(src='pay.js') 9 | 10 | body.h-100 11 | .container.d-flex.h-100: .justify-content-center.align-self-center.text-center.mx-auto 12 | 13 | h3.mb-4 Pay #{amount} #{currency} to play your music 14 | 15 | form.pay 16 | input.form-control.form-control-lg(name='video', type='text', autofocus, required, autocomplete='off', placeholder='YouTube video URL or search string') 17 | 18 | button.btn.btn-lg.btn-primary.mt-4(type='submit') Pay & Play 19 | 20 | .mt-4.text-info powered by #[a(href='https://github.com/shesek/lightning-jukebox') Lightning Jukebox] 21 | 22 | -------------------------------------------------------------------------------- /views/play.pug: -------------------------------------------------------------------------------- 1 | - playerUrl = 'https://www.google.com/search?q=site%3Ayoutube.com%2Fwatch+bitcoin+music&as_qdr=m&btnI=Im+Feeling+Lucky' 2 | 3 | doctype html 4 | 5 | html.h-100 6 | title= settings.title 7 | meta(charset='utf-8') 8 | meta(name='viewport', content='width=device-width, initial-scale=1') 9 | link(rel='stylesheet', href='bootstrap.min.css') 10 | script(src='play.js') 11 | 12 | body.h-100 13 | .container.d-flex.h-100: .justify-content-center.align-self-center.text-center.mx-auto 14 | //-h1.mb-4= settings.title 15 | .d-block.mb-4: a.btn.btn-lg.btn-primary.mx-auto(href=playerUrl, target='_player') Spawn YouTube player 16 | .d-block.mb-4: a.btn.btn-lg.btn-secondary.mx-auto(href='pay', target='_blank') Open payment page 17 | //-p make sure to allow popups,
keep both this page and the popup open,
and use the popup to start playing some music. 18 | 19 | p.text-info powered by #[a(href='https://github.com/shesek/lightning-jukebox') Lightning Jukebox] 20 | --------------------------------------------------------------------------------