├── .babelrc
├── .gitignore
├── LICENSE.md
├── README.md
├── example
├── index.html
├── script.js
└── style.css
├── lib
└── index.js
├── package-lock.json
├── package.json
├── posenet_fran.gif
└── src
├── PoseNet
├── index.jsx
└── utils.js
├── index.html
├── index.jsx
└── index.scss
/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": [ "env", "react" ],
3 | "plugins": [ "transform-class-properties" ]
4 | }
5 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules
2 |
--------------------------------------------------------------------------------
/LICENSE.md:
--------------------------------------------------------------------------------
1 | Copyright (c) 2018 Francisco Ramos
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 all
11 | 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 THE
19 | SOFTWARE.
20 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # PoseNet and TensorFlow.js
2 |
3 | This is an example of using pre-trained models in the browser. For this particular example, this is a trained [MobileNet](https://arxiv.org/abs/1704.04861) model, an efficient CNN for mobile vision. PoseNet can detect human figures in images and videos using either a single-pose or multi-pose algorithm. For more details about this Machine Learning model, [refer to this blog post](https://medium.com/tensorflow/real-time-human-pose-estimation-in-the-browser-with-tensorflow-js-7dd0bc881cd5) for a high-level description of PoseNet running on Tensorflow.js.
4 |
5 | **See [demo here](https://jscriptcoder.github.io/tfjs-posenet/)**
6 |
7 | 
8 |
9 | **Notes:**
10 | 1. This code is based on [tfjs-models/posenet](https://github.com/tensorflow/tfjs-models/tree/master/posenet) model released by TensorFlow team. I borrowed, adapted and turned it into a React component.
11 | 2. Keep in mind I just tested it in Chrome. Honeslty, I don't care about other browsers for this kind of experiments.
12 | 3. You must allow, for obvious reasons, the use of your webcam. Don't worry, the images stay in your browser. Let's say it's GDPR compliance :stuck_out_tongue_winking_eye:
13 |
14 | ## PoseNet React Component
15 | ```jsx
16 | import * as React from 'react'
17 | import ReactDOM from 'react-dom'
18 | import PoseNet from './PoseNet'
19 |
20 | ReactDOM.render(
21 | ,
113 |
114 | document.getElementById('app')
115 | )
116 | ```
117 | ## Installing and running example
118 | ```
119 | $ npm install
120 | $ npm run example
121 | ```
122 |
123 | Browser will open http://localhost:8080/. Have fun :wink:
124 |
125 | ## How to consume the component
126 | ```
127 | $ npm install jscriptcoder/tfjs-posenet
128 | ```
129 |
130 | ```js
131 | import * as React from 'react'
132 | import PoseNet from 'tfjs-posenet'
133 |
134 | const MyContainer = (props) => (
135 |
136 |
This is my container
137 |
141 |
142 | )
143 | ```
144 |
145 |
146 |
--------------------------------------------------------------------------------
/example/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/example/style.css:
--------------------------------------------------------------------------------
1 | * {
2 | box-sizing: border-box; }
3 |
4 | html, body, .PoseNet, .tv, .tv-inner {
5 | width: 100%;
6 | height: 100%; }
7 |
8 | html, body, .PoseNet {
9 | display: flex;
10 | justify-content: center;
11 | align-items: center; }
12 |
13 | html, body {
14 | margin: 0; }
15 |
16 | #example {
17 | flex-grow: 1;
18 | height: 100%; }
19 |
20 | @media (min-width: 600px) {
21 | #example {
22 | flex-grow: unset;
23 | width: 600px;
24 | height: 500px; } }
25 |
26 | .PoseNet__loading {
27 | position: absolute;
28 | font-family: 'Open Sans';
29 | font-size: 2em; }
30 |
31 | .PoseNet video {
32 | -moz-transform: scaleX(-1);
33 | -o-transform: scaleX(-1);
34 | -webkit-transform: scaleX(-1);
35 | transform: scaleX(-1);
36 | display: none; }
37 |
38 | @-webkit-keyframes Gradient {
39 | 0% {
40 | background-position: 0% 50%; }
41 | 50% {
42 | background-position: 100% 50%; }
43 | 100% {
44 | background-position: 0% 50%; } }
45 |
46 | @-moz-keyframes Gradient {
47 | 0% {
48 | background-position: 0% 50%; }
49 | 50% {
50 | background-position: 100% 50%; }
51 | 100% {
52 | background-position: 0% 50%; } }
53 |
54 | @keyframes Gradient {
55 | 0% {
56 | background-position: 0% 50%; }
57 | 50% {
58 | background-position: 100% 50%; }
59 | 100% {
60 | background-position: 0% 50%; } }
61 |
62 | body {
63 | color: #fff;
64 | background: linear-gradient(-45deg, #EE7752, #E73C7E, #23A6D5, #23D5AB);
65 | background-size: 400% 400%;
66 | -webkit-animation: Gradient 15s ease infinite;
67 | -moz-animation: Gradient 15s ease infinite;
68 | animation: Gradient 15s ease infinite; }
69 |
70 | .tv {
71 | border: 10px solid #333;
72 | border-radius: 15px;
73 | background-clip: border-box;
74 | position: relative;
75 | background: #000; }
76 | .tv:after, .tv:before {
77 | position: absolute;
78 | content: "";
79 | background: #333; }
80 | .tv:after {
81 | width: 40px;
82 | height: 50px;
83 | bottom: -50px;
84 | left: 50%;
85 | margin-left: -20px; }
86 | .tv:before {
87 | width: 130px;
88 | height: 10px;
89 | bottom: -50px;
90 | left: 50%;
91 | margin-left: -65px;
92 | border-top-right-radius: 10px;
93 | border-top-left-radius: 10px; }
94 | .tv-inner {
95 | overflow: hidden;
96 | position: relative; }
97 |
--------------------------------------------------------------------------------
/package-lock.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "tfjs-posenet",
3 | "version": "1.0.0",
4 | "lockfileVersion": 1,
5 | "requires": true,
6 | "dependencies": {
7 | "@protobufjs/aspromise": {
8 | "version": "1.1.2",
9 | "resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz",
10 | "integrity": "sha1-m4sMxmPWaafY9vXQiToU00jzD78="
11 | },
12 | "@protobufjs/base64": {
13 | "version": "1.1.2",
14 | "resolved": "https://registry.npmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz",
15 | "integrity": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg=="
16 | },
17 | "@protobufjs/codegen": {
18 | "version": "2.0.4",
19 | "resolved": "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.4.tgz",
20 | "integrity": "sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg=="
21 | },
22 | "@protobufjs/eventemitter": {
23 | "version": "1.1.0",
24 | "resolved": "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz",
25 | "integrity": "sha1-NVy8mLr61ZePntCV85diHx0Ga3A="
26 | },
27 | "@protobufjs/fetch": {
28 | "version": "1.1.0",
29 | "resolved": "https://registry.npmjs.org/@protobufjs/fetch/-/fetch-1.1.0.tgz",
30 | "integrity": "sha1-upn7WYYUr2VwDBYZ/wbUVLDYTEU=",
31 | "requires": {
32 | "@protobufjs/aspromise": "1.1.2",
33 | "@protobufjs/inquire": "1.1.0"
34 | }
35 | },
36 | "@protobufjs/float": {
37 | "version": "1.0.2",
38 | "resolved": "https://registry.npmjs.org/@protobufjs/float/-/float-1.0.2.tgz",
39 | "integrity": "sha1-Xp4avctz/Ap8uLKR33jIy9l7h9E="
40 | },
41 | "@protobufjs/inquire": {
42 | "version": "1.1.0",
43 | "resolved": "https://registry.npmjs.org/@protobufjs/inquire/-/inquire-1.1.0.tgz",
44 | "integrity": "sha1-/yAOPnzyQp4tyvwRQIKOjMY48Ik="
45 | },
46 | "@protobufjs/path": {
47 | "version": "1.1.2",
48 | "resolved": "https://registry.npmjs.org/@protobufjs/path/-/path-1.1.2.tgz",
49 | "integrity": "sha1-bMKyDFya1q0NzP0hynZz2Nf79o0="
50 | },
51 | "@protobufjs/pool": {
52 | "version": "1.1.0",
53 | "resolved": "https://registry.npmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz",
54 | "integrity": "sha1-Cf0V8tbTq/qbZbw2ZQbWrXhG/1Q="
55 | },
56 | "@protobufjs/utf8": {
57 | "version": "1.1.0",
58 | "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz",
59 | "integrity": "sha1-p3c2C1s5oaLlEG+OhY8v0tBgxXA="
60 | },
61 | "@tensorflow-models/posenet": {
62 | "version": "0.1.1",
63 | "resolved": "https://registry.npmjs.org/@tensorflow-models/posenet/-/posenet-0.1.1.tgz",
64 | "integrity": "sha512-ypo4O691pg/Xd9+c+uYGdkA4/6+seUx+DZjeaExjySlffPW4QhEzz6kkxzSt7R4pJavpoUo6hHjA4DgDZWA2dQ=="
65 | },
66 | "@tensorflow/tfjs": {
67 | "version": "0.11.4",
68 | "resolved": "https://registry.npmjs.org/@tensorflow/tfjs/-/tfjs-0.11.4.tgz",
69 | "integrity": "sha512-l2tVHAtwECiAWJvTFSv9TBUA25hZsbckvPEGdjHCiPrl2oFsMsGbQG9nfQBJ+BZkVJdtaA0tZnYlPauejhSazA==",
70 | "requires": {
71 | "@tensorflow/tfjs-converter": "0.4.1",
72 | "@tensorflow/tfjs-core": "0.11.4",
73 | "@tensorflow/tfjs-layers": "0.6.4"
74 | }
75 | },
76 | "@tensorflow/tfjs-converter": {
77 | "version": "0.4.1",
78 | "resolved": "https://registry.npmjs.org/@tensorflow/tfjs-converter/-/tfjs-converter-0.4.1.tgz",
79 | "integrity": "sha512-eajV+pL38LxC9lLAmXXFwOdr/1k+9dd02C4lZ2Ui0r33ew9DDlz0OGJbJraNf8yNCZil72oN1Q3ZoljzASlWBg==",
80 | "requires": {
81 | "@types/long": "3.0.32",
82 | "protobufjs": "6.8.6",
83 | "url": "0.11.0"
84 | }
85 | },
86 | "@tensorflow/tfjs-core": {
87 | "version": "0.11.4",
88 | "resolved": "https://registry.npmjs.org/@tensorflow/tfjs-core/-/tfjs-core-0.11.4.tgz",
89 | "integrity": "sha512-jv/o6RewpdwtVz8+Aq5yppbTrrpE/MTsYcf+LPyC6F9ECiYMBhsPqZHqinzGmdkZIxDZaUC1rJp3ixKWNtDucA==",
90 | "requires": {
91 | "seedrandom": "2.4.3"
92 | }
93 | },
94 | "@tensorflow/tfjs-layers": {
95 | "version": "0.6.4",
96 | "resolved": "https://registry.npmjs.org/@tensorflow/tfjs-layers/-/tfjs-layers-0.6.4.tgz",
97 | "integrity": "sha512-BEdI8YksqwqjNGywN1UKV1EUUFTxhCPVRUIvhW76Jqk/cKfkTiM63WddVFfbCIxDN94EFQQlCQ/CSs7UgJ/8zg=="
98 | },
99 | "@types/long": {
100 | "version": "3.0.32",
101 | "resolved": "https://registry.npmjs.org/@types/long/-/long-3.0.32.tgz",
102 | "integrity": "sha512-ZXyOOm83p7X8p3s0IYM3VeueNmHpkk/yMlP8CLeOnEcu6hIwPH7YjZBvhQkR0ZFS2DqZAxKtJ/M5fcuv3OU5BA=="
103 | },
104 | "@types/node": {
105 | "version": "8.10.18",
106 | "resolved": "https://registry.npmjs.org/@types/node/-/node-8.10.18.tgz",
107 | "integrity": "sha512-WoepSz+wJlU5Bjq5oK6cO1oXe2FgPcjMtQPgKPS8fVaTAD0lxkScMCCbMimdkVCsykqaA4lvHWz3cmj28yimhA=="
108 | },
109 | "JSONStream": {
110 | "version": "1.3.3",
111 | "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.3.tgz",
112 | "integrity": "sha512-3Sp6WZZ/lXl+nTDoGpGWHEpTnnC6X5fnkolYZR6nwIfzbxxvA8utPWe1gCt7i0m9uVGsSz2IS8K8mJ7HmlduMg==",
113 | "dev": true,
114 | "requires": {
115 | "jsonparse": "1.3.1",
116 | "through": "2.3.8"
117 | }
118 | },
119 | "abbrev": {
120 | "version": "1.1.1",
121 | "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
122 | "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==",
123 | "dev": true
124 | },
125 | "accepts": {
126 | "version": "1.3.5",
127 | "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz",
128 | "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=",
129 | "dev": true,
130 | "requires": {
131 | "mime-types": "2.1.18",
132 | "negotiator": "0.6.1"
133 | }
134 | },
135 | "acorn": {
136 | "version": "4.0.13",
137 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz",
138 | "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=",
139 | "dev": true
140 | },
141 | "acorn-node": {
142 | "version": "1.3.0",
143 | "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.3.0.tgz",
144 | "integrity": "sha512-efP54n3d1aLfjL2UMdaXa6DsswwzJeI5rqhbFvXMrKiJ6eJFpf+7R0zN7t8IC+XKn2YOAFAv6xbBNgHUkoHWLw==",
145 | "dev": true,
146 | "requires": {
147 | "acorn": "5.6.1",
148 | "xtend": "4.0.1"
149 | },
150 | "dependencies": {
151 | "acorn": {
152 | "version": "5.6.1",
153 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.6.1.tgz",
154 | "integrity": "sha512-XH4o5BK5jmw9PzSGK7mNf+/xV+mPxQxGZoeC36OVsJZYV77JAG9NnI7T90hoUpI/C1TOfXWTvugRdZ9ZR3iE2Q==",
155 | "dev": true
156 | }
157 | }
158 | },
159 | "amdefine": {
160 | "version": "1.0.1",
161 | "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz",
162 | "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=",
163 | "dev": true
164 | },
165 | "ansi-regex": {
166 | "version": "2.1.1",
167 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
168 | "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
169 | "dev": true
170 | },
171 | "ansi-styles": {
172 | "version": "2.2.1",
173 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
174 | "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=",
175 | "dev": true
176 | },
177 | "anymatch": {
178 | "version": "1.3.2",
179 | "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz",
180 | "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==",
181 | "dev": true,
182 | "requires": {
183 | "micromatch": "2.3.11",
184 | "normalize-path": "2.1.1"
185 | }
186 | },
187 | "apache-crypt": {
188 | "version": "1.2.1",
189 | "resolved": "https://registry.npmjs.org/apache-crypt/-/apache-crypt-1.2.1.tgz",
190 | "integrity": "sha1-1vxyqm0n2ZyVqU/RiNcx7v/6Zjw=",
191 | "dev": true,
192 | "requires": {
193 | "unix-crypt-td-js": "1.0.0"
194 | }
195 | },
196 | "apache-md5": {
197 | "version": "1.1.2",
198 | "resolved": "https://registry.npmjs.org/apache-md5/-/apache-md5-1.1.2.tgz",
199 | "integrity": "sha1-7klza2ObTxCLbp5ibG2pkwa0FpI=",
200 | "dev": true
201 | },
202 | "aproba": {
203 | "version": "1.2.0",
204 | "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz",
205 | "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==",
206 | "dev": true
207 | },
208 | "are-we-there-yet": {
209 | "version": "1.1.5",
210 | "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz",
211 | "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==",
212 | "dev": true,
213 | "requires": {
214 | "delegates": "1.0.0",
215 | "readable-stream": "2.3.6"
216 | }
217 | },
218 | "arr-diff": {
219 | "version": "2.0.0",
220 | "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz",
221 | "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=",
222 | "dev": true,
223 | "requires": {
224 | "arr-flatten": "1.1.0"
225 | }
226 | },
227 | "arr-flatten": {
228 | "version": "1.1.0",
229 | "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz",
230 | "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==",
231 | "dev": true
232 | },
233 | "array-filter": {
234 | "version": "0.0.1",
235 | "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-0.0.1.tgz",
236 | "integrity": "sha1-fajPLiZijtcygDWB/SH2fKzS7uw=",
237 | "dev": true
238 | },
239 | "array-find-index": {
240 | "version": "1.0.2",
241 | "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz",
242 | "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=",
243 | "dev": true
244 | },
245 | "array-map": {
246 | "version": "0.0.0",
247 | "resolved": "https://registry.npmjs.org/array-map/-/array-map-0.0.0.tgz",
248 | "integrity": "sha1-iKK6tz0c97zVwbEYoAP2b2ZfpmI=",
249 | "dev": true
250 | },
251 | "array-reduce": {
252 | "version": "0.0.0",
253 | "resolved": "https://registry.npmjs.org/array-reduce/-/array-reduce-0.0.0.tgz",
254 | "integrity": "sha1-FziZ0//Rx9k4PkR5Ul2+J4yrXys=",
255 | "dev": true
256 | },
257 | "array-unique": {
258 | "version": "0.2.1",
259 | "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz",
260 | "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=",
261 | "dev": true
262 | },
263 | "asap": {
264 | "version": "2.0.6",
265 | "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz",
266 | "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY="
267 | },
268 | "asn1": {
269 | "version": "0.2.3",
270 | "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz",
271 | "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=",
272 | "dev": true
273 | },
274 | "asn1.js": {
275 | "version": "4.10.1",
276 | "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz",
277 | "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==",
278 | "dev": true,
279 | "requires": {
280 | "bn.js": "4.11.8",
281 | "inherits": "2.0.3",
282 | "minimalistic-assert": "1.0.1"
283 | }
284 | },
285 | "assert": {
286 | "version": "1.4.1",
287 | "resolved": "https://registry.npmjs.org/assert/-/assert-1.4.1.tgz",
288 | "integrity": "sha1-mZEtWRg2tab1s0XA8H7vwI/GXZE=",
289 | "dev": true,
290 | "requires": {
291 | "util": "0.10.3"
292 | }
293 | },
294 | "assert-plus": {
295 | "version": "0.2.0",
296 | "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz",
297 | "integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ=",
298 | "dev": true
299 | },
300 | "astw": {
301 | "version": "2.2.0",
302 | "resolved": "https://registry.npmjs.org/astw/-/astw-2.2.0.tgz",
303 | "integrity": "sha1-e9QXhNMkk5h66yOba04cV6hzuRc=",
304 | "dev": true,
305 | "requires": {
306 | "acorn": "4.0.13"
307 | }
308 | },
309 | "async-each": {
310 | "version": "1.0.1",
311 | "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz",
312 | "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=",
313 | "dev": true
314 | },
315 | "async-foreach": {
316 | "version": "0.1.3",
317 | "resolved": "https://registry.npmjs.org/async-foreach/-/async-foreach-0.1.3.tgz",
318 | "integrity": "sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI=",
319 | "dev": true
320 | },
321 | "asynckit": {
322 | "version": "0.4.0",
323 | "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
324 | "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=",
325 | "dev": true
326 | },
327 | "aws-sign2": {
328 | "version": "0.6.0",
329 | "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz",
330 | "integrity": "sha1-FDQt0428yU0OW4fXY81jYSwOeU8=",
331 | "dev": true
332 | },
333 | "aws4": {
334 | "version": "1.7.0",
335 | "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.7.0.tgz",
336 | "integrity": "sha512-32NDda82rhwD9/JBCCkB+MRYDp0oSvlo2IL6rQWA10PQi7tDUM3eqMSltXmY+Oyl/7N3P3qNtAlv7X0d9bI28w==",
337 | "dev": true
338 | },
339 | "babel-cli": {
340 | "version": "6.26.0",
341 | "resolved": "https://registry.npmjs.org/babel-cli/-/babel-cli-6.26.0.tgz",
342 | "integrity": "sha1-UCq1SHTX24itALiHoGODzgPQAvE=",
343 | "dev": true,
344 | "requires": {
345 | "babel-core": "6.26.3",
346 | "babel-polyfill": "6.26.0",
347 | "babel-register": "6.26.0",
348 | "babel-runtime": "6.26.0",
349 | "chokidar": "1.7.0",
350 | "commander": "2.15.1",
351 | "convert-source-map": "1.5.1",
352 | "fs-readdir-recursive": "1.1.0",
353 | "glob": "7.1.2",
354 | "lodash": "4.17.10",
355 | "output-file-sync": "1.1.2",
356 | "path-is-absolute": "1.0.1",
357 | "slash": "1.0.0",
358 | "source-map": "0.5.7",
359 | "v8flags": "2.1.1"
360 | }
361 | },
362 | "babel-code-frame": {
363 | "version": "6.26.0",
364 | "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz",
365 | "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=",
366 | "dev": true,
367 | "requires": {
368 | "chalk": "1.1.3",
369 | "esutils": "2.0.2",
370 | "js-tokens": "3.0.2"
371 | }
372 | },
373 | "babel-core": {
374 | "version": "6.26.3",
375 | "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz",
376 | "integrity": "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==",
377 | "dev": true,
378 | "requires": {
379 | "babel-code-frame": "6.26.0",
380 | "babel-generator": "6.26.1",
381 | "babel-helpers": "6.24.1",
382 | "babel-messages": "6.23.0",
383 | "babel-register": "6.26.0",
384 | "babel-runtime": "6.26.0",
385 | "babel-template": "6.26.0",
386 | "babel-traverse": "6.26.0",
387 | "babel-types": "6.26.0",
388 | "babylon": "6.18.0",
389 | "convert-source-map": "1.5.1",
390 | "debug": "2.6.9",
391 | "json5": "0.5.1",
392 | "lodash": "4.17.10",
393 | "minimatch": "3.0.4",
394 | "path-is-absolute": "1.0.1",
395 | "private": "0.1.8",
396 | "slash": "1.0.0",
397 | "source-map": "0.5.7"
398 | }
399 | },
400 | "babel-generator": {
401 | "version": "6.26.1",
402 | "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz",
403 | "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==",
404 | "dev": true,
405 | "requires": {
406 | "babel-messages": "6.23.0",
407 | "babel-runtime": "6.26.0",
408 | "babel-types": "6.26.0",
409 | "detect-indent": "4.0.0",
410 | "jsesc": "1.3.0",
411 | "lodash": "4.17.10",
412 | "source-map": "0.5.7",
413 | "trim-right": "1.0.1"
414 | }
415 | },
416 | "babel-helper-builder-binary-assignment-operator-visitor": {
417 | "version": "6.24.1",
418 | "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz",
419 | "integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=",
420 | "dev": true,
421 | "requires": {
422 | "babel-helper-explode-assignable-expression": "6.24.1",
423 | "babel-runtime": "6.26.0",
424 | "babel-types": "6.26.0"
425 | }
426 | },
427 | "babel-helper-builder-react-jsx": {
428 | "version": "6.26.0",
429 | "resolved": "https://registry.npmjs.org/babel-helper-builder-react-jsx/-/babel-helper-builder-react-jsx-6.26.0.tgz",
430 | "integrity": "sha1-Of+DE7dci2Xc7/HzHTg+D/KkCKA=",
431 | "dev": true,
432 | "requires": {
433 | "babel-runtime": "6.26.0",
434 | "babel-types": "6.26.0",
435 | "esutils": "2.0.2"
436 | }
437 | },
438 | "babel-helper-call-delegate": {
439 | "version": "6.24.1",
440 | "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz",
441 | "integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=",
442 | "dev": true,
443 | "requires": {
444 | "babel-helper-hoist-variables": "6.24.1",
445 | "babel-runtime": "6.26.0",
446 | "babel-traverse": "6.26.0",
447 | "babel-types": "6.26.0"
448 | }
449 | },
450 | "babel-helper-define-map": {
451 | "version": "6.26.0",
452 | "resolved": "https://registry.npmjs.org/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz",
453 | "integrity": "sha1-pfVtq0GiX5fstJjH66ypgZ+Vvl8=",
454 | "dev": true,
455 | "requires": {
456 | "babel-helper-function-name": "6.24.1",
457 | "babel-runtime": "6.26.0",
458 | "babel-types": "6.26.0",
459 | "lodash": "4.17.10"
460 | }
461 | },
462 | "babel-helper-explode-assignable-expression": {
463 | "version": "6.24.1",
464 | "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz",
465 | "integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=",
466 | "dev": true,
467 | "requires": {
468 | "babel-runtime": "6.26.0",
469 | "babel-traverse": "6.26.0",
470 | "babel-types": "6.26.0"
471 | }
472 | },
473 | "babel-helper-function-name": {
474 | "version": "6.24.1",
475 | "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz",
476 | "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=",
477 | "dev": true,
478 | "requires": {
479 | "babel-helper-get-function-arity": "6.24.1",
480 | "babel-runtime": "6.26.0",
481 | "babel-template": "6.26.0",
482 | "babel-traverse": "6.26.0",
483 | "babel-types": "6.26.0"
484 | }
485 | },
486 | "babel-helper-get-function-arity": {
487 | "version": "6.24.1",
488 | "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz",
489 | "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=",
490 | "dev": true,
491 | "requires": {
492 | "babel-runtime": "6.26.0",
493 | "babel-types": "6.26.0"
494 | }
495 | },
496 | "babel-helper-hoist-variables": {
497 | "version": "6.24.1",
498 | "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz",
499 | "integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=",
500 | "dev": true,
501 | "requires": {
502 | "babel-runtime": "6.26.0",
503 | "babel-types": "6.26.0"
504 | }
505 | },
506 | "babel-helper-optimise-call-expression": {
507 | "version": "6.24.1",
508 | "resolved": "https://registry.npmjs.org/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz",
509 | "integrity": "sha1-96E0J7qfc/j0+pk8VKl4gtEkQlc=",
510 | "dev": true,
511 | "requires": {
512 | "babel-runtime": "6.26.0",
513 | "babel-types": "6.26.0"
514 | }
515 | },
516 | "babel-helper-regex": {
517 | "version": "6.26.0",
518 | "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz",
519 | "integrity": "sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI=",
520 | "dev": true,
521 | "requires": {
522 | "babel-runtime": "6.26.0",
523 | "babel-types": "6.26.0",
524 | "lodash": "4.17.10"
525 | }
526 | },
527 | "babel-helper-remap-async-to-generator": {
528 | "version": "6.24.1",
529 | "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz",
530 | "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=",
531 | "dev": true,
532 | "requires": {
533 | "babel-helper-function-name": "6.24.1",
534 | "babel-runtime": "6.26.0",
535 | "babel-template": "6.26.0",
536 | "babel-traverse": "6.26.0",
537 | "babel-types": "6.26.0"
538 | }
539 | },
540 | "babel-helper-replace-supers": {
541 | "version": "6.24.1",
542 | "resolved": "https://registry.npmjs.org/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz",
543 | "integrity": "sha1-v22/5Dk40XNpohPKiov3S2qQqxo=",
544 | "dev": true,
545 | "requires": {
546 | "babel-helper-optimise-call-expression": "6.24.1",
547 | "babel-messages": "6.23.0",
548 | "babel-runtime": "6.26.0",
549 | "babel-template": "6.26.0",
550 | "babel-traverse": "6.26.0",
551 | "babel-types": "6.26.0"
552 | }
553 | },
554 | "babel-helpers": {
555 | "version": "6.24.1",
556 | "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz",
557 | "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=",
558 | "dev": true,
559 | "requires": {
560 | "babel-runtime": "6.26.0",
561 | "babel-template": "6.26.0"
562 | }
563 | },
564 | "babel-messages": {
565 | "version": "6.23.0",
566 | "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz",
567 | "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=",
568 | "dev": true,
569 | "requires": {
570 | "babel-runtime": "6.26.0"
571 | }
572 | },
573 | "babel-plugin-check-es2015-constants": {
574 | "version": "6.22.0",
575 | "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz",
576 | "integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=",
577 | "dev": true,
578 | "requires": {
579 | "babel-runtime": "6.26.0"
580 | }
581 | },
582 | "babel-plugin-syntax-async-functions": {
583 | "version": "6.13.0",
584 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz",
585 | "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=",
586 | "dev": true
587 | },
588 | "babel-plugin-syntax-class-properties": {
589 | "version": "6.13.0",
590 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-6.13.0.tgz",
591 | "integrity": "sha1-1+sjt5oxf4VDlixQW4J8fWysJ94=",
592 | "dev": true
593 | },
594 | "babel-plugin-syntax-exponentiation-operator": {
595 | "version": "6.13.0",
596 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz",
597 | "integrity": "sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4=",
598 | "dev": true
599 | },
600 | "babel-plugin-syntax-flow": {
601 | "version": "6.18.0",
602 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-flow/-/babel-plugin-syntax-flow-6.18.0.tgz",
603 | "integrity": "sha1-TDqyCiryaqIM0lmVw5jE63AxDI0=",
604 | "dev": true
605 | },
606 | "babel-plugin-syntax-jsx": {
607 | "version": "6.18.0",
608 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz",
609 | "integrity": "sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY=",
610 | "dev": true
611 | },
612 | "babel-plugin-syntax-trailing-function-commas": {
613 | "version": "6.22.0",
614 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz",
615 | "integrity": "sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM=",
616 | "dev": true
617 | },
618 | "babel-plugin-transform-async-to-generator": {
619 | "version": "6.24.1",
620 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz",
621 | "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=",
622 | "dev": true,
623 | "requires": {
624 | "babel-helper-remap-async-to-generator": "6.24.1",
625 | "babel-plugin-syntax-async-functions": "6.13.0",
626 | "babel-runtime": "6.26.0"
627 | }
628 | },
629 | "babel-plugin-transform-class-properties": {
630 | "version": "6.24.1",
631 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-class-properties/-/babel-plugin-transform-class-properties-6.24.1.tgz",
632 | "integrity": "sha1-anl2PqYdM9NvN7YRqp3vgagbRqw=",
633 | "dev": true,
634 | "requires": {
635 | "babel-helper-function-name": "6.24.1",
636 | "babel-plugin-syntax-class-properties": "6.13.0",
637 | "babel-runtime": "6.26.0",
638 | "babel-template": "6.26.0"
639 | }
640 | },
641 | "babel-plugin-transform-es2015-arrow-functions": {
642 | "version": "6.22.0",
643 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz",
644 | "integrity": "sha1-RSaSy3EdX3ncf4XkQM5BufJE0iE=",
645 | "dev": true,
646 | "requires": {
647 | "babel-runtime": "6.26.0"
648 | }
649 | },
650 | "babel-plugin-transform-es2015-block-scoped-functions": {
651 | "version": "6.22.0",
652 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz",
653 | "integrity": "sha1-u8UbSflk1wy42OC5ToICRs46YUE=",
654 | "dev": true,
655 | "requires": {
656 | "babel-runtime": "6.26.0"
657 | }
658 | },
659 | "babel-plugin-transform-es2015-block-scoping": {
660 | "version": "6.26.0",
661 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz",
662 | "integrity": "sha1-1w9SmcEwjQXBL0Y4E7CgnnOxiV8=",
663 | "dev": true,
664 | "requires": {
665 | "babel-runtime": "6.26.0",
666 | "babel-template": "6.26.0",
667 | "babel-traverse": "6.26.0",
668 | "babel-types": "6.26.0",
669 | "lodash": "4.17.10"
670 | }
671 | },
672 | "babel-plugin-transform-es2015-classes": {
673 | "version": "6.24.1",
674 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz",
675 | "integrity": "sha1-WkxYpQyclGHlZLSyo7+ryXolhNs=",
676 | "dev": true,
677 | "requires": {
678 | "babel-helper-define-map": "6.26.0",
679 | "babel-helper-function-name": "6.24.1",
680 | "babel-helper-optimise-call-expression": "6.24.1",
681 | "babel-helper-replace-supers": "6.24.1",
682 | "babel-messages": "6.23.0",
683 | "babel-runtime": "6.26.0",
684 | "babel-template": "6.26.0",
685 | "babel-traverse": "6.26.0",
686 | "babel-types": "6.26.0"
687 | }
688 | },
689 | "babel-plugin-transform-es2015-computed-properties": {
690 | "version": "6.24.1",
691 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz",
692 | "integrity": "sha1-b+Ko0WiV1WNPTNmZttNICjCBWbM=",
693 | "dev": true,
694 | "requires": {
695 | "babel-runtime": "6.26.0",
696 | "babel-template": "6.26.0"
697 | }
698 | },
699 | "babel-plugin-transform-es2015-destructuring": {
700 | "version": "6.23.0",
701 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz",
702 | "integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=",
703 | "dev": true,
704 | "requires": {
705 | "babel-runtime": "6.26.0"
706 | }
707 | },
708 | "babel-plugin-transform-es2015-duplicate-keys": {
709 | "version": "6.24.1",
710 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz",
711 | "integrity": "sha1-c+s9MQypaePvnskcU3QabxV2Qj4=",
712 | "dev": true,
713 | "requires": {
714 | "babel-runtime": "6.26.0",
715 | "babel-types": "6.26.0"
716 | }
717 | },
718 | "babel-plugin-transform-es2015-for-of": {
719 | "version": "6.23.0",
720 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz",
721 | "integrity": "sha1-9HyVsrYT3x0+zC/bdXNiPHUkhpE=",
722 | "dev": true,
723 | "requires": {
724 | "babel-runtime": "6.26.0"
725 | }
726 | },
727 | "babel-plugin-transform-es2015-function-name": {
728 | "version": "6.24.1",
729 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz",
730 | "integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=",
731 | "dev": true,
732 | "requires": {
733 | "babel-helper-function-name": "6.24.1",
734 | "babel-runtime": "6.26.0",
735 | "babel-types": "6.26.0"
736 | }
737 | },
738 | "babel-plugin-transform-es2015-literals": {
739 | "version": "6.22.0",
740 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz",
741 | "integrity": "sha1-T1SgLWzWbPkVKAAZox0xklN3yi4=",
742 | "dev": true,
743 | "requires": {
744 | "babel-runtime": "6.26.0"
745 | }
746 | },
747 | "babel-plugin-transform-es2015-modules-amd": {
748 | "version": "6.24.1",
749 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz",
750 | "integrity": "sha1-Oz5UAXI5hC1tGcMBHEvS8AoA0VQ=",
751 | "dev": true,
752 | "requires": {
753 | "babel-plugin-transform-es2015-modules-commonjs": "6.26.2",
754 | "babel-runtime": "6.26.0",
755 | "babel-template": "6.26.0"
756 | }
757 | },
758 | "babel-plugin-transform-es2015-modules-commonjs": {
759 | "version": "6.26.2",
760 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz",
761 | "integrity": "sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q==",
762 | "dev": true,
763 | "requires": {
764 | "babel-plugin-transform-strict-mode": "6.24.1",
765 | "babel-runtime": "6.26.0",
766 | "babel-template": "6.26.0",
767 | "babel-types": "6.26.0"
768 | }
769 | },
770 | "babel-plugin-transform-es2015-modules-systemjs": {
771 | "version": "6.24.1",
772 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz",
773 | "integrity": "sha1-/4mhQrkRmpBhlfXxBuzzBdlAfSM=",
774 | "dev": true,
775 | "requires": {
776 | "babel-helper-hoist-variables": "6.24.1",
777 | "babel-runtime": "6.26.0",
778 | "babel-template": "6.26.0"
779 | }
780 | },
781 | "babel-plugin-transform-es2015-modules-umd": {
782 | "version": "6.24.1",
783 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz",
784 | "integrity": "sha1-rJl+YoXNGO1hdq22B9YCNErThGg=",
785 | "dev": true,
786 | "requires": {
787 | "babel-plugin-transform-es2015-modules-amd": "6.24.1",
788 | "babel-runtime": "6.26.0",
789 | "babel-template": "6.26.0"
790 | }
791 | },
792 | "babel-plugin-transform-es2015-object-super": {
793 | "version": "6.24.1",
794 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz",
795 | "integrity": "sha1-JM72muIcuDp/hgPa0CH1cusnj40=",
796 | "dev": true,
797 | "requires": {
798 | "babel-helper-replace-supers": "6.24.1",
799 | "babel-runtime": "6.26.0"
800 | }
801 | },
802 | "babel-plugin-transform-es2015-parameters": {
803 | "version": "6.24.1",
804 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz",
805 | "integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=",
806 | "dev": true,
807 | "requires": {
808 | "babel-helper-call-delegate": "6.24.1",
809 | "babel-helper-get-function-arity": "6.24.1",
810 | "babel-runtime": "6.26.0",
811 | "babel-template": "6.26.0",
812 | "babel-traverse": "6.26.0",
813 | "babel-types": "6.26.0"
814 | }
815 | },
816 | "babel-plugin-transform-es2015-shorthand-properties": {
817 | "version": "6.24.1",
818 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz",
819 | "integrity": "sha1-JPh11nIch2YbvZmkYi5R8U3jiqA=",
820 | "dev": true,
821 | "requires": {
822 | "babel-runtime": "6.26.0",
823 | "babel-types": "6.26.0"
824 | }
825 | },
826 | "babel-plugin-transform-es2015-spread": {
827 | "version": "6.22.0",
828 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz",
829 | "integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=",
830 | "dev": true,
831 | "requires": {
832 | "babel-runtime": "6.26.0"
833 | }
834 | },
835 | "babel-plugin-transform-es2015-sticky-regex": {
836 | "version": "6.24.1",
837 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz",
838 | "integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=",
839 | "dev": true,
840 | "requires": {
841 | "babel-helper-regex": "6.26.0",
842 | "babel-runtime": "6.26.0",
843 | "babel-types": "6.26.0"
844 | }
845 | },
846 | "babel-plugin-transform-es2015-template-literals": {
847 | "version": "6.22.0",
848 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz",
849 | "integrity": "sha1-qEs0UPfp+PH2g51taH2oS7EjbY0=",
850 | "dev": true,
851 | "requires": {
852 | "babel-runtime": "6.26.0"
853 | }
854 | },
855 | "babel-plugin-transform-es2015-typeof-symbol": {
856 | "version": "6.23.0",
857 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz",
858 | "integrity": "sha1-3sCfHN3/lLUqxz1QXITfWdzOs3I=",
859 | "dev": true,
860 | "requires": {
861 | "babel-runtime": "6.26.0"
862 | }
863 | },
864 | "babel-plugin-transform-es2015-unicode-regex": {
865 | "version": "6.24.1",
866 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz",
867 | "integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=",
868 | "dev": true,
869 | "requires": {
870 | "babel-helper-regex": "6.26.0",
871 | "babel-runtime": "6.26.0",
872 | "regexpu-core": "2.0.0"
873 | }
874 | },
875 | "babel-plugin-transform-exponentiation-operator": {
876 | "version": "6.24.1",
877 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz",
878 | "integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=",
879 | "dev": true,
880 | "requires": {
881 | "babel-helper-builder-binary-assignment-operator-visitor": "6.24.1",
882 | "babel-plugin-syntax-exponentiation-operator": "6.13.0",
883 | "babel-runtime": "6.26.0"
884 | }
885 | },
886 | "babel-plugin-transform-flow-strip-types": {
887 | "version": "6.22.0",
888 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-flow-strip-types/-/babel-plugin-transform-flow-strip-types-6.22.0.tgz",
889 | "integrity": "sha1-hMtnKTXUNxT9wyvOhFaNh0Qc988=",
890 | "dev": true,
891 | "requires": {
892 | "babel-plugin-syntax-flow": "6.18.0",
893 | "babel-runtime": "6.26.0"
894 | }
895 | },
896 | "babel-plugin-transform-react-display-name": {
897 | "version": "6.25.0",
898 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-display-name/-/babel-plugin-transform-react-display-name-6.25.0.tgz",
899 | "integrity": "sha1-Z+K/Hx6ck6sI25Z5LgU5K/LMKNE=",
900 | "dev": true,
901 | "requires": {
902 | "babel-runtime": "6.26.0"
903 | }
904 | },
905 | "babel-plugin-transform-react-jsx": {
906 | "version": "6.24.1",
907 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-jsx/-/babel-plugin-transform-react-jsx-6.24.1.tgz",
908 | "integrity": "sha1-hAoCjn30YN/DotKfDA2R9jduZqM=",
909 | "dev": true,
910 | "requires": {
911 | "babel-helper-builder-react-jsx": "6.26.0",
912 | "babel-plugin-syntax-jsx": "6.18.0",
913 | "babel-runtime": "6.26.0"
914 | }
915 | },
916 | "babel-plugin-transform-react-jsx-self": {
917 | "version": "6.22.0",
918 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-jsx-self/-/babel-plugin-transform-react-jsx-self-6.22.0.tgz",
919 | "integrity": "sha1-322AqdomEqEh5t3XVYvL7PBuY24=",
920 | "dev": true,
921 | "requires": {
922 | "babel-plugin-syntax-jsx": "6.18.0",
923 | "babel-runtime": "6.26.0"
924 | }
925 | },
926 | "babel-plugin-transform-react-jsx-source": {
927 | "version": "6.22.0",
928 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-jsx-source/-/babel-plugin-transform-react-jsx-source-6.22.0.tgz",
929 | "integrity": "sha1-ZqwSFT9c0tF7PBkmj0vwGX9E7NY=",
930 | "dev": true,
931 | "requires": {
932 | "babel-plugin-syntax-jsx": "6.18.0",
933 | "babel-runtime": "6.26.0"
934 | }
935 | },
936 | "babel-plugin-transform-regenerator": {
937 | "version": "6.26.0",
938 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz",
939 | "integrity": "sha1-4HA2lvveJ/Cj78rPi03KL3s6jy8=",
940 | "dev": true,
941 | "requires": {
942 | "regenerator-transform": "0.10.1"
943 | }
944 | },
945 | "babel-plugin-transform-strict-mode": {
946 | "version": "6.24.1",
947 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz",
948 | "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=",
949 | "dev": true,
950 | "requires": {
951 | "babel-runtime": "6.26.0",
952 | "babel-types": "6.26.0"
953 | }
954 | },
955 | "babel-polyfill": {
956 | "version": "6.26.0",
957 | "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.26.0.tgz",
958 | "integrity": "sha1-N5k3q8Z9eJWXCtxiHyhM2WbPIVM=",
959 | "requires": {
960 | "babel-runtime": "6.26.0",
961 | "core-js": "2.5.7",
962 | "regenerator-runtime": "0.10.5"
963 | },
964 | "dependencies": {
965 | "core-js": {
966 | "version": "2.5.7",
967 | "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.7.tgz",
968 | "integrity": "sha512-RszJCAxg/PP6uzXVXL6BsxSXx/B05oJAQ2vkJRjyjrEcNVycaqOmNb5OTxZPE3xa5gwZduqza6L9JOCenh/Ecw=="
969 | },
970 | "regenerator-runtime": {
971 | "version": "0.10.5",
972 | "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz",
973 | "integrity": "sha1-M2w+/BIgrc7dosn6tntaeVWjNlg="
974 | }
975 | }
976 | },
977 | "babel-preset-env": {
978 | "version": "1.7.0",
979 | "resolved": "https://registry.npmjs.org/babel-preset-env/-/babel-preset-env-1.7.0.tgz",
980 | "integrity": "sha512-9OR2afuKDneX2/q2EurSftUYM0xGu4O2D9adAhVfADDhrYDaxXV0rBbevVYoY9n6nyX1PmQW/0jtpJvUNr9CHg==",
981 | "dev": true,
982 | "requires": {
983 | "babel-plugin-check-es2015-constants": "6.22.0",
984 | "babel-plugin-syntax-trailing-function-commas": "6.22.0",
985 | "babel-plugin-transform-async-to-generator": "6.24.1",
986 | "babel-plugin-transform-es2015-arrow-functions": "6.22.0",
987 | "babel-plugin-transform-es2015-block-scoped-functions": "6.22.0",
988 | "babel-plugin-transform-es2015-block-scoping": "6.26.0",
989 | "babel-plugin-transform-es2015-classes": "6.24.1",
990 | "babel-plugin-transform-es2015-computed-properties": "6.24.1",
991 | "babel-plugin-transform-es2015-destructuring": "6.23.0",
992 | "babel-plugin-transform-es2015-duplicate-keys": "6.24.1",
993 | "babel-plugin-transform-es2015-for-of": "6.23.0",
994 | "babel-plugin-transform-es2015-function-name": "6.24.1",
995 | "babel-plugin-transform-es2015-literals": "6.22.0",
996 | "babel-plugin-transform-es2015-modules-amd": "6.24.1",
997 | "babel-plugin-transform-es2015-modules-commonjs": "6.26.2",
998 | "babel-plugin-transform-es2015-modules-systemjs": "6.24.1",
999 | "babel-plugin-transform-es2015-modules-umd": "6.24.1",
1000 | "babel-plugin-transform-es2015-object-super": "6.24.1",
1001 | "babel-plugin-transform-es2015-parameters": "6.24.1",
1002 | "babel-plugin-transform-es2015-shorthand-properties": "6.24.1",
1003 | "babel-plugin-transform-es2015-spread": "6.22.0",
1004 | "babel-plugin-transform-es2015-sticky-regex": "6.24.1",
1005 | "babel-plugin-transform-es2015-template-literals": "6.22.0",
1006 | "babel-plugin-transform-es2015-typeof-symbol": "6.23.0",
1007 | "babel-plugin-transform-es2015-unicode-regex": "6.24.1",
1008 | "babel-plugin-transform-exponentiation-operator": "6.24.1",
1009 | "babel-plugin-transform-regenerator": "6.26.0",
1010 | "browserslist": "3.2.8",
1011 | "invariant": "2.2.4",
1012 | "semver": "5.5.0"
1013 | }
1014 | },
1015 | "babel-preset-flow": {
1016 | "version": "6.23.0",
1017 | "resolved": "https://registry.npmjs.org/babel-preset-flow/-/babel-preset-flow-6.23.0.tgz",
1018 | "integrity": "sha1-5xIYiHCFrpoktb5Baa/7WZgWxJ0=",
1019 | "dev": true,
1020 | "requires": {
1021 | "babel-plugin-transform-flow-strip-types": "6.22.0"
1022 | }
1023 | },
1024 | "babel-preset-react": {
1025 | "version": "6.24.1",
1026 | "resolved": "https://registry.npmjs.org/babel-preset-react/-/babel-preset-react-6.24.1.tgz",
1027 | "integrity": "sha1-umnfrqRfw+xjm2pOzqbhdwLJE4A=",
1028 | "dev": true,
1029 | "requires": {
1030 | "babel-plugin-syntax-jsx": "6.18.0",
1031 | "babel-plugin-transform-react-display-name": "6.25.0",
1032 | "babel-plugin-transform-react-jsx": "6.24.1",
1033 | "babel-plugin-transform-react-jsx-self": "6.22.0",
1034 | "babel-plugin-transform-react-jsx-source": "6.22.0",
1035 | "babel-preset-flow": "6.23.0"
1036 | }
1037 | },
1038 | "babel-register": {
1039 | "version": "6.26.0",
1040 | "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz",
1041 | "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=",
1042 | "dev": true,
1043 | "requires": {
1044 | "babel-core": "6.26.3",
1045 | "babel-runtime": "6.26.0",
1046 | "core-js": "2.5.7",
1047 | "home-or-tmp": "2.0.0",
1048 | "lodash": "4.17.10",
1049 | "mkdirp": "0.5.1",
1050 | "source-map-support": "0.4.18"
1051 | },
1052 | "dependencies": {
1053 | "core-js": {
1054 | "version": "2.5.7",
1055 | "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.7.tgz",
1056 | "integrity": "sha512-RszJCAxg/PP6uzXVXL6BsxSXx/B05oJAQ2vkJRjyjrEcNVycaqOmNb5OTxZPE3xa5gwZduqza6L9JOCenh/Ecw==",
1057 | "dev": true
1058 | }
1059 | }
1060 | },
1061 | "babel-runtime": {
1062 | "version": "6.26.0",
1063 | "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
1064 | "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
1065 | "requires": {
1066 | "core-js": "2.5.7",
1067 | "regenerator-runtime": "0.11.1"
1068 | },
1069 | "dependencies": {
1070 | "core-js": {
1071 | "version": "2.5.7",
1072 | "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.7.tgz",
1073 | "integrity": "sha512-RszJCAxg/PP6uzXVXL6BsxSXx/B05oJAQ2vkJRjyjrEcNVycaqOmNb5OTxZPE3xa5gwZduqza6L9JOCenh/Ecw=="
1074 | }
1075 | }
1076 | },
1077 | "babel-template": {
1078 | "version": "6.26.0",
1079 | "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz",
1080 | "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=",
1081 | "dev": true,
1082 | "requires": {
1083 | "babel-runtime": "6.26.0",
1084 | "babel-traverse": "6.26.0",
1085 | "babel-types": "6.26.0",
1086 | "babylon": "6.18.0",
1087 | "lodash": "4.17.10"
1088 | }
1089 | },
1090 | "babel-traverse": {
1091 | "version": "6.26.0",
1092 | "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz",
1093 | "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=",
1094 | "dev": true,
1095 | "requires": {
1096 | "babel-code-frame": "6.26.0",
1097 | "babel-messages": "6.23.0",
1098 | "babel-runtime": "6.26.0",
1099 | "babel-types": "6.26.0",
1100 | "babylon": "6.18.0",
1101 | "debug": "2.6.9",
1102 | "globals": "9.18.0",
1103 | "invariant": "2.2.4",
1104 | "lodash": "4.17.10"
1105 | }
1106 | },
1107 | "babel-types": {
1108 | "version": "6.26.0",
1109 | "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz",
1110 | "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=",
1111 | "dev": true,
1112 | "requires": {
1113 | "babel-runtime": "6.26.0",
1114 | "esutils": "2.0.2",
1115 | "lodash": "4.17.10",
1116 | "to-fast-properties": "1.0.3"
1117 | }
1118 | },
1119 | "babelify": {
1120 | "version": "8.0.0",
1121 | "resolved": "https://registry.npmjs.org/babelify/-/babelify-8.0.0.tgz",
1122 | "integrity": "sha512-xVr63fKEvMWUrrIbqlHYsMcc5Zdw4FSVesAHgkgajyCE1W8gbm9rbMakqavhxKvikGYMhEcqxTwB/gQmQ6lBtw==",
1123 | "dev": true
1124 | },
1125 | "babylon": {
1126 | "version": "6.18.0",
1127 | "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz",
1128 | "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==",
1129 | "dev": true
1130 | },
1131 | "balanced-match": {
1132 | "version": "1.0.0",
1133 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
1134 | "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
1135 | "dev": true
1136 | },
1137 | "base64-js": {
1138 | "version": "1.3.0",
1139 | "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.0.tgz",
1140 | "integrity": "sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw==",
1141 | "dev": true
1142 | },
1143 | "basic-auth": {
1144 | "version": "2.0.0",
1145 | "resolved": "https://registry.npmjs.org/basic-auth/-/basic-auth-2.0.0.tgz",
1146 | "integrity": "sha1-AV2z81PgLlY3d1X5YnQuiYHnu7o=",
1147 | "dev": true,
1148 | "requires": {
1149 | "safe-buffer": "5.1.1"
1150 | },
1151 | "dependencies": {
1152 | "safe-buffer": {
1153 | "version": "5.1.1",
1154 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz",
1155 | "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==",
1156 | "dev": true
1157 | }
1158 | }
1159 | },
1160 | "batch": {
1161 | "version": "0.6.1",
1162 | "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz",
1163 | "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=",
1164 | "dev": true
1165 | },
1166 | "bcrypt-pbkdf": {
1167 | "version": "1.0.1",
1168 | "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz",
1169 | "integrity": "sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40=",
1170 | "dev": true,
1171 | "optional": true,
1172 | "requires": {
1173 | "tweetnacl": "0.14.5"
1174 | }
1175 | },
1176 | "bcryptjs": {
1177 | "version": "2.4.3",
1178 | "resolved": "https://registry.npmjs.org/bcryptjs/-/bcryptjs-2.4.3.tgz",
1179 | "integrity": "sha1-mrVie5PmBiH/fNrF2pczAn3x0Ms=",
1180 | "dev": true
1181 | },
1182 | "binary-extensions": {
1183 | "version": "1.11.0",
1184 | "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.11.0.tgz",
1185 | "integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=",
1186 | "dev": true
1187 | },
1188 | "block-stream": {
1189 | "version": "0.0.9",
1190 | "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz",
1191 | "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=",
1192 | "dev": true,
1193 | "requires": {
1194 | "inherits": "2.0.3"
1195 | }
1196 | },
1197 | "bn.js": {
1198 | "version": "4.11.8",
1199 | "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz",
1200 | "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==",
1201 | "dev": true
1202 | },
1203 | "boom": {
1204 | "version": "2.10.1",
1205 | "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz",
1206 | "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=",
1207 | "dev": true,
1208 | "requires": {
1209 | "hoek": "2.16.3"
1210 | }
1211 | },
1212 | "brace-expansion": {
1213 | "version": "1.1.11",
1214 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
1215 | "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
1216 | "dev": true,
1217 | "requires": {
1218 | "balanced-match": "1.0.0",
1219 | "concat-map": "0.0.1"
1220 | }
1221 | },
1222 | "braces": {
1223 | "version": "1.8.5",
1224 | "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz",
1225 | "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=",
1226 | "dev": true,
1227 | "requires": {
1228 | "expand-range": "1.8.2",
1229 | "preserve": "0.2.0",
1230 | "repeat-element": "1.1.2"
1231 | }
1232 | },
1233 | "brorand": {
1234 | "version": "1.1.0",
1235 | "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz",
1236 | "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=",
1237 | "dev": true
1238 | },
1239 | "browser-pack": {
1240 | "version": "6.1.0",
1241 | "resolved": "https://registry.npmjs.org/browser-pack/-/browser-pack-6.1.0.tgz",
1242 | "integrity": "sha512-erYug8XoqzU3IfcU8fUgyHqyOXqIE4tUTTQ+7mqUjQlvnXkOO6OlT9c/ZoJVHYoAaqGxr09CN53G7XIsO4KtWA==",
1243 | "dev": true,
1244 | "requires": {
1245 | "JSONStream": "1.3.3",
1246 | "combine-source-map": "0.8.0",
1247 | "defined": "1.0.0",
1248 | "safe-buffer": "5.1.2",
1249 | "through2": "2.0.3",
1250 | "umd": "3.0.3"
1251 | }
1252 | },
1253 | "browser-resolve": {
1254 | "version": "1.11.2",
1255 | "resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.2.tgz",
1256 | "integrity": "sha1-j/CbCixCFxihBRwmCzLkj0QpOM4=",
1257 | "dev": true,
1258 | "requires": {
1259 | "resolve": "1.1.7"
1260 | },
1261 | "dependencies": {
1262 | "resolve": {
1263 | "version": "1.1.7",
1264 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz",
1265 | "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=",
1266 | "dev": true
1267 | }
1268 | }
1269 | },
1270 | "browserify": {
1271 | "version": "16.2.2",
1272 | "resolved": "https://registry.npmjs.org/browserify/-/browserify-16.2.2.tgz",
1273 | "integrity": "sha512-fMES05wq1Oukts6ksGUU2TMVHHp06LyQt0SIwbXIHm7waSrQmNBZePsU0iM/4f94zbvb/wHma+D1YrdzWYnF/A==",
1274 | "dev": true,
1275 | "requires": {
1276 | "JSONStream": "1.3.3",
1277 | "assert": "1.4.1",
1278 | "browser-pack": "6.1.0",
1279 | "browser-resolve": "1.11.2",
1280 | "browserify-zlib": "0.2.0",
1281 | "buffer": "5.1.0",
1282 | "cached-path-relative": "1.0.1",
1283 | "concat-stream": "1.6.2",
1284 | "console-browserify": "1.1.0",
1285 | "constants-browserify": "1.0.0",
1286 | "crypto-browserify": "3.12.0",
1287 | "defined": "1.0.0",
1288 | "deps-sort": "2.0.0",
1289 | "domain-browser": "1.2.0",
1290 | "duplexer2": "0.1.4",
1291 | "events": "2.1.0",
1292 | "glob": "7.1.2",
1293 | "has": "1.0.1",
1294 | "htmlescape": "1.1.1",
1295 | "https-browserify": "1.0.0",
1296 | "inherits": "2.0.3",
1297 | "insert-module-globals": "7.1.0",
1298 | "labeled-stream-splicer": "2.0.1",
1299 | "mkdirp": "0.5.1",
1300 | "module-deps": "6.1.0",
1301 | "os-browserify": "0.3.0",
1302 | "parents": "1.0.1",
1303 | "path-browserify": "0.0.0",
1304 | "process": "0.11.10",
1305 | "punycode": "1.4.1",
1306 | "querystring-es3": "0.2.1",
1307 | "read-only-stream": "2.0.0",
1308 | "readable-stream": "2.3.6",
1309 | "resolve": "1.7.1",
1310 | "shasum": "1.0.2",
1311 | "shell-quote": "1.6.1",
1312 | "stream-browserify": "2.0.1",
1313 | "stream-http": "2.8.3",
1314 | "string_decoder": "1.1.1",
1315 | "subarg": "1.0.0",
1316 | "syntax-error": "1.4.0",
1317 | "through2": "2.0.3",
1318 | "timers-browserify": "1.4.2",
1319 | "tty-browserify": "0.0.1",
1320 | "url": "0.11.0",
1321 | "util": "0.10.3",
1322 | "vm-browserify": "1.0.1",
1323 | "xtend": "4.0.1"
1324 | }
1325 | },
1326 | "browserify-aes": {
1327 | "version": "1.2.0",
1328 | "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz",
1329 | "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==",
1330 | "dev": true,
1331 | "requires": {
1332 | "buffer-xor": "1.0.3",
1333 | "cipher-base": "1.0.4",
1334 | "create-hash": "1.2.0",
1335 | "evp_bytestokey": "1.0.3",
1336 | "inherits": "2.0.3",
1337 | "safe-buffer": "5.1.2"
1338 | }
1339 | },
1340 | "browserify-cipher": {
1341 | "version": "1.0.1",
1342 | "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz",
1343 | "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==",
1344 | "dev": true,
1345 | "requires": {
1346 | "browserify-aes": "1.2.0",
1347 | "browserify-des": "1.0.1",
1348 | "evp_bytestokey": "1.0.3"
1349 | }
1350 | },
1351 | "browserify-des": {
1352 | "version": "1.0.1",
1353 | "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.1.tgz",
1354 | "integrity": "sha512-zy0Cobe3hhgpiOM32Tj7KQ3Vl91m0njwsjzZQK1L+JDf11dzP9qIvjreVinsvXrgfjhStXwUWAEpB9D7Gwmayw==",
1355 | "dev": true,
1356 | "requires": {
1357 | "cipher-base": "1.0.4",
1358 | "des.js": "1.0.0",
1359 | "inherits": "2.0.3"
1360 | }
1361 | },
1362 | "browserify-rsa": {
1363 | "version": "4.0.1",
1364 | "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz",
1365 | "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=",
1366 | "dev": true,
1367 | "requires": {
1368 | "bn.js": "4.11.8",
1369 | "randombytes": "2.0.6"
1370 | }
1371 | },
1372 | "browserify-sign": {
1373 | "version": "4.0.4",
1374 | "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz",
1375 | "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=",
1376 | "dev": true,
1377 | "requires": {
1378 | "bn.js": "4.11.8",
1379 | "browserify-rsa": "4.0.1",
1380 | "create-hash": "1.2.0",
1381 | "create-hmac": "1.1.7",
1382 | "elliptic": "6.4.0",
1383 | "inherits": "2.0.3",
1384 | "parse-asn1": "5.1.1"
1385 | }
1386 | },
1387 | "browserify-zlib": {
1388 | "version": "0.2.0",
1389 | "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz",
1390 | "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==",
1391 | "dev": true,
1392 | "requires": {
1393 | "pako": "1.0.6"
1394 | }
1395 | },
1396 | "browserslist": {
1397 | "version": "3.2.8",
1398 | "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-3.2.8.tgz",
1399 | "integrity": "sha512-WHVocJYavUwVgVViC0ORikPHQquXwVh939TaelZ4WDqpWgTX/FsGhl/+P4qBUAGcRvtOgDgC+xftNWWp2RUTAQ==",
1400 | "dev": true,
1401 | "requires": {
1402 | "caniuse-lite": "1.0.30000847",
1403 | "electron-to-chromium": "1.3.48"
1404 | }
1405 | },
1406 | "buffer": {
1407 | "version": "5.1.0",
1408 | "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.1.0.tgz",
1409 | "integrity": "sha512-YkIRgwsZwJWTnyQrsBTWefizHh+8GYj3kbL1BTiAQ/9pwpino0G7B2gp5tx/FUBqUlvtxV85KNR3mwfAtv15Yw==",
1410 | "dev": true,
1411 | "requires": {
1412 | "base64-js": "1.3.0",
1413 | "ieee754": "1.1.11"
1414 | }
1415 | },
1416 | "buffer-from": {
1417 | "version": "1.1.0",
1418 | "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.0.tgz",
1419 | "integrity": "sha512-c5mRlguI/Pe2dSZmpER62rSCu0ryKmWddzRYsuXc50U2/g8jMOulc31VZMa4mYx31U5xsmSOpDCgH88Vl9cDGQ==",
1420 | "dev": true
1421 | },
1422 | "buffer-xor": {
1423 | "version": "1.0.3",
1424 | "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz",
1425 | "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=",
1426 | "dev": true
1427 | },
1428 | "builtin-modules": {
1429 | "version": "1.1.1",
1430 | "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz",
1431 | "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=",
1432 | "dev": true
1433 | },
1434 | "builtin-status-codes": {
1435 | "version": "3.0.0",
1436 | "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz",
1437 | "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=",
1438 | "dev": true
1439 | },
1440 | "cached-path-relative": {
1441 | "version": "1.0.1",
1442 | "resolved": "https://registry.npmjs.org/cached-path-relative/-/cached-path-relative-1.0.1.tgz",
1443 | "integrity": "sha1-0JxLUoAKpMB44t2BqGmqyQ0uVOc=",
1444 | "dev": true
1445 | },
1446 | "camelcase": {
1447 | "version": "2.1.1",
1448 | "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz",
1449 | "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=",
1450 | "dev": true
1451 | },
1452 | "camelcase-keys": {
1453 | "version": "2.1.0",
1454 | "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz",
1455 | "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=",
1456 | "dev": true,
1457 | "requires": {
1458 | "camelcase": "2.1.1",
1459 | "map-obj": "1.0.1"
1460 | }
1461 | },
1462 | "caniuse-lite": {
1463 | "version": "1.0.30000847",
1464 | "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000847.tgz",
1465 | "integrity": "sha512-Weo+tRtVWcN2da782Ebx/27hFNEb+KP+uP6tdqAa+2S5bp1zOJhVH9tEpDygagrfvU4QjeuPwi/5VGsgT4SLaA==",
1466 | "dev": true
1467 | },
1468 | "caseless": {
1469 | "version": "0.11.0",
1470 | "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.11.0.tgz",
1471 | "integrity": "sha1-cVuW6phBWTzDMGeSP17GDr2k99c=",
1472 | "dev": true
1473 | },
1474 | "chalk": {
1475 | "version": "1.1.3",
1476 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
1477 | "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
1478 | "dev": true,
1479 | "requires": {
1480 | "ansi-styles": "2.2.1",
1481 | "escape-string-regexp": "1.0.5",
1482 | "has-ansi": "2.0.0",
1483 | "strip-ansi": "3.0.1",
1484 | "supports-color": "2.0.0"
1485 | }
1486 | },
1487 | "chokidar": {
1488 | "version": "1.7.0",
1489 | "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz",
1490 | "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=",
1491 | "dev": true,
1492 | "requires": {
1493 | "anymatch": "1.3.2",
1494 | "async-each": "1.0.1",
1495 | "fsevents": "1.2.4",
1496 | "glob-parent": "2.0.0",
1497 | "inherits": "2.0.3",
1498 | "is-binary-path": "1.0.1",
1499 | "is-glob": "2.0.1",
1500 | "path-is-absolute": "1.0.1",
1501 | "readdirp": "2.1.0"
1502 | }
1503 | },
1504 | "cipher-base": {
1505 | "version": "1.0.4",
1506 | "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz",
1507 | "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==",
1508 | "dev": true,
1509 | "requires": {
1510 | "inherits": "2.0.3",
1511 | "safe-buffer": "5.1.2"
1512 | }
1513 | },
1514 | "cliui": {
1515 | "version": "3.2.0",
1516 | "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz",
1517 | "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=",
1518 | "dev": true,
1519 | "requires": {
1520 | "string-width": "1.0.2",
1521 | "strip-ansi": "3.0.1",
1522 | "wrap-ansi": "2.1.0"
1523 | }
1524 | },
1525 | "code-point-at": {
1526 | "version": "1.1.0",
1527 | "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz",
1528 | "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=",
1529 | "dev": true
1530 | },
1531 | "colors": {
1532 | "version": "1.3.0",
1533 | "resolved": "https://registry.npmjs.org/colors/-/colors-1.3.0.tgz",
1534 | "integrity": "sha512-EDpX3a7wHMWFA7PUHWPHNWqOxIIRSJetuwl0AS5Oi/5FMV8kWm69RTlgm00GKjBO1xFHMtBbL49yRtMMdticBw==",
1535 | "dev": true
1536 | },
1537 | "combine-source-map": {
1538 | "version": "0.8.0",
1539 | "resolved": "https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.8.0.tgz",
1540 | "integrity": "sha1-pY0N8ELBhvz4IqjoAV9UUNLXmos=",
1541 | "dev": true,
1542 | "requires": {
1543 | "convert-source-map": "1.1.3",
1544 | "inline-source-map": "0.6.2",
1545 | "lodash.memoize": "3.0.4",
1546 | "source-map": "0.5.7"
1547 | },
1548 | "dependencies": {
1549 | "convert-source-map": {
1550 | "version": "1.1.3",
1551 | "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.1.3.tgz",
1552 | "integrity": "sha1-SCnId+n+SbMWHzvzZziI4gRpmGA=",
1553 | "dev": true
1554 | }
1555 | }
1556 | },
1557 | "combined-stream": {
1558 | "version": "1.0.6",
1559 | "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz",
1560 | "integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=",
1561 | "dev": true,
1562 | "requires": {
1563 | "delayed-stream": "1.0.0"
1564 | }
1565 | },
1566 | "commander": {
1567 | "version": "2.15.1",
1568 | "resolved": "https://registry.npmjs.org/commander/-/commander-2.15.1.tgz",
1569 | "integrity": "sha512-VlfT9F3V0v+jr4yxPc5gg9s62/fIVWsd2Bk2iD435um1NlGMYdVCq+MjcXnhYq2icNOizHr1kK+5TI6H0Hy0ag==",
1570 | "dev": true
1571 | },
1572 | "concat-map": {
1573 | "version": "0.0.1",
1574 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
1575 | "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
1576 | "dev": true
1577 | },
1578 | "concat-stream": {
1579 | "version": "1.6.2",
1580 | "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz",
1581 | "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==",
1582 | "dev": true,
1583 | "requires": {
1584 | "buffer-from": "1.1.0",
1585 | "inherits": "2.0.3",
1586 | "readable-stream": "2.3.6",
1587 | "typedarray": "0.0.6"
1588 | }
1589 | },
1590 | "connect": {
1591 | "version": "3.5.1",
1592 | "resolved": "https://registry.npmjs.org/connect/-/connect-3.5.1.tgz",
1593 | "integrity": "sha1-bTDXpjx/FwhXprOqazY9lz3KWI4=",
1594 | "dev": true,
1595 | "requires": {
1596 | "debug": "2.2.0",
1597 | "finalhandler": "0.5.1",
1598 | "parseurl": "1.3.2",
1599 | "utils-merge": "1.0.0"
1600 | },
1601 | "dependencies": {
1602 | "debug": {
1603 | "version": "2.2.0",
1604 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz",
1605 | "integrity": "sha1-+HBX6ZWxofauaklgZkE3vFbwOdo=",
1606 | "dev": true,
1607 | "requires": {
1608 | "ms": "0.7.1"
1609 | }
1610 | },
1611 | "ms": {
1612 | "version": "0.7.1",
1613 | "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz",
1614 | "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg=",
1615 | "dev": true
1616 | }
1617 | }
1618 | },
1619 | "console-browserify": {
1620 | "version": "1.1.0",
1621 | "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz",
1622 | "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=",
1623 | "dev": true,
1624 | "requires": {
1625 | "date-now": "0.1.4"
1626 | }
1627 | },
1628 | "console-control-strings": {
1629 | "version": "1.1.0",
1630 | "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz",
1631 | "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=",
1632 | "dev": true
1633 | },
1634 | "constants-browserify": {
1635 | "version": "1.0.0",
1636 | "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz",
1637 | "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=",
1638 | "dev": true
1639 | },
1640 | "convert-source-map": {
1641 | "version": "1.5.1",
1642 | "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.1.tgz",
1643 | "integrity": "sha1-uCeAl7m8IpNl3lxiz1/K7YtVmeU=",
1644 | "dev": true
1645 | },
1646 | "core-js": {
1647 | "version": "1.2.7",
1648 | "resolved": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz",
1649 | "integrity": "sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY="
1650 | },
1651 | "core-util-is": {
1652 | "version": "1.0.2",
1653 | "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
1654 | "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=",
1655 | "dev": true
1656 | },
1657 | "cors": {
1658 | "version": "2.8.4",
1659 | "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.4.tgz",
1660 | "integrity": "sha1-K9OB8usgECAQXNUOpZ2mMJBpRoY=",
1661 | "dev": true,
1662 | "requires": {
1663 | "object-assign": "4.1.1",
1664 | "vary": "1.1.2"
1665 | }
1666 | },
1667 | "create-ecdh": {
1668 | "version": "4.0.3",
1669 | "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz",
1670 | "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==",
1671 | "dev": true,
1672 | "requires": {
1673 | "bn.js": "4.11.8",
1674 | "elliptic": "6.4.0"
1675 | }
1676 | },
1677 | "create-hash": {
1678 | "version": "1.2.0",
1679 | "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz",
1680 | "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==",
1681 | "dev": true,
1682 | "requires": {
1683 | "cipher-base": "1.0.4",
1684 | "inherits": "2.0.3",
1685 | "md5.js": "1.3.4",
1686 | "ripemd160": "2.0.2",
1687 | "sha.js": "2.4.11"
1688 | }
1689 | },
1690 | "create-hmac": {
1691 | "version": "1.1.7",
1692 | "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz",
1693 | "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==",
1694 | "dev": true,
1695 | "requires": {
1696 | "cipher-base": "1.0.4",
1697 | "create-hash": "1.2.0",
1698 | "inherits": "2.0.3",
1699 | "ripemd160": "2.0.2",
1700 | "safe-buffer": "5.1.2",
1701 | "sha.js": "2.4.11"
1702 | }
1703 | },
1704 | "cross-spawn": {
1705 | "version": "3.0.1",
1706 | "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-3.0.1.tgz",
1707 | "integrity": "sha1-ElYDfsufDF9549bvE14wdwGEuYI=",
1708 | "dev": true,
1709 | "requires": {
1710 | "lru-cache": "4.1.3",
1711 | "which": "1.3.1"
1712 | }
1713 | },
1714 | "cryptiles": {
1715 | "version": "2.0.5",
1716 | "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz",
1717 | "integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=",
1718 | "dev": true,
1719 | "requires": {
1720 | "boom": "2.10.1"
1721 | }
1722 | },
1723 | "crypto-browserify": {
1724 | "version": "3.12.0",
1725 | "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz",
1726 | "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==",
1727 | "dev": true,
1728 | "requires": {
1729 | "browserify-cipher": "1.0.1",
1730 | "browserify-sign": "4.0.4",
1731 | "create-ecdh": "4.0.3",
1732 | "create-hash": "1.2.0",
1733 | "create-hmac": "1.1.7",
1734 | "diffie-hellman": "5.0.3",
1735 | "inherits": "2.0.3",
1736 | "pbkdf2": "3.0.16",
1737 | "public-encrypt": "4.0.2",
1738 | "randombytes": "2.0.6",
1739 | "randomfill": "1.0.4"
1740 | }
1741 | },
1742 | "currently-unhandled": {
1743 | "version": "0.4.1",
1744 | "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz",
1745 | "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=",
1746 | "dev": true,
1747 | "requires": {
1748 | "array-find-index": "1.0.2"
1749 | }
1750 | },
1751 | "dashdash": {
1752 | "version": "1.14.1",
1753 | "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz",
1754 | "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=",
1755 | "dev": true,
1756 | "requires": {
1757 | "assert-plus": "1.0.0"
1758 | },
1759 | "dependencies": {
1760 | "assert-plus": {
1761 | "version": "1.0.0",
1762 | "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
1763 | "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=",
1764 | "dev": true
1765 | }
1766 | }
1767 | },
1768 | "date-now": {
1769 | "version": "0.1.4",
1770 | "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz",
1771 | "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=",
1772 | "dev": true
1773 | },
1774 | "debug": {
1775 | "version": "2.6.9",
1776 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
1777 | "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
1778 | "dev": true,
1779 | "requires": {
1780 | "ms": "2.0.0"
1781 | }
1782 | },
1783 | "decamelize": {
1784 | "version": "1.2.0",
1785 | "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
1786 | "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=",
1787 | "dev": true
1788 | },
1789 | "defined": {
1790 | "version": "1.0.0",
1791 | "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz",
1792 | "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=",
1793 | "dev": true
1794 | },
1795 | "delayed-stream": {
1796 | "version": "1.0.0",
1797 | "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
1798 | "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=",
1799 | "dev": true
1800 | },
1801 | "delegates": {
1802 | "version": "1.0.0",
1803 | "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
1804 | "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=",
1805 | "dev": true
1806 | },
1807 | "depd": {
1808 | "version": "1.1.2",
1809 | "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
1810 | "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=",
1811 | "dev": true
1812 | },
1813 | "deps-sort": {
1814 | "version": "2.0.0",
1815 | "resolved": "https://registry.npmjs.org/deps-sort/-/deps-sort-2.0.0.tgz",
1816 | "integrity": "sha1-CRckkC6EZYJg65EHSMzNGvbiH7U=",
1817 | "dev": true,
1818 | "requires": {
1819 | "JSONStream": "1.3.3",
1820 | "shasum": "1.0.2",
1821 | "subarg": "1.0.0",
1822 | "through2": "2.0.3"
1823 | }
1824 | },
1825 | "des.js": {
1826 | "version": "1.0.0",
1827 | "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz",
1828 | "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=",
1829 | "dev": true,
1830 | "requires": {
1831 | "inherits": "2.0.3",
1832 | "minimalistic-assert": "1.0.1"
1833 | }
1834 | },
1835 | "destroy": {
1836 | "version": "1.0.4",
1837 | "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz",
1838 | "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=",
1839 | "dev": true
1840 | },
1841 | "detect-indent": {
1842 | "version": "4.0.0",
1843 | "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz",
1844 | "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=",
1845 | "dev": true,
1846 | "requires": {
1847 | "repeating": "2.0.1"
1848 | }
1849 | },
1850 | "detective": {
1851 | "version": "5.1.0",
1852 | "resolved": "https://registry.npmjs.org/detective/-/detective-5.1.0.tgz",
1853 | "integrity": "sha512-TFHMqfOvxlgrfVzTEkNBSh9SvSNX/HfF4OFI2QFGCyPm02EsyILqnUeb5P6q7JZ3SFNTBL5t2sePRgrN4epUWQ==",
1854 | "dev": true,
1855 | "requires": {
1856 | "acorn-node": "1.3.0",
1857 | "defined": "1.0.0",
1858 | "minimist": "1.2.0"
1859 | },
1860 | "dependencies": {
1861 | "minimist": {
1862 | "version": "1.2.0",
1863 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
1864 | "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
1865 | "dev": true
1866 | }
1867 | }
1868 | },
1869 | "diffie-hellman": {
1870 | "version": "5.0.3",
1871 | "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz",
1872 | "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==",
1873 | "dev": true,
1874 | "requires": {
1875 | "bn.js": "4.11.8",
1876 | "miller-rabin": "4.0.1",
1877 | "randombytes": "2.0.6"
1878 | }
1879 | },
1880 | "domain-browser": {
1881 | "version": "1.2.0",
1882 | "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz",
1883 | "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==",
1884 | "dev": true
1885 | },
1886 | "duplexer": {
1887 | "version": "0.1.1",
1888 | "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz",
1889 | "integrity": "sha1-rOb/gIwc5mtX0ev5eXessCM0z8E=",
1890 | "dev": true
1891 | },
1892 | "duplexer2": {
1893 | "version": "0.1.4",
1894 | "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz",
1895 | "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=",
1896 | "dev": true,
1897 | "requires": {
1898 | "readable-stream": "2.3.6"
1899 | }
1900 | },
1901 | "ecc-jsbn": {
1902 | "version": "0.1.1",
1903 | "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz",
1904 | "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=",
1905 | "dev": true,
1906 | "optional": true,
1907 | "requires": {
1908 | "jsbn": "0.1.1"
1909 | }
1910 | },
1911 | "ee-first": {
1912 | "version": "1.1.1",
1913 | "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
1914 | "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=",
1915 | "dev": true
1916 | },
1917 | "electron-to-chromium": {
1918 | "version": "1.3.48",
1919 | "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.48.tgz",
1920 | "integrity": "sha1-07DYWTgUBE4JLs4hCPw6ya6kuQA=",
1921 | "dev": true
1922 | },
1923 | "elliptic": {
1924 | "version": "6.4.0",
1925 | "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.0.tgz",
1926 | "integrity": "sha1-ysmvh2LIWDYYcAPI3+GT5eLq5d8=",
1927 | "dev": true,
1928 | "requires": {
1929 | "bn.js": "4.11.8",
1930 | "brorand": "1.1.0",
1931 | "hash.js": "1.1.3",
1932 | "hmac-drbg": "1.0.1",
1933 | "inherits": "2.0.3",
1934 | "minimalistic-assert": "1.0.1",
1935 | "minimalistic-crypto-utils": "1.0.1"
1936 | }
1937 | },
1938 | "encodeurl": {
1939 | "version": "1.0.2",
1940 | "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
1941 | "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=",
1942 | "dev": true
1943 | },
1944 | "encoding": {
1945 | "version": "0.1.12",
1946 | "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz",
1947 | "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=",
1948 | "requires": {
1949 | "iconv-lite": "0.4.23"
1950 | }
1951 | },
1952 | "error-ex": {
1953 | "version": "1.3.1",
1954 | "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz",
1955 | "integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=",
1956 | "dev": true,
1957 | "requires": {
1958 | "is-arrayish": "0.2.1"
1959 | }
1960 | },
1961 | "escape-html": {
1962 | "version": "1.0.3",
1963 | "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
1964 | "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=",
1965 | "dev": true
1966 | },
1967 | "escape-string-regexp": {
1968 | "version": "1.0.5",
1969 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
1970 | "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
1971 | "dev": true
1972 | },
1973 | "esutils": {
1974 | "version": "2.0.2",
1975 | "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz",
1976 | "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=",
1977 | "dev": true
1978 | },
1979 | "etag": {
1980 | "version": "1.8.1",
1981 | "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz",
1982 | "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=",
1983 | "dev": true
1984 | },
1985 | "event-stream": {
1986 | "version": "3.3.4",
1987 | "resolved": "http://registry.npmjs.org/event-stream/-/event-stream-3.3.4.tgz",
1988 | "integrity": "sha1-SrTJoPWlTbkzi0w02Gv86PSzVXE=",
1989 | "dev": true,
1990 | "requires": {
1991 | "duplexer": "0.1.1",
1992 | "from": "0.1.7",
1993 | "map-stream": "0.1.0",
1994 | "pause-stream": "0.0.11",
1995 | "split": "0.3.3",
1996 | "stream-combiner": "0.0.4",
1997 | "through": "2.3.8"
1998 | }
1999 | },
2000 | "events": {
2001 | "version": "2.1.0",
2002 | "resolved": "https://registry.npmjs.org/events/-/events-2.1.0.tgz",
2003 | "integrity": "sha512-3Zmiobend8P9DjmKAty0Era4jV8oJ0yGYe2nJJAxgymF9+N8F2m0hhZiMoWtcfepExzNKZumFU3ksdQbInGWCg==",
2004 | "dev": true
2005 | },
2006 | "evp_bytestokey": {
2007 | "version": "1.0.3",
2008 | "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz",
2009 | "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==",
2010 | "dev": true,
2011 | "requires": {
2012 | "md5.js": "1.3.4",
2013 | "safe-buffer": "5.1.2"
2014 | }
2015 | },
2016 | "exec-sh": {
2017 | "version": "0.2.1",
2018 | "resolved": "https://registry.npmjs.org/exec-sh/-/exec-sh-0.2.1.tgz",
2019 | "integrity": "sha512-aLt95pexaugVtQerpmE51+4QfWrNc304uez7jvj6fWnN8GeEHpttB8F36n8N7uVhUMbH/1enbxQ9HImZ4w/9qg==",
2020 | "dev": true,
2021 | "requires": {
2022 | "merge": "1.2.0"
2023 | }
2024 | },
2025 | "expand-brackets": {
2026 | "version": "0.1.5",
2027 | "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz",
2028 | "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=",
2029 | "dev": true,
2030 | "requires": {
2031 | "is-posix-bracket": "0.1.1"
2032 | }
2033 | },
2034 | "expand-range": {
2035 | "version": "1.8.2",
2036 | "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz",
2037 | "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=",
2038 | "dev": true,
2039 | "requires": {
2040 | "fill-range": "2.2.4"
2041 | }
2042 | },
2043 | "extend": {
2044 | "version": "3.0.1",
2045 | "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz",
2046 | "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=",
2047 | "dev": true
2048 | },
2049 | "extglob": {
2050 | "version": "0.3.2",
2051 | "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz",
2052 | "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=",
2053 | "dev": true,
2054 | "requires": {
2055 | "is-extglob": "1.0.0"
2056 | }
2057 | },
2058 | "extsprintf": {
2059 | "version": "1.3.0",
2060 | "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz",
2061 | "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=",
2062 | "dev": true
2063 | },
2064 | "faye-websocket": {
2065 | "version": "0.11.1",
2066 | "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.1.tgz",
2067 | "integrity": "sha1-8O/hjE9W5PQK/H4Gxxn9XuYYjzg=",
2068 | "dev": true,
2069 | "requires": {
2070 | "websocket-driver": "0.7.0"
2071 | }
2072 | },
2073 | "fbjs": {
2074 | "version": "0.8.16",
2075 | "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-0.8.16.tgz",
2076 | "integrity": "sha1-XmdDL1UNxBtXK/VYR7ispk5TN9s=",
2077 | "requires": {
2078 | "core-js": "1.2.7",
2079 | "isomorphic-fetch": "2.2.1",
2080 | "loose-envify": "1.3.1",
2081 | "object-assign": "4.1.1",
2082 | "promise": "7.3.1",
2083 | "setimmediate": "1.0.5",
2084 | "ua-parser-js": "0.7.18"
2085 | }
2086 | },
2087 | "filename-regex": {
2088 | "version": "2.0.1",
2089 | "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz",
2090 | "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=",
2091 | "dev": true
2092 | },
2093 | "fill-range": {
2094 | "version": "2.2.4",
2095 | "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz",
2096 | "integrity": "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==",
2097 | "dev": true,
2098 | "requires": {
2099 | "is-number": "2.1.0",
2100 | "isobject": "2.1.0",
2101 | "randomatic": "3.0.0",
2102 | "repeat-element": "1.1.2",
2103 | "repeat-string": "1.6.1"
2104 | }
2105 | },
2106 | "finalhandler": {
2107 | "version": "0.5.1",
2108 | "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-0.5.1.tgz",
2109 | "integrity": "sha1-LEANjUUwk1vCMlScX6OF7Afeb80=",
2110 | "dev": true,
2111 | "requires": {
2112 | "debug": "2.2.0",
2113 | "escape-html": "1.0.3",
2114 | "on-finished": "2.3.0",
2115 | "statuses": "1.3.1",
2116 | "unpipe": "1.0.0"
2117 | },
2118 | "dependencies": {
2119 | "debug": {
2120 | "version": "2.2.0",
2121 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz",
2122 | "integrity": "sha1-+HBX6ZWxofauaklgZkE3vFbwOdo=",
2123 | "dev": true,
2124 | "requires": {
2125 | "ms": "0.7.1"
2126 | }
2127 | },
2128 | "ms": {
2129 | "version": "0.7.1",
2130 | "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz",
2131 | "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg=",
2132 | "dev": true
2133 | }
2134 | }
2135 | },
2136 | "find-up": {
2137 | "version": "1.1.2",
2138 | "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz",
2139 | "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=",
2140 | "dev": true,
2141 | "requires": {
2142 | "path-exists": "2.1.0",
2143 | "pinkie-promise": "2.0.1"
2144 | }
2145 | },
2146 | "for-in": {
2147 | "version": "1.0.2",
2148 | "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz",
2149 | "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=",
2150 | "dev": true
2151 | },
2152 | "for-own": {
2153 | "version": "0.1.5",
2154 | "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz",
2155 | "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=",
2156 | "dev": true,
2157 | "requires": {
2158 | "for-in": "1.0.2"
2159 | }
2160 | },
2161 | "forever-agent": {
2162 | "version": "0.6.1",
2163 | "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz",
2164 | "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=",
2165 | "dev": true
2166 | },
2167 | "form-data": {
2168 | "version": "2.1.4",
2169 | "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.1.4.tgz",
2170 | "integrity": "sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE=",
2171 | "dev": true,
2172 | "requires": {
2173 | "asynckit": "0.4.0",
2174 | "combined-stream": "1.0.6",
2175 | "mime-types": "2.1.18"
2176 | }
2177 | },
2178 | "fresh": {
2179 | "version": "0.5.2",
2180 | "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
2181 | "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=",
2182 | "dev": true
2183 | },
2184 | "from": {
2185 | "version": "0.1.7",
2186 | "resolved": "https://registry.npmjs.org/from/-/from-0.1.7.tgz",
2187 | "integrity": "sha1-g8YK/Fi5xWmXAH7Rp2izqzA6RP4=",
2188 | "dev": true
2189 | },
2190 | "fs-readdir-recursive": {
2191 | "version": "1.1.0",
2192 | "resolved": "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz",
2193 | "integrity": "sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA==",
2194 | "dev": true
2195 | },
2196 | "fs.realpath": {
2197 | "version": "1.0.0",
2198 | "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
2199 | "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
2200 | "dev": true
2201 | },
2202 | "fsevents": {
2203 | "version": "1.2.4",
2204 | "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.4.tgz",
2205 | "integrity": "sha512-z8H8/diyk76B7q5wg+Ud0+CqzcAF3mBBI/bA5ne5zrRUUIvNkJY//D3BqyH571KuAC4Nr7Rw7CjWX4r0y9DvNg==",
2206 | "dev": true,
2207 | "optional": true,
2208 | "requires": {
2209 | "nan": "2.10.0",
2210 | "node-pre-gyp": "0.10.0"
2211 | },
2212 | "dependencies": {
2213 | "abbrev": {
2214 | "version": "1.1.1",
2215 | "bundled": true,
2216 | "dev": true,
2217 | "optional": true
2218 | },
2219 | "ansi-regex": {
2220 | "version": "2.1.1",
2221 | "bundled": true,
2222 | "dev": true
2223 | },
2224 | "aproba": {
2225 | "version": "1.2.0",
2226 | "bundled": true,
2227 | "dev": true,
2228 | "optional": true
2229 | },
2230 | "are-we-there-yet": {
2231 | "version": "1.1.4",
2232 | "bundled": true,
2233 | "dev": true,
2234 | "optional": true,
2235 | "requires": {
2236 | "delegates": "1.0.0",
2237 | "readable-stream": "2.3.6"
2238 | }
2239 | },
2240 | "balanced-match": {
2241 | "version": "1.0.0",
2242 | "bundled": true,
2243 | "dev": true
2244 | },
2245 | "brace-expansion": {
2246 | "version": "1.1.11",
2247 | "bundled": true,
2248 | "dev": true,
2249 | "requires": {
2250 | "balanced-match": "1.0.0",
2251 | "concat-map": "0.0.1"
2252 | }
2253 | },
2254 | "chownr": {
2255 | "version": "1.0.1",
2256 | "bundled": true,
2257 | "dev": true,
2258 | "optional": true
2259 | },
2260 | "code-point-at": {
2261 | "version": "1.1.0",
2262 | "bundled": true,
2263 | "dev": true
2264 | },
2265 | "concat-map": {
2266 | "version": "0.0.1",
2267 | "bundled": true,
2268 | "dev": true
2269 | },
2270 | "console-control-strings": {
2271 | "version": "1.1.0",
2272 | "bundled": true,
2273 | "dev": true
2274 | },
2275 | "core-util-is": {
2276 | "version": "1.0.2",
2277 | "bundled": true,
2278 | "dev": true,
2279 | "optional": true
2280 | },
2281 | "debug": {
2282 | "version": "2.6.9",
2283 | "bundled": true,
2284 | "dev": true,
2285 | "optional": true,
2286 | "requires": {
2287 | "ms": "2.0.0"
2288 | }
2289 | },
2290 | "deep-extend": {
2291 | "version": "0.5.1",
2292 | "bundled": true,
2293 | "dev": true,
2294 | "optional": true
2295 | },
2296 | "delegates": {
2297 | "version": "1.0.0",
2298 | "bundled": true,
2299 | "dev": true,
2300 | "optional": true
2301 | },
2302 | "detect-libc": {
2303 | "version": "1.0.3",
2304 | "bundled": true,
2305 | "dev": true,
2306 | "optional": true
2307 | },
2308 | "fs-minipass": {
2309 | "version": "1.2.5",
2310 | "bundled": true,
2311 | "dev": true,
2312 | "optional": true,
2313 | "requires": {
2314 | "minipass": "2.2.4"
2315 | }
2316 | },
2317 | "fs.realpath": {
2318 | "version": "1.0.0",
2319 | "bundled": true,
2320 | "dev": true,
2321 | "optional": true
2322 | },
2323 | "gauge": {
2324 | "version": "2.7.4",
2325 | "bundled": true,
2326 | "dev": true,
2327 | "optional": true,
2328 | "requires": {
2329 | "aproba": "1.2.0",
2330 | "console-control-strings": "1.1.0",
2331 | "has-unicode": "2.0.1",
2332 | "object-assign": "4.1.1",
2333 | "signal-exit": "3.0.2",
2334 | "string-width": "1.0.2",
2335 | "strip-ansi": "3.0.1",
2336 | "wide-align": "1.1.2"
2337 | }
2338 | },
2339 | "glob": {
2340 | "version": "7.1.2",
2341 | "bundled": true,
2342 | "dev": true,
2343 | "optional": true,
2344 | "requires": {
2345 | "fs.realpath": "1.0.0",
2346 | "inflight": "1.0.6",
2347 | "inherits": "2.0.3",
2348 | "minimatch": "3.0.4",
2349 | "once": "1.4.0",
2350 | "path-is-absolute": "1.0.1"
2351 | }
2352 | },
2353 | "has-unicode": {
2354 | "version": "2.0.1",
2355 | "bundled": true,
2356 | "dev": true,
2357 | "optional": true
2358 | },
2359 | "iconv-lite": {
2360 | "version": "0.4.21",
2361 | "bundled": true,
2362 | "dev": true,
2363 | "optional": true,
2364 | "requires": {
2365 | "safer-buffer": "2.1.2"
2366 | }
2367 | },
2368 | "ignore-walk": {
2369 | "version": "3.0.1",
2370 | "bundled": true,
2371 | "dev": true,
2372 | "optional": true,
2373 | "requires": {
2374 | "minimatch": "3.0.4"
2375 | }
2376 | },
2377 | "inflight": {
2378 | "version": "1.0.6",
2379 | "bundled": true,
2380 | "dev": true,
2381 | "optional": true,
2382 | "requires": {
2383 | "once": "1.4.0",
2384 | "wrappy": "1.0.2"
2385 | }
2386 | },
2387 | "inherits": {
2388 | "version": "2.0.3",
2389 | "bundled": true,
2390 | "dev": true
2391 | },
2392 | "ini": {
2393 | "version": "1.3.5",
2394 | "bundled": true,
2395 | "dev": true,
2396 | "optional": true
2397 | },
2398 | "is-fullwidth-code-point": {
2399 | "version": "1.0.0",
2400 | "bundled": true,
2401 | "dev": true,
2402 | "requires": {
2403 | "number-is-nan": "1.0.1"
2404 | }
2405 | },
2406 | "isarray": {
2407 | "version": "1.0.0",
2408 | "bundled": true,
2409 | "dev": true,
2410 | "optional": true
2411 | },
2412 | "minimatch": {
2413 | "version": "3.0.4",
2414 | "bundled": true,
2415 | "dev": true,
2416 | "requires": {
2417 | "brace-expansion": "1.1.11"
2418 | }
2419 | },
2420 | "minimist": {
2421 | "version": "0.0.8",
2422 | "bundled": true,
2423 | "dev": true
2424 | },
2425 | "minipass": {
2426 | "version": "2.2.4",
2427 | "bundled": true,
2428 | "dev": true,
2429 | "requires": {
2430 | "safe-buffer": "5.1.1",
2431 | "yallist": "3.0.2"
2432 | }
2433 | },
2434 | "minizlib": {
2435 | "version": "1.1.0",
2436 | "bundled": true,
2437 | "dev": true,
2438 | "optional": true,
2439 | "requires": {
2440 | "minipass": "2.2.4"
2441 | }
2442 | },
2443 | "mkdirp": {
2444 | "version": "0.5.1",
2445 | "bundled": true,
2446 | "dev": true,
2447 | "requires": {
2448 | "minimist": "0.0.8"
2449 | }
2450 | },
2451 | "ms": {
2452 | "version": "2.0.0",
2453 | "bundled": true,
2454 | "dev": true,
2455 | "optional": true
2456 | },
2457 | "needle": {
2458 | "version": "2.2.0",
2459 | "bundled": true,
2460 | "dev": true,
2461 | "optional": true,
2462 | "requires": {
2463 | "debug": "2.6.9",
2464 | "iconv-lite": "0.4.21",
2465 | "sax": "1.2.4"
2466 | }
2467 | },
2468 | "node-pre-gyp": {
2469 | "version": "0.10.0",
2470 | "bundled": true,
2471 | "dev": true,
2472 | "optional": true,
2473 | "requires": {
2474 | "detect-libc": "1.0.3",
2475 | "mkdirp": "0.5.1",
2476 | "needle": "2.2.0",
2477 | "nopt": "4.0.1",
2478 | "npm-packlist": "1.1.10",
2479 | "npmlog": "4.1.2",
2480 | "rc": "1.2.7",
2481 | "rimraf": "2.6.2",
2482 | "semver": "5.5.0",
2483 | "tar": "4.4.1"
2484 | }
2485 | },
2486 | "nopt": {
2487 | "version": "4.0.1",
2488 | "bundled": true,
2489 | "dev": true,
2490 | "optional": true,
2491 | "requires": {
2492 | "abbrev": "1.1.1",
2493 | "osenv": "0.1.5"
2494 | }
2495 | },
2496 | "npm-bundled": {
2497 | "version": "1.0.3",
2498 | "bundled": true,
2499 | "dev": true,
2500 | "optional": true
2501 | },
2502 | "npm-packlist": {
2503 | "version": "1.1.10",
2504 | "bundled": true,
2505 | "dev": true,
2506 | "optional": true,
2507 | "requires": {
2508 | "ignore-walk": "3.0.1",
2509 | "npm-bundled": "1.0.3"
2510 | }
2511 | },
2512 | "npmlog": {
2513 | "version": "4.1.2",
2514 | "bundled": true,
2515 | "dev": true,
2516 | "optional": true,
2517 | "requires": {
2518 | "are-we-there-yet": "1.1.4",
2519 | "console-control-strings": "1.1.0",
2520 | "gauge": "2.7.4",
2521 | "set-blocking": "2.0.0"
2522 | }
2523 | },
2524 | "number-is-nan": {
2525 | "version": "1.0.1",
2526 | "bundled": true,
2527 | "dev": true
2528 | },
2529 | "object-assign": {
2530 | "version": "4.1.1",
2531 | "bundled": true,
2532 | "dev": true,
2533 | "optional": true
2534 | },
2535 | "once": {
2536 | "version": "1.4.0",
2537 | "bundled": true,
2538 | "dev": true,
2539 | "requires": {
2540 | "wrappy": "1.0.2"
2541 | }
2542 | },
2543 | "os-homedir": {
2544 | "version": "1.0.2",
2545 | "bundled": true,
2546 | "dev": true,
2547 | "optional": true
2548 | },
2549 | "os-tmpdir": {
2550 | "version": "1.0.2",
2551 | "bundled": true,
2552 | "dev": true,
2553 | "optional": true
2554 | },
2555 | "osenv": {
2556 | "version": "0.1.5",
2557 | "bundled": true,
2558 | "dev": true,
2559 | "optional": true,
2560 | "requires": {
2561 | "os-homedir": "1.0.2",
2562 | "os-tmpdir": "1.0.2"
2563 | }
2564 | },
2565 | "path-is-absolute": {
2566 | "version": "1.0.1",
2567 | "bundled": true,
2568 | "dev": true,
2569 | "optional": true
2570 | },
2571 | "process-nextick-args": {
2572 | "version": "2.0.0",
2573 | "bundled": true,
2574 | "dev": true,
2575 | "optional": true
2576 | },
2577 | "rc": {
2578 | "version": "1.2.7",
2579 | "bundled": true,
2580 | "dev": true,
2581 | "optional": true,
2582 | "requires": {
2583 | "deep-extend": "0.5.1",
2584 | "ini": "1.3.5",
2585 | "minimist": "1.2.0",
2586 | "strip-json-comments": "2.0.1"
2587 | },
2588 | "dependencies": {
2589 | "minimist": {
2590 | "version": "1.2.0",
2591 | "bundled": true,
2592 | "dev": true,
2593 | "optional": true
2594 | }
2595 | }
2596 | },
2597 | "readable-stream": {
2598 | "version": "2.3.6",
2599 | "bundled": true,
2600 | "dev": true,
2601 | "optional": true,
2602 | "requires": {
2603 | "core-util-is": "1.0.2",
2604 | "inherits": "2.0.3",
2605 | "isarray": "1.0.0",
2606 | "process-nextick-args": "2.0.0",
2607 | "safe-buffer": "5.1.1",
2608 | "string_decoder": "1.1.1",
2609 | "util-deprecate": "1.0.2"
2610 | }
2611 | },
2612 | "rimraf": {
2613 | "version": "2.6.2",
2614 | "bundled": true,
2615 | "dev": true,
2616 | "optional": true,
2617 | "requires": {
2618 | "glob": "7.1.2"
2619 | }
2620 | },
2621 | "safe-buffer": {
2622 | "version": "5.1.1",
2623 | "bundled": true,
2624 | "dev": true
2625 | },
2626 | "safer-buffer": {
2627 | "version": "2.1.2",
2628 | "bundled": true,
2629 | "dev": true,
2630 | "optional": true
2631 | },
2632 | "sax": {
2633 | "version": "1.2.4",
2634 | "bundled": true,
2635 | "dev": true,
2636 | "optional": true
2637 | },
2638 | "semver": {
2639 | "version": "5.5.0",
2640 | "bundled": true,
2641 | "dev": true,
2642 | "optional": true
2643 | },
2644 | "set-blocking": {
2645 | "version": "2.0.0",
2646 | "bundled": true,
2647 | "dev": true,
2648 | "optional": true
2649 | },
2650 | "signal-exit": {
2651 | "version": "3.0.2",
2652 | "bundled": true,
2653 | "dev": true,
2654 | "optional": true
2655 | },
2656 | "string-width": {
2657 | "version": "1.0.2",
2658 | "bundled": true,
2659 | "dev": true,
2660 | "requires": {
2661 | "code-point-at": "1.1.0",
2662 | "is-fullwidth-code-point": "1.0.0",
2663 | "strip-ansi": "3.0.1"
2664 | }
2665 | },
2666 | "string_decoder": {
2667 | "version": "1.1.1",
2668 | "bundled": true,
2669 | "dev": true,
2670 | "optional": true,
2671 | "requires": {
2672 | "safe-buffer": "5.1.1"
2673 | }
2674 | },
2675 | "strip-ansi": {
2676 | "version": "3.0.1",
2677 | "bundled": true,
2678 | "dev": true,
2679 | "requires": {
2680 | "ansi-regex": "2.1.1"
2681 | }
2682 | },
2683 | "strip-json-comments": {
2684 | "version": "2.0.1",
2685 | "bundled": true,
2686 | "dev": true,
2687 | "optional": true
2688 | },
2689 | "tar": {
2690 | "version": "4.4.1",
2691 | "bundled": true,
2692 | "dev": true,
2693 | "optional": true,
2694 | "requires": {
2695 | "chownr": "1.0.1",
2696 | "fs-minipass": "1.2.5",
2697 | "minipass": "2.2.4",
2698 | "minizlib": "1.1.0",
2699 | "mkdirp": "0.5.1",
2700 | "safe-buffer": "5.1.1",
2701 | "yallist": "3.0.2"
2702 | }
2703 | },
2704 | "util-deprecate": {
2705 | "version": "1.0.2",
2706 | "bundled": true,
2707 | "dev": true,
2708 | "optional": true
2709 | },
2710 | "wide-align": {
2711 | "version": "1.1.2",
2712 | "bundled": true,
2713 | "dev": true,
2714 | "optional": true,
2715 | "requires": {
2716 | "string-width": "1.0.2"
2717 | }
2718 | },
2719 | "wrappy": {
2720 | "version": "1.0.2",
2721 | "bundled": true,
2722 | "dev": true
2723 | },
2724 | "yallist": {
2725 | "version": "3.0.2",
2726 | "bundled": true,
2727 | "dev": true
2728 | }
2729 | }
2730 | },
2731 | "fstream": {
2732 | "version": "1.0.11",
2733 | "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.11.tgz",
2734 | "integrity": "sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE=",
2735 | "dev": true,
2736 | "requires": {
2737 | "graceful-fs": "4.1.11",
2738 | "inherits": "2.0.3",
2739 | "mkdirp": "0.5.1",
2740 | "rimraf": "2.6.2"
2741 | }
2742 | },
2743 | "function-bind": {
2744 | "version": "1.1.1",
2745 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
2746 | "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
2747 | "dev": true
2748 | },
2749 | "gauge": {
2750 | "version": "2.7.4",
2751 | "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz",
2752 | "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=",
2753 | "dev": true,
2754 | "requires": {
2755 | "aproba": "1.2.0",
2756 | "console-control-strings": "1.1.0",
2757 | "has-unicode": "2.0.1",
2758 | "object-assign": "4.1.1",
2759 | "signal-exit": "3.0.2",
2760 | "string-width": "1.0.2",
2761 | "strip-ansi": "3.0.1",
2762 | "wide-align": "1.1.3"
2763 | }
2764 | },
2765 | "gaze": {
2766 | "version": "1.1.3",
2767 | "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz",
2768 | "integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==",
2769 | "dev": true,
2770 | "requires": {
2771 | "globule": "1.2.1"
2772 | }
2773 | },
2774 | "generate-function": {
2775 | "version": "2.0.0",
2776 | "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.0.0.tgz",
2777 | "integrity": "sha1-aFj+fAlpt9TpCTM3ZHrHn2DfvnQ=",
2778 | "dev": true
2779 | },
2780 | "generate-object-property": {
2781 | "version": "1.2.0",
2782 | "resolved": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz",
2783 | "integrity": "sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA=",
2784 | "dev": true,
2785 | "requires": {
2786 | "is-property": "1.0.2"
2787 | }
2788 | },
2789 | "get-caller-file": {
2790 | "version": "1.0.2",
2791 | "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.2.tgz",
2792 | "integrity": "sha1-9wLmMSfn4jHBYKgMFVSstw1QR+U=",
2793 | "dev": true
2794 | },
2795 | "get-stdin": {
2796 | "version": "4.0.1",
2797 | "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
2798 | "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=",
2799 | "dev": true
2800 | },
2801 | "getpass": {
2802 | "version": "0.1.7",
2803 | "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz",
2804 | "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=",
2805 | "dev": true,
2806 | "requires": {
2807 | "assert-plus": "1.0.0"
2808 | },
2809 | "dependencies": {
2810 | "assert-plus": {
2811 | "version": "1.0.0",
2812 | "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
2813 | "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=",
2814 | "dev": true
2815 | }
2816 | }
2817 | },
2818 | "glob": {
2819 | "version": "7.1.2",
2820 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
2821 | "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
2822 | "dev": true,
2823 | "requires": {
2824 | "fs.realpath": "1.0.0",
2825 | "inflight": "1.0.6",
2826 | "inherits": "2.0.3",
2827 | "minimatch": "3.0.4",
2828 | "once": "1.4.0",
2829 | "path-is-absolute": "1.0.1"
2830 | }
2831 | },
2832 | "glob-base": {
2833 | "version": "0.3.0",
2834 | "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz",
2835 | "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=",
2836 | "dev": true,
2837 | "requires": {
2838 | "glob-parent": "2.0.0",
2839 | "is-glob": "2.0.1"
2840 | }
2841 | },
2842 | "glob-parent": {
2843 | "version": "2.0.0",
2844 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz",
2845 | "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=",
2846 | "dev": true,
2847 | "requires": {
2848 | "is-glob": "2.0.1"
2849 | }
2850 | },
2851 | "globals": {
2852 | "version": "9.18.0",
2853 | "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz",
2854 | "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==",
2855 | "dev": true
2856 | },
2857 | "globule": {
2858 | "version": "1.2.1",
2859 | "resolved": "https://registry.npmjs.org/globule/-/globule-1.2.1.tgz",
2860 | "integrity": "sha512-g7QtgWF4uYSL5/dn71WxubOrS7JVGCnFPEnoeChJmBnyR9Mw8nGoEwOgJL/RC2Te0WhbsEUCejfH8SZNJ+adYQ==",
2861 | "dev": true,
2862 | "requires": {
2863 | "glob": "7.1.2",
2864 | "lodash": "4.17.10",
2865 | "minimatch": "3.0.4"
2866 | }
2867 | },
2868 | "graceful-fs": {
2869 | "version": "4.1.11",
2870 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz",
2871 | "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=",
2872 | "dev": true
2873 | },
2874 | "har-validator": {
2875 | "version": "2.0.6",
2876 | "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-2.0.6.tgz",
2877 | "integrity": "sha1-zcvAgYgmWtEZtqWnyKtw7s+10n0=",
2878 | "dev": true,
2879 | "requires": {
2880 | "chalk": "1.1.3",
2881 | "commander": "2.15.1",
2882 | "is-my-json-valid": "2.17.2",
2883 | "pinkie-promise": "2.0.1"
2884 | }
2885 | },
2886 | "has": {
2887 | "version": "1.0.1",
2888 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.1.tgz",
2889 | "integrity": "sha1-hGFzP1OLCDfJNh45qauelwTcLyg=",
2890 | "dev": true,
2891 | "requires": {
2892 | "function-bind": "1.1.1"
2893 | }
2894 | },
2895 | "has-ansi": {
2896 | "version": "2.0.0",
2897 | "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz",
2898 | "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=",
2899 | "dev": true,
2900 | "requires": {
2901 | "ansi-regex": "2.1.1"
2902 | }
2903 | },
2904 | "has-unicode": {
2905 | "version": "2.0.1",
2906 | "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz",
2907 | "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=",
2908 | "dev": true
2909 | },
2910 | "hash-base": {
2911 | "version": "3.0.4",
2912 | "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz",
2913 | "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=",
2914 | "dev": true,
2915 | "requires": {
2916 | "inherits": "2.0.3",
2917 | "safe-buffer": "5.1.2"
2918 | }
2919 | },
2920 | "hash.js": {
2921 | "version": "1.1.3",
2922 | "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.3.tgz",
2923 | "integrity": "sha512-/UETyP0W22QILqS+6HowevwhEFJ3MBJnwTf75Qob9Wz9t0DPuisL8kW8YZMK62dHAKE1c1p+gY1TtOLY+USEHA==",
2924 | "dev": true,
2925 | "requires": {
2926 | "inherits": "2.0.3",
2927 | "minimalistic-assert": "1.0.1"
2928 | }
2929 | },
2930 | "hawk": {
2931 | "version": "3.1.3",
2932 | "resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz",
2933 | "integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=",
2934 | "dev": true,
2935 | "requires": {
2936 | "boom": "2.10.1",
2937 | "cryptiles": "2.0.5",
2938 | "hoek": "2.16.3",
2939 | "sntp": "1.0.9"
2940 | }
2941 | },
2942 | "hmac-drbg": {
2943 | "version": "1.0.1",
2944 | "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz",
2945 | "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=",
2946 | "dev": true,
2947 | "requires": {
2948 | "hash.js": "1.1.3",
2949 | "minimalistic-assert": "1.0.1",
2950 | "minimalistic-crypto-utils": "1.0.1"
2951 | }
2952 | },
2953 | "hoek": {
2954 | "version": "2.16.3",
2955 | "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz",
2956 | "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=",
2957 | "dev": true
2958 | },
2959 | "home-or-tmp": {
2960 | "version": "2.0.0",
2961 | "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz",
2962 | "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=",
2963 | "dev": true,
2964 | "requires": {
2965 | "os-homedir": "1.0.2",
2966 | "os-tmpdir": "1.0.2"
2967 | }
2968 | },
2969 | "hosted-git-info": {
2970 | "version": "2.6.0",
2971 | "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.6.0.tgz",
2972 | "integrity": "sha512-lIbgIIQA3lz5XaB6vxakj6sDHADJiZadYEJB+FgA+C4nubM1NwcuvUr9EJPmnH1skZqpqUzWborWo8EIUi0Sdw==",
2973 | "dev": true
2974 | },
2975 | "htmlescape": {
2976 | "version": "1.1.1",
2977 | "resolved": "https://registry.npmjs.org/htmlescape/-/htmlescape-1.1.1.tgz",
2978 | "integrity": "sha1-OgPtwiFLyjtmQko+eVk0lQnLA1E=",
2979 | "dev": true
2980 | },
2981 | "http-auth": {
2982 | "version": "3.1.3",
2983 | "resolved": "https://registry.npmjs.org/http-auth/-/http-auth-3.1.3.tgz",
2984 | "integrity": "sha1-lFz63WZSHq+PfISRPTd9exXyTjE=",
2985 | "dev": true,
2986 | "requires": {
2987 | "apache-crypt": "1.2.1",
2988 | "apache-md5": "1.1.2",
2989 | "bcryptjs": "2.4.3",
2990 | "uuid": "3.2.1"
2991 | }
2992 | },
2993 | "http-errors": {
2994 | "version": "1.6.3",
2995 | "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz",
2996 | "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=",
2997 | "dev": true,
2998 | "requires": {
2999 | "depd": "1.1.2",
3000 | "inherits": "2.0.3",
3001 | "setprototypeof": "1.1.0",
3002 | "statuses": "1.5.0"
3003 | },
3004 | "dependencies": {
3005 | "statuses": {
3006 | "version": "1.5.0",
3007 | "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz",
3008 | "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=",
3009 | "dev": true
3010 | }
3011 | }
3012 | },
3013 | "http-parser-js": {
3014 | "version": "0.4.13",
3015 | "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.4.13.tgz",
3016 | "integrity": "sha1-O9bW/ebjFyyTNMOzO2wZPYD+ETc=",
3017 | "dev": true
3018 | },
3019 | "http-signature": {
3020 | "version": "1.1.1",
3021 | "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz",
3022 | "integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=",
3023 | "dev": true,
3024 | "requires": {
3025 | "assert-plus": "0.2.0",
3026 | "jsprim": "1.4.1",
3027 | "sshpk": "1.14.1"
3028 | }
3029 | },
3030 | "https-browserify": {
3031 | "version": "1.0.0",
3032 | "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz",
3033 | "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=",
3034 | "dev": true
3035 | },
3036 | "iconv-lite": {
3037 | "version": "0.4.23",
3038 | "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz",
3039 | "integrity": "sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==",
3040 | "requires": {
3041 | "safer-buffer": "2.1.2"
3042 | }
3043 | },
3044 | "ieee754": {
3045 | "version": "1.1.11",
3046 | "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.11.tgz",
3047 | "integrity": "sha512-VhDzCKN7K8ufStx/CLj5/PDTMgph+qwN5Pkd5i0sGnVwk56zJ0lkT8Qzi1xqWLS0Wp29DgDtNeS7v8/wMoZeHg==",
3048 | "dev": true
3049 | },
3050 | "in-publish": {
3051 | "version": "2.0.0",
3052 | "resolved": "https://registry.npmjs.org/in-publish/-/in-publish-2.0.0.tgz",
3053 | "integrity": "sha1-4g/146KvwmkDILbcVSaCqcf631E=",
3054 | "dev": true
3055 | },
3056 | "indent-string": {
3057 | "version": "2.1.0",
3058 | "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz",
3059 | "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=",
3060 | "dev": true,
3061 | "requires": {
3062 | "repeating": "2.0.1"
3063 | }
3064 | },
3065 | "inflight": {
3066 | "version": "1.0.6",
3067 | "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
3068 | "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
3069 | "dev": true,
3070 | "requires": {
3071 | "once": "1.4.0",
3072 | "wrappy": "1.0.2"
3073 | }
3074 | },
3075 | "inherits": {
3076 | "version": "2.0.3",
3077 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
3078 | "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=",
3079 | "dev": true
3080 | },
3081 | "inline-source-map": {
3082 | "version": "0.6.2",
3083 | "resolved": "https://registry.npmjs.org/inline-source-map/-/inline-source-map-0.6.2.tgz",
3084 | "integrity": "sha1-+Tk0ccGKedFyT4Y/o4tYY3Ct4qU=",
3085 | "dev": true,
3086 | "requires": {
3087 | "source-map": "0.5.7"
3088 | }
3089 | },
3090 | "insert-module-globals": {
3091 | "version": "7.1.0",
3092 | "resolved": "https://registry.npmjs.org/insert-module-globals/-/insert-module-globals-7.1.0.tgz",
3093 | "integrity": "sha512-LbYZdybvKjbbcKLp03lB323Cgc8f0iL0Rjh8U6JZ7K1gZSf7MxQH191iCNUcLX4qIQ6/yWe4Q4ZsQ+opcReNFg==",
3094 | "dev": true,
3095 | "requires": {
3096 | "JSONStream": "1.3.3",
3097 | "combine-source-map": "0.8.0",
3098 | "concat-stream": "1.6.2",
3099 | "is-buffer": "1.1.6",
3100 | "lexical-scope": "1.2.0",
3101 | "path-is-absolute": "1.0.1",
3102 | "process": "0.11.10",
3103 | "through2": "2.0.3",
3104 | "xtend": "4.0.1"
3105 | }
3106 | },
3107 | "invariant": {
3108 | "version": "2.2.4",
3109 | "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz",
3110 | "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==",
3111 | "dev": true,
3112 | "requires": {
3113 | "loose-envify": "1.3.1"
3114 | }
3115 | },
3116 | "invert-kv": {
3117 | "version": "1.0.0",
3118 | "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz",
3119 | "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=",
3120 | "dev": true
3121 | },
3122 | "is-arrayish": {
3123 | "version": "0.2.1",
3124 | "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
3125 | "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=",
3126 | "dev": true
3127 | },
3128 | "is-binary-path": {
3129 | "version": "1.0.1",
3130 | "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz",
3131 | "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=",
3132 | "dev": true,
3133 | "requires": {
3134 | "binary-extensions": "1.11.0"
3135 | }
3136 | },
3137 | "is-buffer": {
3138 | "version": "1.1.6",
3139 | "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
3140 | "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
3141 | "dev": true
3142 | },
3143 | "is-builtin-module": {
3144 | "version": "1.0.0",
3145 | "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz",
3146 | "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=",
3147 | "dev": true,
3148 | "requires": {
3149 | "builtin-modules": "1.1.1"
3150 | }
3151 | },
3152 | "is-dotfile": {
3153 | "version": "1.0.3",
3154 | "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz",
3155 | "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=",
3156 | "dev": true
3157 | },
3158 | "is-equal-shallow": {
3159 | "version": "0.1.3",
3160 | "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz",
3161 | "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=",
3162 | "dev": true,
3163 | "requires": {
3164 | "is-primitive": "2.0.0"
3165 | }
3166 | },
3167 | "is-extendable": {
3168 | "version": "0.1.1",
3169 | "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
3170 | "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=",
3171 | "dev": true
3172 | },
3173 | "is-extglob": {
3174 | "version": "1.0.0",
3175 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz",
3176 | "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=",
3177 | "dev": true
3178 | },
3179 | "is-finite": {
3180 | "version": "1.0.2",
3181 | "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz",
3182 | "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=",
3183 | "dev": true,
3184 | "requires": {
3185 | "number-is-nan": "1.0.1"
3186 | }
3187 | },
3188 | "is-fullwidth-code-point": {
3189 | "version": "1.0.0",
3190 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
3191 | "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
3192 | "dev": true,
3193 | "requires": {
3194 | "number-is-nan": "1.0.1"
3195 | }
3196 | },
3197 | "is-glob": {
3198 | "version": "2.0.1",
3199 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz",
3200 | "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=",
3201 | "dev": true,
3202 | "requires": {
3203 | "is-extglob": "1.0.0"
3204 | }
3205 | },
3206 | "is-my-ip-valid": {
3207 | "version": "1.0.0",
3208 | "resolved": "https://registry.npmjs.org/is-my-ip-valid/-/is-my-ip-valid-1.0.0.tgz",
3209 | "integrity": "sha512-gmh/eWXROncUzRnIa1Ubrt5b8ep/MGSnfAUI3aRp+sqTCs1tv1Isl8d8F6JmkN3dXKc3ehZMrtiPN9eL03NuaQ==",
3210 | "dev": true
3211 | },
3212 | "is-my-json-valid": {
3213 | "version": "2.17.2",
3214 | "resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.17.2.tgz",
3215 | "integrity": "sha512-IBhBslgngMQN8DDSppmgDv7RNrlFotuuDsKcrCP3+HbFaVivIBU7u9oiiErw8sH4ynx3+gOGQ3q2otkgiSi6kg==",
3216 | "dev": true,
3217 | "requires": {
3218 | "generate-function": "2.0.0",
3219 | "generate-object-property": "1.2.0",
3220 | "is-my-ip-valid": "1.0.0",
3221 | "jsonpointer": "4.0.1",
3222 | "xtend": "4.0.1"
3223 | }
3224 | },
3225 | "is-number": {
3226 | "version": "2.1.0",
3227 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz",
3228 | "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=",
3229 | "dev": true,
3230 | "requires": {
3231 | "kind-of": "3.2.2"
3232 | }
3233 | },
3234 | "is-posix-bracket": {
3235 | "version": "0.1.1",
3236 | "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz",
3237 | "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=",
3238 | "dev": true
3239 | },
3240 | "is-primitive": {
3241 | "version": "2.0.0",
3242 | "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz",
3243 | "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=",
3244 | "dev": true
3245 | },
3246 | "is-property": {
3247 | "version": "1.0.2",
3248 | "resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz",
3249 | "integrity": "sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ=",
3250 | "dev": true
3251 | },
3252 | "is-stream": {
3253 | "version": "1.1.0",
3254 | "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz",
3255 | "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ="
3256 | },
3257 | "is-typedarray": {
3258 | "version": "1.0.0",
3259 | "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
3260 | "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=",
3261 | "dev": true
3262 | },
3263 | "is-utf8": {
3264 | "version": "0.2.1",
3265 | "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz",
3266 | "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=",
3267 | "dev": true
3268 | },
3269 | "is-wsl": {
3270 | "version": "1.1.0",
3271 | "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz",
3272 | "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=",
3273 | "dev": true
3274 | },
3275 | "isarray": {
3276 | "version": "1.0.0",
3277 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
3278 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
3279 | "dev": true
3280 | },
3281 | "isexe": {
3282 | "version": "2.0.0",
3283 | "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
3284 | "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
3285 | "dev": true
3286 | },
3287 | "isobject": {
3288 | "version": "2.1.0",
3289 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz",
3290 | "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=",
3291 | "dev": true,
3292 | "requires": {
3293 | "isarray": "1.0.0"
3294 | }
3295 | },
3296 | "isomorphic-fetch": {
3297 | "version": "2.2.1",
3298 | "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz",
3299 | "integrity": "sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=",
3300 | "requires": {
3301 | "node-fetch": "1.7.3",
3302 | "whatwg-fetch": "2.0.4"
3303 | }
3304 | },
3305 | "isstream": {
3306 | "version": "0.1.2",
3307 | "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz",
3308 | "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=",
3309 | "dev": true
3310 | },
3311 | "js-base64": {
3312 | "version": "2.4.5",
3313 | "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.4.5.tgz",
3314 | "integrity": "sha512-aUnNwqMOXw3yvErjMPSQu6qIIzUmT1e5KcU1OZxRDU1g/am6mzBvcrmLAYwzmB59BHPrh5/tKaiF4OPhqRWESQ==",
3315 | "dev": true
3316 | },
3317 | "js-tokens": {
3318 | "version": "3.0.2",
3319 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz",
3320 | "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls="
3321 | },
3322 | "jsbn": {
3323 | "version": "0.1.1",
3324 | "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz",
3325 | "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=",
3326 | "dev": true,
3327 | "optional": true
3328 | },
3329 | "jsesc": {
3330 | "version": "1.3.0",
3331 | "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz",
3332 | "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=",
3333 | "dev": true
3334 | },
3335 | "json-schema": {
3336 | "version": "0.2.3",
3337 | "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz",
3338 | "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=",
3339 | "dev": true
3340 | },
3341 | "json-stable-stringify": {
3342 | "version": "0.0.1",
3343 | "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-0.0.1.tgz",
3344 | "integrity": "sha1-YRwj6BTbN1Un34URk9tZ3Sryf0U=",
3345 | "dev": true,
3346 | "requires": {
3347 | "jsonify": "0.0.0"
3348 | }
3349 | },
3350 | "json-stringify-safe": {
3351 | "version": "5.0.1",
3352 | "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
3353 | "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=",
3354 | "dev": true
3355 | },
3356 | "json5": {
3357 | "version": "0.5.1",
3358 | "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz",
3359 | "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=",
3360 | "dev": true
3361 | },
3362 | "jsonify": {
3363 | "version": "0.0.0",
3364 | "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz",
3365 | "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=",
3366 | "dev": true
3367 | },
3368 | "jsonparse": {
3369 | "version": "1.3.1",
3370 | "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz",
3371 | "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=",
3372 | "dev": true
3373 | },
3374 | "jsonpointer": {
3375 | "version": "4.0.1",
3376 | "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-4.0.1.tgz",
3377 | "integrity": "sha1-T9kss04OnbPInIYi7PUfm5eMbLk=",
3378 | "dev": true
3379 | },
3380 | "jsprim": {
3381 | "version": "1.4.1",
3382 | "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz",
3383 | "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=",
3384 | "dev": true,
3385 | "requires": {
3386 | "assert-plus": "1.0.0",
3387 | "extsprintf": "1.3.0",
3388 | "json-schema": "0.2.3",
3389 | "verror": "1.10.0"
3390 | },
3391 | "dependencies": {
3392 | "assert-plus": {
3393 | "version": "1.0.0",
3394 | "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
3395 | "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=",
3396 | "dev": true
3397 | }
3398 | }
3399 | },
3400 | "kind-of": {
3401 | "version": "3.2.2",
3402 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
3403 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
3404 | "dev": true,
3405 | "requires": {
3406 | "is-buffer": "1.1.6"
3407 | }
3408 | },
3409 | "labeled-stream-splicer": {
3410 | "version": "2.0.1",
3411 | "resolved": "https://registry.npmjs.org/labeled-stream-splicer/-/labeled-stream-splicer-2.0.1.tgz",
3412 | "integrity": "sha512-MC94mHZRvJ3LfykJlTUipBqenZz1pacOZEMhhQ8dMGcDHs0SBE5GbsavUXV7YtP3icBW17W0Zy1I0lfASmo9Pg==",
3413 | "dev": true,
3414 | "requires": {
3415 | "inherits": "2.0.3",
3416 | "isarray": "2.0.4",
3417 | "stream-splicer": "2.0.0"
3418 | },
3419 | "dependencies": {
3420 | "isarray": {
3421 | "version": "2.0.4",
3422 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.4.tgz",
3423 | "integrity": "sha512-GMxXOiUirWg1xTKRipM0Ek07rX+ubx4nNVElTJdNLYmNO/2YrDkgJGw9CljXn+r4EWiDQg/8lsRdHyg2PJuUaA==",
3424 | "dev": true
3425 | }
3426 | }
3427 | },
3428 | "lcid": {
3429 | "version": "1.0.0",
3430 | "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz",
3431 | "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=",
3432 | "dev": true,
3433 | "requires": {
3434 | "invert-kv": "1.0.0"
3435 | }
3436 | },
3437 | "lexical-scope": {
3438 | "version": "1.2.0",
3439 | "resolved": "https://registry.npmjs.org/lexical-scope/-/lexical-scope-1.2.0.tgz",
3440 | "integrity": "sha1-/Ope3HBKSzqHls3KQZw6CvryLfQ=",
3441 | "dev": true,
3442 | "requires": {
3443 | "astw": "2.2.0"
3444 | }
3445 | },
3446 | "live-server": {
3447 | "version": "1.2.0",
3448 | "resolved": "https://registry.npmjs.org/live-server/-/live-server-1.2.0.tgz",
3449 | "integrity": "sha1-RJhkS7+Bpm8Y3Y3/3vYcTBw3TKM=",
3450 | "dev": true,
3451 | "requires": {
3452 | "chokidar": "1.7.0",
3453 | "colors": "1.3.0",
3454 | "connect": "3.5.1",
3455 | "cors": "2.8.4",
3456 | "event-stream": "3.3.4",
3457 | "faye-websocket": "0.11.1",
3458 | "http-auth": "3.1.3",
3459 | "morgan": "1.9.0",
3460 | "object-assign": "4.1.1",
3461 | "opn": "5.3.0",
3462 | "proxy-middleware": "0.15.0",
3463 | "send": "0.16.2",
3464 | "serve-index": "1.9.1"
3465 | },
3466 | "dependencies": {
3467 | "object-assign": {
3468 | "version": "4.1.1",
3469 | "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
3470 | "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=",
3471 | "dev": true
3472 | }
3473 | }
3474 | },
3475 | "load-json-file": {
3476 | "version": "1.1.0",
3477 | "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz",
3478 | "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=",
3479 | "dev": true,
3480 | "requires": {
3481 | "graceful-fs": "4.1.11",
3482 | "parse-json": "2.2.0",
3483 | "pify": "2.3.0",
3484 | "pinkie-promise": "2.0.1",
3485 | "strip-bom": "2.0.0"
3486 | }
3487 | },
3488 | "lodash": {
3489 | "version": "4.17.10",
3490 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz",
3491 | "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==",
3492 | "dev": true
3493 | },
3494 | "lodash.assign": {
3495 | "version": "4.2.0",
3496 | "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz",
3497 | "integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc=",
3498 | "dev": true
3499 | },
3500 | "lodash.clonedeep": {
3501 | "version": "4.5.0",
3502 | "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz",
3503 | "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=",
3504 | "dev": true
3505 | },
3506 | "lodash.memoize": {
3507 | "version": "3.0.4",
3508 | "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-3.0.4.tgz",
3509 | "integrity": "sha1-LcvSwofLwKVcxCMovQxzYVDVPj8=",
3510 | "dev": true
3511 | },
3512 | "lodash.mergewith": {
3513 | "version": "4.6.1",
3514 | "resolved": "https://registry.npmjs.org/lodash.mergewith/-/lodash.mergewith-4.6.1.tgz",
3515 | "integrity": "sha512-eWw5r+PYICtEBgrBE5hhlT6aAa75f411bgDz/ZL2KZqYV03USvucsxcHUIlGTDTECs1eunpI7HOV7U+WLDvNdQ==",
3516 | "dev": true
3517 | },
3518 | "long": {
3519 | "version": "4.0.0",
3520 | "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz",
3521 | "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA=="
3522 | },
3523 | "loose-envify": {
3524 | "version": "1.3.1",
3525 | "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz",
3526 | "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=",
3527 | "requires": {
3528 | "js-tokens": "3.0.2"
3529 | }
3530 | },
3531 | "loud-rejection": {
3532 | "version": "1.6.0",
3533 | "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz",
3534 | "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=",
3535 | "dev": true,
3536 | "requires": {
3537 | "currently-unhandled": "0.4.1",
3538 | "signal-exit": "3.0.2"
3539 | }
3540 | },
3541 | "lru-cache": {
3542 | "version": "4.1.3",
3543 | "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.3.tgz",
3544 | "integrity": "sha512-fFEhvcgzuIoJVUF8fYr5KR0YqxD238zgObTps31YdADwPPAp82a4M8TrckkWyx7ekNlf9aBcVn81cFwwXngrJA==",
3545 | "dev": true,
3546 | "requires": {
3547 | "pseudomap": "1.0.2",
3548 | "yallist": "2.1.2"
3549 | }
3550 | },
3551 | "map-obj": {
3552 | "version": "1.0.1",
3553 | "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz",
3554 | "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=",
3555 | "dev": true
3556 | },
3557 | "map-stream": {
3558 | "version": "0.1.0",
3559 | "resolved": "https://registry.npmjs.org/map-stream/-/map-stream-0.1.0.tgz",
3560 | "integrity": "sha1-5WqpTEyAVaFkBKBnS3jyFffI4ZQ=",
3561 | "dev": true
3562 | },
3563 | "math-random": {
3564 | "version": "1.0.1",
3565 | "resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.1.tgz",
3566 | "integrity": "sha1-izqsWIuKZuSXXjzepn97sylgH6w=",
3567 | "dev": true
3568 | },
3569 | "md5.js": {
3570 | "version": "1.3.4",
3571 | "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.4.tgz",
3572 | "integrity": "sha1-6b296UogpawYsENA/Fdk1bCdkB0=",
3573 | "dev": true,
3574 | "requires": {
3575 | "hash-base": "3.0.4",
3576 | "inherits": "2.0.3"
3577 | }
3578 | },
3579 | "meow": {
3580 | "version": "3.7.0",
3581 | "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz",
3582 | "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=",
3583 | "dev": true,
3584 | "requires": {
3585 | "camelcase-keys": "2.1.0",
3586 | "decamelize": "1.2.0",
3587 | "loud-rejection": "1.6.0",
3588 | "map-obj": "1.0.1",
3589 | "minimist": "1.2.0",
3590 | "normalize-package-data": "2.4.0",
3591 | "object-assign": "4.1.1",
3592 | "read-pkg-up": "1.0.1",
3593 | "redent": "1.0.0",
3594 | "trim-newlines": "1.0.0"
3595 | },
3596 | "dependencies": {
3597 | "minimist": {
3598 | "version": "1.2.0",
3599 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
3600 | "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
3601 | "dev": true
3602 | }
3603 | }
3604 | },
3605 | "merge": {
3606 | "version": "1.2.0",
3607 | "resolved": "https://registry.npmjs.org/merge/-/merge-1.2.0.tgz",
3608 | "integrity": "sha1-dTHjnUlJwoGma4xabgJl6LBYlNo=",
3609 | "dev": true
3610 | },
3611 | "micromatch": {
3612 | "version": "2.3.11",
3613 | "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz",
3614 | "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=",
3615 | "dev": true,
3616 | "requires": {
3617 | "arr-diff": "2.0.0",
3618 | "array-unique": "0.2.1",
3619 | "braces": "1.8.5",
3620 | "expand-brackets": "0.1.5",
3621 | "extglob": "0.3.2",
3622 | "filename-regex": "2.0.1",
3623 | "is-extglob": "1.0.0",
3624 | "is-glob": "2.0.1",
3625 | "kind-of": "3.2.2",
3626 | "normalize-path": "2.1.1",
3627 | "object.omit": "2.0.1",
3628 | "parse-glob": "3.0.4",
3629 | "regex-cache": "0.4.4"
3630 | }
3631 | },
3632 | "miller-rabin": {
3633 | "version": "4.0.1",
3634 | "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz",
3635 | "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==",
3636 | "dev": true,
3637 | "requires": {
3638 | "bn.js": "4.11.8",
3639 | "brorand": "1.1.0"
3640 | }
3641 | },
3642 | "mime": {
3643 | "version": "1.4.1",
3644 | "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz",
3645 | "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==",
3646 | "dev": true
3647 | },
3648 | "mime-db": {
3649 | "version": "1.33.0",
3650 | "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz",
3651 | "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==",
3652 | "dev": true
3653 | },
3654 | "mime-types": {
3655 | "version": "2.1.18",
3656 | "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz",
3657 | "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==",
3658 | "dev": true,
3659 | "requires": {
3660 | "mime-db": "1.33.0"
3661 | }
3662 | },
3663 | "minimalistic-assert": {
3664 | "version": "1.0.1",
3665 | "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz",
3666 | "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==",
3667 | "dev": true
3668 | },
3669 | "minimalistic-crypto-utils": {
3670 | "version": "1.0.1",
3671 | "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz",
3672 | "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=",
3673 | "dev": true
3674 | },
3675 | "minimatch": {
3676 | "version": "3.0.4",
3677 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
3678 | "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
3679 | "dev": true,
3680 | "requires": {
3681 | "brace-expansion": "1.1.11"
3682 | }
3683 | },
3684 | "minimist": {
3685 | "version": "0.0.8",
3686 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
3687 | "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=",
3688 | "dev": true
3689 | },
3690 | "mkdirp": {
3691 | "version": "0.5.1",
3692 | "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
3693 | "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
3694 | "dev": true,
3695 | "requires": {
3696 | "minimist": "0.0.8"
3697 | }
3698 | },
3699 | "module-deps": {
3700 | "version": "6.1.0",
3701 | "resolved": "https://registry.npmjs.org/module-deps/-/module-deps-6.1.0.tgz",
3702 | "integrity": "sha512-NPs5N511VD1rrVJihSso/LiBShRbJALYBKzDW91uZYy7BpjnO4bGnZL3HjZ9yKcFdZUWwaYjDz9zxbuP7vKMuQ==",
3703 | "dev": true,
3704 | "requires": {
3705 | "JSONStream": "1.3.3",
3706 | "browser-resolve": "1.11.2",
3707 | "cached-path-relative": "1.0.1",
3708 | "concat-stream": "1.6.2",
3709 | "defined": "1.0.0",
3710 | "detective": "5.1.0",
3711 | "duplexer2": "0.1.4",
3712 | "inherits": "2.0.3",
3713 | "parents": "1.0.1",
3714 | "readable-stream": "2.3.6",
3715 | "resolve": "1.7.1",
3716 | "stream-combiner2": "1.1.1",
3717 | "subarg": "1.0.0",
3718 | "through2": "2.0.3",
3719 | "xtend": "4.0.1"
3720 | }
3721 | },
3722 | "morgan": {
3723 | "version": "1.9.0",
3724 | "resolved": "https://registry.npmjs.org/morgan/-/morgan-1.9.0.tgz",
3725 | "integrity": "sha1-0B+mxlhZt2/PMbPLU6OCGjEdgFE=",
3726 | "dev": true,
3727 | "requires": {
3728 | "basic-auth": "2.0.0",
3729 | "debug": "2.6.9",
3730 | "depd": "1.1.2",
3731 | "on-finished": "2.3.0",
3732 | "on-headers": "1.0.1"
3733 | }
3734 | },
3735 | "ms": {
3736 | "version": "2.0.0",
3737 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
3738 | "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
3739 | "dev": true
3740 | },
3741 | "nan": {
3742 | "version": "2.10.0",
3743 | "resolved": "https://registry.npmjs.org/nan/-/nan-2.10.0.tgz",
3744 | "integrity": "sha512-bAdJv7fBLhWC+/Bls0Oza+mvTaNQtP+1RyhhhvD95pgUJz6XM5IzgmxOkItJ9tkoCiplvAnXI1tNmmUD/eScyA==",
3745 | "dev": true
3746 | },
3747 | "negotiator": {
3748 | "version": "0.6.1",
3749 | "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz",
3750 | "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=",
3751 | "dev": true
3752 | },
3753 | "node-fetch": {
3754 | "version": "1.7.3",
3755 | "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz",
3756 | "integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==",
3757 | "requires": {
3758 | "encoding": "0.1.12",
3759 | "is-stream": "1.1.0"
3760 | }
3761 | },
3762 | "node-gyp": {
3763 | "version": "3.6.2",
3764 | "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.6.2.tgz",
3765 | "integrity": "sha1-m/vlRWIoYoSDjnUOrAUpWFP6HGA=",
3766 | "dev": true,
3767 | "requires": {
3768 | "fstream": "1.0.11",
3769 | "glob": "7.1.2",
3770 | "graceful-fs": "4.1.11",
3771 | "minimatch": "3.0.4",
3772 | "mkdirp": "0.5.1",
3773 | "nopt": "3.0.6",
3774 | "npmlog": "4.1.2",
3775 | "osenv": "0.1.5",
3776 | "request": "2.79.0",
3777 | "rimraf": "2.6.2",
3778 | "semver": "5.3.0",
3779 | "tar": "2.2.1",
3780 | "which": "1.3.1"
3781 | },
3782 | "dependencies": {
3783 | "semver": {
3784 | "version": "5.3.0",
3785 | "resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz",
3786 | "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=",
3787 | "dev": true
3788 | }
3789 | }
3790 | },
3791 | "node-sass": {
3792 | "version": "4.9.0",
3793 | "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.9.0.tgz",
3794 | "integrity": "sha512-QFHfrZl6lqRU3csypwviz2XLgGNOoWQbo2GOvtsfQqOfL4cy1BtWnhx/XUeAO9LT3ahBzSRXcEO6DdvAH9DzSg==",
3795 | "dev": true,
3796 | "requires": {
3797 | "async-foreach": "0.1.3",
3798 | "chalk": "1.1.3",
3799 | "cross-spawn": "3.0.1",
3800 | "gaze": "1.1.3",
3801 | "get-stdin": "4.0.1",
3802 | "glob": "7.1.2",
3803 | "in-publish": "2.0.0",
3804 | "lodash.assign": "4.2.0",
3805 | "lodash.clonedeep": "4.5.0",
3806 | "lodash.mergewith": "4.6.1",
3807 | "meow": "3.7.0",
3808 | "mkdirp": "0.5.1",
3809 | "nan": "2.10.0",
3810 | "node-gyp": "3.6.2",
3811 | "npmlog": "4.1.2",
3812 | "request": "2.79.0",
3813 | "sass-graph": "2.2.4",
3814 | "stdout-stream": "1.4.0",
3815 | "true-case-path": "1.0.2"
3816 | }
3817 | },
3818 | "nopt": {
3819 | "version": "3.0.6",
3820 | "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz",
3821 | "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=",
3822 | "dev": true,
3823 | "requires": {
3824 | "abbrev": "1.1.1"
3825 | }
3826 | },
3827 | "normalize-package-data": {
3828 | "version": "2.4.0",
3829 | "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz",
3830 | "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==",
3831 | "dev": true,
3832 | "requires": {
3833 | "hosted-git-info": "2.6.0",
3834 | "is-builtin-module": "1.0.0",
3835 | "semver": "5.5.0",
3836 | "validate-npm-package-license": "3.0.3"
3837 | }
3838 | },
3839 | "normalize-path": {
3840 | "version": "2.1.1",
3841 | "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz",
3842 | "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=",
3843 | "dev": true,
3844 | "requires": {
3845 | "remove-trailing-separator": "1.1.0"
3846 | }
3847 | },
3848 | "npmlog": {
3849 | "version": "4.1.2",
3850 | "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz",
3851 | "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==",
3852 | "dev": true,
3853 | "requires": {
3854 | "are-we-there-yet": "1.1.5",
3855 | "console-control-strings": "1.1.0",
3856 | "gauge": "2.7.4",
3857 | "set-blocking": "2.0.0"
3858 | }
3859 | },
3860 | "number-is-nan": {
3861 | "version": "1.0.1",
3862 | "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz",
3863 | "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=",
3864 | "dev": true
3865 | },
3866 | "oauth-sign": {
3867 | "version": "0.8.2",
3868 | "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz",
3869 | "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=",
3870 | "dev": true
3871 | },
3872 | "object-assign": {
3873 | "version": "4.1.1",
3874 | "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
3875 | "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM="
3876 | },
3877 | "object.omit": {
3878 | "version": "2.0.1",
3879 | "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz",
3880 | "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=",
3881 | "dev": true,
3882 | "requires": {
3883 | "for-own": "0.1.5",
3884 | "is-extendable": "0.1.1"
3885 | }
3886 | },
3887 | "on-finished": {
3888 | "version": "2.3.0",
3889 | "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz",
3890 | "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=",
3891 | "dev": true,
3892 | "requires": {
3893 | "ee-first": "1.1.1"
3894 | }
3895 | },
3896 | "on-headers": {
3897 | "version": "1.0.1",
3898 | "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.1.tgz",
3899 | "integrity": "sha1-ko9dD0cNSTQmUepnlLCFfBAGk/c=",
3900 | "dev": true
3901 | },
3902 | "once": {
3903 | "version": "1.4.0",
3904 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
3905 | "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
3906 | "dev": true,
3907 | "requires": {
3908 | "wrappy": "1.0.2"
3909 | }
3910 | },
3911 | "opn": {
3912 | "version": "5.3.0",
3913 | "resolved": "https://registry.npmjs.org/opn/-/opn-5.3.0.tgz",
3914 | "integrity": "sha512-bYJHo/LOmoTd+pfiYhfZDnf9zekVJrY+cnS2a5F2x+w5ppvTqObojTP7WiFG+kVZs9Inw+qQ/lw7TroWwhdd2g==",
3915 | "dev": true,
3916 | "requires": {
3917 | "is-wsl": "1.1.0"
3918 | }
3919 | },
3920 | "os-browserify": {
3921 | "version": "0.3.0",
3922 | "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz",
3923 | "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=",
3924 | "dev": true
3925 | },
3926 | "os-homedir": {
3927 | "version": "1.0.2",
3928 | "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz",
3929 | "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=",
3930 | "dev": true
3931 | },
3932 | "os-locale": {
3933 | "version": "1.4.0",
3934 | "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz",
3935 | "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=",
3936 | "dev": true,
3937 | "requires": {
3938 | "lcid": "1.0.0"
3939 | }
3940 | },
3941 | "os-tmpdir": {
3942 | "version": "1.0.2",
3943 | "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
3944 | "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
3945 | "dev": true
3946 | },
3947 | "osenv": {
3948 | "version": "0.1.5",
3949 | "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz",
3950 | "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==",
3951 | "dev": true,
3952 | "requires": {
3953 | "os-homedir": "1.0.2",
3954 | "os-tmpdir": "1.0.2"
3955 | }
3956 | },
3957 | "output-file-sync": {
3958 | "version": "1.1.2",
3959 | "resolved": "https://registry.npmjs.org/output-file-sync/-/output-file-sync-1.1.2.tgz",
3960 | "integrity": "sha1-0KM+7+YaIF+suQCS6CZZjVJFznY=",
3961 | "dev": true,
3962 | "requires": {
3963 | "graceful-fs": "4.1.11",
3964 | "mkdirp": "0.5.1",
3965 | "object-assign": "4.1.1"
3966 | }
3967 | },
3968 | "pako": {
3969 | "version": "1.0.6",
3970 | "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.6.tgz",
3971 | "integrity": "sha512-lQe48YPsMJAig+yngZ87Lus+NF+3mtu7DVOBu6b/gHO1YpKwIj5AWjZ/TOS7i46HD/UixzWb1zeWDZfGZ3iYcg==",
3972 | "dev": true
3973 | },
3974 | "parents": {
3975 | "version": "1.0.1",
3976 | "resolved": "https://registry.npmjs.org/parents/-/parents-1.0.1.tgz",
3977 | "integrity": "sha1-/t1NK/GTp3dF/nHjcdc8MwfZx1E=",
3978 | "dev": true,
3979 | "requires": {
3980 | "path-platform": "0.11.15"
3981 | }
3982 | },
3983 | "parse-asn1": {
3984 | "version": "5.1.1",
3985 | "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.1.tgz",
3986 | "integrity": "sha512-KPx7flKXg775zZpnp9SxJlz00gTd4BmJ2yJufSc44gMCRrRQ7NSzAcSJQfifuOLgW6bEi+ftrALtsgALeB2Adw==",
3987 | "dev": true,
3988 | "requires": {
3989 | "asn1.js": "4.10.1",
3990 | "browserify-aes": "1.2.0",
3991 | "create-hash": "1.2.0",
3992 | "evp_bytestokey": "1.0.3",
3993 | "pbkdf2": "3.0.16"
3994 | }
3995 | },
3996 | "parse-glob": {
3997 | "version": "3.0.4",
3998 | "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz",
3999 | "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=",
4000 | "dev": true,
4001 | "requires": {
4002 | "glob-base": "0.3.0",
4003 | "is-dotfile": "1.0.3",
4004 | "is-extglob": "1.0.0",
4005 | "is-glob": "2.0.1"
4006 | }
4007 | },
4008 | "parse-json": {
4009 | "version": "2.2.0",
4010 | "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz",
4011 | "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=",
4012 | "dev": true,
4013 | "requires": {
4014 | "error-ex": "1.3.1"
4015 | }
4016 | },
4017 | "parseurl": {
4018 | "version": "1.3.2",
4019 | "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz",
4020 | "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=",
4021 | "dev": true
4022 | },
4023 | "path-browserify": {
4024 | "version": "0.0.0",
4025 | "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.0.tgz",
4026 | "integrity": "sha1-oLhwcpquIUAFt9UDLsLLuw+0RRo=",
4027 | "dev": true
4028 | },
4029 | "path-exists": {
4030 | "version": "2.1.0",
4031 | "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz",
4032 | "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=",
4033 | "dev": true,
4034 | "requires": {
4035 | "pinkie-promise": "2.0.1"
4036 | }
4037 | },
4038 | "path-is-absolute": {
4039 | "version": "1.0.1",
4040 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
4041 | "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
4042 | "dev": true
4043 | },
4044 | "path-parse": {
4045 | "version": "1.0.5",
4046 | "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.5.tgz",
4047 | "integrity": "sha1-PBrfhx6pzWyUMbbqK9dKD/BVxME=",
4048 | "dev": true
4049 | },
4050 | "path-platform": {
4051 | "version": "0.11.15",
4052 | "resolved": "https://registry.npmjs.org/path-platform/-/path-platform-0.11.15.tgz",
4053 | "integrity": "sha1-6GQhf3TDaFDwhSt43Hv31KVyG/I=",
4054 | "dev": true
4055 | },
4056 | "path-type": {
4057 | "version": "1.1.0",
4058 | "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz",
4059 | "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=",
4060 | "dev": true,
4061 | "requires": {
4062 | "graceful-fs": "4.1.11",
4063 | "pify": "2.3.0",
4064 | "pinkie-promise": "2.0.1"
4065 | }
4066 | },
4067 | "pause-stream": {
4068 | "version": "0.0.11",
4069 | "resolved": "https://registry.npmjs.org/pause-stream/-/pause-stream-0.0.11.tgz",
4070 | "integrity": "sha1-/lo0sMvOErWqaitAPuLnO2AvFEU=",
4071 | "dev": true,
4072 | "requires": {
4073 | "through": "2.3.8"
4074 | }
4075 | },
4076 | "pbkdf2": {
4077 | "version": "3.0.16",
4078 | "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.16.tgz",
4079 | "integrity": "sha512-y4CXP3thSxqf7c0qmOF+9UeOTrifiVTIM+u7NWlq+PRsHbr7r7dpCmvzrZxa96JJUNi0Y5w9VqG5ZNeCVMoDcA==",
4080 | "dev": true,
4081 | "requires": {
4082 | "create-hash": "1.2.0",
4083 | "create-hmac": "1.1.7",
4084 | "ripemd160": "2.0.2",
4085 | "safe-buffer": "5.1.2",
4086 | "sha.js": "2.4.11"
4087 | }
4088 | },
4089 | "pify": {
4090 | "version": "2.3.0",
4091 | "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
4092 | "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
4093 | "dev": true
4094 | },
4095 | "pinkie": {
4096 | "version": "2.0.4",
4097 | "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz",
4098 | "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=",
4099 | "dev": true
4100 | },
4101 | "pinkie-promise": {
4102 | "version": "2.0.1",
4103 | "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz",
4104 | "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=",
4105 | "dev": true,
4106 | "requires": {
4107 | "pinkie": "2.0.4"
4108 | }
4109 | },
4110 | "preserve": {
4111 | "version": "0.2.0",
4112 | "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz",
4113 | "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=",
4114 | "dev": true
4115 | },
4116 | "private": {
4117 | "version": "0.1.8",
4118 | "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz",
4119 | "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==",
4120 | "dev": true
4121 | },
4122 | "process": {
4123 | "version": "0.11.10",
4124 | "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz",
4125 | "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=",
4126 | "dev": true
4127 | },
4128 | "process-nextick-args": {
4129 | "version": "2.0.0",
4130 | "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz",
4131 | "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==",
4132 | "dev": true
4133 | },
4134 | "promise": {
4135 | "version": "7.3.1",
4136 | "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz",
4137 | "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==",
4138 | "requires": {
4139 | "asap": "2.0.6"
4140 | }
4141 | },
4142 | "prop-types": {
4143 | "version": "15.6.1",
4144 | "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.6.1.tgz",
4145 | "integrity": "sha512-4ec7bY1Y66LymSUOH/zARVYObB23AT2h8cf6e/O6ZALB/N0sqZFEx7rq6EYPX2MkOdKORuooI/H5k9TlR4q7kQ==",
4146 | "requires": {
4147 | "fbjs": "0.8.16",
4148 | "loose-envify": "1.3.1",
4149 | "object-assign": "4.1.1"
4150 | }
4151 | },
4152 | "protobufjs": {
4153 | "version": "6.8.6",
4154 | "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.8.6.tgz",
4155 | "integrity": "sha512-eH2OTP9s55vojr3b7NBaF9i4WhWPkv/nq55nznWNp/FomKrLViprUcqnBjHph2tFQ+7KciGPTPsVWGz0SOhL0Q==",
4156 | "requires": {
4157 | "@protobufjs/aspromise": "1.1.2",
4158 | "@protobufjs/base64": "1.1.2",
4159 | "@protobufjs/codegen": "2.0.4",
4160 | "@protobufjs/eventemitter": "1.1.0",
4161 | "@protobufjs/fetch": "1.1.0",
4162 | "@protobufjs/float": "1.0.2",
4163 | "@protobufjs/inquire": "1.1.0",
4164 | "@protobufjs/path": "1.1.2",
4165 | "@protobufjs/pool": "1.1.0",
4166 | "@protobufjs/utf8": "1.1.0",
4167 | "@types/long": "3.0.32",
4168 | "@types/node": "8.10.18",
4169 | "long": "4.0.0"
4170 | }
4171 | },
4172 | "proxy-middleware": {
4173 | "version": "0.15.0",
4174 | "resolved": "https://registry.npmjs.org/proxy-middleware/-/proxy-middleware-0.15.0.tgz",
4175 | "integrity": "sha1-o/3xvvtzD5UZZYcqwvYHTGFHelY=",
4176 | "dev": true
4177 | },
4178 | "pseudomap": {
4179 | "version": "1.0.2",
4180 | "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz",
4181 | "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=",
4182 | "dev": true
4183 | },
4184 | "public-encrypt": {
4185 | "version": "4.0.2",
4186 | "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.2.tgz",
4187 | "integrity": "sha512-4kJ5Esocg8X3h8YgJsKAuoesBgB7mqH3eowiDzMUPKiRDDE7E/BqqZD1hnTByIaAFiwAw246YEltSq7tdrOH0Q==",
4188 | "dev": true,
4189 | "requires": {
4190 | "bn.js": "4.11.8",
4191 | "browserify-rsa": "4.0.1",
4192 | "create-hash": "1.2.0",
4193 | "parse-asn1": "5.1.1",
4194 | "randombytes": "2.0.6"
4195 | }
4196 | },
4197 | "punycode": {
4198 | "version": "1.4.1",
4199 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz",
4200 | "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=",
4201 | "dev": true
4202 | },
4203 | "qs": {
4204 | "version": "6.3.2",
4205 | "resolved": "https://registry.npmjs.org/qs/-/qs-6.3.2.tgz",
4206 | "integrity": "sha1-51vV9uJoEioqDgvaYwslUMFmUCw=",
4207 | "dev": true
4208 | },
4209 | "querystring": {
4210 | "version": "0.2.0",
4211 | "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz",
4212 | "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA="
4213 | },
4214 | "querystring-es3": {
4215 | "version": "0.2.1",
4216 | "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz",
4217 | "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=",
4218 | "dev": true
4219 | },
4220 | "randomatic": {
4221 | "version": "3.0.0",
4222 | "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.0.0.tgz",
4223 | "integrity": "sha512-VdxFOIEY3mNO5PtSRkkle/hPJDHvQhK21oa73K4yAc9qmp6N429gAyF1gZMOTMeS0/AYzaV/2Trcef+NaIonSA==",
4224 | "dev": true,
4225 | "requires": {
4226 | "is-number": "4.0.0",
4227 | "kind-of": "6.0.2",
4228 | "math-random": "1.0.1"
4229 | },
4230 | "dependencies": {
4231 | "is-number": {
4232 | "version": "4.0.0",
4233 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz",
4234 | "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==",
4235 | "dev": true
4236 | },
4237 | "kind-of": {
4238 | "version": "6.0.2",
4239 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz",
4240 | "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==",
4241 | "dev": true
4242 | }
4243 | }
4244 | },
4245 | "randombytes": {
4246 | "version": "2.0.6",
4247 | "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.0.6.tgz",
4248 | "integrity": "sha512-CIQ5OFxf4Jou6uOKe9t1AOgqpeU5fd70A8NPdHSGeYXqXsPe6peOwI0cUl88RWZ6sP1vPMV3avd/R6cZ5/sP1A==",
4249 | "dev": true,
4250 | "requires": {
4251 | "safe-buffer": "5.1.2"
4252 | }
4253 | },
4254 | "randomfill": {
4255 | "version": "1.0.4",
4256 | "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz",
4257 | "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==",
4258 | "dev": true,
4259 | "requires": {
4260 | "randombytes": "2.0.6",
4261 | "safe-buffer": "5.1.2"
4262 | }
4263 | },
4264 | "range-parser": {
4265 | "version": "1.2.0",
4266 | "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz",
4267 | "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=",
4268 | "dev": true
4269 | },
4270 | "react": {
4271 | "version": "16.4.0",
4272 | "resolved": "https://registry.npmjs.org/react/-/react-16.4.0.tgz",
4273 | "integrity": "sha512-K0UrkLXSAekf5nJu89obKUM7o2vc6MMN9LYoKnCa+c+8MJRAT120xzPLENcWSRc7GYKIg0LlgJRDorrufdglQQ==",
4274 | "requires": {
4275 | "fbjs": "0.8.16",
4276 | "loose-envify": "1.3.1",
4277 | "object-assign": "4.1.1",
4278 | "prop-types": "15.6.1"
4279 | }
4280 | },
4281 | "react-dom": {
4282 | "version": "16.4.0",
4283 | "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-16.4.0.tgz",
4284 | "integrity": "sha512-bbLd+HYpBEnYoNyxDe9XpSG2t9wypMohwQPvKw8Hov3nF7SJiJIgK56b46zHpBUpHb06a1iEuw7G3rbrsnNL6w==",
4285 | "requires": {
4286 | "fbjs": "0.8.16",
4287 | "loose-envify": "1.3.1",
4288 | "object-assign": "4.1.1",
4289 | "prop-types": "15.6.1"
4290 | }
4291 | },
4292 | "read-only-stream": {
4293 | "version": "2.0.0",
4294 | "resolved": "https://registry.npmjs.org/read-only-stream/-/read-only-stream-2.0.0.tgz",
4295 | "integrity": "sha1-JyT9aoET1zdkrCiNQ4YnDB2/F/A=",
4296 | "dev": true,
4297 | "requires": {
4298 | "readable-stream": "2.3.6"
4299 | }
4300 | },
4301 | "read-pkg": {
4302 | "version": "1.1.0",
4303 | "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz",
4304 | "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=",
4305 | "dev": true,
4306 | "requires": {
4307 | "load-json-file": "1.1.0",
4308 | "normalize-package-data": "2.4.0",
4309 | "path-type": "1.1.0"
4310 | }
4311 | },
4312 | "read-pkg-up": {
4313 | "version": "1.0.1",
4314 | "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz",
4315 | "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=",
4316 | "dev": true,
4317 | "requires": {
4318 | "find-up": "1.1.2",
4319 | "read-pkg": "1.1.0"
4320 | }
4321 | },
4322 | "readable-stream": {
4323 | "version": "2.3.6",
4324 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
4325 | "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
4326 | "dev": true,
4327 | "requires": {
4328 | "core-util-is": "1.0.2",
4329 | "inherits": "2.0.3",
4330 | "isarray": "1.0.0",
4331 | "process-nextick-args": "2.0.0",
4332 | "safe-buffer": "5.1.2",
4333 | "string_decoder": "1.1.1",
4334 | "util-deprecate": "1.0.2"
4335 | }
4336 | },
4337 | "readdirp": {
4338 | "version": "2.1.0",
4339 | "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz",
4340 | "integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=",
4341 | "dev": true,
4342 | "requires": {
4343 | "graceful-fs": "4.1.11",
4344 | "minimatch": "3.0.4",
4345 | "readable-stream": "2.3.6",
4346 | "set-immediate-shim": "1.0.1"
4347 | }
4348 | },
4349 | "redent": {
4350 | "version": "1.0.0",
4351 | "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz",
4352 | "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=",
4353 | "dev": true,
4354 | "requires": {
4355 | "indent-string": "2.1.0",
4356 | "strip-indent": "1.0.1"
4357 | }
4358 | },
4359 | "regenerate": {
4360 | "version": "1.4.0",
4361 | "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz",
4362 | "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==",
4363 | "dev": true
4364 | },
4365 | "regenerator-runtime": {
4366 | "version": "0.11.1",
4367 | "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz",
4368 | "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg=="
4369 | },
4370 | "regenerator-transform": {
4371 | "version": "0.10.1",
4372 | "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.10.1.tgz",
4373 | "integrity": "sha512-PJepbvDbuK1xgIgnau7Y90cwaAmO/LCLMI2mPvaXq2heGMR3aWW5/BQvYrhJ8jgmQjXewXvBjzfqKcVOmhjZ6Q==",
4374 | "dev": true,
4375 | "requires": {
4376 | "babel-runtime": "6.26.0",
4377 | "babel-types": "6.26.0",
4378 | "private": "0.1.8"
4379 | }
4380 | },
4381 | "regex-cache": {
4382 | "version": "0.4.4",
4383 | "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz",
4384 | "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==",
4385 | "dev": true,
4386 | "requires": {
4387 | "is-equal-shallow": "0.1.3"
4388 | }
4389 | },
4390 | "regexpu-core": {
4391 | "version": "2.0.0",
4392 | "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz",
4393 | "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=",
4394 | "dev": true,
4395 | "requires": {
4396 | "regenerate": "1.4.0",
4397 | "regjsgen": "0.2.0",
4398 | "regjsparser": "0.1.5"
4399 | }
4400 | },
4401 | "regjsgen": {
4402 | "version": "0.2.0",
4403 | "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz",
4404 | "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=",
4405 | "dev": true
4406 | },
4407 | "regjsparser": {
4408 | "version": "0.1.5",
4409 | "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz",
4410 | "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=",
4411 | "dev": true,
4412 | "requires": {
4413 | "jsesc": "0.5.0"
4414 | },
4415 | "dependencies": {
4416 | "jsesc": {
4417 | "version": "0.5.0",
4418 | "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz",
4419 | "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=",
4420 | "dev": true
4421 | }
4422 | }
4423 | },
4424 | "remove-trailing-separator": {
4425 | "version": "1.1.0",
4426 | "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz",
4427 | "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=",
4428 | "dev": true
4429 | },
4430 | "repeat-element": {
4431 | "version": "1.1.2",
4432 | "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz",
4433 | "integrity": "sha1-7wiaF40Ug7quTZPrmLT55OEdmQo=",
4434 | "dev": true
4435 | },
4436 | "repeat-string": {
4437 | "version": "1.6.1",
4438 | "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz",
4439 | "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=",
4440 | "dev": true
4441 | },
4442 | "repeating": {
4443 | "version": "2.0.1",
4444 | "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz",
4445 | "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=",
4446 | "dev": true,
4447 | "requires": {
4448 | "is-finite": "1.0.2"
4449 | }
4450 | },
4451 | "request": {
4452 | "version": "2.79.0",
4453 | "resolved": "https://registry.npmjs.org/request/-/request-2.79.0.tgz",
4454 | "integrity": "sha1-Tf5b9r6LjNw3/Pk+BLZVd3InEN4=",
4455 | "dev": true,
4456 | "requires": {
4457 | "aws-sign2": "0.6.0",
4458 | "aws4": "1.7.0",
4459 | "caseless": "0.11.0",
4460 | "combined-stream": "1.0.6",
4461 | "extend": "3.0.1",
4462 | "forever-agent": "0.6.1",
4463 | "form-data": "2.1.4",
4464 | "har-validator": "2.0.6",
4465 | "hawk": "3.1.3",
4466 | "http-signature": "1.1.1",
4467 | "is-typedarray": "1.0.0",
4468 | "isstream": "0.1.2",
4469 | "json-stringify-safe": "5.0.1",
4470 | "mime-types": "2.1.18",
4471 | "oauth-sign": "0.8.2",
4472 | "qs": "6.3.2",
4473 | "stringstream": "0.0.6",
4474 | "tough-cookie": "2.3.4",
4475 | "tunnel-agent": "0.4.3",
4476 | "uuid": "3.2.1"
4477 | }
4478 | },
4479 | "require-directory": {
4480 | "version": "2.1.1",
4481 | "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
4482 | "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=",
4483 | "dev": true
4484 | },
4485 | "require-main-filename": {
4486 | "version": "1.0.1",
4487 | "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz",
4488 | "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=",
4489 | "dev": true
4490 | },
4491 | "resolve": {
4492 | "version": "1.7.1",
4493 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.7.1.tgz",
4494 | "integrity": "sha512-c7rwLofp8g1U+h1KNyHL/jicrKg1Ek4q+Lr33AL65uZTinUZHe30D5HlyN5V9NW0JX1D5dXQ4jqW5l7Sy/kGfw==",
4495 | "dev": true,
4496 | "requires": {
4497 | "path-parse": "1.0.5"
4498 | }
4499 | },
4500 | "rimraf": {
4501 | "version": "2.6.2",
4502 | "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz",
4503 | "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==",
4504 | "dev": true,
4505 | "requires": {
4506 | "glob": "7.1.2"
4507 | }
4508 | },
4509 | "ripemd160": {
4510 | "version": "2.0.2",
4511 | "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz",
4512 | "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==",
4513 | "dev": true,
4514 | "requires": {
4515 | "hash-base": "3.0.4",
4516 | "inherits": "2.0.3"
4517 | }
4518 | },
4519 | "safe-buffer": {
4520 | "version": "5.1.2",
4521 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
4522 | "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
4523 | "dev": true
4524 | },
4525 | "safer-buffer": {
4526 | "version": "2.1.2",
4527 | "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
4528 | "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
4529 | },
4530 | "sass-graph": {
4531 | "version": "2.2.4",
4532 | "resolved": "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.4.tgz",
4533 | "integrity": "sha1-E/vWPNHK8JCLn9k0dq1DpR0eC0k=",
4534 | "dev": true,
4535 | "requires": {
4536 | "glob": "7.1.2",
4537 | "lodash": "4.17.10",
4538 | "scss-tokenizer": "0.2.3",
4539 | "yargs": "7.1.0"
4540 | }
4541 | },
4542 | "scss-tokenizer": {
4543 | "version": "0.2.3",
4544 | "resolved": "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz",
4545 | "integrity": "sha1-jrBtualyMzOCTT9VMGQRSYR85dE=",
4546 | "dev": true,
4547 | "requires": {
4548 | "js-base64": "2.4.5",
4549 | "source-map": "0.4.4"
4550 | },
4551 | "dependencies": {
4552 | "source-map": {
4553 | "version": "0.4.4",
4554 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz",
4555 | "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=",
4556 | "dev": true,
4557 | "requires": {
4558 | "amdefine": "1.0.1"
4559 | }
4560 | }
4561 | }
4562 | },
4563 | "seedrandom": {
4564 | "version": "2.4.3",
4565 | "resolved": "https://registry.npmjs.org/seedrandom/-/seedrandom-2.4.3.tgz",
4566 | "integrity": "sha1-JDhQTa0zkXMUv/GKxNeU8W1qrsw="
4567 | },
4568 | "semver": {
4569 | "version": "5.5.0",
4570 | "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz",
4571 | "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==",
4572 | "dev": true
4573 | },
4574 | "send": {
4575 | "version": "0.16.2",
4576 | "resolved": "https://registry.npmjs.org/send/-/send-0.16.2.tgz",
4577 | "integrity": "sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw==",
4578 | "dev": true,
4579 | "requires": {
4580 | "debug": "2.6.9",
4581 | "depd": "1.1.2",
4582 | "destroy": "1.0.4",
4583 | "encodeurl": "1.0.2",
4584 | "escape-html": "1.0.3",
4585 | "etag": "1.8.1",
4586 | "fresh": "0.5.2",
4587 | "http-errors": "1.6.3",
4588 | "mime": "1.4.1",
4589 | "ms": "2.0.0",
4590 | "on-finished": "2.3.0",
4591 | "range-parser": "1.2.0",
4592 | "statuses": "1.4.0"
4593 | },
4594 | "dependencies": {
4595 | "statuses": {
4596 | "version": "1.4.0",
4597 | "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz",
4598 | "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==",
4599 | "dev": true
4600 | }
4601 | }
4602 | },
4603 | "serve-index": {
4604 | "version": "1.9.1",
4605 | "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz",
4606 | "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=",
4607 | "dev": true,
4608 | "requires": {
4609 | "accepts": "1.3.5",
4610 | "batch": "0.6.1",
4611 | "debug": "2.6.9",
4612 | "escape-html": "1.0.3",
4613 | "http-errors": "1.6.3",
4614 | "mime-types": "2.1.18",
4615 | "parseurl": "1.3.2"
4616 | }
4617 | },
4618 | "set-blocking": {
4619 | "version": "2.0.0",
4620 | "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
4621 | "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=",
4622 | "dev": true
4623 | },
4624 | "set-immediate-shim": {
4625 | "version": "1.0.1",
4626 | "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz",
4627 | "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=",
4628 | "dev": true
4629 | },
4630 | "setimmediate": {
4631 | "version": "1.0.5",
4632 | "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz",
4633 | "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU="
4634 | },
4635 | "setprototypeof": {
4636 | "version": "1.1.0",
4637 | "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz",
4638 | "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==",
4639 | "dev": true
4640 | },
4641 | "sha.js": {
4642 | "version": "2.4.11",
4643 | "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz",
4644 | "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==",
4645 | "dev": true,
4646 | "requires": {
4647 | "inherits": "2.0.3",
4648 | "safe-buffer": "5.1.2"
4649 | }
4650 | },
4651 | "shasum": {
4652 | "version": "1.0.2",
4653 | "resolved": "https://registry.npmjs.org/shasum/-/shasum-1.0.2.tgz",
4654 | "integrity": "sha1-5wEjENj0F/TetXEhUOVni4euVl8=",
4655 | "dev": true,
4656 | "requires": {
4657 | "json-stable-stringify": "0.0.1",
4658 | "sha.js": "2.4.11"
4659 | }
4660 | },
4661 | "shell-quote": {
4662 | "version": "1.6.1",
4663 | "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.6.1.tgz",
4664 | "integrity": "sha1-9HgZSczkAmlxJ0MOo7PFR29IF2c=",
4665 | "dev": true,
4666 | "requires": {
4667 | "array-filter": "0.0.1",
4668 | "array-map": "0.0.0",
4669 | "array-reduce": "0.0.0",
4670 | "jsonify": "0.0.0"
4671 | }
4672 | },
4673 | "signal-exit": {
4674 | "version": "3.0.2",
4675 | "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz",
4676 | "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=",
4677 | "dev": true
4678 | },
4679 | "slash": {
4680 | "version": "1.0.0",
4681 | "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz",
4682 | "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=",
4683 | "dev": true
4684 | },
4685 | "sntp": {
4686 | "version": "1.0.9",
4687 | "resolved": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz",
4688 | "integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=",
4689 | "dev": true,
4690 | "requires": {
4691 | "hoek": "2.16.3"
4692 | }
4693 | },
4694 | "source-map": {
4695 | "version": "0.5.7",
4696 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
4697 | "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
4698 | "dev": true
4699 | },
4700 | "source-map-support": {
4701 | "version": "0.4.18",
4702 | "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz",
4703 | "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==",
4704 | "dev": true,
4705 | "requires": {
4706 | "source-map": "0.5.7"
4707 | }
4708 | },
4709 | "spdx-correct": {
4710 | "version": "3.0.0",
4711 | "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.0.0.tgz",
4712 | "integrity": "sha512-N19o9z5cEyc8yQQPukRCZ9EUmb4HUpnrmaL/fxS2pBo2jbfcFRVuFZ/oFC+vZz0MNNk0h80iMn5/S6qGZOL5+g==",
4713 | "dev": true,
4714 | "requires": {
4715 | "spdx-expression-parse": "3.0.0",
4716 | "spdx-license-ids": "3.0.0"
4717 | }
4718 | },
4719 | "spdx-exceptions": {
4720 | "version": "2.1.0",
4721 | "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.1.0.tgz",
4722 | "integrity": "sha512-4K1NsmrlCU1JJgUrtgEeTVyfx8VaYea9J9LvARxhbHtVtohPs/gFGG5yy49beySjlIMhhXZ4QqujIZEfS4l6Cg==",
4723 | "dev": true
4724 | },
4725 | "spdx-expression-parse": {
4726 | "version": "3.0.0",
4727 | "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz",
4728 | "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==",
4729 | "dev": true,
4730 | "requires": {
4731 | "spdx-exceptions": "2.1.0",
4732 | "spdx-license-ids": "3.0.0"
4733 | }
4734 | },
4735 | "spdx-license-ids": {
4736 | "version": "3.0.0",
4737 | "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.0.tgz",
4738 | "integrity": "sha512-2+EPwgbnmOIl8HjGBXXMd9NAu02vLjOO1nWw4kmeRDFyHn+M/ETfHxQUK0oXg8ctgVnl9t3rosNVsZ1jG61nDA==",
4739 | "dev": true
4740 | },
4741 | "split": {
4742 | "version": "0.3.3",
4743 | "resolved": "https://registry.npmjs.org/split/-/split-0.3.3.tgz",
4744 | "integrity": "sha1-zQ7qXmOiEd//frDwkcQTPi0N0o8=",
4745 | "dev": true,
4746 | "requires": {
4747 | "through": "2.3.8"
4748 | }
4749 | },
4750 | "sshpk": {
4751 | "version": "1.14.1",
4752 | "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.14.1.tgz",
4753 | "integrity": "sha1-Ew9Zde3a2WPx1W+SuaxsUfqfg+s=",
4754 | "dev": true,
4755 | "requires": {
4756 | "asn1": "0.2.3",
4757 | "assert-plus": "1.0.0",
4758 | "bcrypt-pbkdf": "1.0.1",
4759 | "dashdash": "1.14.1",
4760 | "ecc-jsbn": "0.1.1",
4761 | "getpass": "0.1.7",
4762 | "jsbn": "0.1.1",
4763 | "tweetnacl": "0.14.5"
4764 | },
4765 | "dependencies": {
4766 | "assert-plus": {
4767 | "version": "1.0.0",
4768 | "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
4769 | "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=",
4770 | "dev": true
4771 | }
4772 | }
4773 | },
4774 | "statuses": {
4775 | "version": "1.3.1",
4776 | "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz",
4777 | "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=",
4778 | "dev": true
4779 | },
4780 | "stdout-stream": {
4781 | "version": "1.4.0",
4782 | "resolved": "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.0.tgz",
4783 | "integrity": "sha1-osfIWH5U2UJ+qe2zrD8s1SLfN4s=",
4784 | "dev": true,
4785 | "requires": {
4786 | "readable-stream": "2.3.6"
4787 | }
4788 | },
4789 | "stream-browserify": {
4790 | "version": "2.0.1",
4791 | "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.1.tgz",
4792 | "integrity": "sha1-ZiZu5fm9uZQKTkUUyvtDu3Hlyds=",
4793 | "dev": true,
4794 | "requires": {
4795 | "inherits": "2.0.3",
4796 | "readable-stream": "2.3.6"
4797 | }
4798 | },
4799 | "stream-combiner": {
4800 | "version": "0.0.4",
4801 | "resolved": "https://registry.npmjs.org/stream-combiner/-/stream-combiner-0.0.4.tgz",
4802 | "integrity": "sha1-TV5DPBhSYd3mI8o/RMWGvPXErRQ=",
4803 | "dev": true,
4804 | "requires": {
4805 | "duplexer": "0.1.1"
4806 | }
4807 | },
4808 | "stream-combiner2": {
4809 | "version": "1.1.1",
4810 | "resolved": "https://registry.npmjs.org/stream-combiner2/-/stream-combiner2-1.1.1.tgz",
4811 | "integrity": "sha1-+02KFCDqNidk4hrUeAOXvry0HL4=",
4812 | "dev": true,
4813 | "requires": {
4814 | "duplexer2": "0.1.4",
4815 | "readable-stream": "2.3.6"
4816 | }
4817 | },
4818 | "stream-http": {
4819 | "version": "2.8.3",
4820 | "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz",
4821 | "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==",
4822 | "dev": true,
4823 | "requires": {
4824 | "builtin-status-codes": "3.0.0",
4825 | "inherits": "2.0.3",
4826 | "readable-stream": "2.3.6",
4827 | "to-arraybuffer": "1.0.1",
4828 | "xtend": "4.0.1"
4829 | }
4830 | },
4831 | "stream-splicer": {
4832 | "version": "2.0.0",
4833 | "resolved": "https://registry.npmjs.org/stream-splicer/-/stream-splicer-2.0.0.tgz",
4834 | "integrity": "sha1-G2O+Q4oTPktnHMGTUZdgAXWRDYM=",
4835 | "dev": true,
4836 | "requires": {
4837 | "inherits": "2.0.3",
4838 | "readable-stream": "2.3.6"
4839 | }
4840 | },
4841 | "string-width": {
4842 | "version": "1.0.2",
4843 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
4844 | "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
4845 | "dev": true,
4846 | "requires": {
4847 | "code-point-at": "1.1.0",
4848 | "is-fullwidth-code-point": "1.0.0",
4849 | "strip-ansi": "3.0.1"
4850 | }
4851 | },
4852 | "string_decoder": {
4853 | "version": "1.1.1",
4854 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
4855 | "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
4856 | "dev": true,
4857 | "requires": {
4858 | "safe-buffer": "5.1.2"
4859 | }
4860 | },
4861 | "stringstream": {
4862 | "version": "0.0.6",
4863 | "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.6.tgz",
4864 | "integrity": "sha512-87GEBAkegbBcweToUrdzf3eLhWNg06FJTebl4BVJz/JgWy8CvEr9dRtX5qWphiynMSQlxxi+QqN0z5T32SLlhA==",
4865 | "dev": true
4866 | },
4867 | "strip-ansi": {
4868 | "version": "3.0.1",
4869 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
4870 | "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
4871 | "dev": true,
4872 | "requires": {
4873 | "ansi-regex": "2.1.1"
4874 | }
4875 | },
4876 | "strip-bom": {
4877 | "version": "2.0.0",
4878 | "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz",
4879 | "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=",
4880 | "dev": true,
4881 | "requires": {
4882 | "is-utf8": "0.2.1"
4883 | }
4884 | },
4885 | "strip-indent": {
4886 | "version": "1.0.1",
4887 | "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz",
4888 | "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=",
4889 | "dev": true,
4890 | "requires": {
4891 | "get-stdin": "4.0.1"
4892 | }
4893 | },
4894 | "subarg": {
4895 | "version": "1.0.0",
4896 | "resolved": "https://registry.npmjs.org/subarg/-/subarg-1.0.0.tgz",
4897 | "integrity": "sha1-9izxdYHplrSPyWVpn1TAauJouNI=",
4898 | "dev": true,
4899 | "requires": {
4900 | "minimist": "1.2.0"
4901 | },
4902 | "dependencies": {
4903 | "minimist": {
4904 | "version": "1.2.0",
4905 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
4906 | "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
4907 | "dev": true
4908 | }
4909 | }
4910 | },
4911 | "supports-color": {
4912 | "version": "2.0.0",
4913 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
4914 | "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=",
4915 | "dev": true
4916 | },
4917 | "syntax-error": {
4918 | "version": "1.4.0",
4919 | "resolved": "https://registry.npmjs.org/syntax-error/-/syntax-error-1.4.0.tgz",
4920 | "integrity": "sha512-YPPlu67mdnHGTup2A8ff7BC2Pjq0e0Yp/IyTFN03zWO0RcK07uLcbi7C2KpGR2FvWbaB0+bfE27a+sBKebSo7w==",
4921 | "dev": true,
4922 | "requires": {
4923 | "acorn-node": "1.3.0"
4924 | }
4925 | },
4926 | "tar": {
4927 | "version": "2.2.1",
4928 | "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz",
4929 | "integrity": "sha1-jk0qJWwOIYXGsYrWlK7JaLg8sdE=",
4930 | "dev": true,
4931 | "requires": {
4932 | "block-stream": "0.0.9",
4933 | "fstream": "1.0.11",
4934 | "inherits": "2.0.3"
4935 | }
4936 | },
4937 | "through": {
4938 | "version": "2.3.8",
4939 | "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
4940 | "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=",
4941 | "dev": true
4942 | },
4943 | "through2": {
4944 | "version": "2.0.3",
4945 | "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz",
4946 | "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=",
4947 | "dev": true,
4948 | "requires": {
4949 | "readable-stream": "2.3.6",
4950 | "xtend": "4.0.1"
4951 | }
4952 | },
4953 | "timers-browserify": {
4954 | "version": "1.4.2",
4955 | "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-1.4.2.tgz",
4956 | "integrity": "sha1-ycWLV1voQHN1y14kYtrO50NZ9B0=",
4957 | "dev": true,
4958 | "requires": {
4959 | "process": "0.11.10"
4960 | }
4961 | },
4962 | "to-arraybuffer": {
4963 | "version": "1.0.1",
4964 | "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz",
4965 | "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=",
4966 | "dev": true
4967 | },
4968 | "to-fast-properties": {
4969 | "version": "1.0.3",
4970 | "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz",
4971 | "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=",
4972 | "dev": true
4973 | },
4974 | "tough-cookie": {
4975 | "version": "2.3.4",
4976 | "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.4.tgz",
4977 | "integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==",
4978 | "dev": true,
4979 | "requires": {
4980 | "punycode": "1.4.1"
4981 | }
4982 | },
4983 | "trim-newlines": {
4984 | "version": "1.0.0",
4985 | "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz",
4986 | "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=",
4987 | "dev": true
4988 | },
4989 | "trim-right": {
4990 | "version": "1.0.1",
4991 | "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz",
4992 | "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=",
4993 | "dev": true
4994 | },
4995 | "true-case-path": {
4996 | "version": "1.0.2",
4997 | "resolved": "https://registry.npmjs.org/true-case-path/-/true-case-path-1.0.2.tgz",
4998 | "integrity": "sha1-fskRMJJHZsf1c74wIMNPj9/QDWI=",
4999 | "dev": true,
5000 | "requires": {
5001 | "glob": "6.0.4"
5002 | },
5003 | "dependencies": {
5004 | "glob": {
5005 | "version": "6.0.4",
5006 | "resolved": "https://registry.npmjs.org/glob/-/glob-6.0.4.tgz",
5007 | "integrity": "sha1-DwiGD2oVUSey+t1PnOJLGqtuTSI=",
5008 | "dev": true,
5009 | "requires": {
5010 | "inflight": "1.0.6",
5011 | "inherits": "2.0.3",
5012 | "minimatch": "3.0.4",
5013 | "once": "1.4.0",
5014 | "path-is-absolute": "1.0.1"
5015 | }
5016 | }
5017 | }
5018 | },
5019 | "tty-browserify": {
5020 | "version": "0.0.1",
5021 | "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz",
5022 | "integrity": "sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==",
5023 | "dev": true
5024 | },
5025 | "tunnel-agent": {
5026 | "version": "0.4.3",
5027 | "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.3.tgz",
5028 | "integrity": "sha1-Y3PbdpCf5XDgjXNYM2Xtgop07us=",
5029 | "dev": true
5030 | },
5031 | "tweetnacl": {
5032 | "version": "0.14.5",
5033 | "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz",
5034 | "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=",
5035 | "dev": true,
5036 | "optional": true
5037 | },
5038 | "typedarray": {
5039 | "version": "0.0.6",
5040 | "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
5041 | "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=",
5042 | "dev": true
5043 | },
5044 | "ua-parser-js": {
5045 | "version": "0.7.18",
5046 | "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.18.tgz",
5047 | "integrity": "sha512-LtzwHlVHwFGTptfNSgezHp7WUlwiqb0gA9AALRbKaERfxwJoiX0A73QbTToxteIAuIaFshhgIZfqK8s7clqgnA=="
5048 | },
5049 | "umd": {
5050 | "version": "3.0.3",
5051 | "resolved": "https://registry.npmjs.org/umd/-/umd-3.0.3.tgz",
5052 | "integrity": "sha512-4IcGSufhFshvLNcMCV80UnQVlZ5pMOC8mvNPForqwA4+lzYQuetTESLDQkeLmihq8bRcnpbQa48Wb8Lh16/xow==",
5053 | "dev": true
5054 | },
5055 | "unix-crypt-td-js": {
5056 | "version": "1.0.0",
5057 | "resolved": "https://registry.npmjs.org/unix-crypt-td-js/-/unix-crypt-td-js-1.0.0.tgz",
5058 | "integrity": "sha1-HAgkFQSBvHoB1J6Y8exmjYJBLzs=",
5059 | "dev": true
5060 | },
5061 | "unpipe": {
5062 | "version": "1.0.0",
5063 | "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz",
5064 | "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=",
5065 | "dev": true
5066 | },
5067 | "url": {
5068 | "version": "0.11.0",
5069 | "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz",
5070 | "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=",
5071 | "requires": {
5072 | "punycode": "1.3.2",
5073 | "querystring": "0.2.0"
5074 | },
5075 | "dependencies": {
5076 | "punycode": {
5077 | "version": "1.3.2",
5078 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz",
5079 | "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0="
5080 | }
5081 | }
5082 | },
5083 | "user-home": {
5084 | "version": "1.1.1",
5085 | "resolved": "https://registry.npmjs.org/user-home/-/user-home-1.1.1.tgz",
5086 | "integrity": "sha1-K1viOjK2Onyd640PKNSFcko98ZA=",
5087 | "dev": true
5088 | },
5089 | "util": {
5090 | "version": "0.10.3",
5091 | "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz",
5092 | "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=",
5093 | "dev": true,
5094 | "requires": {
5095 | "inherits": "2.0.1"
5096 | },
5097 | "dependencies": {
5098 | "inherits": {
5099 | "version": "2.0.1",
5100 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
5101 | "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=",
5102 | "dev": true
5103 | }
5104 | }
5105 | },
5106 | "util-deprecate": {
5107 | "version": "1.0.2",
5108 | "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
5109 | "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=",
5110 | "dev": true
5111 | },
5112 | "utils-merge": {
5113 | "version": "1.0.0",
5114 | "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.0.tgz",
5115 | "integrity": "sha1-ApT7kiu5N1FTVBxPcJYjHyh8ivg=",
5116 | "dev": true
5117 | },
5118 | "uuid": {
5119 | "version": "3.2.1",
5120 | "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.2.1.tgz",
5121 | "integrity": "sha512-jZnMwlb9Iku/O3smGWvZhauCf6cvvpKi4BKRiliS3cxnI+Gz9j5MEpTz2UFuXiKPJocb7gnsLHwiS05ige5BEA==",
5122 | "dev": true
5123 | },
5124 | "v8flags": {
5125 | "version": "2.1.1",
5126 | "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-2.1.1.tgz",
5127 | "integrity": "sha1-qrGh+jDUX4jdMhFIh1rALAtV5bQ=",
5128 | "dev": true,
5129 | "requires": {
5130 | "user-home": "1.1.1"
5131 | }
5132 | },
5133 | "validate-npm-package-license": {
5134 | "version": "3.0.3",
5135 | "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.3.tgz",
5136 | "integrity": "sha512-63ZOUnL4SIXj4L0NixR3L1lcjO38crAbgrTpl28t8jjrfuiOBL5Iygm+60qPs/KsZGzPNg6Smnc/oY16QTjF0g==",
5137 | "dev": true,
5138 | "requires": {
5139 | "spdx-correct": "3.0.0",
5140 | "spdx-expression-parse": "3.0.0"
5141 | }
5142 | },
5143 | "vary": {
5144 | "version": "1.1.2",
5145 | "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
5146 | "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=",
5147 | "dev": true
5148 | },
5149 | "verror": {
5150 | "version": "1.10.0",
5151 | "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz",
5152 | "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=",
5153 | "dev": true,
5154 | "requires": {
5155 | "assert-plus": "1.0.0",
5156 | "core-util-is": "1.0.2",
5157 | "extsprintf": "1.3.0"
5158 | },
5159 | "dependencies": {
5160 | "assert-plus": {
5161 | "version": "1.0.0",
5162 | "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
5163 | "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=",
5164 | "dev": true
5165 | }
5166 | }
5167 | },
5168 | "vm-browserify": {
5169 | "version": "1.0.1",
5170 | "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.0.1.tgz",
5171 | "integrity": "sha512-EqzLchIMYLBjRPoqVsEkZOa/4Vr2RfOWbd58F+I/Gj79AYTrsseMunxbbSkbYfrqZaXSuPBBXNSOhtJgg0PpmA==",
5172 | "dev": true
5173 | },
5174 | "watch": {
5175 | "version": "1.0.2",
5176 | "resolved": "https://registry.npmjs.org/watch/-/watch-1.0.2.tgz",
5177 | "integrity": "sha1-NApxe952Vyb6CqB9ch4BR6VR3ww=",
5178 | "dev": true,
5179 | "requires": {
5180 | "exec-sh": "0.2.1",
5181 | "minimist": "1.2.0"
5182 | },
5183 | "dependencies": {
5184 | "minimist": {
5185 | "version": "1.2.0",
5186 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
5187 | "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
5188 | "dev": true
5189 | }
5190 | }
5191 | },
5192 | "websocket-driver": {
5193 | "version": "0.7.0",
5194 | "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.0.tgz",
5195 | "integrity": "sha1-DK+dLXVdk67gSdS90NP+LMoqJOs=",
5196 | "dev": true,
5197 | "requires": {
5198 | "http-parser-js": "0.4.13",
5199 | "websocket-extensions": "0.1.3"
5200 | }
5201 | },
5202 | "websocket-extensions": {
5203 | "version": "0.1.3",
5204 | "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.3.tgz",
5205 | "integrity": "sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg==",
5206 | "dev": true
5207 | },
5208 | "whatwg-fetch": {
5209 | "version": "2.0.4",
5210 | "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.4.tgz",
5211 | "integrity": "sha512-dcQ1GWpOD/eEQ97k66aiEVpNnapVj90/+R+SXTPYGHpYBBypfKJEQjLrvMZ7YXbKm21gXd4NcuxUTjiv1YtLng=="
5212 | },
5213 | "which": {
5214 | "version": "1.3.1",
5215 | "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
5216 | "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
5217 | "dev": true,
5218 | "requires": {
5219 | "isexe": "2.0.0"
5220 | }
5221 | },
5222 | "which-module": {
5223 | "version": "1.0.0",
5224 | "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz",
5225 | "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=",
5226 | "dev": true
5227 | },
5228 | "wide-align": {
5229 | "version": "1.1.3",
5230 | "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz",
5231 | "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==",
5232 | "dev": true,
5233 | "requires": {
5234 | "string-width": "1.0.2"
5235 | }
5236 | },
5237 | "wrap-ansi": {
5238 | "version": "2.1.0",
5239 | "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz",
5240 | "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=",
5241 | "dev": true,
5242 | "requires": {
5243 | "string-width": "1.0.2",
5244 | "strip-ansi": "3.0.1"
5245 | }
5246 | },
5247 | "wrappy": {
5248 | "version": "1.0.2",
5249 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
5250 | "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
5251 | "dev": true
5252 | },
5253 | "xtend": {
5254 | "version": "4.0.1",
5255 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz",
5256 | "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=",
5257 | "dev": true
5258 | },
5259 | "y18n": {
5260 | "version": "3.2.1",
5261 | "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz",
5262 | "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=",
5263 | "dev": true
5264 | },
5265 | "yallist": {
5266 | "version": "2.1.2",
5267 | "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz",
5268 | "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=",
5269 | "dev": true
5270 | },
5271 | "yargs": {
5272 | "version": "7.1.0",
5273 | "resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.0.tgz",
5274 | "integrity": "sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg=",
5275 | "dev": true,
5276 | "requires": {
5277 | "camelcase": "3.0.0",
5278 | "cliui": "3.2.0",
5279 | "decamelize": "1.2.0",
5280 | "get-caller-file": "1.0.2",
5281 | "os-locale": "1.4.0",
5282 | "read-pkg-up": "1.0.1",
5283 | "require-directory": "2.1.1",
5284 | "require-main-filename": "1.0.1",
5285 | "set-blocking": "2.0.0",
5286 | "string-width": "1.0.2",
5287 | "which-module": "1.0.0",
5288 | "y18n": "3.2.1",
5289 | "yargs-parser": "5.0.0"
5290 | },
5291 | "dependencies": {
5292 | "camelcase": {
5293 | "version": "3.0.0",
5294 | "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz",
5295 | "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=",
5296 | "dev": true
5297 | }
5298 | }
5299 | },
5300 | "yargs-parser": {
5301 | "version": "5.0.0",
5302 | "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0.tgz",
5303 | "integrity": "sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo=",
5304 | "dev": true,
5305 | "requires": {
5306 | "camelcase": "3.0.0"
5307 | },
5308 | "dependencies": {
5309 | "camelcase": {
5310 | "version": "3.0.0",
5311 | "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz",
5312 | "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=",
5313 | "dev": true
5314 | }
5315 | }
5316 | }
5317 | }
5318 | }
5319 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "tfjs-posenet",
3 | "version": "1.0.0",
4 | "description": "Realtime pose detection using pre-trained TensorFlow.js model PoseNet",
5 | "main": "lib/index.js",
6 | "scripts": {
7 | "build:prod": "browserify src/PoseNet/index.jsx -o lib/index.js -u react -t [ babelify ]",
8 | "build:css": "node-sass src/index.scss example/style.css",
9 | "copy:html": "cp src/index.html example/",
10 | "prebuild:example": "npm run build:css && npm run copy:html",
11 | "build:example": "browserify --extension=.jsx src/index.jsx -o example/script.js -t [ babelify ]",
12 | "example": "npm run build:example",
13 | "postexample": "cd example && live-server",
14 | "preexample:watch": "npm run example &",
15 | "example:watch": "watch 'npm run build:example' src"
16 | },
17 | "repository": {
18 | "type": "git",
19 | "url": "git+https://github.com/jscriptcoder/tfjs-posenet.git"
20 | },
21 | "keywords": [
22 | "tensorflow.js",
23 | "tfjs-models",
24 | "deeplearning",
25 | "posenet"
26 | ],
27 | "author": "Francisco Ramos ",
28 | "license": "MIT",
29 | "bugs": {
30 | "url": "https://github.com/jscriptcoder/tfjs-posenet/issues"
31 | },
32 | "homepage": "https://github.com/jscriptcoder/tfjs-posenet#readme",
33 | "dependencies": {
34 | "@tensorflow-models/posenet": "^0.1.1",
35 | "@tensorflow/tfjs": "^0.11.4",
36 | "babel-polyfill": "^6.26.0",
37 | "react": "^16.4.0",
38 | "react-dom": "^16.4.0"
39 | },
40 | "devDependencies": {
41 | "babel-cli": "^6.26.0",
42 | "babel-plugin-transform-async-to-generator": "^6.24.1",
43 | "babel-plugin-transform-class-properties": "^6.24.1",
44 | "babel-preset-env": "^1.7.0",
45 | "babel-preset-react": "^6.24.1",
46 | "babelify": "^8.0.0",
47 | "browserify": "^16.2.2",
48 | "live-server": "^1.2.0",
49 | "node-sass": "^4.9.0",
50 | "watch": "^1.0.2"
51 | }
52 | }
53 |
--------------------------------------------------------------------------------
/posenet_fran.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jscriptcoder/tfjs-posenet/bbad2204036f7a7587e22d1826612c3ffc8c20f2/posenet_fran.gif
--------------------------------------------------------------------------------
/src/PoseNet/index.jsx:
--------------------------------------------------------------------------------
1 | import * as posenet from '@tensorflow-models/posenet'
2 | import * as React from 'react'
3 | import { isMobile, drawKeypoints, drawSkeleton } from './utils'
4 |
5 | export default class PoseNet extends React.Component {
6 |
7 | static defaultProps = {
8 | videoWidth: 600,
9 | videoHeight: 500,
10 | flipHorizontal: true,
11 | algorithm: 'single-pose',
12 | mobileNetArchitecture: isMobile() ? 0.50 : 1.01,
13 | showVideo: true,
14 | showSkeleton: true,
15 | showPoints: true,
16 | minPoseConfidence: 0.1,
17 | minPartConfidence: 0.5,
18 | maxPoseDetections: 2,
19 | nmsRadius: 20.0,
20 | outputStride: 16,
21 | imageScaleFactor: 0.5,
22 | skeletonColor: 'aqua',
23 | skeletonLineWidth: 2,
24 | loadingText: 'Loading pose detector...'
25 | }
26 |
27 | constructor(props) {
28 | super(props, PoseNet.defaultProps)
29 | this.state = { loading: true }
30 | }
31 |
32 | getCanvas = elem => {
33 | this.canvas = elem
34 | }
35 |
36 | getVideo = elem => {
37 | this.video = elem
38 | }
39 |
40 | async componentWillMount() {
41 | // Loads the pre-trained PoseNet model
42 | this.net = await posenet.load(this.props.mobileNetArchitecture);
43 | }
44 |
45 | async componentDidMount() {
46 | try {
47 | await this.setupCamera()
48 | } catch(e) {
49 | throw 'This browser does not support video capture, or this device does not have a camera'
50 | } finally {
51 | this.setState({ loading: false })
52 | }
53 |
54 | this.detectPose()
55 | }
56 |
57 | async setupCamera() {
58 | // MDN: https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices
59 | if (!navigator.mediaDevices || !navigator.mediaDevices.getUserMedia) {
60 | throw 'Browser API navigator.mediaDevices.getUserMedia not available'
61 | }
62 |
63 | const { videoWidth, videoHeight } = this.props
64 | const video = this.video
65 | const mobile = isMobile()
66 |
67 | video.width = videoWidth
68 | video.height = videoHeight
69 |
70 | // MDN: https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices/getUserMedia
71 | const stream = await navigator.mediaDevices.getUserMedia({
72 | audio: false,
73 | video: {
74 | facingMode: 'user',
75 | width: mobile ? void 0 : videoWidth,
76 | height: mobile ? void 0: videoHeight,
77 | }
78 | });
79 |
80 | video.srcObject = stream
81 |
82 | return new Promise(resolve => {
83 | video.onloadedmetadata = () => {
84 | // Once the video metadata is ready, we can start streaming video
85 | video.play()
86 | resolve(video)
87 | }
88 | })
89 | }
90 |
91 | detectPose() {
92 | const { videoWidth, videoHeight } = this.props
93 | const canvas = this.canvas
94 | const ctx = canvas.getContext('2d')
95 |
96 | canvas.width = videoWidth
97 | canvas.height = videoHeight
98 |
99 | this.poseDetectionFrame(ctx)
100 | }
101 |
102 | poseDetectionFrame(ctx) {
103 | const {
104 | algorithm,
105 | imageScaleFactor,
106 | flipHorizontal,
107 | outputStride,
108 | minPoseConfidence,
109 | maxPoseDetections,
110 | minPartConfidence,
111 | nmsRadius,
112 | videoWidth,
113 | videoHeight,
114 | showVideo,
115 | showPoints,
116 | showSkeleton,
117 | skeletonColor,
118 | skeletonLineWidth,
119 | } = this.props
120 |
121 | const net = this.net
122 | const video = this.video
123 |
124 | const poseDetectionFrameInner = async () => {
125 | let poses = []
126 |
127 | switch (algorithm) {
128 | case 'single-pose':
129 |
130 | const pose = await net.estimateSinglePose(
131 | video,
132 | imageScaleFactor,
133 | flipHorizontal,
134 | outputStride
135 | )
136 |
137 | poses.push(pose)
138 |
139 | break
140 | case 'multi-pose':
141 |
142 | poses = await net.estimateMultiplePoses(
143 | video,
144 | imageScaleFactor,
145 | flipHorizontal,
146 | outputStride,
147 | maxPoseDetections,
148 | minPartConfidence,
149 | nmsRadius
150 | )
151 |
152 | break
153 | }
154 |
155 | ctx.clearRect(0, 0, videoWidth, videoHeight);
156 |
157 | if (showVideo) {
158 | ctx.save()
159 | ctx.scale(-1, 1)
160 | ctx.translate(-videoWidth, 0)
161 | ctx.drawImage(video, 0, 0, videoWidth, videoHeight)
162 | ctx.restore()
163 | }
164 |
165 | // For each pose (i.e. person) detected in an image, loop through the poses
166 | // and draw the resulting skeleton and keypoints if over certain confidence
167 | // scores
168 | poses.forEach(({ score, keypoints }) => {
169 | if (score >= minPoseConfidence) {
170 | if (showPoints) {
171 | drawKeypoints(keypoints, minPartConfidence, skeletonColor, ctx);
172 | }
173 | if (showSkeleton) {
174 | drawSkeleton(keypoints, minPartConfidence, skeletonColor, skeletonLineWidth, ctx);
175 | }
176 | }
177 | })
178 |
179 | requestAnimationFrame(poseDetectionFrameInner)
180 | }
181 |
182 | poseDetectionFrameInner()
183 | }
184 |
185 | render() {
186 | const loading = this.state.loading
187 | ? { this.props.loadingText }
188 | : ''
189 | return (
190 |
191 | { loading }
192 |
193 |
194 |
195 | )
196 | }
197 | }
198 |
--------------------------------------------------------------------------------
/src/PoseNet/utils.js:
--------------------------------------------------------------------------------
1 | import * as posenet from '@tensorflow-models/posenet';
2 |
3 | function isAndroid() {
4 | return /Android/i.test(navigator.userAgent);
5 | }
6 |
7 | function isiOS() {
8 | return /iPhone|iPad|iPod/i.test(navigator.userAgent);
9 | }
10 |
11 | export function isMobile() {
12 | return isAndroid() || isiOS();
13 | }
14 |
15 | export function drawKeypoints(keypoints, minConfidence, skeletonColor, ctx, scale = 1) {
16 | keypoints.forEach(keypoint => {
17 | if (keypoint.score >= minConfidence) {
18 | const { y, x } = keypoint.position
19 | ctx.beginPath()
20 | ctx.arc(x * scale, y * scale, 3, 0, 2 * Math.PI)
21 | ctx.fillStyle = skeletonColor
22 | ctx.fill()
23 | }
24 | })
25 | }
26 |
27 | function toTuple({ y, x }) {
28 | return [y, x]
29 | }
30 |
31 | function drawSegment([ay, ax], [by, bx], color, lineWidth, scale, ctx) {
32 | ctx.beginPath()
33 | ctx.moveTo(ax * scale, ay * scale)
34 | ctx.lineTo(bx * scale, by * scale)
35 | ctx.lineWidth = lineWidth
36 | ctx.strokeStyle = color
37 | ctx.stroke()
38 | }
39 |
40 | export function drawSkeleton(keypoints, minConfidence, color, lineWidth, ctx, scale = 1) {
41 | const adjacentKeyPoints = posenet.getAdjacentKeyPoints(keypoints, minConfidence)
42 |
43 | adjacentKeyPoints.forEach(keypoints => {
44 | drawSegment(
45 | toTuple(keypoints[0].position),
46 | toTuple(keypoints[1].position),
47 | color, lineWidth, scale, ctx
48 | )
49 | })
50 | }
51 |
--------------------------------------------------------------------------------
/src/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/src/index.jsx:
--------------------------------------------------------------------------------
1 | import 'babel-polyfill'
2 | import * as React from 'react'
3 | import ReactDOM from 'react-dom'
4 | import PoseNet from './PoseNet'
5 |
6 | const TV = (props) => (
7 |
8 |
9 | { props.children }
10 |
11 |
12 | )
13 |
14 | ReactDOM.render(
15 |
16 |
17 | ,
18 | document.getElementById('example')
19 | )
20 |
--------------------------------------------------------------------------------
/src/index.scss:
--------------------------------------------------------------------------------
1 | * { box-sizing: border-box; }
2 |
3 | %whole-container {
4 | width: 100%;
5 | height: 100%;
6 | }
7 |
8 | %center-content {
9 | display: flex;
10 | justify-content: center;
11 | align-items: center;
12 | }
13 |
14 | html, body {
15 | @extend %whole-container;
16 | @extend %center-content;
17 | margin: 0;
18 | }
19 |
20 | #example {
21 | flex-grow: 1;
22 | height: 100%;
23 | }
24 |
25 | @media (min-width: 600px) {
26 | #example {
27 | flex-grow: unset;
28 | width: 600px;
29 | height: 500px;
30 | }
31 | }
32 |
33 | // PoseNet styling
34 | .PoseNet {
35 | @extend %whole-container;
36 | @extend %center-content;
37 |
38 | &__loading {
39 | position: absolute;
40 | font-family: 'Open Sans';
41 | font-size: 2em;
42 | }
43 |
44 | video {
45 | -moz-transform: scaleX(-1);
46 | -o-transform: scaleX(-1);
47 | -webkit-transform: scaleX(-1);
48 | transform: scaleX(-1);
49 | display: none;
50 | }
51 | }
52 |
53 | // Animated gradient background
54 | @-webkit-keyframes Gradient {
55 | 0% {
56 | background-position: 0% 50%
57 | }
58 | 50% {
59 | background-position: 100% 50%
60 | }
61 | 100% {
62 | background-position: 0% 50%
63 | }
64 | }
65 |
66 | @-moz-keyframes Gradient {
67 | 0% {
68 | background-position: 0% 50%
69 | }
70 | 50% {
71 | background-position: 100% 50%
72 | }
73 | 100% {
74 | background-position: 0% 50%
75 | }
76 | }
77 |
78 | @keyframes Gradient {
79 | 0% {
80 | background-position: 0% 50%
81 | }
82 | 50% {
83 | background-position: 100% 50%
84 | }
85 | 100% {
86 | background-position: 0% 50%
87 | }
88 | }
89 |
90 | body {
91 | color: #fff;
92 | background: linear-gradient(-45deg, #EE7752, #E73C7E, #23A6D5, #23D5AB);
93 | background-size: 400% 400%;
94 | -webkit-animation: Gradient 15s ease infinite;
95 | -moz-animation: Gradient 15s ease infinite;
96 | animation: Gradient 15s ease infinite;
97 | }
98 |
99 | // Television
100 | .tv {
101 | @extend %whole-container;
102 | border: 10px solid #333;
103 | border-radius: 15px;
104 | background-clip: border-box;
105 | position: relative;
106 | background: #000;
107 |
108 | &:after, &:before {
109 | position: absolute;
110 | content: "";
111 | background: #333;
112 | }
113 |
114 | &:after {
115 | width: 40px; height:50px;
116 | bottom: -50px; left:50%;
117 | margin-left: -20px;
118 | }
119 |
120 | &:before {
121 | width: 130px; height:10px;
122 | bottom: -50px; left:50%;
123 | margin-left: -65px;
124 | border-top-right-radius: 10px;
125 | border-top-left-radius: 10px;
126 | }
127 |
128 | &-inner {
129 | @extend %whole-container;
130 | overflow: hidden;
131 | position: relative;
132 | }
133 | }
134 |
--------------------------------------------------------------------------------