Compare View

switch
from
...
to
 
Commits (3)

Changes

Showing 4 changed files Inline Diff

1 "use strict"; 1 "use strict";
2 2
3 /** 3 /**
4 * API Server 4 * API Server
5 * 5 *
6 * @todo make it work 6 * @todo make it work
7 */ 7 */
8 8
9 const express = require('express'); 9 const express = require('express');
10 10
11 const config = require('../config'); 11 const config = require('../config');
12 const logger = require('../logger'); 12 const logger = require('../logger');
13 const matrix = require('../matrix'); 13 const matrix = require('../matrix');
14 14
15 const routerConfig = require('./router-config'); 15 const routerConfig = require('./router-config');
16 const routerMatrix = require('./router-matrix'); 16 const routerMatrix = require('./router-matrix');
17 const routerProducts = require('./router-products');
17 const routerProducts = require('./router-products'); 18
18 19 const app = express();
19 const app = express(); 20
20 21 function isConfigured() {
21 function isConfigured() { 22 return Boolean(config && config.apiserver && config.apiserver.apikey && config.apiserver.port);
22 return Boolean(config && config.apiserver && config.apiserver.apikey && config.apiserver.port); 23 }
23 } 24
24 25 function isValidApikey(apikey) {
25 function isValidApikey(apikey) { 26 return isConfigured() && (config.apiserver.apikey === apikey);
26 return isConfigured() && (config.apiserver.apikey === apikey); 27 }
27 } 28
28 29 function needValidApikey(req, res, next) {
29 function needValidApikey(req, res, next) { 30 if (isValidApikey(req.params.apikey)) {
30 if (isValidApikey(req.params.apikey)) { 31 next();
31 next(); 32 }
32 } 33 else {
33 else { 34 res.end('INVALID_APIKEY');
34 res.end('INVALID_APIKEY'); 35 }
35 } 36 }
36 } 37
37 38 isConfigured() && app.listen(config.apiserver.port, function () {
38 isConfigured() && app.listen(config.apiserver.port, function () { 39 logger.info('API-SERVER listening', {port: config.apiserver.port});
39 logger.info('API-SERVER listening', {port: config.apiserver.port}); 40 });
40 }); 41
41 42
42 43 app.use('/apikey/:apikey', needValidApikey);
43 app.use('/apikey/:apikey', needValidApikey); 44 app.use('/apikey/:apikey/config', routerConfig);
44 app.use('/apikey/:apikey/config', routerConfig); 45 app.use('/apikey/:apikey/matrix', routerMatrix);
46 app.use('/apikey/:apikey/products', routerProducts);
45 app.use('/apikey/:apikey/matrix', routerMatrix); 47
api-server/router-products.js
File was created 1 "use strict";
2
3 const express = require('express');
4 const naturalSort = require('node-natural-sort');
5 const unique = require('array-unique');
6
7 const config = require('../config');
8 const logger = require('../logger');
9 const matrix = require('../matrix');
10
11 const router = express.Router();
12 module.exports = router;
13
14 function pageIndex(req, res, next) {
15 res.json({
16 method: '/products',
17 error: null,
18 result: config.products
19 });
20 }
21
22 function pageAdd(req, res, next) {
23 if (!req.params.product || req.params.product !== 'string' || !req.params.product.trim()) {
24 res.json({
25 method: '/products/add',
26 error: true,
27 error_msg: 'Usage: /products/add/<NEW_PRODUCT>'
28 });
29
30 return;
31 }
32
33 config.products.push(newProduct.trim().toUpperCase());
34 config.products.map(function(x) { return x.toUpperCase(); });
35 unique(config.products);
36 config.products.sort(naturalSort());
37 matrix.config_is_dirty = true;
38
39 res.json({
40 method: '/products/add',
41 error: null,
42 new_product: newProduct,
43 products: config.products
44 })
45 }
46
47 function pageDel(req, res, next) {
48 if (!req.params.product || req.params.product !== 'string' || !req.params.product.trim()) {
49 res.json({
50 method: '/products/del',
51 error: true,
52 error_msg: 'Usage: /products/del/<PRODUCT_TO_DELETE>'
53 });
54
55 return;
56 }
57
58 const product = req.params.product.trim().toUpperCase();
59 config.products.map(function(x) { return x.toUpperCase(); });
60 const idx = config.products.indexOf(product);
61 config.products.slice(idx, 1)
62
63 matrix.config_is_dirty = true;
64
65 res.json({
66 method: '/products/del',
67 error: null,
68 product_to_delete: product,
69 products: config.products
70 })
71 }
72
73
74 router.get('/', pageIndex);
75 router.get('/add/:product', pageAdd);
76 router.get('/del/:product', pageDel);
1 "use strict"; 77
File was created 1 {
2 "name": "komodo-sdk",
3 "version": "1.29.0",
4 "lockfileVersion": 1,
5 "requires": true,
6 "dependencies": {
7 "a-sync-waterfall": {
8 "version": "1.0.0",
9 "resolved": "https://registry.npmjs.org/a-sync-waterfall/-/a-sync-waterfall-1.0.0.tgz",
10 "integrity": "sha1-OOgxnXk3niRiiEW1O5ZyKyng5Hw="
11 },
12 "accepts": {
13 "version": "1.3.5",
14 "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz",
15 "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=",
16 "requires": {
17 "mime-types": "2.1.18",
18 "negotiator": "0.6.1"
19 },
20 "dependencies": {
21 "mime-db": {
22 "version": "1.33.0",
23 "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz",
24 "integrity": "sha1-o0kgUKXLm2NFBUHjnZeI0icng9s="
25 },
26 "mime-types": {
27 "version": "2.1.18",
28 "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz",
29 "integrity": "sha1-bzI/YKg9ERRvgx/xH9ZuL+VQO7g=",
30 "requires": {
31 "mime-db": "1.33.0"
32 }
33 }
34 }
35 },
36 "ajv": {
37 "version": "4.11.8",
38 "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz",
39 "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=",
40 "requires": {
41 "co": "4.6.0",
42 "json-stable-stringify": "1.0.1"
43 }
44 },
45 "ansi-regex": {
46 "version": "2.1.1",
47 "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
48 "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8="
49 },
50 "anymatch": {
51 "version": "1.3.2",
52 "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz",
53 "integrity": "sha1-VT3Lj5HjyImEXf26NMd3IbkLnXo=",
54 "optional": true,
55 "requires": {
56 "micromatch": "2.3.11",
57 "normalize-path": "2.1.1"
58 }
59 },
60 "arr-diff": {
61 "version": "2.0.0",
62 "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz",
63 "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=",
64 "optional": true,
65 "requires": {
66 "arr-flatten": "1.1.0"
67 }
68 },
69 "arr-flatten": {
70 "version": "1.1.0",
71 "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz",
72 "integrity": "sha1-NgSLv/TntH4TZkQxbJlmnqWukfE=",
73 "optional": true
74 },
75 "array-flatten": {
76 "version": "1.1.1",
77 "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
78 "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI="
79 },
80 "array-unique": {
81 "version": "0.3.2",
82 "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz",
83 "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg="
84 },
85 "asap": {
86 "version": "2.0.6",
87 "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz",
88 "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY="
89 },
90 "asn1": {
91 "version": "0.2.3",
92 "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz",
93 "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y="
94 },
95 "assert-plus": {
96 "version": "0.2.0",
97 "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz",
98 "integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ="
99 },
100 "async": {
101 "version": "1.0.0",
102 "resolved": "https://registry.npmjs.org/async/-/async-1.0.0.tgz",
103 "integrity": "sha1-+PwEyjoTeErenhZBr5hXjPvWR6k="
104 },
105 "async-each": {
106 "version": "1.0.1",
107 "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz",
108 "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=",
109 "optional": true
110 },
111 "asynckit": {
112 "version": "0.4.0",
113 "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
114 "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k="
115 },
116 "aws-sign2": {
117 "version": "0.6.0",
118 "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz",
119 "integrity": "sha1-FDQt0428yU0OW4fXY81jYSwOeU8="
120 },
121 "aws4": {
122 "version": "1.6.0",
123 "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.6.0.tgz",
124 "integrity": "sha1-g+9cqGCysy5KDe7e6MdxudtXRx4="
125 },
126 "balanced-match": {
127 "version": "1.0.0",
128 "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
129 "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c="
130 },
131 "basic-auth": {
132 "version": "2.0.0",
133 "resolved": "https://registry.npmjs.org/basic-auth/-/basic-auth-2.0.0.tgz",
134 "integrity": "sha1-AV2z81PgLlY3d1X5YnQuiYHnu7o=",
135 "requires": {
136 "safe-buffer": "5.1.1"
137 }
138 },
139 "bcrypt-pbkdf": {
140 "version": "1.0.1",
141 "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz",
142 "integrity": "sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40=",
143 "optional": true,
144 "requires": {
145 "tweetnacl": "0.14.5"
146 }
147 },
148 "binary-extensions": {
149 "version": "1.10.0",
150 "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.10.0.tgz",
151 "integrity": "sha1-muuabF6IY4qtFx4Wf1kAq+JINdA=",
152 "optional": true
153 },
154 "body-parser": {
155 "version": "1.18.2",
156 "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.2.tgz",
157 "integrity": "sha1-h2eKGdhLR9hZuDGZvVm84iKxBFQ=",
158 "requires": {
159 "bytes": "3.0.0",
160 "content-type": "1.0.4",
161 "debug": "2.6.9",
162 "depd": "1.1.1",
163 "http-errors": "1.6.2",
164 "iconv-lite": "0.4.19",
165 "on-finished": "2.3.0",
166 "qs": "6.5.1",
167 "raw-body": "2.3.2",
168 "type-is": "1.6.16"
169 },
170 "dependencies": {
171 "qs": {
172 "version": "6.5.1",
173 "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz",
174 "integrity": "sha1-NJzfbu+J7EXBLX1es/wMhwNDptg="
175 }
176 }
177 },
178 "boom": {
179 "version": "2.10.1",
180 "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz",
181 "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=",
182 "requires": {
183 "hoek": "2.16.3"
184 }
185 },
186 "brace-expansion": {
187 "version": "1.1.8",
188 "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz",
189 "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=",
190 "requires": {
191 "balanced-match": "1.0.0",
192 "concat-map": "0.0.1"
193 }
194 },
195 "braces": {
196 "version": "1.8.5",
197 "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz",
198 "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=",
199 "optional": true,
200 "requires": {
201 "expand-range": "1.8.2",
202 "preserve": "0.2.0",
203 "repeat-element": "1.1.2"
204 }
205 },
206 "bytes": {
207 "version": "3.0.0",
208 "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz",
209 "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg="
210 },
211 "camelcase": {
212 "version": "2.1.1",
213 "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz",
214 "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8="
215 },
216 "caseless": {
217 "version": "0.12.0",
218 "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
219 "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw="
220 },
221 "charenc": {
222 "version": "0.0.2",
223 "resolved": "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz",
224 "integrity": "sha1-wKHS86cJLgN3S/qD8UwPxXkKhmc="
225 },
226 "chokidar": {
227 "version": "1.7.0",
228 "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz",
229 "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=",
230 "optional": true,
231 "requires": {
232 "anymatch": "1.3.2",
233 "async-each": "1.0.1",
234 "fsevents": "1.2.4",
235 "glob-parent": "2.0.0",
236 "inherits": "2.0.3",
237 "is-binary-path": "1.0.1",
238 "is-glob": "2.0.1",
239 "path-is-absolute": "1.0.1",
240 "readdirp": "2.1.0"
241 }
242 },
243 "circular-buffer": {
244 "version": "0.0.6",
245 "resolved": "https://registry.npmjs.org/circular-buffer/-/circular-buffer-0.0.6.tgz",
246 "integrity": "sha1-6c+iujGdNw3idDtgCMpTnN3r9TY="
247 },
248 "cliui": {
249 "version": "3.2.0",
250 "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz",
251 "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=",
252 "requires": {
253 "string-width": "1.0.2",
254 "strip-ansi": "3.0.1",
255 "wrap-ansi": "2.1.0"
256 }
257 },
258 "co": {
259 "version": "4.6.0",
260 "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz",
261 "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ="
262 },
263 "code-point-at": {
264 "version": "1.1.0",
265 "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz",
266 "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c="
267 },
268 "colors": {
269 "version": "1.0.3",
270 "resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz",
271 "integrity": "sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs="
272 },
273 "combined-stream": {
274 "version": "1.0.5",
275 "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz",
276 "integrity": "sha1-k4NwpXtKUd6ix3wV1cX9+JUWQAk=",
277 "requires": {
278 "delayed-stream": "1.0.0"
279 }
280 },
281 "commander": {
282 "version": "2.15.1",
283 "resolved": "https://registry.npmjs.org/commander/-/commander-2.15.1.tgz",
284 "integrity": "sha1-30boZ9D8Kuxmo0ZitAapzK//Ww8="
285 },
286 "concat-map": {
287 "version": "0.0.1",
288 "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
289 "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s="
290 },
291 "content-disposition": {
292 "version": "0.5.2",
293 "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz",
294 "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ="
295 },
296 "content-type": {
297 "version": "1.0.4",
298 "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz",
299 "integrity": "sha1-4TjMdeBAxyexlm/l5fjJruJW/js="
300 },
301 "cookie": {
302 "version": "0.3.1",
303 "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz",
304 "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s="
305 },
306 "cookie-signature": {
307 "version": "1.0.6",
308 "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz",
309 "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw="
310 },
311 "core-util-is": {
312 "version": "1.0.2",
313 "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
314 "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac="
315 },
316 "crc": {
317 "version": "3.4.4",
318 "resolved": "https://registry.npmjs.org/crc/-/crc-3.4.4.tgz",
319 "integrity": "sha1-naHpgOO9RPxck79as9ozeNheRms="
320 },
321 "crypt": {
322 "version": "0.0.2",
323 "resolved": "https://registry.npmjs.org/crypt/-/crypt-0.0.2.tgz",
324 "integrity": "sha1-iNf/fsDfuG9xPch7u0LQRNPmxBs="
325 },
326 "cryptiles": {
327 "version": "2.0.5",
328 "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz",
329 "integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=",
330 "requires": {
331 "boom": "2.10.1"
332 }
333 },
334 "cycle": {
335 "version": "1.0.3",
336 "resolved": "https://registry.npmjs.org/cycle/-/cycle-1.0.3.tgz",
337 "integrity": "sha1-IegLK+hYD5i0aPN5QwZisEbDStI="
338 },
339 "dashdash": {
340 "version": "1.14.1",
341 "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz",
342 "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=",
343 "requires": {
344 "assert-plus": "1.0.0"
345 },
346 "dependencies": {
347 "assert-plus": {
348 "version": "1.0.0",
349 "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
350 "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU="
351 }
352 }
353 },
354 "debug": {
355 "version": "2.6.9",
356 "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
357 "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=",
358 "requires": {
359 "ms": "2.0.0"
360 }
361 },
362 "decamelize": {
363 "version": "1.2.0",
364 "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
365 "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA="
366 },
367 "delayed-stream": {
368 "version": "1.0.0",
369 "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
370 "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk="
371 },
372 "depd": {
373 "version": "1.1.1",
374 "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz",
375 "integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k="
376 },
377 "destroy": {
378 "version": "1.0.4",
379 "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz",
380 "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA="
381 },
382 "dot-object": {
383 "version": "1.7.0",
384 "resolved": "https://registry.npmjs.org/dot-object/-/dot-object-1.7.0.tgz",
385 "integrity": "sha1-O47Np4sPKqUriHHBgP4bPgmSakE=",
386 "requires": {
387 "commander": "2.15.1",
388 "glob": "7.1.2"
389 }
390 },
391 "double-ended-queue": {
392 "version": "2.1.0-0",
393 "resolved": "https://registry.npmjs.org/double-ended-queue/-/double-ended-queue-2.1.0-0.tgz",
394 "integrity": "sha1-ED01J/0xUo9AGIEwyEHv3XgmTlw="
395 },
396 "ecc-jsbn": {
397 "version": "0.1.1",
398 "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz",
399 "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=",
400 "optional": true,
401 "requires": {
402 "jsbn": "0.1.1"
403 }
404 },
405 "ee-first": {
406 "version": "1.1.1",
407 "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
408 "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0="
409 },
410 "encodeurl": {
411 "version": "1.0.2",
412 "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
413 "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k="
414 },
415 "escape-html": {
416 "version": "1.0.3",
417 "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
418 "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg="
419 },
420 "etag": {
421 "version": "1.8.1",
422 "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz",
423 "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc="
424 },
425 "expand-brackets": {
426 "version": "0.1.5",
427 "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz",
428 "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=",
429 "optional": true,
430 "requires": {
431 "is-posix-bracket": "0.1.1"
432 }
433 },
434 "expand-range": {
435 "version": "1.8.2",
436 "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz",
437 "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=",
438 "optional": true,
439 "requires": {
440 "fill-range": "2.2.3"
441 }
442 },
443 "express": {
444 "version": "4.16.3",
445 "resolved": "https://registry.npmjs.org/express/-/express-4.16.3.tgz",
446 "integrity": "sha1-avilAjUNsyRuzEvs9rWjTSL37VM=",
447 "requires": {
448 "accepts": "1.3.5",
449 "array-flatten": "1.1.1",
450 "body-parser": "1.18.2",
451 "content-disposition": "0.5.2",
452 "content-type": "1.0.4",
453 "cookie": "0.3.1",
454 "cookie-signature": "1.0.6",
455 "debug": "2.6.9",
456 "depd": "1.1.2",
457 "encodeurl": "1.0.2",
458 "escape-html": "1.0.3",
459 "etag": "1.8.1",
460 "finalhandler": "1.1.1",
461 "fresh": "0.5.2",
462 "merge-descriptors": "1.0.1",
463 "methods": "1.1.2",
464 "on-finished": "2.3.0",
465 "parseurl": "1.3.2",
466 "path-to-regexp": "0.1.7",
467 "proxy-addr": "2.0.3",
468 "qs": "6.5.1",
469 "range-parser": "1.2.0",
470 "safe-buffer": "5.1.1",
471 "send": "0.16.2",
472 "serve-static": "1.13.2",
473 "setprototypeof": "1.1.0",
474 "statuses": "1.4.0",
475 "type-is": "1.6.16",
476 "utils-merge": "1.0.1",
477 "vary": "1.1.2"
478 },
479 "dependencies": {
480 "depd": {
481 "version": "1.1.2",
482 "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
483 "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak="
484 },
485 "mime-db": {
486 "version": "1.33.0",
487 "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz",
488 "integrity": "sha1-o0kgUKXLm2NFBUHjnZeI0icng9s="
489 },
490 "mime-types": {
491 "version": "2.1.18",
492 "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz",
493 "integrity": "sha1-bzI/YKg9ERRvgx/xH9ZuL+VQO7g=",
494 "requires": {
495 "mime-db": "1.33.0"
496 }
497 },
498 "qs": {
499 "version": "6.5.1",
500 "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz",
501 "integrity": "sha1-NJzfbu+J7EXBLX1es/wMhwNDptg="
502 },
503 "statuses": {
504 "version": "1.4.0",
505 "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz",
506 "integrity": "sha1-u3PURtonlhBu/MG2AaJT1sRr0Ic="
507 },
508 "type-is": {
509 "version": "1.6.16",
510 "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.16.tgz",
511 "integrity": "sha1-+JzjQVQcZysl7nrjxz3uOyvlAZQ=",
512 "requires": {
513 "media-typer": "0.3.0",
514 "mime-types": "2.1.18"
515 }
516 }
517 }
518 },
519 "express-session": {
520 "version": "1.15.6",
521 "resolved": "https://registry.npmjs.org/express-session/-/express-session-1.15.6.tgz",
522 "integrity": "sha1-R7QWDIj0KrcP6KUI4xy/92dXqwo=",
523 "requires": {
524 "cookie": "0.3.1",
525 "cookie-signature": "1.0.6",
526 "crc": "3.4.4",
527 "debug": "2.6.9",
528 "depd": "1.1.1",
529 "on-headers": "1.0.1",
530 "parseurl": "1.3.2",
531 "uid-safe": "2.1.5",
532 "utils-merge": "1.0.1"
533 }
534 },
535 "extend": {
536 "version": "3.0.1",
537 "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz",
538 "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ="
539 },
540 "extglob": {
541 "version": "0.3.2",
542 "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz",
543 "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=",
544 "optional": true,
545 "requires": {
546 "is-extglob": "1.0.0"
547 }
548 },
549 "extsprintf": {
550 "version": "1.3.0",
551 "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz",
552 "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU="
553 },
554 "eyes": {
555 "version": "0.1.8",
556 "resolved": "https://registry.npmjs.org/eyes/-/eyes-0.1.8.tgz",
557 "integrity": "sha1-Ys8SAjTGg3hdkCNIqADvPgzCC8A="
558 },
559 "filename-regex": {
560 "version": "2.0.1",
561 "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz",
562 "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=",
563 "optional": true
564 },
565 "fill-range": {
566 "version": "2.2.3",
567 "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.3.tgz",
568 "integrity": "sha1-ULd9/X5Gm8dJJHCWNpn+eoSFpyM=",
569 "optional": true,
570 "requires": {
571 "is-number": "2.1.0",
572 "isobject": "2.1.0",
573 "randomatic": "1.1.7",
574 "repeat-element": "1.1.2",
575 "repeat-string": "1.6.1"
576 }
577 },
578 "finalhandler": {
579 "version": "1.1.1",
580 "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.1.tgz",
581 "integrity": "sha1-7r9O2EAHnIP0JJA4ydcDAIMBsQU=",
582 "requires": {
583 "debug": "2.6.9",
584 "encodeurl": "1.0.2",
585 "escape-html": "1.0.3",
586 "on-finished": "2.3.0",
587 "parseurl": "1.3.2",
588 "statuses": "1.4.0",
589 "unpipe": "1.0.0"
590 },
591 "dependencies": {
592 "statuses": {
593 "version": "1.4.0",
594 "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz",
595 "integrity": "sha1-u3PURtonlhBu/MG2AaJT1sRr0Ic="
596 }
597 }
598 },
599 "for-in": {
600 "version": "1.0.2",
601 "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz",
602 "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=",
603 "optional": true
604 },
605 "for-own": {
606 "version": "0.1.5",
607 "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz",
608 "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=",
609 "optional": true,
610 "requires": {
611 "for-in": "1.0.2"
612 }
613 },
614 "forever-agent": {
615 "version": "0.6.1",
616 "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz",
617 "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE="
618 },
619 "form-data": {
620 "version": "2.1.4",
621 "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.1.4.tgz",
622 "integrity": "sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE=",
623 "requires": {
624 "asynckit": "0.4.0",
625 "combined-stream": "1.0.5",
626 "mime-types": "2.1.17"
627 }
628 },
629 "forwarded": {
630 "version": "0.1.2",
631 "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz",
632 "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ="
633 },
634 "fresh": {
635 "version": "0.5.2",
636 "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
637 "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac="
638 },
639 "fs.realpath": {
640 "version": "1.0.0",
641 "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
642 "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8="
643 },
644 "fsevents": {
645 "version": "1.2.4",
646 "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.4.tgz",
647 "integrity": "sha512-z8H8/diyk76B7q5wg+Ud0+CqzcAF3mBBI/bA5ne5zrRUUIvNkJY//D3BqyH571KuAC4Nr7Rw7CjWX4r0y9DvNg==",
648 "optional": true,
649 "requires": {
650 "nan": "2.10.0",
651 "node-pre-gyp": "0.10.0"
652 },
653 "dependencies": {
654 "abbrev": {
655 "version": "1.1.1",
656 "bundled": true,
657 "optional": true
658 },
659 "ansi-regex": {
660 "version": "2.1.1",
661 "bundled": true
662 },
663 "aproba": {
664 "version": "1.2.0",
665 "bundled": true,
666 "optional": true
667 },
668 "are-we-there-yet": {
669 "version": "1.1.4",
670 "bundled": true,
671 "optional": true,
672 "requires": {
673 "delegates": "1.0.0",
674 "readable-stream": "2.3.6"
675 }
676 },
677 "balanced-match": {
678 "version": "1.0.0",
679 "bundled": true
680 },
681 "brace-expansion": {
682 "version": "1.1.11",
683 "bundled": true,
684 "requires": {
685 "balanced-match": "1.0.0",
686 "concat-map": "0.0.1"
687 }
688 },
689 "chownr": {
690 "version": "1.0.1",
691 "bundled": true,
692 "optional": true
693 },
694 "code-point-at": {
695 "version": "1.1.0",
696 "bundled": true
697 },
698 "concat-map": {
699 "version": "0.0.1",
700 "bundled": true
701 },
702 "console-control-strings": {
703 "version": "1.1.0",
704 "bundled": true
705 },
706 "core-util-is": {
707 "version": "1.0.2",
708 "bundled": true,
709 "optional": true
710 },
711 "debug": {
712 "version": "2.6.9",
713 "bundled": true,
714 "optional": true,
715 "requires": {
716 "ms": "2.0.0"
717 }
718 },
719 "deep-extend": {
720 "version": "0.5.1",
721 "bundled": true,
722 "optional": true
723 },
724 "delegates": {
725 "version": "1.0.0",
726 "bundled": true,
727 "optional": true
728 },
729 "detect-libc": {
730 "version": "1.0.3",
731 "bundled": true,
732 "optional": true
733 },
734 "fs-minipass": {
735 "version": "1.2.5",
736 "bundled": true,
737 "optional": true,
738 "requires": {
739 "minipass": "2.2.4"
740 }
741 },
742 "fs.realpath": {
743 "version": "1.0.0",
744 "bundled": true,
745 "optional": true
746 },
747 "gauge": {
748 "version": "2.7.4",
749 "bundled": true,
750 "optional": true,
751 "requires": {
752 "aproba": "1.2.0",
753 "console-control-strings": "1.1.0",
754 "has-unicode": "2.0.1",
755 "object-assign": "4.1.1",
756 "signal-exit": "3.0.2",
757 "string-width": "1.0.2",
758 "strip-ansi": "3.0.1",
759 "wide-align": "1.1.2"
760 }
761 },
762 "glob": {
763 "version": "7.1.2",
764 "bundled": true,
765 "optional": true,
766 "requires": {
767 "fs.realpath": "1.0.0",
768 "inflight": "1.0.6",
769 "inherits": "2.0.3",
770 "minimatch": "3.0.4",
771 "once": "1.4.0",
772 "path-is-absolute": "1.0.1"
773 }
774 },
775 "has-unicode": {
776 "version": "2.0.1",
777 "bundled": true,
778 "optional": true
779 },
780 "iconv-lite": {
781 "version": "0.4.21",
782 "bundled": true,
783 "optional": true,
784 "requires": {
785 "safer-buffer": "2.1.2"
786 }
787 },
788 "ignore-walk": {
789 "version": "3.0.1",
790 "bundled": true,
791 "optional": true,
792 "requires": {
793 "minimatch": "3.0.4"
794 }
795 },
796 "inflight": {
797 "version": "1.0.6",
798 "bundled": true,
799 "optional": true,
800 "requires": {
801 "once": "1.4.0",
802 "wrappy": "1.0.2"
803 }
804 },
805 "inherits": {
806 "version": "2.0.3",
807 "bundled": true
808 },
809 "ini": {
810 "version": "1.3.5",
811 "bundled": true,
812 "optional": true
813 },
814 "is-fullwidth-code-point": {
815 "version": "1.0.0",
816 "bundled": true,
817 "requires": {
818 "number-is-nan": "1.0.1"
819 }
820 },
821 "isarray": {
822 "version": "1.0.0",
823 "bundled": true,
824 "optional": true
825 },
826 "minimatch": {
827 "version": "3.0.4",
828 "bundled": true,
829 "requires": {
830 "brace-expansion": "1.1.11"
831 }
832 },
833 "minimist": {
834 "version": "0.0.8",
835 "bundled": true
836 },
837 "minipass": {
838 "version": "2.2.4",
839 "bundled": true,
840 "requires": {
841 "safe-buffer": "5.1.1",
842 "yallist": "3.0.2"
843 }
844 },
845 "minizlib": {
846 "version": "1.1.0",
847 "bundled": true,
848 "optional": true,
849 "requires": {
850 "minipass": "2.2.4"
851 }
852 },
853 "mkdirp": {
854 "version": "0.5.1",
855 "bundled": true,
856 "requires": {
857 "minimist": "0.0.8"
858 }
859 },
860 "ms": {
861 "version": "2.0.0",
862 "bundled": true,
863 "optional": true
864 },
865 "needle": {
866 "version": "2.2.0",
867 "bundled": true,
868 "optional": true,
869 "requires": {
870 "debug": "2.6.9",
871 "iconv-lite": "0.4.21",
872 "sax": "1.2.4"
873 }
874 },
875 "node-pre-gyp": {
876 "version": "0.10.0",
877 "bundled": true,
878 "optional": true,
879 "requires": {
880 "detect-libc": "1.0.3",
881 "mkdirp": "0.5.1",
882 "needle": "2.2.0",
883 "nopt": "4.0.1",
884 "npm-packlist": "1.1.10",
885 "npmlog": "4.1.2",
886 "rc": "1.2.7",
887 "rimraf": "2.6.2",
888 "semver": "5.5.0",
889 "tar": "4.4.1"
890 }
891 },
892 "nopt": {
893 "version": "4.0.1",
894 "bundled": true,
895 "optional": true,
896 "requires": {
897 "abbrev": "1.1.1",
898 "osenv": "0.1.5"
899 }
900 },
901 "npm-bundled": {
902 "version": "1.0.3",
903 "bundled": true,
904 "optional": true
905 },
906 "npm-packlist": {
907 "version": "1.1.10",
908 "bundled": true,
909 "optional": true,
910 "requires": {
911 "ignore-walk": "3.0.1",
912 "npm-bundled": "1.0.3"
913 }
914 },
915 "npmlog": {
916 "version": "4.1.2",
917 "bundled": true,
918 "optional": true,
919 "requires": {
920 "are-we-there-yet": "1.1.4",
921 "console-control-strings": "1.1.0",
922 "gauge": "2.7.4",
923 "set-blocking": "2.0.0"
924 }
925 },
926 "number-is-nan": {
927 "version": "1.0.1",
928 "bundled": true
929 },
930 "object-assign": {
931 "version": "4.1.1",
932 "bundled": true,
933 "optional": true
934 },
935 "once": {
936 "version": "1.4.0",
937 "bundled": true,
938 "requires": {
939 "wrappy": "1.0.2"
940 }
941 },
942 "os-homedir": {
943 "version": "1.0.2",
944 "bundled": true,
945 "optional": true
946 },
947 "os-tmpdir": {
948 "version": "1.0.2",
949 "bundled": true,
950 "optional": true
951 },
952 "osenv": {
953 "version": "0.1.5",
954 "bundled": true,
955 "optional": true,
956 "requires": {
957 "os-homedir": "1.0.2",
958 "os-tmpdir": "1.0.2"
959 }
960 },
961 "path-is-absolute": {
962 "version": "1.0.1",
963 "bundled": true,
964 "optional": true
965 },
966 "process-nextick-args": {
967 "version": "2.0.0",
968 "bundled": true,
969 "optional": true
970 },
971 "rc": {
972 "version": "1.2.7",
973 "bundled": true,
974 "optional": true,
975 "requires": {
976 "deep-extend": "0.5.1",
977 "ini": "1.3.5",
978 "minimist": "1.2.0",
979 "strip-json-comments": "2.0.1"
980 },
981 "dependencies": {
982 "minimist": {
983 "version": "1.2.0",
984 "bundled": true,
985 "optional": true
986 }
987 }
988 },
989 "readable-stream": {
990 "version": "2.3.6",
991 "bundled": true,
992 "optional": true,
993 "requires": {
994 "core-util-is": "1.0.2",
995 "inherits": "2.0.3",
996 "isarray": "1.0.0",
997 "process-nextick-args": "2.0.0",
998 "safe-buffer": "5.1.1",
999 "string_decoder": "1.1.1",
1000 "util-deprecate": "1.0.2"
1001 }
1002 },
1003 "rimraf": {
1004 "version": "2.6.2",
1005 "bundled": true,
1006 "optional": true,
1007 "requires": {
1008 "glob": "7.1.2"
1009 }
1010 },
1011 "safe-buffer": {
1012 "version": "5.1.1",
1013 "bundled": true
1014 },
1015 "safer-buffer": {
1016 "version": "2.1.2",
1017 "bundled": true,
1018 "optional": true
1019 },
1020 "sax": {
1021 "version": "1.2.4",
1022 "bundled": true,
1023 "optional": true
1024 },
1025 "semver": {
1026 "version": "5.5.0",
1027 "bundled": true,
1028 "optional": true
1029 },
1030 "set-blocking": {
1031 "version": "2.0.0",
1032 "bundled": true,
1033 "optional": true
1034 },
1035 "signal-exit": {
1036 "version": "3.0.2",
1037 "bundled": true,
1038 "optional": true
1039 },
1040 "string-width": {
1041 "version": "1.0.2",
1042 "bundled": true,
1043 "requires": {
1044 "code-point-at": "1.1.0",
1045 "is-fullwidth-code-point": "1.0.0",
1046 "strip-ansi": "3.0.1"
1047 }
1048 },
1049 "string_decoder": {
1050 "version": "1.1.1",
1051 "bundled": true,
1052 "optional": true,
1053 "requires": {
1054 "safe-buffer": "5.1.1"
1055 }
1056 },
1057 "strip-ansi": {
1058 "version": "3.0.1",
1059 "bundled": true,
1060 "requires": {
1061 "ansi-regex": "2.1.1"
1062 }
1063 },
1064 "strip-json-comments": {
1065 "version": "2.0.1",
1066 "bundled": true,
1067 "optional": true
1068 },
1069 "tar": {
1070 "version": "4.4.1",
1071 "bundled": true,
1072 "optional": true,
1073 "requires": {
1074 "chownr": "1.0.1",
1075 "fs-minipass": "1.2.5",
1076 "minipass": "2.2.4",
1077 "minizlib": "1.1.0",
1078 "mkdirp": "0.5.1",
1079 "safe-buffer": "5.1.1",
1080 "yallist": "3.0.2"
1081 }
1082 },
1083 "util-deprecate": {
1084 "version": "1.0.2",
1085 "bundled": true,
1086 "optional": true
1087 },
1088 "wide-align": {
1089 "version": "1.1.2",
1090 "bundled": true,
1091 "optional": true,
1092 "requires": {
1093 "string-width": "1.0.2"
1094 }
1095 },
1096 "wrappy": {
1097 "version": "1.0.2",
1098 "bundled": true
1099 },
1100 "yallist": {
1101 "version": "3.0.2",
1102 "bundled": true
1103 }
1104 }
1105 },
1106 "getpass": {
1107 "version": "0.1.7",
1108 "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz",
1109 "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=",
1110 "requires": {
1111 "assert-plus": "1.0.0"
1112 },
1113 "dependencies": {
1114 "assert-plus": {
1115 "version": "1.0.0",
1116 "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
1117 "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU="
1118 }
1119 }
1120 },
1121 "glob": {
1122 "version": "7.1.2",
1123 "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
1124 "integrity": "sha1-wZyd+aAocC1nhhI4SmVSQExjbRU=",
1125 "requires": {
1126 "fs.realpath": "1.0.0",
1127 "inflight": "1.0.6",
1128 "inherits": "2.0.3",
1129 "minimatch": "3.0.4",
1130 "once": "1.4.0",
1131 "path-is-absolute": "1.0.1"
1132 }
1133 },
1134 "glob-base": {
1135 "version": "0.3.0",
1136 "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz",
1137 "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=",
1138 "optional": true,
1139 "requires": {
1140 "glob-parent": "2.0.0",
1141 "is-glob": "2.0.1"
1142 }
1143 },
1144 "glob-parent": {
1145 "version": "2.0.0",
1146 "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz",
1147 "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=",
1148 "requires": {
1149 "is-glob": "2.0.1"
1150 }
1151 },
1152 "graceful-fs": {
1153 "version": "4.1.11",
1154 "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz",
1155 "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=",
1156 "optional": true
1157 },
1158 "har-schema": {
1159 "version": "1.0.5",
1160 "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-1.0.5.tgz",
1161 "integrity": "sha1-0mMTX0MwfALGAq/I/pWXDAFRNp4="
1162 },
1163 "har-validator": {
1164 "version": "4.2.1",
1165 "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-4.2.1.tgz",
1166 "integrity": "sha1-M0gdDxu/9gDdID11gSpqX7oALio=",
1167 "requires": {
1168 "ajv": "4.11.8",
1169 "har-schema": "1.0.5"
1170 }
1171 },
1172 "hawk": {
1173 "version": "3.1.3",
1174 "resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz",
1175 "integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=",
1176 "requires": {
1177 "boom": "2.10.1",
1178 "cryptiles": "2.0.5",
1179 "hoek": "2.16.3",
1180 "sntp": "1.0.9"
1181 }
1182 },
1183 "hoek": {
1184 "version": "2.16.3",
1185 "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz",
1186 "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0="
1187 },
1188 "http-errors": {
1189 "version": "1.6.2",
1190 "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz",
1191 "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=",
1192 "requires": {
1193 "depd": "1.1.1",
1194 "inherits": "2.0.3",
1195 "setprototypeof": "1.0.3",
1196 "statuses": "1.3.1"
1197 },
1198 "dependencies": {
1199 "setprototypeof": {
1200 "version": "1.0.3",
1201 "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz",
1202 "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ="
1203 }
1204 }
1205 },
1206 "http-signature": {
1207 "version": "1.1.1",
1208 "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz",
1209 "integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=",
1210 "requires": {
1211 "assert-plus": "0.2.0",
1212 "jsprim": "1.4.1",
1213 "sshpk": "1.13.1"
1214 }
1215 },
1216 "iconv-lite": {
1217 "version": "0.4.19",
1218 "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz",
1219 "integrity": "sha1-90aPYBNfXl2tM5nAqBvpoWA6CCs="
1220 },
1221 "inflight": {
1222 "version": "1.0.6",
1223 "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
1224 "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
1225 "requires": {
1226 "once": "1.4.0",
1227 "wrappy": "1.0.2"
1228 }
1229 },
1230 "inherits": {
1231 "version": "2.0.3",
1232 "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
1233 "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4="
1234 },
1235 "invert-kv": {
1236 "version": "1.0.0",
1237 "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz",
1238 "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY="
1239 },
1240 "ipaddr.js": {
1241 "version": "1.6.0",
1242 "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.6.0.tgz",
1243 "integrity": "sha1-4/o1e3c9phnybpXwSdBVxyeW+Gs="
1244 },
1245 "is-binary-path": {
1246 "version": "1.0.1",
1247 "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz",
1248 "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=",
1249 "optional": true,
1250 "requires": {
1251 "binary-extensions": "1.10.0"
1252 }
1253 },
1254 "is-buffer": {
1255 "version": "1.1.5",
1256 "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.5.tgz",
1257 "integrity": "sha1-Hzsm72E7IUuIy8ojzGwB2Hlh7sw="
1258 },
1259 "is-dotfile": {
1260 "version": "1.0.3",
1261 "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz",
1262 "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=",
1263 "optional": true
1264 },
1265 "is-equal-shallow": {
1266 "version": "0.1.3",
1267 "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz",
1268 "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=",
1269 "optional": true,
1270 "requires": {
1271 "is-primitive": "2.0.0"
1272 }
1273 },
1274 "is-extendable": {
1275 "version": "0.1.1",
1276 "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
1277 "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=",
1278 "optional": true
1279 },
1280 "is-extglob": {
1281 "version": "1.0.0",
1282 "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz",
1283 "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA="
1284 },
1285 "is-fullwidth-code-point": {
1286 "version": "1.0.0",
1287 "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
1288 "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
1289 "requires": {
1290 "number-is-nan": "1.0.1"
1291 }
1292 },
1293 "is-glob": {
1294 "version": "2.0.1",
1295 "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz",
1296 "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=",
1297 "requires": {
1298 "is-extglob": "1.0.0"
1299 }
1300 },
1301 "is-number": {
1302 "version": "2.1.0",
1303 "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz",
1304 "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=",
1305 "optional": true,
1306 "requires": {
1307 "kind-of": "3.2.2"
1308 }
1309 },
1310 "is-posix-bracket": {
1311 "version": "0.1.1",
1312 "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz",
1313 "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=",
1314 "optional": true
1315 },
1316 "is-primitive": {
1317 "version": "2.0.0",
1318 "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz",
1319 "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=",
1320 "optional": true
1321 },
1322 "is-typedarray": {
1323 "version": "1.0.0",
1324 "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
1325 "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo="
1326 },
1327 "isarray": {
1328 "version": "1.0.0",
1329 "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
1330 "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE="
1331 },
1332 "isobject": {
1333 "version": "2.1.0",
1334 "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz",
1335 "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=",
1336 "optional": true,
1337 "requires": {
1338 "isarray": "1.0.0"
1339 }
1340 },
1341 "isstream": {
1342 "version": "0.1.2",
1343 "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz",
1344 "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo="
1345 },
1346 "jsbn": {
1347 "version": "0.1.1",
1348 "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz",
1349 "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=",
1350 "optional": true
1351 },
1352 "json-query": {
1353 "version": "2.2.2",
1354 "resolved": "https://registry.npmjs.org/json-query/-/json-query-2.2.2.tgz",
1355 "integrity": "sha1-tlWLijeUzNIXkmqjgCQyS3e0irE="
1356 },
1357 "json-schema": {
1358 "version": "0.2.3",
1359 "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz",
1360 "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM="
1361 },
1362 "json-stable-stringify": {
1363 "version": "1.0.1",
1364 "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz",
1365 "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=",
1366 "requires": {
1367 "jsonify": "0.0.0"
1368 }
1369 },
1370 "json-stringify-safe": {
1371 "version": "5.0.1",
1372 "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
1373 "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus="
1374 },
1375 "jsonify": {
1376 "version": "0.0.0",
1377 "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz",
1378 "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM="
1379 },
1380 "jsprim": {
1381 "version": "1.4.1",
1382 "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz",
1383 "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=",
1384 "requires": {
1385 "assert-plus": "1.0.0",
1386 "extsprintf": "1.3.0",
1387 "json-schema": "0.2.3",
1388 "verror": "1.10.0"
1389 },
1390 "dependencies": {
1391 "assert-plus": {
1392 "version": "1.0.0",
1393 "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
1394 "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU="
1395 }
1396 }
1397 },
1398 "kind-of": {
1399 "version": "3.2.2",
1400 "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
1401 "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
1402 "requires": {
1403 "is-buffer": "1.1.5"
1404 }
1405 },
1406 "lcid": {
1407 "version": "1.0.0",
1408 "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz",
1409 "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=",
1410 "requires": {
1411 "invert-kv": "1.0.0"
1412 }
1413 },
1414 "lru-cache": {
1415 "version": "4.1.1",
1416 "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.1.tgz",
1417 "integrity": "sha1-Yi4y6CSItJJ5EUpPns9F581rulU=",
1418 "requires": {
1419 "pseudomap": "1.0.2",
1420 "yallist": "2.1.2"
1421 }
1422 },
1423 "macaddress": {
1424 "version": "0.2.8",
1425 "resolved": "https://registry.npmjs.org/macaddress/-/macaddress-0.2.8.tgz",
1426 "integrity": "sha1-WQTcU3w57G2+/q6QIycTX6hRHxI="
1427 },
1428 "media-typer": {
1429 "version": "0.3.0",
1430 "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
1431 "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g="
1432 },
1433 "merge-descriptors": {
1434 "version": "1.0.1",
1435 "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz",
1436 "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E="
1437 },
1438 "methods": {
1439 "version": "1.1.2",
1440 "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz",
1441 "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4="
1442 },
1443 "micromatch": {
1444 "version": "2.3.11",
1445 "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz",
1446 "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=",
1447 "optional": true,
1448 "requires": {
1449 "arr-diff": "2.0.0",
1450 "array-unique": "0.2.1",
1451 "braces": "1.8.5",
1452 "expand-brackets": "0.1.5",
1453 "extglob": "0.3.2",
1454 "filename-regex": "2.0.1",
1455 "is-extglob": "1.0.0",
1456 "is-glob": "2.0.1",
1457 "kind-of": "3.2.2",
1458 "normalize-path": "2.1.1",
1459 "object.omit": "2.0.1",
1460 "parse-glob": "3.0.4",
1461 "regex-cache": "0.4.4"
1462 },
1463 "dependencies": {
1464 "array-unique": {
1465 "version": "0.2.1",
1466 "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz",
1467 "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=",
1468 "optional": true
1469 }
1470 }
1471 },
1472 "mime": {
1473 "version": "1.4.1",
1474 "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz",
1475 "integrity": "sha1-Eh+evEnjdm8xGnbh+hyAA8SwOqY="
1476 },
1477 "mime-db": {
1478 "version": "1.30.0",
1479 "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.30.0.tgz",
1480 "integrity": "sha1-dMZD2i3Z1qRTmZY0ZbJtXKfXHwE="
1481 },
1482 "mime-types": {
1483 "version": "2.1.17",
1484 "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.17.tgz",
1485 "integrity": "sha1-Cdejk/A+mVp5+K+Fe3Cp4KsWVXo=",
1486 "requires": {
1487 "mime-db": "1.30.0"
1488 }
1489 },
1490 "minimatch": {
1491 "version": "3.0.4",
1492 "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
1493 "integrity": "sha1-UWbihkV/AzBgZL5Ul+jbsMPTIIM=",
1494 "requires": {
1495 "brace-expansion": "1.1.8"
1496 }
1497 },
1498 "moment": {
1499 "version": "2.19.1",
1500 "resolved": "https://registry.npmjs.org/moment/-/moment-2.19.1.tgz",
1501 "integrity": "sha1-VtoaLRy/AdOLfhr8McELz6GSkWc="
1502 },
1503 "ms": {
1504 "version": "2.0.0",
1505 "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
1506 "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
1507 },
1508 "nan": {
1509 "version": "2.10.0",
1510 "resolved": "https://registry.npmjs.org/nan/-/nan-2.10.0.tgz",
1511 "integrity": "sha512-bAdJv7fBLhWC+/Bls0Oza+mvTaNQtP+1RyhhhvD95pgUJz6XM5IzgmxOkItJ9tkoCiplvAnXI1tNmmUD/eScyA==",
1512 "optional": true
1513 },
1514 "negotiator": {
1515 "version": "0.6.1",
1516 "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz",
1517 "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk="
1518 },
1519 "node-machine-id": {
1520 "version": "1.1.10",
1521 "resolved": "https://registry.npmjs.org/node-machine-id/-/node-machine-id-1.1.10.tgz",
1522 "integrity": "sha1-tMuPAbJbkNTgZ1vgDfMOYe51F5s="
1523 },
1524 "node-natural-sort": {
1525 "version": "0.8.6",
1526 "resolved": "https://registry.npmjs.org/node-natural-sort/-/node-natural-sort-0.8.6.tgz",
1527 "integrity": "sha1-AdxrrcR0OxYDNAjw2FiasubAlM8="
1528 },
1529 "normalize-path": {
1530 "version": "2.1.1",
1531 "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz",
1532 "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=",
1533 "requires": {
1534 "remove-trailing-separator": "1.1.0"
1535 }
1536 },
1537 "number-is-nan": {
1538 "version": "1.0.1",
1539 "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz",
1540 "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0="
1541 },
1542 "numeral": {
1543 "version": "2.0.6",
1544 "resolved": "https://registry.npmjs.org/numeral/-/numeral-2.0.6.tgz",
1545 "integrity": "sha1-StCAk21EPCVhrtnyGX7//iX05QY="
1546 },
1547 "nunjucks": {
1548 "version": "3.0.1",
1549 "resolved": "https://registry.npmjs.org/nunjucks/-/nunjucks-3.0.1.tgz",
1550 "integrity": "sha1-TedKPlULr2+jNwMj89HHwqhr3E0=",
1551 "requires": {
1552 "a-sync-waterfall": "1.0.0",
1553 "asap": "2.0.6",
1554 "chokidar": "1.7.0",
1555 "yargs": "3.32.0"
1556 }
1557 },
1558 "oauth-sign": {
1559 "version": "0.8.2",
1560 "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz",
1561 "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM="
1562 },
1563 "object.omit": {
1564 "version": "2.0.1",
1565 "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz",
1566 "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=",
1567 "optional": true,
1568 "requires": {
1569 "for-own": "0.1.5",
1570 "is-extendable": "0.1.1"
1571 }
1572 },
1573 "on-finished": {
1574 "version": "2.3.0",
1575 "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz",
1576 "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=",
1577 "requires": {
1578 "ee-first": "1.1.1"
1579 }
1580 },
1581 "on-headers": {
1582 "version": "1.0.1",
1583 "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.1.tgz",
1584 "integrity": "sha1-ko9dD0cNSTQmUepnlLCFfBAGk/c="
1585 },
1586 "once": {
1587 "version": "1.4.0",
1588 "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
1589 "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
1590 "requires": {
1591 "wrappy": "1.0.2"
1592 }
1593 },
1594 "os-locale": {
1595 "version": "1.4.0",
1596 "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz",
1597 "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=",
1598 "requires": {
1599 "lcid": "1.0.0"
1600 }
1601 },
1602 "parse-glob": {
1603 "version": "3.0.4",
1604 "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz",
1605 "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=",
1606 "optional": true,
1607 "requires": {
1608 "glob-base": "0.3.0",
1609 "is-dotfile": "1.0.3",
1610 "is-extglob": "1.0.0",
1611 "is-glob": "2.0.1"
1612 }
1613 },
1614 "parseurl": {
1615 "version": "1.3.2",
1616 "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz",
1617 "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M="
1618 },
1619 "path-is-absolute": {
1620 "version": "1.0.1",
1621 "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
1622 "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18="
1623 },
1624 "path-to-regexp": {
1625 "version": "0.1.7",
1626 "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz",
1627 "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w="
1628 },
1629 "performance-now": {
1630 "version": "0.2.0",
1631 "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-0.2.0.tgz",
1632 "integrity": "sha1-M+8wxcd9TqIcWlOGnZG1bY8lVeU="
1633 },
1634 "preserve": {
1635 "version": "0.2.0",
1636 "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz",
1637 "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=",
1638 "optional": true
1639 },
1640 "process-nextick-args": {
1641 "version": "1.0.7",
1642 "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz",
1643 "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=",
1644 "optional": true
1645 },
1646 "proxy-addr": {
1647 "version": "2.0.3",
1648 "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.3.tgz",
1649 "integrity": "sha1-NV8mJQWmIWRrMTCnKOtkfiIFU0E=",
1650 "requires": {
1651 "forwarded": "0.1.2",
1652 "ipaddr.js": "1.6.0"
1653 }
1654 },
1655 "pseudomap": {
1656 "version": "1.0.2",
1657 "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz",
1658 "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM="
1659 },
1660 "punycode": {
1661 "version": "1.4.1",
1662 "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz",
1663 "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4="
1664 },
1665 "qs": {
1666 "version": "6.4.0",
1667 "resolved": "https://registry.npmjs.org/qs/-/qs-6.4.0.tgz",
1668 "integrity": "sha1-E+JtKK1rD/qpExLNO/cI7TUecjM="
1669 },
1670 "random-bytes": {
1671 "version": "1.0.0",
1672 "resolved": "https://registry.npmjs.org/random-bytes/-/random-bytes-1.0.0.tgz",
1673 "integrity": "sha1-T2ih3Arli9P7lYSMMDJNt11kNgs="
1674 },
1675 "randomatic": {
1676 "version": "1.1.7",
1677 "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-1.1.7.tgz",
1678 "integrity": "sha1-x6vpzIuHwLqodrGf3oP9RkeX44w=",
1679 "optional": true,
1680 "requires": {
1681 "is-number": "3.0.0",
1682 "kind-of": "4.0.0"
1683 },
1684 "dependencies": {
1685 "is-number": {
1686 "version": "3.0.0",
1687 "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz",
1688 "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=",
1689 "optional": true,
1690 "requires": {
1691 "kind-of": "3.2.2"
1692 },
1693 "dependencies": {
1694 "kind-of": {
1695 "version": "3.2.2",
1696 "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
1697 "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
1698 "optional": true,
1699 "requires": {
1700 "is-buffer": "1.1.5"
1701 }
1702 }
1703 }
1704 },
1705 "kind-of": {
1706 "version": "4.0.0",
1707 "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz",
1708 "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=",
1709 "optional": true,
1710 "requires": {
1711 "is-buffer": "1.1.5"
1712 }
1713 }
1714 }
1715 },
1716 "range-parser": {
1717 "version": "1.2.0",
1718 "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz",
1719 "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4="
1720 },
1721 "raw-body": {
1722 "version": "2.3.2",
1723 "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.2.tgz",
1724 "integrity": "sha1-vNYMd9Prk83gBQKVw/N5OJvIj4k=",
1725 "requires": {
1726 "bytes": "3.0.0",
1727 "http-errors": "1.6.2",
1728 "iconv-lite": "0.4.19",
1729 "unpipe": "1.0.0"
1730 }
1731 },
1732 "readable-stream": {
1733 "version": "2.3.3",
1734 "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz",
1735 "integrity": "sha1-No8lEtefnUb9/HE0mueHi7weuVw=",
1736 "optional": true,
1737 "requires": {
1738 "core-util-is": "1.0.2",
1739 "inherits": "2.0.3",
1740 "isarray": "1.0.0",
1741 "process-nextick-args": "1.0.7",
1742 "safe-buffer": "5.1.1",
1743 "string_decoder": "1.0.3",
1744 "util-deprecate": "1.0.2"
1745 }
1746 },
1747 "readdirp": {
1748 "version": "2.1.0",
1749 "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz",
1750 "integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=",
1751 "optional": true,
1752 "requires": {
1753 "graceful-fs": "4.1.11",
1754 "minimatch": "3.0.4",
1755 "readable-stream": "2.3.3",
1756 "set-immediate-shim": "1.0.1"
1757 }
1758 },
1759 "redis": {
1760 "version": "2.8.0",
1761 "resolved": "https://registry.npmjs.org/redis/-/redis-2.8.0.tgz",
1762 "integrity": "sha1-ICKI4/WMSfYHnZevehDhMDrhSwI=",
1763 "requires": {
1764 "double-ended-queue": "2.1.0-0",
1765 "redis-commands": "1.3.1",
1766 "redis-parser": "2.6.0"
1767 }
1768 },
1769 "redis-commands": {
1770 "version": "1.3.1",
1771 "resolved": "https://registry.npmjs.org/redis-commands/-/redis-commands-1.3.1.tgz",
1772 "integrity": "sha1-gdgm9F+pyLIBH0zXoP5ZfSQdRCs="
1773 },
1774 "redis-parser": {
1775 "version": "2.6.0",
1776 "resolved": "https://registry.npmjs.org/redis-parser/-/redis-parser-2.6.0.tgz",
1777 "integrity": "sha1-Uu0J2srBCPGmMcB+m2mUHnoZUEs="
1778 },
1779 "regex-cache": {
1780 "version": "0.4.4",
1781 "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz",
1782 "integrity": "sha1-db3FiioUls7EihKDW8VMjVYjNt0=",
1783 "optional": true,
1784 "requires": {
1785 "is-equal-shallow": "0.1.3"
1786 }
1787 },
1788 "remove-trailing-separator": {
1789 "version": "1.1.0",
1790 "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz",
1791 "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8="
1792 },
1793 "repeat-element": {
1794 "version": "1.1.2",
1795 "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz",
1796 "integrity": "sha1-7wiaF40Ug7quTZPrmLT55OEdmQo="
1797 },
1798 "repeat-string": {
1799 "version": "1.6.1",
1800 "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz",
1801 "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=",
1802 "optional": true
1803 },
1804 "request": {
1805 "version": "2.81.0",
1806 "resolved": "https://registry.npmjs.org/request/-/request-2.81.0.tgz",
1807 "integrity": "sha1-xpKJRqDgbF+Nb4qTM0af/aRimKA=",
1808 "requires": {
1809 "aws-sign2": "0.6.0",
1810 "aws4": "1.6.0",
1811 "caseless": "0.12.0",
1812 "combined-stream": "1.0.5",
1813 "extend": "3.0.1",
1814 "forever-agent": "0.6.1",
1815 "form-data": "2.1.4",
1816 "har-validator": "4.2.1",
1817 "hawk": "3.1.3",
1818 "http-signature": "1.1.1",
1819 "is-typedarray": "1.0.0",
1820 "isstream": "0.1.2",
1821 "json-stringify-safe": "5.0.1",
1822 "mime-types": "2.1.17",
1823 "oauth-sign": "0.8.2",
1824 "performance-now": "0.2.0",
1825 "qs": "6.4.0",
1826 "safe-buffer": "5.1.1",
1827 "stringstream": "0.0.5",
1828 "tough-cookie": "2.3.2",
1829 "tunnel-agent": "0.6.0",
1830 "uuid": "3.1.0"
1831 }
1832 },
1833 "safe-buffer": {
1834 "version": "5.1.1",
1835 "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz",
1836 "integrity": "sha1-iTMSr2myEj3vcfV4iQAWce6yyFM="
1837 },
1838 "send": {
1839 "version": "0.16.2",
1840 "resolved": "https://registry.npmjs.org/send/-/send-0.16.2.tgz",
1841 "integrity": "sha1-bsyh4PjBVtFBWXVZhI32RzCmu8E=",
1842 "requires": {
1843 "debug": "2.6.9",
1844 "depd": "1.1.2",
1845 "destroy": "1.0.4",
1846 "encodeurl": "1.0.2",
1847 "escape-html": "1.0.3",
1848 "etag": "1.8.1",
1849 "fresh": "0.5.2",
1850 "http-errors": "1.6.2",
1851 "mime": "1.4.1",
1852 "ms": "2.0.0",
1853 "on-finished": "2.3.0",
1854 "range-parser": "1.2.0",
1855 "statuses": "1.4.0"
1856 },
1857 "dependencies": {
1858 "depd": {
1859 "version": "1.1.2",
1860 "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
1861 "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak="
1862 },
1863 "statuses": {
1864 "version": "1.4.0",
1865 "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz",
1866 "integrity": "sha1-u3PURtonlhBu/MG2AaJT1sRr0Ic="
1867 }
1868 }
1869 },
1870 "serve-static": {
1871 "version": "1.13.2",
1872 "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.2.tgz",
1873 "integrity": "sha1-CV6Ecv1bRiN9tQzkhqQ/S4bGzsE=",
1874 "requires": {
1875 "encodeurl": "1.0.2",
1876 "escape-html": "1.0.3",
1877 "parseurl": "1.3.2",
1878 "send": "0.16.2"
1879 }
1880 },
1881 "set-immediate-shim": {
1882 "version": "1.0.1",
1883 "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz",
1884 "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=",
1885 "optional": true
1886 },
1887 "setprototypeof": {
1888 "version": "1.1.0",
1889 "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz",
1890 "integrity": "sha1-0L2FU2iHtv58DYGMuWLZ2RxU5lY="
1891 },
1892 "sha1": {
1893 "version": "1.1.1",
1894 "resolved": "https://registry.npmjs.org/sha1/-/sha1-1.1.1.tgz",
1895 "integrity": "sha1-rdqnqTFo85PxnrKxUJFhjicA+Eg=",
1896 "requires": {
1897 "charenc": "0.0.2",
1898 "crypt": "0.0.2"
1899 }
1900 },
1901 "simple-git": {
1902 "version": "1.80.1",
1903 "resolved": "https://registry.npmjs.org/simple-git/-/simple-git-1.80.1.tgz",
1904 "integrity": "sha1-SBBMtKxyV2k3hT4a/R7v/cl6yyk=",
1905 "requires": {
1906 "debug": "2.6.9"
1907 }
1908 },
1909 "sntp": {
1910 "version": "1.0.9",
1911 "resolved": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz",
1912 "integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=",
1913 "requires": {
1914 "hoek": "2.16.3"
1915 }
1916 },
1917 "sshpk": {
1918 "version": "1.13.1",
1919 "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.13.1.tgz",
1920 "integrity": "sha1-US322mKHFEMW3EwY/hzx2UBzm+M=",
1921 "requires": {
1922 "asn1": "0.2.3",
1923 "assert-plus": "1.0.0",
1924 "bcrypt-pbkdf": "1.0.1",
1925 "dashdash": "1.14.1",
1926 "ecc-jsbn": "0.1.1",
1927 "getpass": "0.1.7",
1928 "jsbn": "0.1.1",
1929 "tweetnacl": "0.14.5"
1930 },
1931 "dependencies": {
1932 "assert-plus": {
1933 "version": "1.0.0",
1934 "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
1935 "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU="
1936 }
1937 }
1938 },
1939 "stack-trace": {
1940 "version": "0.0.10",
1941 "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz",
1942 "integrity": "sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA="
1943 },
1944 "statuses": {
1945 "version": "1.3.1",
1946 "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz",
1947 "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4="
1948 },
1949 "strftime": {
1950 "version": "0.10.0",
1951 "resolved": "https://registry.npmjs.org/strftime/-/strftime-0.10.0.tgz",
1952 "integrity": "sha1-s/D6QZKVICpaKJ9ta+n0kJphcZM="
1953 },
1954 "string-width": {
1955 "version": "1.0.2",
1956 "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
1957 "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
1958 "requires": {
1959 "code-point-at": "1.1.0",
1960 "is-fullwidth-code-point": "1.0.0",
1961 "strip-ansi": "3.0.1"
1962 }
1963 },
1964 "string_decoder": {
1965 "version": "1.0.3",
1966 "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
1967 "integrity": "sha1-D8Z9fBQYJd6UKC3VNr7GubzoYKs=",
1968 "optional": true,
1969 "requires": {
1970 "safe-buffer": "5.1.1"
1971 }
1972 },
1973 "stringstream": {
1974 "version": "0.0.5",
1975 "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.5.tgz",
1976 "integrity": "sha1-TkhM1N5aC7vuGORjB3EKioFiGHg="
1977 },
1978 "strip-ansi": {
1979 "version": "3.0.1",
1980 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
1981 "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
1982 "requires": {
1983 "ansi-regex": "2.1.1"
1984 }
1985 },
1986 "tough-cookie": {
1987 "version": "2.3.2",
1988 "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.2.tgz",
1989 "integrity": "sha1-8IH3bkyFcg5sN6X6ztc3FQ2EByo=",
1990 "requires": {
1991 "punycode": "1.4.1"
1992 }
1993 },
1994 "tunnel-agent": {
1995 "version": "0.6.0",
1996 "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
1997 "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=",
1998 "requires": {
1999 "safe-buffer": "5.1.1"
2000 }
2001 },
2002 "tweetnacl": {
2003 "version": "0.14.5",
2004 "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz",
2005 "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=",
2006 "optional": true
2007 },
2008 "type-is": {
2009 "version": "1.6.16",
2010 "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.16.tgz",
2011 "integrity": "sha1-+JzjQVQcZysl7nrjxz3uOyvlAZQ=",
2012 "requires": {
2013 "media-typer": "0.3.0",
2014 "mime-types": "2.1.18"
2015 },
2016 "dependencies": {
2017 "mime-db": {
2018 "version": "1.33.0",
2019 "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz",
2020 "integrity": "sha1-o0kgUKXLm2NFBUHjnZeI0icng9s="
2021 },
2022 "mime-types": {
2023 "version": "2.1.18",
2024 "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz",
2025 "integrity": "sha1-bzI/YKg9ERRvgx/xH9ZuL+VQO7g=",
2026 "requires": {
2027 "mime-db": "1.33.0"
2028 }
2029 }
2030 }
2031 },
2032 "uid-safe": {
2033 "version": "2.1.5",
2034 "resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.5.tgz",
2035 "integrity": "sha1-Kz1cckDo/C5Y+Komnl7knAhXvTo=",
2036 "requires": {
2037 "random-bytes": "1.0.0"
2038 }
2039 },
2040 "uniqid": {
2041 "version": "4.1.1",
2042 "resolved": "https://registry.npmjs.org/uniqid/-/uniqid-4.1.1.tgz",
2043 "integrity": "sha1-iSIN32t1GuUrX3JISGNShZa7hME=",
2044 "requires": {
2045 "macaddress": "0.2.8"
2046 }
2047 },
2048 "unpipe": {
2049 "version": "1.0.0",
2050 "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz",
2051 "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw="
2052 },
2053 "util-deprecate": {
2054 "version": "1.0.2",
2055 "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
2056 "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=",
2057 "optional": true
2058 },
2059 "utils-merge": {
2060 "version": "1.0.1",
2061 "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz",
2062 "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM="
2063 },
2064 "uuid": {
2065 "version": "3.1.0",
2066 "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.1.0.tgz",
2067 "integrity": "sha1-PdPT55Crwk17DToDT/q6vijrvAQ="
2068 },
2069 "vary": {
2070 "version": "1.1.2",
2071 "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
2072 "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw="
2073 },
2074 "verror": {
2075 "version": "1.10.0",
2076 "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz",
2077 "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=",
2078 "requires": {
2079 "assert-plus": "1.0.0",
2080 "core-util-is": "1.0.2",
2081 "extsprintf": "1.3.0"
2082 },
2083 "dependencies": {
2084 "assert-plus": {
2085 "version": "1.0.0",
2086 "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
2087 "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU="
2088 }
2089 }
2090 },
2091 "window-size": {
2092 "version": "0.1.4",
2093 "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.4.tgz",
2094 "integrity": "sha1-+OGqHuWlPsW/FR/6CXQqatdpeHY="
2095 },
2096 "winston": {
2097 "version": "2.3.1",
2098 "resolved": "https://registry.npmjs.org/winston/-/winston-2.3.1.tgz",
2099 "integrity": "sha1-C0hCDZeMAYBM8CMLZIhhWYIloRk=",
2100 "requires": {
2101 "async": "1.0.0",
2102 "colors": "1.0.3",
2103 "cycle": "1.0.3",
2104 "eyes": "0.1.8",
2105 "isstream": "0.1.2",
2106 "stack-trace": "0.0.10"
2107 }
2108 },
2109 "winston-circular-buffer": {
2110 "version": "1.0.0",
2111 "resolved": "https://registry.npmjs.org/winston-circular-buffer/-/winston-circular-buffer-1.0.0.tgz",
2112 "integrity": "sha1-6ZH3W5n/IFVR4O5HK3XSAdvT4ns=",
2113 "requires": {
2114 "circular-buffer": "0.0.6"
2115 }
2116 },
2117 "winston-daily-rotate-file": {
2118 "version": "1.4.6",
2119 "resolved": "https://registry.npmjs.org/winston-daily-rotate-file/-/winston-daily-rotate-file-1.4.6.tgz",
2120 "integrity": "sha1-8gS2raGaU4b99S/pl9jhDkP/d4g="
2121 },
2122 "wrap-ansi": {
2123 "version": "2.1.0",
2124 "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz",
2125 "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=",
2126 "requires": {
2127 "string-width": "1.0.2",
2128 "strip-ansi": "3.0.1"
2129 }
2130 },
2131 "wrappy": {
2132 "version": "1.0.2",
2133 "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
2134 "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8="
2135 },
2136 "y18n": {
2137 "version": "3.2.1",
2138 "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz",
2139 "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE="
2140 },
2141 "yallist": {
2142 "version": "2.1.2",
2143 "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz",
2144 "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI="
2145 },
2146 "yargs": {
2147 "version": "3.32.0",
2148 "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.32.0.tgz",
2149 "integrity": "sha1-AwiOnr+edWtpdRYR0qXvWRSCyZU=",
2150 "requires": {
2151 "camelcase": "2.1.1",
2152 "cliui": "3.2.0",
2153 "decamelize": "1.2.0",
2154 "os-locale": "1.4.0",
2155 "string-width": "1.0.2",
2156 "window-size": "0.1.4",
2157 "y18n": "3.2.1"
2158 }
2159 }
2160 }
2161 }
1 { 2162
1 { 1 {
2 "name": "komodo-sdk", 2 "name": "komodo-sdk",
3 "version": "1.28.2", 3 "version": "1.29.0",
4 "description": "SDK for Komodo", 4 "description": "SDK for Komodo",
5 "main": "index.js", 5 "main": "index.js",
6 "scripts": { 6 "scripts": {
7 "test": "mocha", 7 "test": "mocha",
8 "postversion": "git push && git push --tags" 8 "postversion": "git push && git push --tags"
9 }, 9 },
10 "repository": { 10 "repository": {
11 "type": "git", 11 "type": "git",
12 "url": "git@gitlab.kodesumber.com:komodo/komodo-sdk.git" 12 "url": "git@gitlab.kodesumber.com:komodo/komodo-sdk.git"
13 }, 13 },
14 "keywords": [ 14 "keywords": [
15 "ppob", 15 "ppob",
16 "payment", 16 "payment",
17 "komodo" 17 "komodo"
18 ], 18 ],
19 "author": "Adhidarma Hadiwinoto <gua@adhisimon.org>", 19 "author": "Adhidarma Hadiwinoto <gua@adhisimon.org>",
20 "license": "ISC", 20 "license": "ISC",
21 "dependencies": { 21 "dependencies": {
22 "array-unique": "^0.3.2",
22 "array-unique": "^0.3.2", 23 "basic-auth": "^2.0.0",
23 "basic-auth": "^2.0.0", 24 "body-parser": "^1.18.2",
24 "body-parser": "^1.18.2", 25 "dot-object": "^1.7.0",
25 "dot-object": "^1.7.0", 26 "express": "^4.16.3",
26 "express": "^4.16.3", 27 "express-session": "^1.15.6",
27 "express-session": "^1.15.6", 28 "json-query": "^2.2.2",
28 "json-query": "^2.2.2", 29 "lru-cache": "^4.1.1",
29 "lru-cache": "^4.1.1", 30 "macaddress": "^0.2.8",
30 "macaddress": "^0.2.8", 31 "moment": "^2.19.1",
31 "moment": "^2.19.1", 32 "node-machine-id": "^1.1.10",
32 "node-machine-id": "^1.1.10", 33 "node-natural-sort": "^0.8.6",
33 "node-natural-sort": "^0.8.6", 34 "numeral": "^2.0.6",
34 "numeral": "^2.0.6", 35 "nunjucks": "^3.0.1",
35 "nunjucks": "^3.0.1", 36 "redis": "^2.8.0",
36 "redis": "^2.8.0", 37 "request": "^2.81.0",
37 "request": "^2.81.0", 38 "sha1": "^1.1.1",
38 "sha1": "^1.1.1", 39 "simple-git": "^1.80.1",
39 "simple-git": "^1.80.1", 40 "strftime": "^0.10.0",
40 "strftime": "^0.10.0", 41 "uniqid": "^4.1.1",
41 "uniqid": "^4.1.1", 42 "uuid": "^3.1.0",
42 "uuid": "^3.1.0", 43 "winston": "^2.3.1",
43 "winston": "^2.3.1", 44 "winston-circular-buffer": "^1.0.0",
44 "winston-circular-buffer": "^1.0.0", 45 "winston-daily-rotate-file": "^1.4.6"
45 "winston-daily-rotate-file": "^1.4.6" 46 }
46 } 47 }
47 } 48