···
1
1
+
# editorconfig.org
2
2
+
root = true
3
3
+
4
4
+
[*]
5
5
+
indent_size = 2
6
6
+
indent_style = space
7
7
+
end_of_line = lf
8
8
+
charset = utf-8
9
9
+
trim_trailing_whitespace = true
10
10
+
insert_final_newline = true
11
11
+
12
12
+
[*.md]
13
13
+
trim_trailing_whitespace = false
···
1
1
+
{
2
2
+
"extends": [
3
3
+
"standard"
4
4
+
],
5
5
+
"env": {
6
6
+
"node": true
7
7
+
},
8
8
+
"parserOptions": {
9
9
+
"ecmaVersion": 8,
10
10
+
"sourceType": "module"
11
11
+
}
12
12
+
}
···
1
1
+
node_modules
2
2
+
.vscode
3
3
+
.idea
4
4
+
*.log
5
5
+
.DS_Store
6
6
+
cache
7
7
+
storage
···
1
1
+
The MIT License (MIT)
2
2
+
3
3
+
Copyright (c) 2017 Pooya Parsa <pooya@fandogh.org>
4
4
+
5
5
+
Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
+
of this software and associated documentation files (the "Software"), to deal
7
7
+
in the Software without restriction, including without limitation the rights
8
8
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
9
+
copies of the Software, and to permit persons to whom the Software is
10
10
+
furnished to do so, subject to the following conditions:
11
11
+
12
12
+
The above copyright notice and this permission notice shall be included in all
13
13
+
copies or substantial portions of the Software.
14
14
+
15
15
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
16
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
17
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
18
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
19
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
20
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
21
+
SOFTWARE.
···
1
1
+
# 🖼 IPX
2
2
+
3
3
+
High performance, secure and easy to use and image proxy based on [Sharp](https://github.com/lovell/sharp) and [libvips](https://github.com/jcupitt/libvips).
4
4
+
5
5
+
**WARNING:: THIS PROJECT AND DOCS ARE STILL WIP!**
6
6
+
7
7
+
## Project goals
8
8
+
9
9
+
- Fast and minimal as possible.
10
10
+
- Configurable operations.
11
11
+
- Built-in secure cache with human readable entries and resistant against duplicates.
12
12
+
- Remote agnostic cache and input adapters.
13
13
+
- Smart and auto cache cleaning.
14
14
+
15
15
+
## API
16
16
+
17
17
+
**`/{format}/{operations}/{src}`**
18
18
+
19
19
+
Example: `http://cdn.example.com/webp/w:200/avatars/bafollo.png`
20
20
+
21
21
+
ََUse `_` value in place for `{format}` or `{operations}` to keep original values of source image.
22
22
+
23
23
+
Possible values for format: `jpeg`,`webp` or `png`.
24
24
+
25
25
+
## Operations
26
26
+
27
27
+
Operation | Arguments | Example | Description
28
28
+
-------------|-----------------------|-------------|---------------------------------------------------------
29
29
+
`f` | `format` | f:webp | Change format.
30
30
+
`s` | `width`, `height` | s:200:300 | Resize image.
31
31
+
`w` | `width` | w:200 | Change image with.
32
32
+
`h` | `height` | h:200 | Change image height.
33
33
+
`embed` | - | embed | Preserving aspect ratio, resize the image to the maximum `width` or `height` specified then embed on a background of the exact `width` and `height` specified.
34
34
+
`max` | - | max | Preserving aspect ratio, resize the image to be as large as possible while ensuring its dimensions are less than or equal to the `width` and `height` specified.
35
35
+
`min` | - | min | Preserving aspect ratio, resize the image to be as small as possible while ensuring its dimensions are greater than or equal to the width and height specified.
36
36
+
37
37
+
## License
38
38
+
39
39
+
MIT - Pooya Parsa
···
1
1
+
module.exports = {
2
2
+
routes: [
3
3
+
'src/api'
4
4
+
]
5
5
+
}
···
1
1
+
#!/usr/bin/env node
2
2
+
3
3
+
const Config = require('config')
4
4
+
const { IPX } = require('..')
5
5
+
6
6
+
async function main () {
7
7
+
const ipx = new IPX(Config.get('ipx'))
8
8
+
await ipx.cleanCache()
9
9
+
}
10
10
+
11
11
+
main().catch(console.error)
···
1
1
+
module.exports = {
2
2
+
ipx: {
3
3
+
input: {
4
4
+
adapter: 'file.js',
5
5
+
dir: 'storage'
6
6
+
},
7
7
+
cache: {
8
8
+
adapter: 'file.js',
9
9
+
dir: 'cache',
10
10
+
cleanCron: '* * * * * *',
11
11
+
maxUnusedMinutes: 2
12
12
+
}
13
13
+
}
14
14
+
}
···
1
1
+
{
2
2
+
"name": "shark",
3
3
+
"version": "1.0.0",
4
4
+
"lockfileVersion": 1,
5
5
+
"requires": true,
6
6
+
"dependencies": {
7
7
+
"@bakjs/input": {
8
8
+
"version": "2.1.0",
9
9
+
"resolved": "https://registry.npmjs.org/@bakjs/input/-/input-2.1.0.tgz",
10
10
+
"integrity": "sha512-EhaSLaGNc7sSEi/eLDA9LJNjyv/FCICx1ZU6G6ohAR50jEoq8FLgqnrnZAmj/10oiyglXK6IzAdy5PtnDkMiag=="
11
11
+
},
12
12
+
"@bakjs/logging": {
13
13
+
"version": "2.2.2",
14
14
+
"resolved": "https://registry.npmjs.org/@bakjs/logging/-/logging-2.2.2.tgz",
15
15
+
"integrity": "sha512-zFQIGGmLdM1gykYTVZJ3CkECUVupmeqyrlUGFGkplIdESMaFxBUckUqXQUdpeUtX2+r3BE4u+a0/s40OovaT9A==",
16
16
+
"requires": {
17
17
+
"pretty-error": "2.1.1"
18
18
+
}
19
19
+
},
20
20
+
"@bakjs/route-table": {
21
21
+
"version": "2.1.1",
22
22
+
"resolved": "https://registry.npmjs.org/@bakjs/route-table/-/route-table-2.1.1.tgz",
23
23
+
"integrity": "sha512-jGKTLXi6FfATE3DpL3y0kA455UDapIou/WAw3bknVwQqK9dbtIUHY29NXYNZHd320p8qVEk2eanN9gSZKXyXSg==",
24
24
+
"requires": {
25
25
+
"chalk": "2.3.0",
26
26
+
"lodash": "4.17.4",
27
27
+
"strip-ansi": "4.0.0"
28
28
+
},
29
29
+
"dependencies": {
30
30
+
"ansi-regex": {
31
31
+
"version": "3.0.0",
32
32
+
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz",
33
33
+
"integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg="
34
34
+
},
35
35
+
"strip-ansi": {
36
36
+
"version": "4.0.0",
37
37
+
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz",
38
38
+
"integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=",
39
39
+
"requires": {
40
40
+
"ansi-regex": "3.0.0"
41
41
+
}
42
42
+
}
43
43
+
}
44
44
+
},
45
45
+
"@bakjs/shortcuts": {
46
46
+
"version": "2.1.0",
47
47
+
"resolved": "https://registry.npmjs.org/@bakjs/shortcuts/-/shortcuts-2.1.0.tgz",
48
48
+
"integrity": "sha512-Sp4jcslHoKFbAR20p4JOTGLfiWgQp4LGfhXY+3Ldn9PGM2fkQHEzmNqLedQkOy6T3FP3gUMfBo9nQxPom9IgNQ=="
49
49
+
},
50
50
+
"abbrev": {
51
51
+
"version": "1.1.1",
52
52
+
"resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
53
53
+
"integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q=="
54
54
+
},
55
55
+
"accept": {
56
56
+
"version": "3.0.2",
57
57
+
"resolved": "https://registry.npmjs.org/accept/-/accept-3.0.2.tgz",
58
58
+
"integrity": "sha512-bghLXFkCOsC1Y2TZ51etWfKDs6q249SAoHTZVfzWWdlZxoij+mgkj9AmUJWQpDY48TfnrTDIe43Xem4zdMe7mQ==",
59
59
+
"requires": {
60
60
+
"boom": "7.1.1",
61
61
+
"hoek": "5.0.2"
62
62
+
}
63
63
+
},
64
64
+
"acorn": {
65
65
+
"version": "5.2.1",
66
66
+
"resolved": "https://registry.npmjs.org/acorn/-/acorn-5.2.1.tgz",
67
67
+
"integrity": "sha512-jG0u7c4Ly+3QkkW18V+NRDN+4bWHdln30NL1ZL2AvFZZmQe/BfopYCtghCKKVBUSetZ4QKcyA0pY6/4Gw8Pv8w==",
68
68
+
"dev": true
69
69
+
},
70
70
+
"acorn-jsx": {
71
71
+
"version": "3.0.1",
72
72
+
"resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz",
73
73
+
"integrity": "sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s=",
74
74
+
"dev": true,
75
75
+
"requires": {
76
76
+
"acorn": "3.3.0"
77
77
+
},
78
78
+
"dependencies": {
79
79
+
"acorn": {
80
80
+
"version": "3.3.0",
81
81
+
"resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz",
82
82
+
"integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=",
83
83
+
"dev": true
84
84
+
}
85
85
+
}
86
86
+
},
87
87
+
"ajv": {
88
88
+
"version": "5.5.0",
89
89
+
"resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.0.tgz",
90
90
+
"integrity": "sha1-6yhAdG6dxIvV4GOjbj/UAMXqtak=",
91
91
+
"dev": true,
92
92
+
"requires": {
93
93
+
"co": "4.6.0",
94
94
+
"fast-deep-equal": "1.0.0",
95
95
+
"fast-json-stable-stringify": "2.0.0",
96
96
+
"json-schema-traverse": "0.3.1"
97
97
+
}
98
98
+
},
99
99
+
"ajv-keywords": {
100
100
+
"version": "2.1.1",
101
101
+
"resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-2.1.1.tgz",
102
102
+
"integrity": "sha1-YXmX/F9gV2iUxDX5QNgZ4TW4B2I=",
103
103
+
"dev": true
104
104
+
},
105
105
+
"ammo": {
106
106
+
"version": "3.0.0",
107
107
+
"resolved": "https://registry.npmjs.org/ammo/-/ammo-3.0.0.tgz",
108
108
+
"integrity": "sha512-6yoz9MXYV9sgCHrwprHWPxBaJ9/roQRfXzS//4JCNgKfPYcghFNwJQKBt6vWOoSGGRHsP6qsLJ+xtKStKJWdLQ==",
109
109
+
"requires": {
110
110
+
"boom": "6.0.0",
111
111
+
"hoek": "5.0.2"
112
112
+
},
113
113
+
"dependencies": {
114
114
+
"boom": {
115
115
+
"version": "6.0.0",
116
116
+
"resolved": "https://registry.npmjs.org/boom/-/boom-6.0.0.tgz",
117
117
+
"integrity": "sha512-LYLa8BmiiOWjvxTMVh73lcZzd2E5yczrKvxAny1UuzO2tkarLrw4tdp3rdfmus3+YfKcZP0vRSM3Obh+fGK6eA==",
118
118
+
"requires": {
119
119
+
"hoek": "5.0.2"
120
120
+
}
121
121
+
}
122
122
+
}
123
123
+
},
124
124
+
"ansi-align": {
125
125
+
"version": "2.0.0",
126
126
+
"resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz",
127
127
+
"integrity": "sha1-w2rsy6VjuJzrVW82kPCx2eNUf38=",
128
128
+
"requires": {
129
129
+
"string-width": "2.1.1"
130
130
+
}
131
131
+
},
132
132
+
"ansi-escapes": {
133
133
+
"version": "3.0.0",
134
134
+
"resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.0.0.tgz",
135
135
+
"integrity": "sha512-O/klc27mWNUigtv0F8NJWbLF00OcegQalkqKURWdosW08YZKi4m6CnSUSvIZG1otNJbTWhN01Hhz389DW7mvDQ==",
136
136
+
"dev": true
137
137
+
},
138
138
+
"ansi-regex": {
139
139
+
"version": "2.1.1",
140
140
+
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
141
141
+
"integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8="
142
142
+
},
143
143
+
"ansi-styles": {
144
144
+
"version": "3.2.0",
145
145
+
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz",
146
146
+
"integrity": "sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==",
147
147
+
"requires": {
148
148
+
"color-convert": "1.9.1"
149
149
+
}
150
150
+
},
151
151
+
"anymatch": {
152
152
+
"version": "1.3.2",
153
153
+
"resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz",
154
154
+
"integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==",
155
155
+
"requires": {
156
156
+
"micromatch": "2.3.11",
157
157
+
"normalize-path": "2.1.1"
158
158
+
}
159
159
+
},
160
160
+
"argparse": {
161
161
+
"version": "1.0.9",
162
162
+
"resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.9.tgz",
163
163
+
"integrity": "sha1-c9g7wmP4bpf4zE9rrhsOkKfSLIY=",
164
164
+
"dev": true,
165
165
+
"requires": {
166
166
+
"sprintf-js": "1.0.3"
167
167
+
}
168
168
+
},
169
169
+
"arr-diff": {
170
170
+
"version": "2.0.0",
171
171
+
"resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz",
172
172
+
"integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=",
173
173
+
"requires": {
174
174
+
"arr-flatten": "1.1.0"
175
175
+
}
176
176
+
},
177
177
+
"arr-flatten": {
178
178
+
"version": "1.1.0",
179
179
+
"resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz",
180
180
+
"integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg=="
181
181
+
},
182
182
+
"array-union": {
183
183
+
"version": "1.0.2",
184
184
+
"resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz",
185
185
+
"integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=",
186
186
+
"dev": true,
187
187
+
"requires": {
188
188
+
"array-uniq": "1.0.3"
189
189
+
}
190
190
+
},
191
191
+
"array-uniq": {
192
192
+
"version": "1.0.3",
193
193
+
"resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz",
194
194
+
"integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=",
195
195
+
"dev": true
196
196
+
},
197
197
+
"array-unique": {
198
198
+
"version": "0.2.1",
199
199
+
"resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz",
200
200
+
"integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM="
201
201
+
},
202
202
+
"arrify": {
203
203
+
"version": "1.0.1",
204
204
+
"resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz",
205
205
+
"integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=",
206
206
+
"dev": true
207
207
+
},
208
208
+
"async-each": {
209
209
+
"version": "1.0.1",
210
210
+
"resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz",
211
211
+
"integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0="
212
212
+
},
213
213
+
"b64": {
214
214
+
"version": "4.0.0",
215
215
+
"resolved": "https://registry.npmjs.org/b64/-/b64-4.0.0.tgz",
216
216
+
"integrity": "sha512-EhmUQodKB0sdzPPrbIWbGqA5cQeTWxYrAgNeeT1rLZWtD3tbNTnphz8J4vkXI3cPgBNlXBjzEbzDzq0Nwi4f9A=="
217
217
+
},
218
218
+
"babel-code-frame": {
219
219
+
"version": "6.26.0",
220
220
+
"resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz",
221
221
+
"integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=",
222
222
+
"dev": true,
223
223
+
"requires": {
224
224
+
"chalk": "1.1.3",
225
225
+
"esutils": "2.0.2",
226
226
+
"js-tokens": "3.0.2"
227
227
+
},
228
228
+
"dependencies": {
229
229
+
"ansi-styles": {
230
230
+
"version": "2.2.1",
231
231
+
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
232
232
+
"integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=",
233
233
+
"dev": true
234
234
+
},
235
235
+
"chalk": {
236
236
+
"version": "1.1.3",
237
237
+
"resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
238
238
+
"integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
239
239
+
"dev": true,
240
240
+
"requires": {
241
241
+
"ansi-styles": "2.2.1",
242
242
+
"escape-string-regexp": "1.0.5",
243
243
+
"has-ansi": "2.0.0",
244
244
+
"strip-ansi": "3.0.1",
245
245
+
"supports-color": "2.0.0"
246
246
+
}
247
247
+
},
248
248
+
"supports-color": {
249
249
+
"version": "2.0.0",
250
250
+
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
251
251
+
"integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=",
252
252
+
"dev": true
253
253
+
}
254
254
+
}
255
255
+
},
256
256
+
"bak": {
257
257
+
"version": "2.0.3",
258
258
+
"resolved": "https://registry.npmjs.org/bak/-/bak-2.0.3.tgz",
259
259
+
"integrity": "sha512-lrFNdpAjGIrVznk3LBUq4bVJynIUaXjLUdkmvyBoT1PzH1qFzp7TujFzeZhBKFG3Mo9eEbRItb83AoxeAaXpow==",
260
260
+
"requires": {
261
261
+
"@bakjs/input": "2.1.0",
262
262
+
"@bakjs/logging": "2.2.2",
263
263
+
"@bakjs/route-table": "2.1.1",
264
264
+
"@bakjs/shortcuts": "2.1.0",
265
265
+
"boom": "7.1.1",
266
266
+
"chalk": "2.3.0",
267
267
+
"config": "1.28.1",
268
268
+
"hapi": "17.1.1",
269
269
+
"hapi-compat": "1.1.0",
270
270
+
"items-promise": "1.0.0",
271
271
+
"lodash": "4.17.4",
272
272
+
"sywac": "1.2.0"
273
273
+
}
274
274
+
},
275
275
+
"balanced-match": {
276
276
+
"version": "1.0.0",
277
277
+
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
278
278
+
"integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c="
279
279
+
},
280
280
+
"big-time": {
281
281
+
"version": "2.0.0",
282
282
+
"resolved": "https://registry.npmjs.org/big-time/-/big-time-2.0.0.tgz",
283
283
+
"integrity": "sha512-OXsmBxlRLwUc65MLta2EOyMTLcjZQkxHkJ81lVPeyVqZag8zhUfKRYIbF3E/IW/LWR8kf8a1GlRYkBXKVGqJOw=="
284
284
+
},
285
285
+
"binary-extensions": {
286
286
+
"version": "1.11.0",
287
287
+
"resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.11.0.tgz",
288
288
+
"integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU="
289
289
+
},
290
290
+
"boolbase": {
291
291
+
"version": "1.0.0",
292
292
+
"resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz",
293
293
+
"integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24="
294
294
+
},
295
295
+
"boom": {
296
296
+
"version": "7.1.1",
297
297
+
"resolved": "https://registry.npmjs.org/boom/-/boom-7.1.1.tgz",
298
298
+
"integrity": "sha512-qwEARHTliqgEQiVkzKkkbLt3q0vRPIW60VRZ8zRnbjsm7INkPe9NxfAYDDYLZOdhxyUHa1gIe639Cx7t6RH/4A==",
299
299
+
"requires": {
300
300
+
"hoek": "5.0.2"
301
301
+
}
302
302
+
},
303
303
+
"bounce": {
304
304
+
"version": "1.2.0",
305
305
+
"resolved": "https://registry.npmjs.org/bounce/-/bounce-1.2.0.tgz",
306
306
+
"integrity": "sha512-8syCGe8B2/WC53118/F/tFy5aW00j+eaGPXmAUP7iBhxc+EBZZxS1vKelWyBCH6IqojgS2t1gF0glH30qAJKEw==",
307
307
+
"requires": {
308
308
+
"boom": "7.1.1",
309
309
+
"hoek": "5.0.2"
310
310
+
}
311
311
+
},
312
312
+
"boxen": {
313
313
+
"version": "1.2.2",
314
314
+
"resolved": "https://registry.npmjs.org/boxen/-/boxen-1.2.2.tgz",
315
315
+
"integrity": "sha1-Px1AMsMP/qnUsCwyLq8up0HcvOU=",
316
316
+
"requires": {
317
317
+
"ansi-align": "2.0.0",
318
318
+
"camelcase": "4.1.0",
319
319
+
"chalk": "2.3.0",
320
320
+
"cli-boxes": "1.0.0",
321
321
+
"string-width": "2.1.1",
322
322
+
"term-size": "1.2.0",
323
323
+
"widest-line": "1.0.0"
324
324
+
}
325
325
+
},
326
326
+
"brace-expansion": {
327
327
+
"version": "1.1.8",
328
328
+
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz",
329
329
+
"integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=",
330
330
+
"requires": {
331
331
+
"balanced-match": "1.0.0",
332
332
+
"concat-map": "0.0.1"
333
333
+
}
334
334
+
},
335
335
+
"braces": {
336
336
+
"version": "1.8.5",
337
337
+
"resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz",
338
338
+
"integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=",
339
339
+
"requires": {
340
340
+
"expand-range": "1.8.2",
341
341
+
"preserve": "0.2.0",
342
342
+
"repeat-element": "1.1.2"
343
343
+
}
344
344
+
},
345
345
+
"builtin-modules": {
346
346
+
"version": "1.1.1",
347
347
+
"resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz",
348
348
+
"integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=",
349
349
+
"dev": true
350
350
+
},
351
351
+
"call": {
352
352
+
"version": "5.0.1",
353
353
+
"resolved": "https://registry.npmjs.org/call/-/call-5.0.1.tgz",
354
354
+
"integrity": "sha512-ollfFPSshiuYLp7AsrmpkQJ/PxCi6AzV81rCjBwWhyF2QGyUY/vPDMzoh4aUcWyucheRglG2LaS5qkIEfLRh6A==",
355
355
+
"requires": {
356
356
+
"boom": "7.1.1",
357
357
+
"hoek": "5.0.2"
358
358
+
}
359
359
+
},
360
360
+
"caller-id": {
361
361
+
"version": "0.1.0",
362
362
+
"resolved": "https://registry.npmjs.org/caller-id/-/caller-id-0.1.0.tgz",
363
363
+
"integrity": "sha1-Wb2sCJPRLDhxQIJ5Ix+XRYNk8Hs=",
364
364
+
"requires": {
365
365
+
"stack-trace": "0.0.10"
366
366
+
}
367
367
+
},
368
368
+
"caller-path": {
369
369
+
"version": "0.1.0",
370
370
+
"resolved": "https://registry.npmjs.org/caller-path/-/caller-path-0.1.0.tgz",
371
371
+
"integrity": "sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8=",
372
372
+
"dev": true,
373
373
+
"requires": {
374
374
+
"callsites": "0.2.0"
375
375
+
}
376
376
+
},
377
377
+
"callsites": {
378
378
+
"version": "0.2.0",
379
379
+
"resolved": "https://registry.npmjs.org/callsites/-/callsites-0.2.0.tgz",
380
380
+
"integrity": "sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo=",
381
381
+
"dev": true
382
382
+
},
383
383
+
"camelcase": {
384
384
+
"version": "4.1.0",
385
385
+
"resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz",
386
386
+
"integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0="
387
387
+
},
388
388
+
"capture-stack-trace": {
389
389
+
"version": "1.0.0",
390
390
+
"resolved": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.0.tgz",
391
391
+
"integrity": "sha1-Sm+gc5nCa7pH8LJJa00PtAjFVQ0="
392
392
+
},
393
393
+
"catbox": {
394
394
+
"version": "10.0.2",
395
395
+
"resolved": "https://registry.npmjs.org/catbox/-/catbox-10.0.2.tgz",
396
396
+
"integrity": "sha512-cTQTQeKMhWHU0lX8CADE3g1koGJu+AlcWFzAjMX/8P+XbkScGYw3tJsQpe2Oh8q68vOQbOLacz9k+6V/F3Z9DA==",
397
397
+
"requires": {
398
398
+
"boom": "7.1.1",
399
399
+
"bounce": "1.2.0",
400
400
+
"hoek": "5.0.2",
401
401
+
"joi": "13.0.2"
402
402
+
}
403
403
+
},
404
404
+
"catbox-memory": {
405
405
+
"version": "3.1.1",
406
406
+
"resolved": "https://registry.npmjs.org/catbox-memory/-/catbox-memory-3.1.1.tgz",
407
407
+
"integrity": "sha512-fl6TI/uneeUb9NGClKWZWkpCZQrkPmuVz/Jaqqb15vqW6KGfJ/vMP/ZMp8VgAkyTrrRvFHbFcS67sbU7EkvbhQ==",
408
408
+
"requires": {
409
409
+
"big-time": "2.0.0",
410
410
+
"boom": "7.1.1",
411
411
+
"hoek": "5.0.2"
412
412
+
}
413
413
+
},
414
414
+
"caw": {
415
415
+
"version": "2.0.1",
416
416
+
"resolved": "https://registry.npmjs.org/caw/-/caw-2.0.1.tgz",
417
417
+
"integrity": "sha512-Cg8/ZSBEa8ZVY9HspcGUYaK63d/bN7rqS3CYCzEGUxuYv6UlmcjzDUz2fCFFHyTvUW5Pk0I+3hkA3iXlIj6guA==",
418
418
+
"requires": {
419
419
+
"get-proxy": "2.1.0",
420
420
+
"isurl": "1.0.0",
421
421
+
"tunnel-agent": "0.6.0",
422
422
+
"url-to-options": "1.0.1"
423
423
+
}
424
424
+
},
425
425
+
"chalk": {
426
426
+
"version": "2.3.0",
427
427
+
"resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz",
428
428
+
"integrity": "sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==",
429
429
+
"requires": {
430
430
+
"ansi-styles": "3.2.0",
431
431
+
"escape-string-regexp": "1.0.5",
432
432
+
"supports-color": "4.5.0"
433
433
+
}
434
434
+
},
435
435
+
"chardet": {
436
436
+
"version": "0.4.2",
437
437
+
"resolved": "https://registry.npmjs.org/chardet/-/chardet-0.4.2.tgz",
438
438
+
"integrity": "sha1-tUc7M9yXxCTl2Y3IfVXU2KKci/I=",
439
439
+
"dev": true
440
440
+
},
441
441
+
"chokidar": {
442
442
+
"version": "1.7.0",
443
443
+
"resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz",
444
444
+
"integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=",
445
445
+
"requires": {
446
446
+
"anymatch": "1.3.2",
447
447
+
"async-each": "1.0.1",
448
448
+
"fsevents": "1.1.3",
449
449
+
"glob-parent": "2.0.0",
450
450
+
"inherits": "2.0.3",
451
451
+
"is-binary-path": "1.0.1",
452
452
+
"is-glob": "2.0.1",
453
453
+
"path-is-absolute": "1.0.1",
454
454
+
"readdirp": "2.1.0"
455
455
+
}
456
456
+
},
457
457
+
"chownr": {
458
458
+
"version": "1.0.1",
459
459
+
"resolved": "https://registry.npmjs.org/chownr/-/chownr-1.0.1.tgz",
460
460
+
"integrity": "sha1-4qdQQqlVGQi+vSW4Uj1fl2nXkYE="
461
461
+
},
462
462
+
"circular-json": {
463
463
+
"version": "0.3.3",
464
464
+
"resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz",
465
465
+
"integrity": "sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==",
466
466
+
"dev": true
467
467
+
},
468
468
+
"cli-boxes": {
469
469
+
"version": "1.0.0",
470
470
+
"resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-1.0.0.tgz",
471
471
+
"integrity": "sha1-T6kXw+WclKAEzWH47lCdplFocUM="
472
472
+
},
473
473
+
"cli-cursor": {
474
474
+
"version": "2.1.0",
475
475
+
"resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz",
476
476
+
"integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=",
477
477
+
"dev": true,
478
478
+
"requires": {
479
479
+
"restore-cursor": "2.0.0"
480
480
+
}
481
481
+
},
482
482
+
"cli-width": {
483
483
+
"version": "2.2.0",
484
484
+
"resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz",
485
485
+
"integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=",
486
486
+
"dev": true
487
487
+
},
488
488
+
"co": {
489
489
+
"version": "4.6.0",
490
490
+
"resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz",
491
491
+
"integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=",
492
492
+
"dev": true
493
493
+
},
494
494
+
"code-point-at": {
495
495
+
"version": "1.1.0",
496
496
+
"resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz",
497
497
+
"integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c="
498
498
+
},
499
499
+
"color": {
500
500
+
"version": "2.0.1",
501
501
+
"resolved": "https://registry.npmjs.org/color/-/color-2.0.1.tgz",
502
502
+
"integrity": "sha512-ubUCVVKfT7r2w2D3qtHakj8mbmKms+tThR8gI8zEYCbUBl8/voqFGt3kgBqGwXAopgXybnkuOq+qMYCRrp4cXw==",
503
503
+
"requires": {
504
504
+
"color-convert": "1.9.1",
505
505
+
"color-string": "1.5.2"
506
506
+
}
507
507
+
},
508
508
+
"color-convert": {
509
509
+
"version": "1.9.1",
510
510
+
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.1.tgz",
511
511
+
"integrity": "sha512-mjGanIiwQJskCC18rPR6OmrZ6fm2Lc7PeGFYwCmy5J34wC6F1PzdGL6xeMfmgicfYcNLGuVFA3WzXtIDCQSZxQ==",
512
512
+
"requires": {
513
513
+
"color-name": "1.1.3"
514
514
+
}
515
515
+
},
516
516
+
"color-name": {
517
517
+
"version": "1.1.3",
518
518
+
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
519
519
+
"integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU="
520
520
+
},
521
521
+
"color-string": {
522
522
+
"version": "1.5.2",
523
523
+
"resolved": "https://registry.npmjs.org/color-string/-/color-string-1.5.2.tgz",
524
524
+
"integrity": "sha1-JuRYFLw8mny9Z1FkikFDRRSnc6k=",
525
525
+
"requires": {
526
526
+
"color-name": "1.1.3",
527
527
+
"simple-swizzle": "0.2.2"
528
528
+
}
529
529
+
},
530
530
+
"concat-map": {
531
531
+
"version": "0.0.1",
532
532
+
"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
533
533
+
"integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s="
534
534
+
},
535
535
+
"concat-stream": {
536
536
+
"version": "1.6.0",
537
537
+
"resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.0.tgz",
538
538
+
"integrity": "sha1-CqxmL9Ur54lk1VMvaUeE5wEQrPc=",
539
539
+
"dev": true,
540
540
+
"requires": {
541
541
+
"inherits": "2.0.3",
542
542
+
"readable-stream": "2.3.3",
543
543
+
"typedarray": "0.0.6"
544
544
+
},
545
545
+
"dependencies": {
546
546
+
"isarray": {
547
547
+
"version": "1.0.0",
548
548
+
"resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
549
549
+
"integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
550
550
+
"dev": true
551
551
+
},
552
552
+
"readable-stream": {
553
553
+
"version": "2.3.3",
554
554
+
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz",
555
555
+
"integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==",
556
556
+
"dev": true,
557
557
+
"requires": {
558
558
+
"core-util-is": "1.0.2",
559
559
+
"inherits": "2.0.3",
560
560
+
"isarray": "1.0.0",
561
561
+
"process-nextick-args": "1.0.7",
562
562
+
"safe-buffer": "5.1.1",
563
563
+
"string_decoder": "1.0.3",
564
564
+
"util-deprecate": "1.0.2"
565
565
+
}
566
566
+
},
567
567
+
"string_decoder": {
568
568
+
"version": "1.0.3",
569
569
+
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
570
570
+
"integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
571
571
+
"dev": true,
572
572
+
"requires": {
573
573
+
"safe-buffer": "5.1.1"
574
574
+
}
575
575
+
}
576
576
+
}
577
577
+
},
578
578
+
"config": {
579
579
+
"version": "1.28.1",
580
580
+
"resolved": "https://registry.npmjs.org/config/-/config-1.28.1.tgz",
581
581
+
"integrity": "sha1-diXSoeTJDxMdinM0eYLZPDhzKC0=",
582
582
+
"requires": {
583
583
+
"json5": "0.4.0",
584
584
+
"os-homedir": "1.0.2"
585
585
+
}
586
586
+
},
587
587
+
"config-chain": {
588
588
+
"version": "1.1.11",
589
589
+
"resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.11.tgz",
590
590
+
"integrity": "sha1-q6CXR9++TD5w52am5BWG4YWfxvI=",
591
591
+
"requires": {
592
592
+
"ini": "1.3.5",
593
593
+
"proto-list": "1.2.4"
594
594
+
}
595
595
+
},
596
596
+
"configstore": {
597
597
+
"version": "3.1.1",
598
598
+
"resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.1.tgz",
599
599
+
"integrity": "sha512-5oNkD/L++l0O6xGXxb1EWS7SivtjfGQlRyxJsYgE0Z495/L81e2h4/d3r969hoPXuFItzNOKMtsXgYG4c7dYvw==",
600
600
+
"requires": {
601
601
+
"dot-prop": "4.2.0",
602
602
+
"graceful-fs": "4.1.11",
603
603
+
"make-dir": "1.1.0",
604
604
+
"unique-string": "1.0.0",
605
605
+
"write-file-atomic": "2.3.0",
606
606
+
"xdg-basedir": "3.0.0"
607
607
+
}
608
608
+
},
609
609
+
"contains-path": {
610
610
+
"version": "0.1.0",
611
611
+
"resolved": "https://registry.npmjs.org/contains-path/-/contains-path-0.1.0.tgz",
612
612
+
"integrity": "sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo=",
613
613
+
"dev": true
614
614
+
},
615
615
+
"content": {
616
616
+
"version": "4.0.3",
617
617
+
"resolved": "https://registry.npmjs.org/content/-/content-4.0.3.tgz",
618
618
+
"integrity": "sha512-BrMfT1xXZHaXyPT/sneXc3IQzh8uL15JWV1R5tU0xo4sBGjF7BN+IRi9WoQLSbfNEs7bJ3E69rjxBKg/RL7lOQ==",
619
619
+
"requires": {
620
620
+
"boom": "7.1.1"
621
621
+
}
622
622
+
},
623
623
+
"core-util-is": {
624
624
+
"version": "1.0.2",
625
625
+
"resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
626
626
+
"integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac="
627
627
+
},
628
628
+
"create-error-class": {
629
629
+
"version": "3.0.2",
630
630
+
"resolved": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz",
631
631
+
"integrity": "sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y=",
632
632
+
"requires": {
633
633
+
"capture-stack-trace": "1.0.0"
634
634
+
}
635
635
+
},
636
636
+
"cron": {
637
637
+
"version": "1.3.0",
638
638
+
"resolved": "https://registry.npmjs.org/cron/-/cron-1.3.0.tgz",
639
639
+
"integrity": "sha512-K/SF7JlgMmNjcThWxkKvsHhey2EDB4CeOEWJ9aXWj3fbQJppsvTPIeyLdHfNq5IbbsMUUjRW1nr5dSO95f2E4w==",
640
640
+
"requires": {
641
641
+
"moment-timezone": "0.5.14"
642
642
+
}
643
643
+
},
644
644
+
"cross-spawn": {
645
645
+
"version": "5.1.0",
646
646
+
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz",
647
647
+
"integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=",
648
648
+
"requires": {
649
649
+
"lru-cache": "4.1.1",
650
650
+
"shebang-command": "1.2.0",
651
651
+
"which": "1.3.0"
652
652
+
}
653
653
+
},
654
654
+
"cryptiles": {
655
655
+
"version": "4.1.1",
656
656
+
"resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-4.1.1.tgz",
657
657
+
"integrity": "sha512-YuQUPbcOmaZsdvxJZ25DCA1W+lLIRoPJKBDKin+St1RCYEERSfoe1d25B1MvWNHN3e8SpFSVsqYvEUjp8J9H2w==",
658
658
+
"requires": {
659
659
+
"boom": "7.1.1"
660
660
+
}
661
661
+
},
662
662
+
"crypto-random-string": {
663
663
+
"version": "1.0.0",
664
664
+
"resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz",
665
665
+
"integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4="
666
666
+
},
667
667
+
"css-select": {
668
668
+
"version": "1.2.0",
669
669
+
"resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz",
670
670
+
"integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=",
671
671
+
"requires": {
672
672
+
"boolbase": "1.0.0",
673
673
+
"css-what": "2.1.0",
674
674
+
"domutils": "1.5.1",
675
675
+
"nth-check": "1.0.1"
676
676
+
}
677
677
+
},
678
678
+
"css-what": {
679
679
+
"version": "2.1.0",
680
680
+
"resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.0.tgz",
681
681
+
"integrity": "sha1-lGfQMsOM+u+58teVASUwYvh/ob0="
682
682
+
},
683
683
+
"debug": {
684
684
+
"version": "2.6.9",
685
685
+
"resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
686
686
+
"integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
687
687
+
"requires": {
688
688
+
"ms": "2.0.0"
689
689
+
}
690
690
+
},
691
691
+
"decompress-response": {
692
692
+
"version": "3.3.0",
693
693
+
"resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz",
694
694
+
"integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=",
695
695
+
"requires": {
696
696
+
"mimic-response": "1.0.0"
697
697
+
}
698
698
+
},
699
699
+
"deep-extend": {
700
700
+
"version": "0.4.2",
701
701
+
"resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.4.2.tgz",
702
702
+
"integrity": "sha1-SLaZwn4zS/ifEIkr5DL25MfTSn8="
703
703
+
},
704
704
+
"deep-is": {
705
705
+
"version": "0.1.3",
706
706
+
"resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
707
707
+
"integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
708
708
+
"dev": true
709
709
+
},
710
710
+
"del": {
711
711
+
"version": "2.2.2",
712
712
+
"resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz",
713
713
+
"integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=",
714
714
+
"dev": true,
715
715
+
"requires": {
716
716
+
"globby": "5.0.0",
717
717
+
"is-path-cwd": "1.0.0",
718
718
+
"is-path-in-cwd": "1.0.0",
719
719
+
"object-assign": "4.1.1",
720
720
+
"pify": "2.3.0",
721
721
+
"pinkie-promise": "2.0.1",
722
722
+
"rimraf": "2.6.2"
723
723
+
},
724
724
+
"dependencies": {
725
725
+
"pify": {
726
726
+
"version": "2.3.0",
727
727
+
"resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
728
728
+
"integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
729
729
+
"dev": true
730
730
+
}
731
731
+
}
732
732
+
},
733
733
+
"detect-libc": {
734
734
+
"version": "0.2.0",
735
735
+
"resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-0.2.0.tgz",
736
736
+
"integrity": "sha1-R/31ZzSKF+wl/L8LnkRjSKdvn7U="
737
737
+
},
738
738
+
"doctrine": {
739
739
+
"version": "2.0.2",
740
740
+
"resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.0.2.tgz",
741
741
+
"integrity": "sha512-y0tm5Pq6ywp3qSTZ1vPgVdAnbDEoeoc5wlOHXoY1c4Wug/a7JvqHIl7BTvwodaHmejWkK/9dSb3sCYfyo/om8A==",
742
742
+
"dev": true,
743
743
+
"requires": {
744
744
+
"esutils": "2.0.2"
745
745
+
}
746
746
+
},
747
747
+
"dom-converter": {
748
748
+
"version": "0.1.4",
749
749
+
"resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.1.4.tgz",
750
750
+
"integrity": "sha1-pF71cnuJDJv/5tfIduexnLDhfzs=",
751
751
+
"requires": {
752
752
+
"utila": "0.3.3"
753
753
+
},
754
754
+
"dependencies": {
755
755
+
"utila": {
756
756
+
"version": "0.3.3",
757
757
+
"resolved": "https://registry.npmjs.org/utila/-/utila-0.3.3.tgz",
758
758
+
"integrity": "sha1-1+jn1+MJEHCSsF+NloiCTWM6QiY="
759
759
+
}
760
760
+
}
761
761
+
},
762
762
+
"dom-serializer": {
763
763
+
"version": "0.1.0",
764
764
+
"resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.0.tgz",
765
765
+
"integrity": "sha1-BzxpdUbOB4DOI75KKOKT5AvDDII=",
766
766
+
"requires": {
767
767
+
"domelementtype": "1.1.3",
768
768
+
"entities": "1.1.1"
769
769
+
},
770
770
+
"dependencies": {
771
771
+
"domelementtype": {
772
772
+
"version": "1.1.3",
773
773
+
"resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.1.3.tgz",
774
774
+
"integrity": "sha1-vSh3PiZCiBrsUVRJJCmcXNgiGFs="
775
775
+
}
776
776
+
}
777
777
+
},
778
778
+
"domelementtype": {
779
779
+
"version": "1.3.0",
780
780
+
"resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.0.tgz",
781
781
+
"integrity": "sha1-sXrtguirWeUt2cGbF1bg/BhyBMI="
782
782
+
},
783
783
+
"domhandler": {
784
784
+
"version": "2.1.0",
785
785
+
"resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.1.0.tgz",
786
786
+
"integrity": "sha1-0mRvXlf2w7qxHPbLBdPArPdBJZQ=",
787
787
+
"requires": {
788
788
+
"domelementtype": "1.3.0"
789
789
+
}
790
790
+
},
791
791
+
"domutils": {
792
792
+
"version": "1.5.1",
793
793
+
"resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz",
794
794
+
"integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=",
795
795
+
"requires": {
796
796
+
"dom-serializer": "0.1.0",
797
797
+
"domelementtype": "1.3.0"
798
798
+
}
799
799
+
},
800
800
+
"dot-prop": {
801
801
+
"version": "4.2.0",
802
802
+
"resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz",
803
803
+
"integrity": "sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==",
804
804
+
"requires": {
805
805
+
"is-obj": "1.0.1"
806
806
+
}
807
807
+
},
808
808
+
"duplexer": {
809
809
+
"version": "0.1.1",
810
810
+
"resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz",
811
811
+
"integrity": "sha1-rOb/gIwc5mtX0ev5eXessCM0z8E="
812
812
+
},
813
813
+
"duplexer3": {
814
814
+
"version": "0.1.4",
815
815
+
"resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz",
816
816
+
"integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI="
817
817
+
},
818
818
+
"entities": {
819
819
+
"version": "1.1.1",
820
820
+
"resolved": "https://registry.npmjs.org/entities/-/entities-1.1.1.tgz",
821
821
+
"integrity": "sha1-blwtClYhtdra7O+AuQ7ftc13cvA="
822
822
+
},
823
823
+
"error-ex": {
824
824
+
"version": "1.3.1",
825
825
+
"resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz",
826
826
+
"integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=",
827
827
+
"dev": true,
828
828
+
"requires": {
829
829
+
"is-arrayish": "0.2.1"
830
830
+
},
831
831
+
"dependencies": {
832
832
+
"is-arrayish": {
833
833
+
"version": "0.2.1",
834
834
+
"resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
835
835
+
"integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=",
836
836
+
"dev": true
837
837
+
}
838
838
+
}
839
839
+
},
840
840
+
"es6-promise": {
841
841
+
"version": "3.3.1",
842
842
+
"resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.3.1.tgz",
843
843
+
"integrity": "sha1-oIzd6EzNvzTQJ6FFG8kdS80ophM="
844
844
+
},
845
845
+
"escape-string-regexp": {
846
846
+
"version": "1.0.5",
847
847
+
"resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
848
848
+
"integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ="
849
849
+
},
850
850
+
"eslint": {
851
851
+
"version": "4.12.0",
852
852
+
"resolved": "https://registry.npmjs.org/eslint/-/eslint-4.12.0.tgz",
853
853
+
"integrity": "sha512-Ohv4NU0FffkEe4so8DBrdfRUbGUtM4XnBTDll2pY7OdW3VkjBOZPerx3Bmuhg6S6D6r8+cli0EezN0xawUfYwg==",
854
854
+
"dev": true,
855
855
+
"requires": {
856
856
+
"ajv": "5.5.0",
857
857
+
"babel-code-frame": "6.26.0",
858
858
+
"chalk": "2.3.0",
859
859
+
"concat-stream": "1.6.0",
860
860
+
"cross-spawn": "5.1.0",
861
861
+
"debug": "3.1.0",
862
862
+
"doctrine": "2.0.2",
863
863
+
"eslint-scope": "3.7.1",
864
864
+
"espree": "3.5.2",
865
865
+
"esquery": "1.0.0",
866
866
+
"estraverse": "4.2.0",
867
867
+
"esutils": "2.0.2",
868
868
+
"file-entry-cache": "2.0.0",
869
869
+
"functional-red-black-tree": "1.0.1",
870
870
+
"glob": "7.1.2",
871
871
+
"globals": "11.0.1",
872
872
+
"ignore": "3.3.7",
873
873
+
"imurmurhash": "0.1.4",
874
874
+
"inquirer": "3.3.0",
875
875
+
"is-resolvable": "1.0.0",
876
876
+
"js-yaml": "3.10.0",
877
877
+
"json-stable-stringify-without-jsonify": "1.0.1",
878
878
+
"levn": "0.3.0",
879
879
+
"lodash": "4.17.4",
880
880
+
"minimatch": "3.0.4",
881
881
+
"mkdirp": "0.5.1",
882
882
+
"natural-compare": "1.4.0",
883
883
+
"optionator": "0.8.2",
884
884
+
"path-is-inside": "1.0.2",
885
885
+
"pluralize": "7.0.0",
886
886
+
"progress": "2.0.0",
887
887
+
"require-uncached": "1.0.3",
888
888
+
"semver": "5.4.1",
889
889
+
"strip-ansi": "4.0.0",
890
890
+
"strip-json-comments": "2.0.1",
891
891
+
"table": "4.0.2",
892
892
+
"text-table": "0.2.0"
893
893
+
},
894
894
+
"dependencies": {
895
895
+
"ansi-regex": {
896
896
+
"version": "3.0.0",
897
897
+
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz",
898
898
+
"integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=",
899
899
+
"dev": true
900
900
+
},
901
901
+
"debug": {
902
902
+
"version": "3.1.0",
903
903
+
"resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
904
904
+
"integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
905
905
+
"dev": true,
906
906
+
"requires": {
907
907
+
"ms": "2.0.0"
908
908
+
}
909
909
+
},
910
910
+
"strip-ansi": {
911
911
+
"version": "4.0.0",
912
912
+
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz",
913
913
+
"integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=",
914
914
+
"dev": true,
915
915
+
"requires": {
916
916
+
"ansi-regex": "3.0.0"
917
917
+
}
918
918
+
}
919
919
+
}
920
920
+
},
921
921
+
"eslint-config-standard": {
922
922
+
"version": "10.2.1",
923
923
+
"resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-10.2.1.tgz",
924
924
+
"integrity": "sha1-wGHk0GbzedwXzVYsZOgZtN1FRZE=",
925
925
+
"dev": true
926
926
+
},
927
927
+
"eslint-import-resolver-node": {
928
928
+
"version": "0.3.1",
929
929
+
"resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.1.tgz",
930
930
+
"integrity": "sha512-yUtXS15gIcij68NmXmP9Ni77AQuCN0itXbCc/jWd8C6/yKZaSNXicpC8cgvjnxVdmfsosIXrjpzFq7GcDryb6A==",
931
931
+
"dev": true,
932
932
+
"requires": {
933
933
+
"debug": "2.6.9",
934
934
+
"resolve": "1.5.0"
935
935
+
}
936
936
+
},
937
937
+
"eslint-module-utils": {
938
938
+
"version": "2.1.1",
939
939
+
"resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.1.1.tgz",
940
940
+
"integrity": "sha512-jDI/X5l/6D1rRD/3T43q8Qgbls2nq5km5KSqiwlyUbGo5+04fXhMKdCPhjwbqAa6HXWaMxj8Q4hQDIh7IadJQw==",
941
941
+
"dev": true,
942
942
+
"requires": {
943
943
+
"debug": "2.6.9",
944
944
+
"pkg-dir": "1.0.0"
945
945
+
}
946
946
+
},
947
947
+
"eslint-plugin-html": {
948
948
+
"version": "4.0.1",
949
949
+
"resolved": "https://registry.npmjs.org/eslint-plugin-html/-/eslint-plugin-html-4.0.1.tgz",
950
950
+
"integrity": "sha512-w8mmUJQjtDMUNbw3NOa4+PjOH/r4W5T+RN2nCmYgXv+QHx+NiBodnbPHXmJFJgo7Dr0Yk4G/2LCIRhfKceNmNA==",
951
951
+
"dev": true,
952
952
+
"requires": {
953
953
+
"htmlparser2": "3.9.2"
954
954
+
},
955
955
+
"dependencies": {
956
956
+
"domhandler": {
957
957
+
"version": "2.4.1",
958
958
+
"resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.1.tgz",
959
959
+
"integrity": "sha1-iS5HAAqZvlW783dP/qBWHYh5wlk=",
960
960
+
"dev": true,
961
961
+
"requires": {
962
962
+
"domelementtype": "1.3.0"
963
963
+
}
964
964
+
},
965
965
+
"htmlparser2": {
966
966
+
"version": "3.9.2",
967
967
+
"resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.9.2.tgz",
968
968
+
"integrity": "sha1-G9+HrMoPP55T+k/M6w9LTLsAszg=",
969
969
+
"dev": true,
970
970
+
"requires": {
971
971
+
"domelementtype": "1.3.0",
972
972
+
"domhandler": "2.4.1",
973
973
+
"domutils": "1.5.1",
974
974
+
"entities": "1.1.1",
975
975
+
"inherits": "2.0.3",
976
976
+
"readable-stream": "2.3.3"
977
977
+
}
978
978
+
},
979
979
+
"isarray": {
980
980
+
"version": "1.0.0",
981
981
+
"resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
982
982
+
"integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
983
983
+
"dev": true
984
984
+
},
985
985
+
"readable-stream": {
986
986
+
"version": "2.3.3",
987
987
+
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz",
988
988
+
"integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==",
989
989
+
"dev": true,
990
990
+
"requires": {
991
991
+
"core-util-is": "1.0.2",
992
992
+
"inherits": "2.0.3",
993
993
+
"isarray": "1.0.0",
994
994
+
"process-nextick-args": "1.0.7",
995
995
+
"safe-buffer": "5.1.1",
996
996
+
"string_decoder": "1.0.3",
997
997
+
"util-deprecate": "1.0.2"
998
998
+
}
999
999
+
},
1000
1000
+
"string_decoder": {
1001
1001
+
"version": "1.0.3",
1002
1002
+
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
1003
1003
+
"integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
1004
1004
+
"dev": true,
1005
1005
+
"requires": {
1006
1006
+
"safe-buffer": "5.1.1"
1007
1007
+
}
1008
1008
+
}
1009
1009
+
}
1010
1010
+
},
1011
1011
+
"eslint-plugin-import": {
1012
1012
+
"version": "2.8.0",
1013
1013
+
"resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.8.0.tgz",
1014
1014
+
"integrity": "sha512-Rf7dfKJxZ16QuTgVv1OYNxkZcsu/hULFnC+e+w0Gzi6jMC3guQoWQgxYxc54IDRinlb6/0v5z/PxxIKmVctN+g==",
1015
1015
+
"dev": true,
1016
1016
+
"requires": {
1017
1017
+
"builtin-modules": "1.1.1",
1018
1018
+
"contains-path": "0.1.0",
1019
1019
+
"debug": "2.6.9",
1020
1020
+
"doctrine": "1.5.0",
1021
1021
+
"eslint-import-resolver-node": "0.3.1",
1022
1022
+
"eslint-module-utils": "2.1.1",
1023
1023
+
"has": "1.0.1",
1024
1024
+
"lodash.cond": "4.5.2",
1025
1025
+
"minimatch": "3.0.4",
1026
1026
+
"read-pkg-up": "2.0.0"
1027
1027
+
},
1028
1028
+
"dependencies": {
1029
1029
+
"doctrine": {
1030
1030
+
"version": "1.5.0",
1031
1031
+
"resolved": "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz",
1032
1032
+
"integrity": "sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=",
1033
1033
+
"dev": true,
1034
1034
+
"requires": {
1035
1035
+
"esutils": "2.0.2",
1036
1036
+
"isarray": "1.0.0"
1037
1037
+
}
1038
1038
+
},
1039
1039
+
"isarray": {
1040
1040
+
"version": "1.0.0",
1041
1041
+
"resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
1042
1042
+
"integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
1043
1043
+
"dev": true
1044
1044
+
}
1045
1045
+
}
1046
1046
+
},
1047
1047
+
"eslint-plugin-jest": {
1048
1048
+
"version": "21.3.2",
1049
1049
+
"resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-21.3.2.tgz",
1050
1050
+
"integrity": "sha512-Kbr3lUw7wcAEvjnK1mA9q08Td4sCZPUru6nnBmD1/8gg3UWNHXAZd3W3l3qYaBS2b9yrfJZvCtIHyjKYTHUqUw==",
1051
1051
+
"dev": true
1052
1052
+
},
1053
1053
+
"eslint-plugin-node": {
1054
1054
+
"version": "5.2.1",
1055
1055
+
"resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-5.2.1.tgz",
1056
1056
+
"integrity": "sha512-xhPXrh0Vl/b7870uEbaumb2Q+LxaEcOQ3kS1jtIXanBAwpMre1l5q/l2l/hESYJGEFKuI78bp6Uw50hlpr7B+g==",
1057
1057
+
"dev": true,
1058
1058
+
"requires": {
1059
1059
+
"ignore": "3.3.7",
1060
1060
+
"minimatch": "3.0.4",
1061
1061
+
"resolve": "1.5.0",
1062
1062
+
"semver": "5.3.0"
1063
1063
+
},
1064
1064
+
"dependencies": {
1065
1065
+
"semver": {
1066
1066
+
"version": "5.3.0",
1067
1067
+
"resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz",
1068
1068
+
"integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=",
1069
1069
+
"dev": true
1070
1070
+
}
1071
1071
+
}
1072
1072
+
},
1073
1073
+
"eslint-plugin-promise": {
1074
1074
+
"version": "3.6.0",
1075
1075
+
"resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-3.6.0.tgz",
1076
1076
+
"integrity": "sha512-YQzM6TLTlApAr7Li8vWKR+K3WghjwKcYzY0d2roWap4SLK+kzuagJX/leTetIDWsFcTFnKNJXWupDCD6aZkP2Q==",
1077
1077
+
"dev": true
1078
1078
+
},
1079
1079
+
"eslint-plugin-standard": {
1080
1080
+
"version": "3.0.1",
1081
1081
+
"resolved": "https://registry.npmjs.org/eslint-plugin-standard/-/eslint-plugin-standard-3.0.1.tgz",
1082
1082
+
"integrity": "sha1-NNDJFbRe3G8BA5PH7vOCOwhWXPI=",
1083
1083
+
"dev": true
1084
1084
+
},
1085
1085
+
"eslint-scope": {
1086
1086
+
"version": "3.7.1",
1087
1087
+
"resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-3.7.1.tgz",
1088
1088
+
"integrity": "sha1-PWPD7f2gLgbgGkUq2IyqzHzctug=",
1089
1089
+
"dev": true,
1090
1090
+
"requires": {
1091
1091
+
"esrecurse": "4.2.0",
1092
1092
+
"estraverse": "4.2.0"
1093
1093
+
}
1094
1094
+
},
1095
1095
+
"espree": {
1096
1096
+
"version": "3.5.2",
1097
1097
+
"resolved": "https://registry.npmjs.org/espree/-/espree-3.5.2.tgz",
1098
1098
+
"integrity": "sha512-sadKeYwaR/aJ3stC2CdvgXu1T16TdYN+qwCpcWbMnGJ8s0zNWemzrvb2GbD4OhmJ/fwpJjudThAlLobGbWZbCQ==",
1099
1099
+
"dev": true,
1100
1100
+
"requires": {
1101
1101
+
"acorn": "5.2.1",
1102
1102
+
"acorn-jsx": "3.0.1"
1103
1103
+
}
1104
1104
+
},
1105
1105
+
"esprima": {
1106
1106
+
"version": "4.0.0",
1107
1107
+
"resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.0.tgz",
1108
1108
+
"integrity": "sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw==",
1109
1109
+
"dev": true
1110
1110
+
},
1111
1111
+
"esquery": {
1112
1112
+
"version": "1.0.0",
1113
1113
+
"resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.0.tgz",
1114
1114
+
"integrity": "sha1-z7qLV9f7qT8XKYqKAGoEzaE9gPo=",
1115
1115
+
"dev": true,
1116
1116
+
"requires": {
1117
1117
+
"estraverse": "4.2.0"
1118
1118
+
}
1119
1119
+
},
1120
1120
+
"esrecurse": {
1121
1121
+
"version": "4.2.0",
1122
1122
+
"resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.0.tgz",
1123
1123
+
"integrity": "sha1-+pVo2Y04I/mkHZHpAtyrnqblsWM=",
1124
1124
+
"dev": true,
1125
1125
+
"requires": {
1126
1126
+
"estraverse": "4.2.0",
1127
1127
+
"object-assign": "4.1.1"
1128
1128
+
}
1129
1129
+
},
1130
1130
+
"estraverse": {
1131
1131
+
"version": "4.2.0",
1132
1132
+
"resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz",
1133
1133
+
"integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=",
1134
1134
+
"dev": true
1135
1135
+
},
1136
1136
+
"esutils": {
1137
1137
+
"version": "2.0.2",
1138
1138
+
"resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz",
1139
1139
+
"integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=",
1140
1140
+
"dev": true
1141
1141
+
},
1142
1142
+
"event-stream": {
1143
1143
+
"version": "3.3.4",
1144
1144
+
"resolved": "https://registry.npmjs.org/event-stream/-/event-stream-3.3.4.tgz",
1145
1145
+
"integrity": "sha1-SrTJoPWlTbkzi0w02Gv86PSzVXE=",
1146
1146
+
"requires": {
1147
1147
+
"duplexer": "0.1.1",
1148
1148
+
"from": "0.1.7",
1149
1149
+
"map-stream": "0.1.0",
1150
1150
+
"pause-stream": "0.0.11",
1151
1151
+
"split": "0.3.3",
1152
1152
+
"stream-combiner": "0.0.4",
1153
1153
+
"through": "2.3.8"
1154
1154
+
}
1155
1155
+
},
1156
1156
+
"execa": {
1157
1157
+
"version": "0.7.0",
1158
1158
+
"resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz",
1159
1159
+
"integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=",
1160
1160
+
"requires": {
1161
1161
+
"cross-spawn": "5.1.0",
1162
1162
+
"get-stream": "3.0.0",
1163
1163
+
"is-stream": "1.1.0",
1164
1164
+
"npm-run-path": "2.0.2",
1165
1165
+
"p-finally": "1.0.0",
1166
1166
+
"signal-exit": "3.0.2",
1167
1167
+
"strip-eof": "1.0.0"
1168
1168
+
}
1169
1169
+
},
1170
1170
+
"expand-brackets": {
1171
1171
+
"version": "0.1.5",
1172
1172
+
"resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz",
1173
1173
+
"integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=",
1174
1174
+
"requires": {
1175
1175
+
"is-posix-bracket": "0.1.1"
1176
1176
+
}
1177
1177
+
},
1178
1178
+
"expand-range": {
1179
1179
+
"version": "1.8.2",
1180
1180
+
"resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz",
1181
1181
+
"integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=",
1182
1182
+
"requires": {
1183
1183
+
"fill-range": "2.2.3"
1184
1184
+
}
1185
1185
+
},
1186
1186
+
"external-editor": {
1187
1187
+
"version": "2.1.0",
1188
1188
+
"resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.1.0.tgz",
1189
1189
+
"integrity": "sha512-E44iT5QVOUJBKij4IIV3uvxuNlbKS38Tw1HiupxEIHPv9qtC2PrDYohbXV5U+1jnfIXttny8gUhj+oZvflFlzA==",
1190
1190
+
"dev": true,
1191
1191
+
"requires": {
1192
1192
+
"chardet": "0.4.2",
1193
1193
+
"iconv-lite": "0.4.19",
1194
1194
+
"tmp": "0.0.33"
1195
1195
+
}
1196
1196
+
},
1197
1197
+
"extglob": {
1198
1198
+
"version": "0.3.2",
1199
1199
+
"resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz",
1200
1200
+
"integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=",
1201
1201
+
"requires": {
1202
1202
+
"is-extglob": "1.0.0"
1203
1203
+
}
1204
1204
+
},
1205
1205
+
"fast-deep-equal": {
1206
1206
+
"version": "1.0.0",
1207
1207
+
"resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.0.0.tgz",
1208
1208
+
"integrity": "sha1-liVqO8l1WV6zbYLpkp0GDYk0Of8=",
1209
1209
+
"dev": true
1210
1210
+
},
1211
1211
+
"fast-json-stable-stringify": {
1212
1212
+
"version": "2.0.0",
1213
1213
+
"resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz",
1214
1214
+
"integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=",
1215
1215
+
"dev": true
1216
1216
+
},
1217
1217
+
"fast-levenshtein": {
1218
1218
+
"version": "2.0.6",
1219
1219
+
"resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
1220
1220
+
"integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
1221
1221
+
"dev": true
1222
1222
+
},
1223
1223
+
"figures": {
1224
1224
+
"version": "2.0.0",
1225
1225
+
"resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz",
1226
1226
+
"integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=",
1227
1227
+
"dev": true,
1228
1228
+
"requires": {
1229
1229
+
"escape-string-regexp": "1.0.5"
1230
1230
+
}
1231
1231
+
},
1232
1232
+
"file-entry-cache": {
1233
1233
+
"version": "2.0.0",
1234
1234
+
"resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-2.0.0.tgz",
1235
1235
+
"integrity": "sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E=",
1236
1236
+
"dev": true,
1237
1237
+
"requires": {
1238
1238
+
"flat-cache": "1.3.0",
1239
1239
+
"object-assign": "4.1.1"
1240
1240
+
}
1241
1241
+
},
1242
1242
+
"filename-regex": {
1243
1243
+
"version": "2.0.1",
1244
1244
+
"resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz",
1245
1245
+
"integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY="
1246
1246
+
},
1247
1247
+
"fill-range": {
1248
1248
+
"version": "2.2.3",
1249
1249
+
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.3.tgz",
1250
1250
+
"integrity": "sha1-ULd9/X5Gm8dJJHCWNpn+eoSFpyM=",
1251
1251
+
"requires": {
1252
1252
+
"is-number": "2.1.0",
1253
1253
+
"isobject": "2.1.0",
1254
1254
+
"randomatic": "1.1.7",
1255
1255
+
"repeat-element": "1.1.2",
1256
1256
+
"repeat-string": "1.6.1"
1257
1257
+
}
1258
1258
+
},
1259
1259
+
"find-up": {
1260
1260
+
"version": "1.1.2",
1261
1261
+
"resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz",
1262
1262
+
"integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=",
1263
1263
+
"dev": true,
1264
1264
+
"requires": {
1265
1265
+
"path-exists": "2.1.0",
1266
1266
+
"pinkie-promise": "2.0.1"
1267
1267
+
}
1268
1268
+
},
1269
1269
+
"flat-cache": {
1270
1270
+
"version": "1.3.0",
1271
1271
+
"resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-1.3.0.tgz",
1272
1272
+
"integrity": "sha1-0wMLMrOBVPTjt+nHCfSQ9++XxIE=",
1273
1273
+
"dev": true,
1274
1274
+
"requires": {
1275
1275
+
"circular-json": "0.3.3",
1276
1276
+
"del": "2.2.2",
1277
1277
+
"graceful-fs": "4.1.11",
1278
1278
+
"write": "0.2.1"
1279
1279
+
}
1280
1280
+
},
1281
1281
+
"for-in": {
1282
1282
+
"version": "1.0.2",
1283
1283
+
"resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz",
1284
1284
+
"integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA="
1285
1285
+
},
1286
1286
+
"for-own": {
1287
1287
+
"version": "0.1.5",
1288
1288
+
"resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz",
1289
1289
+
"integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=",
1290
1290
+
"requires": {
1291
1291
+
"for-in": "1.0.2"
1292
1292
+
}
1293
1293
+
},
1294
1294
+
"from": {
1295
1295
+
"version": "0.1.7",
1296
1296
+
"resolved": "https://registry.npmjs.org/from/-/from-0.1.7.tgz",
1297
1297
+
"integrity": "sha1-g8YK/Fi5xWmXAH7Rp2izqzA6RP4="
1298
1298
+
},
1299
1299
+
"fs-extra": {
1300
1300
+
"version": "4.0.3",
1301
1301
+
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz",
1302
1302
+
"integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==",
1303
1303
+
"requires": {
1304
1304
+
"graceful-fs": "4.1.11",
1305
1305
+
"jsonfile": "4.0.0",
1306
1306
+
"universalify": "0.1.1"
1307
1307
+
}
1308
1308
+
},
1309
1309
+
"fs.realpath": {
1310
1310
+
"version": "1.0.0",
1311
1311
+
"resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
1312
1312
+
"integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
1313
1313
+
"dev": true
1314
1314
+
},
1315
1315
+
"fsevents": {
1316
1316
+
"version": "1.1.3",
1317
1317
+
"resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.1.3.tgz",
1318
1318
+
"integrity": "sha512-WIr7iDkdmdbxu/Gh6eKEZJL6KPE74/5MEsf2whTOFNxbIoIixogroLdKYqB6FDav4Wavh/lZdzzd3b2KxIXC5Q==",
1319
1319
+
"optional": true,
1320
1320
+
"requires": {
1321
1321
+
"nan": "2.8.0",
1322
1322
+
"node-pre-gyp": "0.6.39"
1323
1323
+
},
1324
1324
+
"dependencies": {
1325
1325
+
"abbrev": {
1326
1326
+
"version": "1.1.0",
1327
1327
+
"bundled": true,
1328
1328
+
"optional": true
1329
1329
+
},
1330
1330
+
"ajv": {
1331
1331
+
"version": "4.11.8",
1332
1332
+
"bundled": true,
1333
1333
+
"optional": true,
1334
1334
+
"requires": {
1335
1335
+
"co": "4.6.0",
1336
1336
+
"json-stable-stringify": "1.0.1"
1337
1337
+
}
1338
1338
+
},
1339
1339
+
"ansi-regex": {
1340
1340
+
"version": "2.1.1",
1341
1341
+
"bundled": true
1342
1342
+
},
1343
1343
+
"aproba": {
1344
1344
+
"version": "1.1.1",
1345
1345
+
"bundled": true,
1346
1346
+
"optional": true
1347
1347
+
},
1348
1348
+
"are-we-there-yet": {
1349
1349
+
"version": "1.1.4",
1350
1350
+
"bundled": true,
1351
1351
+
"optional": true,
1352
1352
+
"requires": {
1353
1353
+
"delegates": "1.0.0",
1354
1354
+
"readable-stream": "2.2.9"
1355
1355
+
}
1356
1356
+
},
1357
1357
+
"asn1": {
1358
1358
+
"version": "0.2.3",
1359
1359
+
"bundled": true,
1360
1360
+
"optional": true
1361
1361
+
},
1362
1362
+
"assert-plus": {
1363
1363
+
"version": "0.2.0",
1364
1364
+
"bundled": true,
1365
1365
+
"optional": true
1366
1366
+
},
1367
1367
+
"asynckit": {
1368
1368
+
"version": "0.4.0",
1369
1369
+
"bundled": true,
1370
1370
+
"optional": true
1371
1371
+
},
1372
1372
+
"aws-sign2": {
1373
1373
+
"version": "0.6.0",
1374
1374
+
"bundled": true,
1375
1375
+
"optional": true
1376
1376
+
},
1377
1377
+
"aws4": {
1378
1378
+
"version": "1.6.0",
1379
1379
+
"bundled": true,
1380
1380
+
"optional": true
1381
1381
+
},
1382
1382
+
"balanced-match": {
1383
1383
+
"version": "0.4.2",
1384
1384
+
"bundled": true
1385
1385
+
},
1386
1386
+
"bcrypt-pbkdf": {
1387
1387
+
"version": "1.0.1",
1388
1388
+
"bundled": true,
1389
1389
+
"optional": true,
1390
1390
+
"requires": {
1391
1391
+
"tweetnacl": "0.14.5"
1392
1392
+
}
1393
1393
+
},
1394
1394
+
"block-stream": {
1395
1395
+
"version": "0.0.9",
1396
1396
+
"bundled": true,
1397
1397
+
"requires": {
1398
1398
+
"inherits": "2.0.3"
1399
1399
+
}
1400
1400
+
},
1401
1401
+
"boom": {
1402
1402
+
"version": "2.10.1",
1403
1403
+
"bundled": true,
1404
1404
+
"requires": {
1405
1405
+
"hoek": "2.16.3"
1406
1406
+
}
1407
1407
+
},
1408
1408
+
"brace-expansion": {
1409
1409
+
"version": "1.1.7",
1410
1410
+
"bundled": true,
1411
1411
+
"requires": {
1412
1412
+
"balanced-match": "0.4.2",
1413
1413
+
"concat-map": "0.0.1"
1414
1414
+
}
1415
1415
+
},
1416
1416
+
"buffer-shims": {
1417
1417
+
"version": "1.0.0",
1418
1418
+
"bundled": true
1419
1419
+
},
1420
1420
+
"caseless": {
1421
1421
+
"version": "0.12.0",
1422
1422
+
"bundled": true,
1423
1423
+
"optional": true
1424
1424
+
},
1425
1425
+
"co": {
1426
1426
+
"version": "4.6.0",
1427
1427
+
"bundled": true,
1428
1428
+
"optional": true
1429
1429
+
},
1430
1430
+
"code-point-at": {
1431
1431
+
"version": "1.1.0",
1432
1432
+
"bundled": true
1433
1433
+
},
1434
1434
+
"combined-stream": {
1435
1435
+
"version": "1.0.5",
1436
1436
+
"bundled": true,
1437
1437
+
"requires": {
1438
1438
+
"delayed-stream": "1.0.0"
1439
1439
+
}
1440
1440
+
},
1441
1441
+
"concat-map": {
1442
1442
+
"version": "0.0.1",
1443
1443
+
"bundled": true
1444
1444
+
},
1445
1445
+
"console-control-strings": {
1446
1446
+
"version": "1.1.0",
1447
1447
+
"bundled": true
1448
1448
+
},
1449
1449
+
"core-util-is": {
1450
1450
+
"version": "1.0.2",
1451
1451
+
"bundled": true
1452
1452
+
},
1453
1453
+
"cryptiles": {
1454
1454
+
"version": "2.0.5",
1455
1455
+
"bundled": true,
1456
1456
+
"requires": {
1457
1457
+
"boom": "2.10.1"
1458
1458
+
}
1459
1459
+
},
1460
1460
+
"dashdash": {
1461
1461
+
"version": "1.14.1",
1462
1462
+
"bundled": true,
1463
1463
+
"optional": true,
1464
1464
+
"requires": {
1465
1465
+
"assert-plus": "1.0.0"
1466
1466
+
},
1467
1467
+
"dependencies": {
1468
1468
+
"assert-plus": {
1469
1469
+
"version": "1.0.0",
1470
1470
+
"bundled": true,
1471
1471
+
"optional": true
1472
1472
+
}
1473
1473
+
}
1474
1474
+
},
1475
1475
+
"debug": {
1476
1476
+
"version": "2.6.8",
1477
1477
+
"bundled": true,
1478
1478
+
"optional": true,
1479
1479
+
"requires": {
1480
1480
+
"ms": "2.0.0"
1481
1481
+
}
1482
1482
+
},
1483
1483
+
"deep-extend": {
1484
1484
+
"version": "0.4.2",
1485
1485
+
"bundled": true,
1486
1486
+
"optional": true
1487
1487
+
},
1488
1488
+
"delayed-stream": {
1489
1489
+
"version": "1.0.0",
1490
1490
+
"bundled": true
1491
1491
+
},
1492
1492
+
"delegates": {
1493
1493
+
"version": "1.0.0",
1494
1494
+
"bundled": true,
1495
1495
+
"optional": true
1496
1496
+
},
1497
1497
+
"detect-libc": {
1498
1498
+
"version": "1.0.2",
1499
1499
+
"bundled": true,
1500
1500
+
"optional": true
1501
1501
+
},
1502
1502
+
"ecc-jsbn": {
1503
1503
+
"version": "0.1.1",
1504
1504
+
"bundled": true,
1505
1505
+
"optional": true,
1506
1506
+
"requires": {
1507
1507
+
"jsbn": "0.1.1"
1508
1508
+
}
1509
1509
+
},
1510
1510
+
"extend": {
1511
1511
+
"version": "3.0.1",
1512
1512
+
"bundled": true,
1513
1513
+
"optional": true
1514
1514
+
},
1515
1515
+
"extsprintf": {
1516
1516
+
"version": "1.0.2",
1517
1517
+
"bundled": true
1518
1518
+
},
1519
1519
+
"forever-agent": {
1520
1520
+
"version": "0.6.1",
1521
1521
+
"bundled": true,
1522
1522
+
"optional": true
1523
1523
+
},
1524
1524
+
"form-data": {
1525
1525
+
"version": "2.1.4",
1526
1526
+
"bundled": true,
1527
1527
+
"optional": true,
1528
1528
+
"requires": {
1529
1529
+
"asynckit": "0.4.0",
1530
1530
+
"combined-stream": "1.0.5",
1531
1531
+
"mime-types": "2.1.15"
1532
1532
+
}
1533
1533
+
},
1534
1534
+
"fs.realpath": {
1535
1535
+
"version": "1.0.0",
1536
1536
+
"bundled": true
1537
1537
+
},
1538
1538
+
"fstream": {
1539
1539
+
"version": "1.0.11",
1540
1540
+
"bundled": true,
1541
1541
+
"requires": {
1542
1542
+
"graceful-fs": "4.1.11",
1543
1543
+
"inherits": "2.0.3",
1544
1544
+
"mkdirp": "0.5.1",
1545
1545
+
"rimraf": "2.6.1"
1546
1546
+
}
1547
1547
+
},
1548
1548
+
"fstream-ignore": {
1549
1549
+
"version": "1.0.5",
1550
1550
+
"bundled": true,
1551
1551
+
"optional": true,
1552
1552
+
"requires": {
1553
1553
+
"fstream": "1.0.11",
1554
1554
+
"inherits": "2.0.3",
1555
1555
+
"minimatch": "3.0.4"
1556
1556
+
}
1557
1557
+
},
1558
1558
+
"gauge": {
1559
1559
+
"version": "2.7.4",
1560
1560
+
"bundled": true,
1561
1561
+
"optional": true,
1562
1562
+
"requires": {
1563
1563
+
"aproba": "1.1.1",
1564
1564
+
"console-control-strings": "1.1.0",
1565
1565
+
"has-unicode": "2.0.1",
1566
1566
+
"object-assign": "4.1.1",
1567
1567
+
"signal-exit": "3.0.2",
1568
1568
+
"string-width": "1.0.2",
1569
1569
+
"strip-ansi": "3.0.1",
1570
1570
+
"wide-align": "1.1.2"
1571
1571
+
}
1572
1572
+
},
1573
1573
+
"getpass": {
1574
1574
+
"version": "0.1.7",
1575
1575
+
"bundled": true,
1576
1576
+
"optional": true,
1577
1577
+
"requires": {
1578
1578
+
"assert-plus": "1.0.0"
1579
1579
+
},
1580
1580
+
"dependencies": {
1581
1581
+
"assert-plus": {
1582
1582
+
"version": "1.0.0",
1583
1583
+
"bundled": true,
1584
1584
+
"optional": true
1585
1585
+
}
1586
1586
+
}
1587
1587
+
},
1588
1588
+
"glob": {
1589
1589
+
"version": "7.1.2",
1590
1590
+
"bundled": true,
1591
1591
+
"requires": {
1592
1592
+
"fs.realpath": "1.0.0",
1593
1593
+
"inflight": "1.0.6",
1594
1594
+
"inherits": "2.0.3",
1595
1595
+
"minimatch": "3.0.4",
1596
1596
+
"once": "1.4.0",
1597
1597
+
"path-is-absolute": "1.0.1"
1598
1598
+
}
1599
1599
+
},
1600
1600
+
"graceful-fs": {
1601
1601
+
"version": "4.1.11",
1602
1602
+
"bundled": true
1603
1603
+
},
1604
1604
+
"har-schema": {
1605
1605
+
"version": "1.0.5",
1606
1606
+
"bundled": true,
1607
1607
+
"optional": true
1608
1608
+
},
1609
1609
+
"har-validator": {
1610
1610
+
"version": "4.2.1",
1611
1611
+
"bundled": true,
1612
1612
+
"optional": true,
1613
1613
+
"requires": {
1614
1614
+
"ajv": "4.11.8",
1615
1615
+
"har-schema": "1.0.5"
1616
1616
+
}
1617
1617
+
},
1618
1618
+
"has-unicode": {
1619
1619
+
"version": "2.0.1",
1620
1620
+
"bundled": true,
1621
1621
+
"optional": true
1622
1622
+
},
1623
1623
+
"hawk": {
1624
1624
+
"version": "3.1.3",
1625
1625
+
"bundled": true,
1626
1626
+
"requires": {
1627
1627
+
"boom": "2.10.1",
1628
1628
+
"cryptiles": "2.0.5",
1629
1629
+
"hoek": "2.16.3",
1630
1630
+
"sntp": "1.0.9"
1631
1631
+
}
1632
1632
+
},
1633
1633
+
"hoek": {
1634
1634
+
"version": "2.16.3",
1635
1635
+
"bundled": true
1636
1636
+
},
1637
1637
+
"http-signature": {
1638
1638
+
"version": "1.1.1",
1639
1639
+
"bundled": true,
1640
1640
+
"optional": true,
1641
1641
+
"requires": {
1642
1642
+
"assert-plus": "0.2.0",
1643
1643
+
"jsprim": "1.4.0",
1644
1644
+
"sshpk": "1.13.0"
1645
1645
+
}
1646
1646
+
},
1647
1647
+
"inflight": {
1648
1648
+
"version": "1.0.6",
1649
1649
+
"bundled": true,
1650
1650
+
"requires": {
1651
1651
+
"once": "1.4.0",
1652
1652
+
"wrappy": "1.0.2"
1653
1653
+
}
1654
1654
+
},
1655
1655
+
"inherits": {
1656
1656
+
"version": "2.0.3",
1657
1657
+
"bundled": true
1658
1658
+
},
1659
1659
+
"ini": {
1660
1660
+
"version": "1.3.4",
1661
1661
+
"bundled": true,
1662
1662
+
"optional": true
1663
1663
+
},
1664
1664
+
"is-fullwidth-code-point": {
1665
1665
+
"version": "1.0.0",
1666
1666
+
"bundled": true,
1667
1667
+
"requires": {
1668
1668
+
"number-is-nan": "1.0.1"
1669
1669
+
}
1670
1670
+
},
1671
1671
+
"is-typedarray": {
1672
1672
+
"version": "1.0.0",
1673
1673
+
"bundled": true,
1674
1674
+
"optional": true
1675
1675
+
},
1676
1676
+
"isarray": {
1677
1677
+
"version": "1.0.0",
1678
1678
+
"bundled": true
1679
1679
+
},
1680
1680
+
"isstream": {
1681
1681
+
"version": "0.1.2",
1682
1682
+
"bundled": true,
1683
1683
+
"optional": true
1684
1684
+
},
1685
1685
+
"jodid25519": {
1686
1686
+
"version": "1.0.2",
1687
1687
+
"bundled": true,
1688
1688
+
"optional": true,
1689
1689
+
"requires": {
1690
1690
+
"jsbn": "0.1.1"
1691
1691
+
}
1692
1692
+
},
1693
1693
+
"jsbn": {
1694
1694
+
"version": "0.1.1",
1695
1695
+
"bundled": true,
1696
1696
+
"optional": true
1697
1697
+
},
1698
1698
+
"json-schema": {
1699
1699
+
"version": "0.2.3",
1700
1700
+
"bundled": true,
1701
1701
+
"optional": true
1702
1702
+
},
1703
1703
+
"json-stable-stringify": {
1704
1704
+
"version": "1.0.1",
1705
1705
+
"bundled": true,
1706
1706
+
"optional": true,
1707
1707
+
"requires": {
1708
1708
+
"jsonify": "0.0.0"
1709
1709
+
}
1710
1710
+
},
1711
1711
+
"json-stringify-safe": {
1712
1712
+
"version": "5.0.1",
1713
1713
+
"bundled": true,
1714
1714
+
"optional": true
1715
1715
+
},
1716
1716
+
"jsonify": {
1717
1717
+
"version": "0.0.0",
1718
1718
+
"bundled": true,
1719
1719
+
"optional": true
1720
1720
+
},
1721
1721
+
"jsprim": {
1722
1722
+
"version": "1.4.0",
1723
1723
+
"bundled": true,
1724
1724
+
"optional": true,
1725
1725
+
"requires": {
1726
1726
+
"assert-plus": "1.0.0",
1727
1727
+
"extsprintf": "1.0.2",
1728
1728
+
"json-schema": "0.2.3",
1729
1729
+
"verror": "1.3.6"
1730
1730
+
},
1731
1731
+
"dependencies": {
1732
1732
+
"assert-plus": {
1733
1733
+
"version": "1.0.0",
1734
1734
+
"bundled": true,
1735
1735
+
"optional": true
1736
1736
+
}
1737
1737
+
}
1738
1738
+
},
1739
1739
+
"mime-db": {
1740
1740
+
"version": "1.27.0",
1741
1741
+
"bundled": true
1742
1742
+
},
1743
1743
+
"mime-types": {
1744
1744
+
"version": "2.1.15",
1745
1745
+
"bundled": true,
1746
1746
+
"requires": {
1747
1747
+
"mime-db": "1.27.0"
1748
1748
+
}
1749
1749
+
},
1750
1750
+
"minimatch": {
1751
1751
+
"version": "3.0.4",
1752
1752
+
"bundled": true,
1753
1753
+
"requires": {
1754
1754
+
"brace-expansion": "1.1.7"
1755
1755
+
}
1756
1756
+
},
1757
1757
+
"minimist": {
1758
1758
+
"version": "0.0.8",
1759
1759
+
"bundled": true
1760
1760
+
},
1761
1761
+
"mkdirp": {
1762
1762
+
"version": "0.5.1",
1763
1763
+
"bundled": true,
1764
1764
+
"requires": {
1765
1765
+
"minimist": "0.0.8"
1766
1766
+
}
1767
1767
+
},
1768
1768
+
"ms": {
1769
1769
+
"version": "2.0.0",
1770
1770
+
"bundled": true,
1771
1771
+
"optional": true
1772
1772
+
},
1773
1773
+
"node-pre-gyp": {
1774
1774
+
"version": "0.6.39",
1775
1775
+
"bundled": true,
1776
1776
+
"optional": true,
1777
1777
+
"requires": {
1778
1778
+
"detect-libc": "1.0.2",
1779
1779
+
"hawk": "3.1.3",
1780
1780
+
"mkdirp": "0.5.1",
1781
1781
+
"nopt": "4.0.1",
1782
1782
+
"npmlog": "4.1.0",
1783
1783
+
"rc": "1.2.1",
1784
1784
+
"request": "2.81.0",
1785
1785
+
"rimraf": "2.6.1",
1786
1786
+
"semver": "5.3.0",
1787
1787
+
"tar": "2.2.1",
1788
1788
+
"tar-pack": "3.4.0"
1789
1789
+
}
1790
1790
+
},
1791
1791
+
"nopt": {
1792
1792
+
"version": "4.0.1",
1793
1793
+
"bundled": true,
1794
1794
+
"optional": true,
1795
1795
+
"requires": {
1796
1796
+
"abbrev": "1.1.0",
1797
1797
+
"osenv": "0.1.4"
1798
1798
+
}
1799
1799
+
},
1800
1800
+
"npmlog": {
1801
1801
+
"version": "4.1.0",
1802
1802
+
"bundled": true,
1803
1803
+
"optional": true,
1804
1804
+
"requires": {
1805
1805
+
"are-we-there-yet": "1.1.4",
1806
1806
+
"console-control-strings": "1.1.0",
1807
1807
+
"gauge": "2.7.4",
1808
1808
+
"set-blocking": "2.0.0"
1809
1809
+
}
1810
1810
+
},
1811
1811
+
"number-is-nan": {
1812
1812
+
"version": "1.0.1",
1813
1813
+
"bundled": true
1814
1814
+
},
1815
1815
+
"oauth-sign": {
1816
1816
+
"version": "0.8.2",
1817
1817
+
"bundled": true,
1818
1818
+
"optional": true
1819
1819
+
},
1820
1820
+
"object-assign": {
1821
1821
+
"version": "4.1.1",
1822
1822
+
"bundled": true,
1823
1823
+
"optional": true
1824
1824
+
},
1825
1825
+
"once": {
1826
1826
+
"version": "1.4.0",
1827
1827
+
"bundled": true,
1828
1828
+
"requires": {
1829
1829
+
"wrappy": "1.0.2"
1830
1830
+
}
1831
1831
+
},
1832
1832
+
"os-homedir": {
1833
1833
+
"version": "1.0.2",
1834
1834
+
"bundled": true,
1835
1835
+
"optional": true
1836
1836
+
},
1837
1837
+
"os-tmpdir": {
1838
1838
+
"version": "1.0.2",
1839
1839
+
"bundled": true,
1840
1840
+
"optional": true
1841
1841
+
},
1842
1842
+
"osenv": {
1843
1843
+
"version": "0.1.4",
1844
1844
+
"bundled": true,
1845
1845
+
"optional": true,
1846
1846
+
"requires": {
1847
1847
+
"os-homedir": "1.0.2",
1848
1848
+
"os-tmpdir": "1.0.2"
1849
1849
+
}
1850
1850
+
},
1851
1851
+
"path-is-absolute": {
1852
1852
+
"version": "1.0.1",
1853
1853
+
"bundled": true
1854
1854
+
},
1855
1855
+
"performance-now": {
1856
1856
+
"version": "0.2.0",
1857
1857
+
"bundled": true,
1858
1858
+
"optional": true
1859
1859
+
},
1860
1860
+
"process-nextick-args": {
1861
1861
+
"version": "1.0.7",
1862
1862
+
"bundled": true
1863
1863
+
},
1864
1864
+
"punycode": {
1865
1865
+
"version": "1.4.1",
1866
1866
+
"bundled": true,
1867
1867
+
"optional": true
1868
1868
+
},
1869
1869
+
"qs": {
1870
1870
+
"version": "6.4.0",
1871
1871
+
"bundled": true,
1872
1872
+
"optional": true
1873
1873
+
},
1874
1874
+
"rc": {
1875
1875
+
"version": "1.2.1",
1876
1876
+
"bundled": true,
1877
1877
+
"optional": true,
1878
1878
+
"requires": {
1879
1879
+
"deep-extend": "0.4.2",
1880
1880
+
"ini": "1.3.4",
1881
1881
+
"minimist": "1.2.0",
1882
1882
+
"strip-json-comments": "2.0.1"
1883
1883
+
},
1884
1884
+
"dependencies": {
1885
1885
+
"minimist": {
1886
1886
+
"version": "1.2.0",
1887
1887
+
"bundled": true,
1888
1888
+
"optional": true
1889
1889
+
}
1890
1890
+
}
1891
1891
+
},
1892
1892
+
"readable-stream": {
1893
1893
+
"version": "2.2.9",
1894
1894
+
"bundled": true,
1895
1895
+
"requires": {
1896
1896
+
"buffer-shims": "1.0.0",
1897
1897
+
"core-util-is": "1.0.2",
1898
1898
+
"inherits": "2.0.3",
1899
1899
+
"isarray": "1.0.0",
1900
1900
+
"process-nextick-args": "1.0.7",
1901
1901
+
"string_decoder": "1.0.1",
1902
1902
+
"util-deprecate": "1.0.2"
1903
1903
+
}
1904
1904
+
},
1905
1905
+
"request": {
1906
1906
+
"version": "2.81.0",
1907
1907
+
"bundled": true,
1908
1908
+
"optional": true,
1909
1909
+
"requires": {
1910
1910
+
"aws-sign2": "0.6.0",
1911
1911
+
"aws4": "1.6.0",
1912
1912
+
"caseless": "0.12.0",
1913
1913
+
"combined-stream": "1.0.5",
1914
1914
+
"extend": "3.0.1",
1915
1915
+
"forever-agent": "0.6.1",
1916
1916
+
"form-data": "2.1.4",
1917
1917
+
"har-validator": "4.2.1",
1918
1918
+
"hawk": "3.1.3",
1919
1919
+
"http-signature": "1.1.1",
1920
1920
+
"is-typedarray": "1.0.0",
1921
1921
+
"isstream": "0.1.2",
1922
1922
+
"json-stringify-safe": "5.0.1",
1923
1923
+
"mime-types": "2.1.15",
1924
1924
+
"oauth-sign": "0.8.2",
1925
1925
+
"performance-now": "0.2.0",
1926
1926
+
"qs": "6.4.0",
1927
1927
+
"safe-buffer": "5.0.1",
1928
1928
+
"stringstream": "0.0.5",
1929
1929
+
"tough-cookie": "2.3.2",
1930
1930
+
"tunnel-agent": "0.6.0",
1931
1931
+
"uuid": "3.0.1"
1932
1932
+
}
1933
1933
+
},
1934
1934
+
"rimraf": {
1935
1935
+
"version": "2.6.1",
1936
1936
+
"bundled": true,
1937
1937
+
"requires": {
1938
1938
+
"glob": "7.1.2"
1939
1939
+
}
1940
1940
+
},
1941
1941
+
"safe-buffer": {
1942
1942
+
"version": "5.0.1",
1943
1943
+
"bundled": true
1944
1944
+
},
1945
1945
+
"semver": {
1946
1946
+
"version": "5.3.0",
1947
1947
+
"bundled": true,
1948
1948
+
"optional": true
1949
1949
+
},
1950
1950
+
"set-blocking": {
1951
1951
+
"version": "2.0.0",
1952
1952
+
"bundled": true,
1953
1953
+
"optional": true
1954
1954
+
},
1955
1955
+
"signal-exit": {
1956
1956
+
"version": "3.0.2",
1957
1957
+
"bundled": true,
1958
1958
+
"optional": true
1959
1959
+
},
1960
1960
+
"sntp": {
1961
1961
+
"version": "1.0.9",
1962
1962
+
"bundled": true,
1963
1963
+
"requires": {
1964
1964
+
"hoek": "2.16.3"
1965
1965
+
}
1966
1966
+
},
1967
1967
+
"sshpk": {
1968
1968
+
"version": "1.13.0",
1969
1969
+
"bundled": true,
1970
1970
+
"optional": true,
1971
1971
+
"requires": {
1972
1972
+
"asn1": "0.2.3",
1973
1973
+
"assert-plus": "1.0.0",
1974
1974
+
"bcrypt-pbkdf": "1.0.1",
1975
1975
+
"dashdash": "1.14.1",
1976
1976
+
"ecc-jsbn": "0.1.1",
1977
1977
+
"getpass": "0.1.7",
1978
1978
+
"jodid25519": "1.0.2",
1979
1979
+
"jsbn": "0.1.1",
1980
1980
+
"tweetnacl": "0.14.5"
1981
1981
+
},
1982
1982
+
"dependencies": {
1983
1983
+
"assert-plus": {
1984
1984
+
"version": "1.0.0",
1985
1985
+
"bundled": true,
1986
1986
+
"optional": true
1987
1987
+
}
1988
1988
+
}
1989
1989
+
},
1990
1990
+
"string-width": {
1991
1991
+
"version": "1.0.2",
1992
1992
+
"bundled": true,
1993
1993
+
"requires": {
1994
1994
+
"code-point-at": "1.1.0",
1995
1995
+
"is-fullwidth-code-point": "1.0.0",
1996
1996
+
"strip-ansi": "3.0.1"
1997
1997
+
}
1998
1998
+
},
1999
1999
+
"string_decoder": {
2000
2000
+
"version": "1.0.1",
2001
2001
+
"bundled": true,
2002
2002
+
"requires": {
2003
2003
+
"safe-buffer": "5.0.1"
2004
2004
+
}
2005
2005
+
},
2006
2006
+
"stringstream": {
2007
2007
+
"version": "0.0.5",
2008
2008
+
"bundled": true,
2009
2009
+
"optional": true
2010
2010
+
},
2011
2011
+
"strip-ansi": {
2012
2012
+
"version": "3.0.1",
2013
2013
+
"bundled": true,
2014
2014
+
"requires": {
2015
2015
+
"ansi-regex": "2.1.1"
2016
2016
+
}
2017
2017
+
},
2018
2018
+
"strip-json-comments": {
2019
2019
+
"version": "2.0.1",
2020
2020
+
"bundled": true,
2021
2021
+
"optional": true
2022
2022
+
},
2023
2023
+
"tar": {
2024
2024
+
"version": "2.2.1",
2025
2025
+
"bundled": true,
2026
2026
+
"requires": {
2027
2027
+
"block-stream": "0.0.9",
2028
2028
+
"fstream": "1.0.11",
2029
2029
+
"inherits": "2.0.3"
2030
2030
+
}
2031
2031
+
},
2032
2032
+
"tar-pack": {
2033
2033
+
"version": "3.4.0",
2034
2034
+
"bundled": true,
2035
2035
+
"optional": true,
2036
2036
+
"requires": {
2037
2037
+
"debug": "2.6.8",
2038
2038
+
"fstream": "1.0.11",
2039
2039
+
"fstream-ignore": "1.0.5",
2040
2040
+
"once": "1.4.0",
2041
2041
+
"readable-stream": "2.2.9",
2042
2042
+
"rimraf": "2.6.1",
2043
2043
+
"tar": "2.2.1",
2044
2044
+
"uid-number": "0.0.6"
2045
2045
+
}
2046
2046
+
},
2047
2047
+
"tough-cookie": {
2048
2048
+
"version": "2.3.2",
2049
2049
+
"bundled": true,
2050
2050
+
"optional": true,
2051
2051
+
"requires": {
2052
2052
+
"punycode": "1.4.1"
2053
2053
+
}
2054
2054
+
},
2055
2055
+
"tunnel-agent": {
2056
2056
+
"version": "0.6.0",
2057
2057
+
"bundled": true,
2058
2058
+
"optional": true,
2059
2059
+
"requires": {
2060
2060
+
"safe-buffer": "5.0.1"
2061
2061
+
}
2062
2062
+
},
2063
2063
+
"tweetnacl": {
2064
2064
+
"version": "0.14.5",
2065
2065
+
"bundled": true,
2066
2066
+
"optional": true
2067
2067
+
},
2068
2068
+
"uid-number": {
2069
2069
+
"version": "0.0.6",
2070
2070
+
"bundled": true,
2071
2071
+
"optional": true
2072
2072
+
},
2073
2073
+
"util-deprecate": {
2074
2074
+
"version": "1.0.2",
2075
2075
+
"bundled": true
2076
2076
+
},
2077
2077
+
"uuid": {
2078
2078
+
"version": "3.0.1",
2079
2079
+
"bundled": true,
2080
2080
+
"optional": true
2081
2081
+
},
2082
2082
+
"verror": {
2083
2083
+
"version": "1.3.6",
2084
2084
+
"bundled": true,
2085
2085
+
"optional": true,
2086
2086
+
"requires": {
2087
2087
+
"extsprintf": "1.0.2"
2088
2088
+
}
2089
2089
+
},
2090
2090
+
"wide-align": {
2091
2091
+
"version": "1.1.2",
2092
2092
+
"bundled": true,
2093
2093
+
"optional": true,
2094
2094
+
"requires": {
2095
2095
+
"string-width": "1.0.2"
2096
2096
+
}
2097
2097
+
},
2098
2098
+
"wrappy": {
2099
2099
+
"version": "1.0.2",
2100
2100
+
"bundled": true
2101
2101
+
}
2102
2102
+
}
2103
2103
+
},
2104
2104
+
"function-bind": {
2105
2105
+
"version": "1.1.1",
2106
2106
+
"resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
2107
2107
+
"integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
2108
2108
+
"dev": true
2109
2109
+
},
2110
2110
+
"functional-red-black-tree": {
2111
2111
+
"version": "1.0.1",
2112
2112
+
"resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
2113
2113
+
"integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=",
2114
2114
+
"dev": true
2115
2115
+
},
2116
2116
+
"get-proxy": {
2117
2117
+
"version": "2.1.0",
2118
2118
+
"resolved": "https://registry.npmjs.org/get-proxy/-/get-proxy-2.1.0.tgz",
2119
2119
+
"integrity": "sha512-zmZIaQTWnNQb4R4fJUEp/FC51eZsc6EkErspy3xtIYStaq8EB/hDIWipxsal+E8rz0qD7f2sL/NA9Xee4RInJw==",
2120
2120
+
"requires": {
2121
2121
+
"npm-conf": "1.1.3"
2122
2122
+
}
2123
2123
+
},
2124
2124
+
"get-stream": {
2125
2125
+
"version": "3.0.0",
2126
2126
+
"resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz",
2127
2127
+
"integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ="
2128
2128
+
},
2129
2129
+
"glob": {
2130
2130
+
"version": "7.1.2",
2131
2131
+
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
2132
2132
+
"integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
2133
2133
+
"dev": true,
2134
2134
+
"requires": {
2135
2135
+
"fs.realpath": "1.0.0",
2136
2136
+
"inflight": "1.0.6",
2137
2137
+
"inherits": "2.0.3",
2138
2138
+
"minimatch": "3.0.4",
2139
2139
+
"once": "1.4.0",
2140
2140
+
"path-is-absolute": "1.0.1"
2141
2141
+
}
2142
2142
+
},
2143
2143
+
"glob-base": {
2144
2144
+
"version": "0.3.0",
2145
2145
+
"resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz",
2146
2146
+
"integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=",
2147
2147
+
"requires": {
2148
2148
+
"glob-parent": "2.0.0",
2149
2149
+
"is-glob": "2.0.1"
2150
2150
+
}
2151
2151
+
},
2152
2152
+
"glob-parent": {
2153
2153
+
"version": "2.0.0",
2154
2154
+
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz",
2155
2155
+
"integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=",
2156
2156
+
"requires": {
2157
2157
+
"is-glob": "2.0.1"
2158
2158
+
}
2159
2159
+
},
2160
2160
+
"global-dirs": {
2161
2161
+
"version": "0.1.1",
2162
2162
+
"resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz",
2163
2163
+
"integrity": "sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU=",
2164
2164
+
"requires": {
2165
2165
+
"ini": "1.3.5"
2166
2166
+
}
2167
2167
+
},
2168
2168
+
"globals": {
2169
2169
+
"version": "11.0.1",
2170
2170
+
"resolved": "https://registry.npmjs.org/globals/-/globals-11.0.1.tgz",
2171
2171
+
"integrity": "sha1-Eqh7sBDlFUOWrMU14eQ/x1Ow5eg=",
2172
2172
+
"dev": true
2173
2173
+
},
2174
2174
+
"globby": {
2175
2175
+
"version": "5.0.0",
2176
2176
+
"resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz",
2177
2177
+
"integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=",
2178
2178
+
"dev": true,
2179
2179
+
"requires": {
2180
2180
+
"array-union": "1.0.2",
2181
2181
+
"arrify": "1.0.1",
2182
2182
+
"glob": "7.1.2",
2183
2183
+
"object-assign": "4.1.1",
2184
2184
+
"pify": "2.3.0",
2185
2185
+
"pinkie-promise": "2.0.1"
2186
2186
+
},
2187
2187
+
"dependencies": {
2188
2188
+
"pify": {
2189
2189
+
"version": "2.3.0",
2190
2190
+
"resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
2191
2191
+
"integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
2192
2192
+
"dev": true
2193
2193
+
}
2194
2194
+
}
2195
2195
+
},
2196
2196
+
"got": {
2197
2197
+
"version": "6.7.1",
2198
2198
+
"resolved": "https://registry.npmjs.org/got/-/got-6.7.1.tgz",
2199
2199
+
"integrity": "sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA=",
2200
2200
+
"requires": {
2201
2201
+
"create-error-class": "3.0.2",
2202
2202
+
"duplexer3": "0.1.4",
2203
2203
+
"get-stream": "3.0.0",
2204
2204
+
"is-redirect": "1.0.0",
2205
2205
+
"is-retry-allowed": "1.1.0",
2206
2206
+
"is-stream": "1.1.0",
2207
2207
+
"lowercase-keys": "1.0.0",
2208
2208
+
"safe-buffer": "5.1.1",
2209
2209
+
"timed-out": "4.0.1",
2210
2210
+
"unzip-response": "2.0.1",
2211
2211
+
"url-parse-lax": "1.0.0"
2212
2212
+
}
2213
2213
+
},
2214
2214
+
"graceful-fs": {
2215
2215
+
"version": "4.1.11",
2216
2216
+
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz",
2217
2217
+
"integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg="
2218
2218
+
},
2219
2219
+
"hapi": {
2220
2220
+
"version": "17.1.1",
2221
2221
+
"resolved": "https://registry.npmjs.org/hapi/-/hapi-17.1.1.tgz",
2222
2222
+
"integrity": "sha512-KuZEpq8CQEMCWqJOVk//Kq1TQFlWoUHB4CLe3KBkOqRa2OWMa/A/StH37fJRDTkZvPWIKNIN94O2J0yfITE8QQ==",
2223
2223
+
"requires": {
2224
2224
+
"accept": "3.0.2",
2225
2225
+
"ammo": "3.0.0",
2226
2226
+
"boom": "7.1.1",
2227
2227
+
"bounce": "1.2.0",
2228
2228
+
"call": "5.0.1",
2229
2229
+
"catbox": "10.0.2",
2230
2230
+
"catbox-memory": "3.1.1",
2231
2231
+
"heavy": "6.0.0",
2232
2232
+
"hoek": "5.0.2",
2233
2233
+
"joi": "13.0.2",
2234
2234
+
"mimos": "4.0.0",
2235
2235
+
"podium": "3.1.2",
2236
2236
+
"shot": "4.0.4",
2237
2237
+
"statehood": "6.0.5",
2238
2238
+
"subtext": "6.0.7",
2239
2239
+
"teamwork": "3.0.1",
2240
2240
+
"topo": "3.0.0"
2241
2241
+
}
2242
2242
+
},
2243
2243
+
"hapi-compat": {
2244
2244
+
"version": "1.1.0",
2245
2245
+
"resolved": "https://registry.npmjs.org/hapi-compat/-/hapi-compat-1.1.0.tgz",
2246
2246
+
"integrity": "sha512-B3CQYheQzwZ2tQUZ+Qo73GJrKMsKFpLxYwNBJEMwSIv/sbjPaRLXkO5Mp3zhGN1aSXccDGWHchN44QD1KUn5lQ==",
2247
2247
+
"requires": {
2248
2248
+
"caller-id": "0.1.0",
2249
2249
+
"chalk": "2.3.0",
2250
2250
+
"hoek": "5.0.2",
2251
2251
+
"joi": "13.0.2"
2252
2252
+
}
2253
2253
+
},
2254
2254
+
"has": {
2255
2255
+
"version": "1.0.1",
2256
2256
+
"resolved": "https://registry.npmjs.org/has/-/has-1.0.1.tgz",
2257
2257
+
"integrity": "sha1-hGFzP1OLCDfJNh45qauelwTcLyg=",
2258
2258
+
"dev": true,
2259
2259
+
"requires": {
2260
2260
+
"function-bind": "1.1.1"
2261
2261
+
}
2262
2262
+
},
2263
2263
+
"has-ansi": {
2264
2264
+
"version": "2.0.0",
2265
2265
+
"resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz",
2266
2266
+
"integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=",
2267
2267
+
"dev": true,
2268
2268
+
"requires": {
2269
2269
+
"ansi-regex": "2.1.1"
2270
2270
+
}
2271
2271
+
},
2272
2272
+
"has-flag": {
2273
2273
+
"version": "2.0.0",
2274
2274
+
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz",
2275
2275
+
"integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE="
2276
2276
+
},
2277
2277
+
"has-symbol-support-x": {
2278
2278
+
"version": "1.4.1",
2279
2279
+
"resolved": "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.1.tgz",
2280
2280
+
"integrity": "sha512-JkaetveU7hFbqnAC1EV1sF4rlojU2D4Usc5CmS69l6NfmPDnpnFUegzFg33eDkkpNCxZ0mQp65HwUDrNFS/8MA=="
2281
2281
+
},
2282
2282
+
"has-to-string-tag-x": {
2283
2283
+
"version": "1.4.1",
2284
2284
+
"resolved": "https://registry.npmjs.org/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz",
2285
2285
+
"integrity": "sha512-vdbKfmw+3LoOYVr+mtxHaX5a96+0f3DljYd8JOqvOLsf5mw2Otda2qCDT9qRqLAhrjyQ0h7ual5nOiASpsGNFw==",
2286
2286
+
"requires": {
2287
2287
+
"has-symbol-support-x": "1.4.1"
2288
2288
+
}
2289
2289
+
},
2290
2290
+
"heavy": {
2291
2291
+
"version": "6.0.0",
2292
2292
+
"resolved": "https://registry.npmjs.org/heavy/-/heavy-6.0.0.tgz",
2293
2293
+
"integrity": "sha512-iswuGt0zTjFRiltTEw+y1c+9cFroh5nUei9aVy1ToPpscs2DRQuHNKpaRdcjaCJNEuKVQYVyDx4ytEpzpZnQgg==",
2294
2294
+
"requires": {
2295
2295
+
"boom": "7.1.1",
2296
2296
+
"hoek": "5.0.2",
2297
2297
+
"joi": "13.0.2"
2298
2298
+
}
2299
2299
+
},
2300
2300
+
"hoek": {
2301
2301
+
"version": "5.0.2",
2302
2302
+
"resolved": "https://registry.npmjs.org/hoek/-/hoek-5.0.2.tgz",
2303
2303
+
"integrity": "sha512-NA10UYP9ufCtY2qYGkZktcQXwVyYK4zK0gkaFSB96xhtlo6V8tKXdQgx8eHolQTRemaW0uLn8BhjhwqrOU+QLQ=="
2304
2304
+
},
2305
2305
+
"hosted-git-info": {
2306
2306
+
"version": "2.5.0",
2307
2307
+
"resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.5.0.tgz",
2308
2308
+
"integrity": "sha512-pNgbURSuab90KbTqvRPsseaTxOJCZBD0a7t+haSN33piP9cCM4l0CqdzAif2hUqm716UovKB2ROmiabGAKVXyg==",
2309
2309
+
"dev": true
2310
2310
+
},
2311
2311
+
"htmlparser2": {
2312
2312
+
"version": "3.3.0",
2313
2313
+
"resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.3.0.tgz",
2314
2314
+
"integrity": "sha1-zHDQWln2VC5D8OaFyYLhTJJKnv4=",
2315
2315
+
"requires": {
2316
2316
+
"domelementtype": "1.3.0",
2317
2317
+
"domhandler": "2.1.0",
2318
2318
+
"domutils": "1.1.6",
2319
2319
+
"readable-stream": "1.0.34"
2320
2320
+
},
2321
2321
+
"dependencies": {
2322
2322
+
"domutils": {
2323
2323
+
"version": "1.1.6",
2324
2324
+
"resolved": "https://registry.npmjs.org/domutils/-/domutils-1.1.6.tgz",
2325
2325
+
"integrity": "sha1-vdw94Jm5ou+sxRxiPyj0FuzFdIU=",
2326
2326
+
"requires": {
2327
2327
+
"domelementtype": "1.3.0"
2328
2328
+
}
2329
2329
+
}
2330
2330
+
}
2331
2331
+
},
2332
2332
+
"iconv-lite": {
2333
2333
+
"version": "0.4.19",
2334
2334
+
"resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz",
2335
2335
+
"integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==",
2336
2336
+
"dev": true
2337
2337
+
},
2338
2338
+
"ignore": {
2339
2339
+
"version": "3.3.7",
2340
2340
+
"resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.7.tgz",
2341
2341
+
"integrity": "sha512-YGG3ejvBNHRqu0559EOxxNFihD0AjpvHlC/pdGKd3X3ofe+CoJkYazwNJYTNebqpPKN+VVQbh4ZFn1DivMNuHA==",
2342
2342
+
"dev": true
2343
2343
+
},
2344
2344
+
"ignore-by-default": {
2345
2345
+
"version": "1.0.1",
2346
2346
+
"resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz",
2347
2347
+
"integrity": "sha1-SMptcvbGo68Aqa1K5odr44ieKwk="
2348
2348
+
},
2349
2349
+
"import-lazy": {
2350
2350
+
"version": "2.1.0",
2351
2351
+
"resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz",
2352
2352
+
"integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM="
2353
2353
+
},
2354
2354
+
"imurmurhash": {
2355
2355
+
"version": "0.1.4",
2356
2356
+
"resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
2357
2357
+
"integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o="
2358
2358
+
},
2359
2359
+
"inflight": {
2360
2360
+
"version": "1.0.6",
2361
2361
+
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
2362
2362
+
"integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
2363
2363
+
"dev": true,
2364
2364
+
"requires": {
2365
2365
+
"once": "1.4.0",
2366
2366
+
"wrappy": "1.0.2"
2367
2367
+
}
2368
2368
+
},
2369
2369
+
"inherits": {
2370
2370
+
"version": "2.0.3",
2371
2371
+
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
2372
2372
+
"integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4="
2373
2373
+
},
2374
2374
+
"ini": {
2375
2375
+
"version": "1.3.5",
2376
2376
+
"resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz",
2377
2377
+
"integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw=="
2378
2378
+
},
2379
2379
+
"inquirer": {
2380
2380
+
"version": "3.3.0",
2381
2381
+
"resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.3.0.tgz",
2382
2382
+
"integrity": "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==",
2383
2383
+
"dev": true,
2384
2384
+
"requires": {
2385
2385
+
"ansi-escapes": "3.0.0",
2386
2386
+
"chalk": "2.3.0",
2387
2387
+
"cli-cursor": "2.1.0",
2388
2388
+
"cli-width": "2.2.0",
2389
2389
+
"external-editor": "2.1.0",
2390
2390
+
"figures": "2.0.0",
2391
2391
+
"lodash": "4.17.4",
2392
2392
+
"mute-stream": "0.0.7",
2393
2393
+
"run-async": "2.3.0",
2394
2394
+
"rx-lite": "4.0.8",
2395
2395
+
"rx-lite-aggregates": "4.0.8",
2396
2396
+
"string-width": "2.1.1",
2397
2397
+
"strip-ansi": "4.0.0",
2398
2398
+
"through": "2.3.8"
2399
2399
+
},
2400
2400
+
"dependencies": {
2401
2401
+
"ansi-regex": {
2402
2402
+
"version": "3.0.0",
2403
2403
+
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz",
2404
2404
+
"integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=",
2405
2405
+
"dev": true
2406
2406
+
},
2407
2407
+
"strip-ansi": {
2408
2408
+
"version": "4.0.0",
2409
2409
+
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz",
2410
2410
+
"integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=",
2411
2411
+
"dev": true,
2412
2412
+
"requires": {
2413
2413
+
"ansi-regex": "3.0.0"
2414
2414
+
}
2415
2415
+
}
2416
2416
+
}
2417
2417
+
},
2418
2418
+
"iron": {
2419
2419
+
"version": "5.0.4",
2420
2420
+
"resolved": "https://registry.npmjs.org/iron/-/iron-5.0.4.tgz",
2421
2421
+
"integrity": "sha512-7iQ5/xFMIYaNt9g2oiNiWdhrOTdRUMFaWENUd0KghxwPUhrIH8DUY8FEyLNTTzf75jaII+jMexLdY/2HfV61RQ==",
2422
2422
+
"requires": {
2423
2423
+
"boom": "7.1.1",
2424
2424
+
"cryptiles": "4.1.1",
2425
2425
+
"hoek": "5.0.2"
2426
2426
+
}
2427
2427
+
},
2428
2428
+
"is-arrayish": {
2429
2429
+
"version": "0.3.1",
2430
2430
+
"resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.1.tgz",
2431
2431
+
"integrity": "sha1-wt/DhquqDD4zxI2z/ocFnmkGXv0="
2432
2432
+
},
2433
2433
+
"is-binary-path": {
2434
2434
+
"version": "1.0.1",
2435
2435
+
"resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz",
2436
2436
+
"integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=",
2437
2437
+
"requires": {
2438
2438
+
"binary-extensions": "1.11.0"
2439
2439
+
}
2440
2440
+
},
2441
2441
+
"is-buffer": {
2442
2442
+
"version": "1.1.6",
2443
2443
+
"resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
2444
2444
+
"integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w=="
2445
2445
+
},
2446
2446
+
"is-builtin-module": {
2447
2447
+
"version": "1.0.0",
2448
2448
+
"resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz",
2449
2449
+
"integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=",
2450
2450
+
"dev": true,
2451
2451
+
"requires": {
2452
2452
+
"builtin-modules": "1.1.1"
2453
2453
+
}
2454
2454
+
},
2455
2455
+
"is-dotfile": {
2456
2456
+
"version": "1.0.3",
2457
2457
+
"resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz",
2458
2458
+
"integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE="
2459
2459
+
},
2460
2460
+
"is-equal-shallow": {
2461
2461
+
"version": "0.1.3",
2462
2462
+
"resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz",
2463
2463
+
"integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=",
2464
2464
+
"requires": {
2465
2465
+
"is-primitive": "2.0.0"
2466
2466
+
}
2467
2467
+
},
2468
2468
+
"is-extendable": {
2469
2469
+
"version": "0.1.1",
2470
2470
+
"resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
2471
2471
+
"integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik="
2472
2472
+
},
2473
2473
+
"is-extglob": {
2474
2474
+
"version": "1.0.0",
2475
2475
+
"resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz",
2476
2476
+
"integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA="
2477
2477
+
},
2478
2478
+
"is-fullwidth-code-point": {
2479
2479
+
"version": "2.0.0",
2480
2480
+
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
2481
2481
+
"integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8="
2482
2482
+
},
2483
2483
+
"is-glob": {
2484
2484
+
"version": "2.0.1",
2485
2485
+
"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz",
2486
2486
+
"integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=",
2487
2487
+
"requires": {
2488
2488
+
"is-extglob": "1.0.0"
2489
2489
+
}
2490
2490
+
},
2491
2491
+
"is-installed-globally": {
2492
2492
+
"version": "0.1.0",
2493
2493
+
"resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.1.0.tgz",
2494
2494
+
"integrity": "sha1-Df2Y9akRFxbdU13aZJL2e/PSWoA=",
2495
2495
+
"requires": {
2496
2496
+
"global-dirs": "0.1.1",
2497
2497
+
"is-path-inside": "1.0.0"
2498
2498
+
}
2499
2499
+
},
2500
2500
+
"is-invalid-path": {
2501
2501
+
"version": "0.1.0",
2502
2502
+
"resolved": "https://registry.npmjs.org/is-invalid-path/-/is-invalid-path-0.1.0.tgz",
2503
2503
+
"integrity": "sha1-MHqFWzzxqTi0TqcNLGEQYFNxTzQ=",
2504
2504
+
"requires": {
2505
2505
+
"is-glob": "2.0.1"
2506
2506
+
}
2507
2507
+
},
2508
2508
+
"is-npm": {
2509
2509
+
"version": "1.0.0",
2510
2510
+
"resolved": "https://registry.npmjs.org/is-npm/-/is-npm-1.0.0.tgz",
2511
2511
+
"integrity": "sha1-8vtjpl5JBbQGyGBydloaTceTufQ="
2512
2512
+
},
2513
2513
+
"is-number": {
2514
2514
+
"version": "2.1.0",
2515
2515
+
"resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz",
2516
2516
+
"integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=",
2517
2517
+
"requires": {
2518
2518
+
"kind-of": "3.2.2"
2519
2519
+
}
2520
2520
+
},
2521
2521
+
"is-obj": {
2522
2522
+
"version": "1.0.1",
2523
2523
+
"resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz",
2524
2524
+
"integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8="
2525
2525
+
},
2526
2526
+
"is-object": {
2527
2527
+
"version": "1.0.1",
2528
2528
+
"resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.1.tgz",
2529
2529
+
"integrity": "sha1-iVJojF7C/9awPsyF52ngKQMINHA="
2530
2530
+
},
2531
2531
+
"is-path-cwd": {
2532
2532
+
"version": "1.0.0",
2533
2533
+
"resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz",
2534
2534
+
"integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=",
2535
2535
+
"dev": true
2536
2536
+
},
2537
2537
+
"is-path-in-cwd": {
2538
2538
+
"version": "1.0.0",
2539
2539
+
"resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz",
2540
2540
+
"integrity": "sha1-ZHdYK4IU1gI0YJRWcAO+ip6sBNw=",
2541
2541
+
"dev": true,
2542
2542
+
"requires": {
2543
2543
+
"is-path-inside": "1.0.0"
2544
2544
+
}
2545
2545
+
},
2546
2546
+
"is-path-inside": {
2547
2547
+
"version": "1.0.0",
2548
2548
+
"resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.0.tgz",
2549
2549
+
"integrity": "sha1-/AbloWg/vaE95mev9xe7wQpI838=",
2550
2550
+
"requires": {
2551
2551
+
"path-is-inside": "1.0.2"
2552
2552
+
}
2553
2553
+
},
2554
2554
+
"is-posix-bracket": {
2555
2555
+
"version": "0.1.1",
2556
2556
+
"resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz",
2557
2557
+
"integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q="
2558
2558
+
},
2559
2559
+
"is-primitive": {
2560
2560
+
"version": "2.0.0",
2561
2561
+
"resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz",
2562
2562
+
"integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU="
2563
2563
+
},
2564
2564
+
"is-promise": {
2565
2565
+
"version": "2.1.0",
2566
2566
+
"resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz",
2567
2567
+
"integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=",
2568
2568
+
"dev": true
2569
2569
+
},
2570
2570
+
"is-redirect": {
2571
2571
+
"version": "1.0.0",
2572
2572
+
"resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz",
2573
2573
+
"integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ="
2574
2574
+
},
2575
2575
+
"is-resolvable": {
2576
2576
+
"version": "1.0.0",
2577
2577
+
"resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.0.0.tgz",
2578
2578
+
"integrity": "sha1-jfV8YeouPFAUCNEA+wE8+NbgzGI=",
2579
2579
+
"dev": true,
2580
2580
+
"requires": {
2581
2581
+
"tryit": "1.0.3"
2582
2582
+
}
2583
2583
+
},
2584
2584
+
"is-retry-allowed": {
2585
2585
+
"version": "1.1.0",
2586
2586
+
"resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz",
2587
2587
+
"integrity": "sha1-EaBgVotnM5REAz0BJaYaINVk+zQ="
2588
2588
+
},
2589
2589
+
"is-stream": {
2590
2590
+
"version": "1.1.0",
2591
2591
+
"resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz",
2592
2592
+
"integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ="
2593
2593
+
},
2594
2594
+
"is-valid-path": {
2595
2595
+
"version": "0.1.1",
2596
2596
+
"resolved": "https://registry.npmjs.org/is-valid-path/-/is-valid-path-0.1.1.tgz",
2597
2597
+
"integrity": "sha1-EQ+f90w39mPh7HkV60UfLbk6yd8=",
2598
2598
+
"requires": {
2599
2599
+
"is-invalid-path": "0.1.0"
2600
2600
+
}
2601
2601
+
},
2602
2602
+
"isarray": {
2603
2603
+
"version": "0.0.1",
2604
2604
+
"resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
2605
2605
+
"integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8="
2606
2606
+
},
2607
2607
+
"isemail": {
2608
2608
+
"version": "3.0.0",
2609
2609
+
"resolved": "https://registry.npmjs.org/isemail/-/isemail-3.0.0.tgz",
2610
2610
+
"integrity": "sha512-rz0ng/c+fX+zACpLgDB8fnUQ845WSU06f4hlhk4K8TJxmR6f5hyvitu9a9JdMD7aq/P4E0XdG1uaab2OiXgHlA==",
2611
2611
+
"requires": {
2612
2612
+
"punycode": "2.1.0"
2613
2613
+
}
2614
2614
+
},
2615
2615
+
"isexe": {
2616
2616
+
"version": "2.0.0",
2617
2617
+
"resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
2618
2618
+
"integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA="
2619
2619
+
},
2620
2620
+
"isobject": {
2621
2621
+
"version": "2.1.0",
2622
2622
+
"resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz",
2623
2623
+
"integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=",
2624
2624
+
"requires": {
2625
2625
+
"isarray": "1.0.0"
2626
2626
+
},
2627
2627
+
"dependencies": {
2628
2628
+
"isarray": {
2629
2629
+
"version": "1.0.0",
2630
2630
+
"resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
2631
2631
+
"integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE="
2632
2632
+
}
2633
2633
+
}
2634
2634
+
},
2635
2635
+
"isurl": {
2636
2636
+
"version": "1.0.0",
2637
2637
+
"resolved": "https://registry.npmjs.org/isurl/-/isurl-1.0.0.tgz",
2638
2638
+
"integrity": "sha512-1P/yWsxPlDtn7QeRD+ULKQPaIaN6yF368GZ2vDfv0AL0NwpStafjWCDDdn0k8wgFMWpVAqG7oJhxHnlud42i9w==",
2639
2639
+
"requires": {
2640
2640
+
"has-to-string-tag-x": "1.4.1",
2641
2641
+
"is-object": "1.0.1"
2642
2642
+
}
2643
2643
+
},
2644
2644
+
"items-promise": {
2645
2645
+
"version": "1.0.0",
2646
2646
+
"resolved": "https://registry.npmjs.org/items-promise/-/items-promise-1.0.0.tgz",
2647
2647
+
"integrity": "sha512-t+3w4E51IlviTn1b/gesEsH9Jf0gEs2+VhSbwgMaVyK2IxXYSwZkL6sOmr+FBhMT0sSFzcc4Rn5X7sz6NvS2GQ=="
2648
2648
+
},
2649
2649
+
"joi": {
2650
2650
+
"version": "13.0.2",
2651
2651
+
"resolved": "https://registry.npmjs.org/joi/-/joi-13.0.2.tgz",
2652
2652
+
"integrity": "sha512-kVka3LaHQyENvcMW4WJPSepGM43oCofcKxfs9HbbKd/FrwBAAt4lNNTPKOzSMmV53GIspmNO4U3O2TzoGvxxCA==",
2653
2653
+
"requires": {
2654
2654
+
"hoek": "5.0.2",
2655
2655
+
"isemail": "3.0.0",
2656
2656
+
"topo": "3.0.0"
2657
2657
+
}
2658
2658
+
},
2659
2659
+
"js-tokens": {
2660
2660
+
"version": "3.0.2",
2661
2661
+
"resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz",
2662
2662
+
"integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=",
2663
2663
+
"dev": true
2664
2664
+
},
2665
2665
+
"js-yaml": {
2666
2666
+
"version": "3.10.0",
2667
2667
+
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.10.0.tgz",
2668
2668
+
"integrity": "sha512-O2v52ffjLa9VeM43J4XocZE//WT9N0IiwDa3KSHH7Tu8CtH+1qM8SIZvnsTh6v+4yFy5KUY3BHUVwjpfAWsjIA==",
2669
2669
+
"dev": true,
2670
2670
+
"requires": {
2671
2671
+
"argparse": "1.0.9",
2672
2672
+
"esprima": "4.0.0"
2673
2673
+
}
2674
2674
+
},
2675
2675
+
"json-schema-traverse": {
2676
2676
+
"version": "0.3.1",
2677
2677
+
"resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz",
2678
2678
+
"integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=",
2679
2679
+
"dev": true
2680
2680
+
},
2681
2681
+
"json-stable-stringify-without-jsonify": {
2682
2682
+
"version": "1.0.1",
2683
2683
+
"resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
2684
2684
+
"integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=",
2685
2685
+
"dev": true
2686
2686
+
},
2687
2687
+
"json5": {
2688
2688
+
"version": "0.4.0",
2689
2689
+
"resolved": "https://registry.npmjs.org/json5/-/json5-0.4.0.tgz",
2690
2690
+
"integrity": "sha1-BUNS5MTIDIbAkjh31EneF2pzLI0="
2691
2691
+
},
2692
2692
+
"jsonfile": {
2693
2693
+
"version": "4.0.0",
2694
2694
+
"resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
2695
2695
+
"integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=",
2696
2696
+
"requires": {
2697
2697
+
"graceful-fs": "4.1.11"
2698
2698
+
}
2699
2699
+
},
2700
2700
+
"kind-of": {
2701
2701
+
"version": "3.2.2",
2702
2702
+
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
2703
2703
+
"integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
2704
2704
+
"requires": {
2705
2705
+
"is-buffer": "1.1.6"
2706
2706
+
}
2707
2707
+
},
2708
2708
+
"latest-version": {
2709
2709
+
"version": "3.1.0",
2710
2710
+
"resolved": "https://registry.npmjs.org/latest-version/-/latest-version-3.1.0.tgz",
2711
2711
+
"integrity": "sha1-ogU4P+oyKzO1rjsYq+4NwvNW7hU=",
2712
2712
+
"requires": {
2713
2713
+
"package-json": "4.0.1"
2714
2714
+
}
2715
2715
+
},
2716
2716
+
"levn": {
2717
2717
+
"version": "0.3.0",
2718
2718
+
"resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
2719
2719
+
"integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=",
2720
2720
+
"dev": true,
2721
2721
+
"requires": {
2722
2722
+
"prelude-ls": "1.1.2",
2723
2723
+
"type-check": "0.3.2"
2724
2724
+
}
2725
2725
+
},
2726
2726
+
"load-json-file": {
2727
2727
+
"version": "2.0.0",
2728
2728
+
"resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz",
2729
2729
+
"integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=",
2730
2730
+
"dev": true,
2731
2731
+
"requires": {
2732
2732
+
"graceful-fs": "4.1.11",
2733
2733
+
"parse-json": "2.2.0",
2734
2734
+
"pify": "2.3.0",
2735
2735
+
"strip-bom": "3.0.0"
2736
2736
+
},
2737
2737
+
"dependencies": {
2738
2738
+
"pify": {
2739
2739
+
"version": "2.3.0",
2740
2740
+
"resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
2741
2741
+
"integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
2742
2742
+
"dev": true
2743
2743
+
}
2744
2744
+
}
2745
2745
+
},
2746
2746
+
"locate-path": {
2747
2747
+
"version": "2.0.0",
2748
2748
+
"resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz",
2749
2749
+
"integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=",
2750
2750
+
"dev": true,
2751
2751
+
"requires": {
2752
2752
+
"p-locate": "2.0.0",
2753
2753
+
"path-exists": "3.0.0"
2754
2754
+
},
2755
2755
+
"dependencies": {
2756
2756
+
"path-exists": {
2757
2757
+
"version": "3.0.0",
2758
2758
+
"resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
2759
2759
+
"integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
2760
2760
+
"dev": true
2761
2761
+
}
2762
2762
+
}
2763
2763
+
},
2764
2764
+
"lodash": {
2765
2765
+
"version": "4.17.4",
2766
2766
+
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz",
2767
2767
+
"integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4="
2768
2768
+
},
2769
2769
+
"lodash._baseassign": {
2770
2770
+
"version": "3.2.0",
2771
2771
+
"resolved": "https://registry.npmjs.org/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz",
2772
2772
+
"integrity": "sha1-jDigmVAPIVrQnlnxci/QxSv+Ck4=",
2773
2773
+
"requires": {
2774
2774
+
"lodash._basecopy": "3.0.1",
2775
2775
+
"lodash.keys": "3.1.2"
2776
2776
+
}
2777
2777
+
},
2778
2778
+
"lodash._basecopy": {
2779
2779
+
"version": "3.0.1",
2780
2780
+
"resolved": "https://registry.npmjs.org/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz",
2781
2781
+
"integrity": "sha1-jaDmqHbPNEwK2KVIghEd08XHyjY="
2782
2782
+
},
2783
2783
+
"lodash._bindcallback": {
2784
2784
+
"version": "3.0.1",
2785
2785
+
"resolved": "https://registry.npmjs.org/lodash._bindcallback/-/lodash._bindcallback-3.0.1.tgz",
2786
2786
+
"integrity": "sha1-5THCdkTPi1epnhftlbNcdIeJOS4="
2787
2787
+
},
2788
2788
+
"lodash._createassigner": {
2789
2789
+
"version": "3.1.1",
2790
2790
+
"resolved": "https://registry.npmjs.org/lodash._createassigner/-/lodash._createassigner-3.1.1.tgz",
2791
2791
+
"integrity": "sha1-g4pbri/aymOsIt7o4Z+k5taXCxE=",
2792
2792
+
"requires": {
2793
2793
+
"lodash._bindcallback": "3.0.1",
2794
2794
+
"lodash._isiterateecall": "3.0.9",
2795
2795
+
"lodash.restparam": "3.6.1"
2796
2796
+
}
2797
2797
+
},
2798
2798
+
"lodash._getnative": {
2799
2799
+
"version": "3.9.1",
2800
2800
+
"resolved": "https://registry.npmjs.org/lodash._getnative/-/lodash._getnative-3.9.1.tgz",
2801
2801
+
"integrity": "sha1-VwvH3t5G1hzc3mh9ZdPuy6o6r/U="
2802
2802
+
},
2803
2803
+
"lodash._isiterateecall": {
2804
2804
+
"version": "3.0.9",
2805
2805
+
"resolved": "https://registry.npmjs.org/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz",
2806
2806
+
"integrity": "sha1-UgOte6Ql+uhCRg5pbbnPPmqsBXw="
2807
2807
+
},
2808
2808
+
"lodash.assign": {
2809
2809
+
"version": "3.2.0",
2810
2810
+
"resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-3.2.0.tgz",
2811
2811
+
"integrity": "sha1-POnwI0tLIiPilrj6CsH+6OvKZPo=",
2812
2812
+
"requires": {
2813
2813
+
"lodash._baseassign": "3.2.0",
2814
2814
+
"lodash._createassigner": "3.1.1",
2815
2815
+
"lodash.keys": "3.1.2"
2816
2816
+
}
2817
2817
+
},
2818
2818
+
"lodash.cond": {
2819
2819
+
"version": "4.5.2",
2820
2820
+
"resolved": "https://registry.npmjs.org/lodash.cond/-/lodash.cond-4.5.2.tgz",
2821
2821
+
"integrity": "sha1-9HGh2khr5g9quVXRcRVSPdHSVdU=",
2822
2822
+
"dev": true
2823
2823
+
},
2824
2824
+
"lodash.defaults": {
2825
2825
+
"version": "3.1.2",
2826
2826
+
"resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-3.1.2.tgz",
2827
2827
+
"integrity": "sha1-xzCLGNv4vJNy1wGnNJPGEZK9Liw=",
2828
2828
+
"requires": {
2829
2829
+
"lodash.assign": "3.2.0",
2830
2830
+
"lodash.restparam": "3.6.1"
2831
2831
+
}
2832
2832
+
},
2833
2833
+
"lodash.isarguments": {
2834
2834
+
"version": "3.1.0",
2835
2835
+
"resolved": "https://registry.npmjs.org/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz",
2836
2836
+
"integrity": "sha1-L1c9hcaiQon/AGY7SRwdM4/zRYo="
2837
2837
+
},
2838
2838
+
"lodash.isarray": {
2839
2839
+
"version": "3.0.4",
2840
2840
+
"resolved": "https://registry.npmjs.org/lodash.isarray/-/lodash.isarray-3.0.4.tgz",
2841
2841
+
"integrity": "sha1-eeTriMNqgSKvhvhEqpvNhRtfu1U="
2842
2842
+
},
2843
2843
+
"lodash.keys": {
2844
2844
+
"version": "3.1.2",
2845
2845
+
"resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-3.1.2.tgz",
2846
2846
+
"integrity": "sha1-TbwEcrFWvlCgsoaFXRvQsMZWCYo=",
2847
2847
+
"requires": {
2848
2848
+
"lodash._getnative": "3.9.1",
2849
2849
+
"lodash.isarguments": "3.1.0",
2850
2850
+
"lodash.isarray": "3.0.4"
2851
2851
+
}
2852
2852
+
},
2853
2853
+
"lodash.restparam": {
2854
2854
+
"version": "3.6.1",
2855
2855
+
"resolved": "https://registry.npmjs.org/lodash.restparam/-/lodash.restparam-3.6.1.tgz",
2856
2856
+
"integrity": "sha1-k2pOMJ7zMKdkXtQUWYbIWuWyCAU="
2857
2857
+
},
2858
2858
+
"lowercase-keys": {
2859
2859
+
"version": "1.0.0",
2860
2860
+
"resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.0.tgz",
2861
2861
+
"integrity": "sha1-TjNms55/VFfjXxMkvfb4jQv8cwY="
2862
2862
+
},
2863
2863
+
"lru-cache": {
2864
2864
+
"version": "4.1.1",
2865
2865
+
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.1.tgz",
2866
2866
+
"integrity": "sha512-q4spe4KTfsAS1SUHLO0wz8Qiyf1+vMIAgpRYioFYDMNqKfHQbg+AVDH3i4fvpl71/P1L0dBl+fQi+P37UYf0ew==",
2867
2867
+
"requires": {
2868
2868
+
"pseudomap": "1.0.2",
2869
2869
+
"yallist": "2.1.2"
2870
2870
+
},
2871
2871
+
"dependencies": {
2872
2872
+
"yallist": {
2873
2873
+
"version": "2.1.2",
2874
2874
+
"resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz",
2875
2875
+
"integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI="
2876
2876
+
}
2877
2877
+
}
2878
2878
+
},
2879
2879
+
"make-dir": {
2880
2880
+
"version": "1.1.0",
2881
2881
+
"resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.1.0.tgz",
2882
2882
+
"integrity": "sha512-0Pkui4wLJ7rxvmfUvs87skoEaxmu0hCUApF8nonzpl7q//FWp9zu8W61Scz4sd/kUiqDxvUhtoam2efDyiBzcA==",
2883
2883
+
"requires": {
2884
2884
+
"pify": "3.0.0"
2885
2885
+
}
2886
2886
+
},
2887
2887
+
"map-stream": {
2888
2888
+
"version": "0.1.0",
2889
2889
+
"resolved": "https://registry.npmjs.org/map-stream/-/map-stream-0.1.0.tgz",
2890
2890
+
"integrity": "sha1-5WqpTEyAVaFkBKBnS3jyFffI4ZQ="
2891
2891
+
},
2892
2892
+
"micromatch": {
2893
2893
+
"version": "2.3.11",
2894
2894
+
"resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz",
2895
2895
+
"integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=",
2896
2896
+
"requires": {
2897
2897
+
"arr-diff": "2.0.0",
2898
2898
+
"array-unique": "0.2.1",
2899
2899
+
"braces": "1.8.5",
2900
2900
+
"expand-brackets": "0.1.5",
2901
2901
+
"extglob": "0.3.2",
2902
2902
+
"filename-regex": "2.0.1",
2903
2903
+
"is-extglob": "1.0.0",
2904
2904
+
"is-glob": "2.0.1",
2905
2905
+
"kind-of": "3.2.2",
2906
2906
+
"normalize-path": "2.1.1",
2907
2907
+
"object.omit": "2.0.1",
2908
2908
+
"parse-glob": "3.0.4",
2909
2909
+
"regex-cache": "0.4.4"
2910
2910
+
}
2911
2911
+
},
2912
2912
+
"mime-db": {
2913
2913
+
"version": "1.31.0",
2914
2914
+
"resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.31.0.tgz",
2915
2915
+
"integrity": "sha512-oB3w9lx50CMd6nfonoV5rBRUbJtjMifUHaFb5MfzjC8ksAIfVjT0BsX46SjjqBz7n9JGTrTX3paIeLSK+rS5fQ=="
2916
2916
+
},
2917
2917
+
"mimic-fn": {
2918
2918
+
"version": "1.1.0",
2919
2919
+
"resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.1.0.tgz",
2920
2920
+
"integrity": "sha1-5md4PZLonb00KBi1IwudYqZyrRg=",
2921
2921
+
"dev": true
2922
2922
+
},
2923
2923
+
"mimic-response": {
2924
2924
+
"version": "1.0.0",
2925
2925
+
"resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.0.tgz",
2926
2926
+
"integrity": "sha1-3z02Uqc/3ta5sLJBRub9BSNTRY4="
2927
2927
+
},
2928
2928
+
"mimos": {
2929
2929
+
"version": "4.0.0",
2930
2930
+
"resolved": "https://registry.npmjs.org/mimos/-/mimos-4.0.0.tgz",
2931
2931
+
"integrity": "sha512-JvlvRLqGIlk+AYypWrbrDmhsM+6JVx/xBM5S3AMwTBz1trPCEoPN/swO2L4Wu653fL7oJdgk8DMQyG/Gq3JkZg==",
2932
2932
+
"requires": {
2933
2933
+
"hoek": "5.0.2",
2934
2934
+
"mime-db": "1.31.0"
2935
2935
+
}
2936
2936
+
},
2937
2937
+
"minimatch": {
2938
2938
+
"version": "3.0.4",
2939
2939
+
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
2940
2940
+
"integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
2941
2941
+
"requires": {
2942
2942
+
"brace-expansion": "1.1.8"
2943
2943
+
}
2944
2944
+
},
2945
2945
+
"minimist": {
2946
2946
+
"version": "0.0.8",
2947
2947
+
"resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
2948
2948
+
"integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0="
2949
2949
+
},
2950
2950
+
"minipass": {
2951
2951
+
"version": "2.2.1",
2952
2952
+
"resolved": "https://registry.npmjs.org/minipass/-/minipass-2.2.1.tgz",
2953
2953
+
"integrity": "sha512-u1aUllxPJUI07cOqzR7reGmQxmCqlH88uIIsf6XZFEWgw7gXKpJdR+5R9Y3KEDmWYkdIz9wXZs3C0jOPxejk/Q==",
2954
2954
+
"requires": {
2955
2955
+
"yallist": "3.0.2"
2956
2956
+
}
2957
2957
+
},
2958
2958
+
"minizlib": {
2959
2959
+
"version": "1.0.4",
2960
2960
+
"resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.0.4.tgz",
2961
2961
+
"integrity": "sha512-sN4U9tIJtBRwKbwgFh9qJfrPIQ/GGTRr1MGqkgOeMTLy8/lM0FcWU//FqlnZ3Vb7gJ+Mxh3FOg1EklibdajbaQ==",
2962
2962
+
"requires": {
2963
2963
+
"minipass": "2.2.1"
2964
2964
+
}
2965
2965
+
},
2966
2966
+
"mkdirp": {
2967
2967
+
"version": "0.5.1",
2968
2968
+
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
2969
2969
+
"integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
2970
2970
+
"requires": {
2971
2971
+
"minimist": "0.0.8"
2972
2972
+
}
2973
2973
+
},
2974
2974
+
"moment": {
2975
2975
+
"version": "2.19.3",
2976
2976
+
"resolved": "https://registry.npmjs.org/moment/-/moment-2.19.3.tgz",
2977
2977
+
"integrity": "sha1-vbmdJw1tf9p4zA+6zoVeJ/59pp8="
2978
2978
+
},
2979
2979
+
"moment-timezone": {
2980
2980
+
"version": "0.5.14",
2981
2981
+
"resolved": "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.14.tgz",
2982
2982
+
"integrity": "sha1-TrOP+VOLgBCLpGekWPPtQmjM/LE=",
2983
2983
+
"requires": {
2984
2984
+
"moment": "2.19.3"
2985
2985
+
}
2986
2986
+
},
2987
2987
+
"ms": {
2988
2988
+
"version": "2.0.0",
2989
2989
+
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
2990
2990
+
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
2991
2991
+
},
2992
2992
+
"mute-stream": {
2993
2993
+
"version": "0.0.7",
2994
2994
+
"resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz",
2995
2995
+
"integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=",
2996
2996
+
"dev": true
2997
2997
+
},
2998
2998
+
"nan": {
2999
2999
+
"version": "2.8.0",
3000
3000
+
"resolved": "https://registry.npmjs.org/nan/-/nan-2.8.0.tgz",
3001
3001
+
"integrity": "sha1-7XFfP+neArV6XmJS2QqWZ14fCFo="
3002
3002
+
},
3003
3003
+
"natural-compare": {
3004
3004
+
"version": "1.4.0",
3005
3005
+
"resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
3006
3006
+
"integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=",
3007
3007
+
"dev": true
3008
3008
+
},
3009
3009
+
"nigel": {
3010
3010
+
"version": "3.0.0",
3011
3011
+
"resolved": "https://registry.npmjs.org/nigel/-/nigel-3.0.0.tgz",
3012
3012
+
"integrity": "sha512-ufFVFCe1zS/pfIQzQNa5uJxB8v8IcVTUn1zyPvQwb4CQGRxxBfdQPSXpEnI6ZzIwbV5L+GuAoRhYgcVSvTO7fA==",
3013
3013
+
"requires": {
3014
3014
+
"hoek": "5.0.2",
3015
3015
+
"vise": "3.0.0"
3016
3016
+
}
3017
3017
+
},
3018
3018
+
"nodemon": {
3019
3019
+
"version": "1.12.1",
3020
3020
+
"resolved": "https://registry.npmjs.org/nodemon/-/nodemon-1.12.1.tgz",
3021
3021
+
"integrity": "sha1-mWpW3EnZ8Wu/G3ik3gjxNjSzh40=",
3022
3022
+
"requires": {
3023
3023
+
"chokidar": "1.7.0",
3024
3024
+
"debug": "2.6.9",
3025
3025
+
"es6-promise": "3.3.1",
3026
3026
+
"ignore-by-default": "1.0.1",
3027
3027
+
"lodash.defaults": "3.1.2",
3028
3028
+
"minimatch": "3.0.4",
3029
3029
+
"ps-tree": "1.1.0",
3030
3030
+
"touch": "3.1.0",
3031
3031
+
"undefsafe": "0.0.3",
3032
3032
+
"update-notifier": "2.3.0"
3033
3033
+
}
3034
3034
+
},
3035
3035
+
"nopt": {
3036
3036
+
"version": "1.0.10",
3037
3037
+
"resolved": "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz",
3038
3038
+
"integrity": "sha1-bd0hvSoxQXuScn3Vhfim83YI6+4=",
3039
3039
+
"requires": {
3040
3040
+
"abbrev": "1.1.1"
3041
3041
+
}
3042
3042
+
},
3043
3043
+
"normalize-package-data": {
3044
3044
+
"version": "2.4.0",
3045
3045
+
"resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz",
3046
3046
+
"integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==",
3047
3047
+
"dev": true,
3048
3048
+
"requires": {
3049
3049
+
"hosted-git-info": "2.5.0",
3050
3050
+
"is-builtin-module": "1.0.0",
3051
3051
+
"semver": "5.4.1",
3052
3052
+
"validate-npm-package-license": "3.0.1"
3053
3053
+
}
3054
3054
+
},
3055
3055
+
"normalize-path": {
3056
3056
+
"version": "2.1.1",
3057
3057
+
"resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz",
3058
3058
+
"integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=",
3059
3059
+
"requires": {
3060
3060
+
"remove-trailing-separator": "1.1.0"
3061
3061
+
}
3062
3062
+
},
3063
3063
+
"npm-conf": {
3064
3064
+
"version": "1.1.3",
3065
3065
+
"resolved": "https://registry.npmjs.org/npm-conf/-/npm-conf-1.1.3.tgz",
3066
3066
+
"integrity": "sha512-Yic4bZHJOt9RCFbRP3GgpqhScOY4HH3V2P8yBj6CeYq118Qr+BLXqT2JvpJ00mryLESpgOxf5XlFv4ZjXxLScw==",
3067
3067
+
"requires": {
3068
3068
+
"config-chain": "1.1.11",
3069
3069
+
"pify": "3.0.0"
3070
3070
+
}
3071
3071
+
},
3072
3072
+
"npm-run-path": {
3073
3073
+
"version": "2.0.2",
3074
3074
+
"resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz",
3075
3075
+
"integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=",
3076
3076
+
"requires": {
3077
3077
+
"path-key": "2.0.1"
3078
3078
+
}
3079
3079
+
},
3080
3080
+
"nth-check": {
3081
3081
+
"version": "1.0.1",
3082
3082
+
"resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.1.tgz",
3083
3083
+
"integrity": "sha1-mSms32KPwsQQmN6rgqxYDPFJquQ=",
3084
3084
+
"requires": {
3085
3085
+
"boolbase": "1.0.0"
3086
3086
+
}
3087
3087
+
},
3088
3088
+
"number-is-nan": {
3089
3089
+
"version": "1.0.1",
3090
3090
+
"resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz",
3091
3091
+
"integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0="
3092
3092
+
},
3093
3093
+
"object-assign": {
3094
3094
+
"version": "4.1.1",
3095
3095
+
"resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
3096
3096
+
"integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=",
3097
3097
+
"dev": true
3098
3098
+
},
3099
3099
+
"object.omit": {
3100
3100
+
"version": "2.0.1",
3101
3101
+
"resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz",
3102
3102
+
"integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=",
3103
3103
+
"requires": {
3104
3104
+
"for-own": "0.1.5",
3105
3105
+
"is-extendable": "0.1.1"
3106
3106
+
}
3107
3107
+
},
3108
3108
+
"once": {
3109
3109
+
"version": "1.4.0",
3110
3110
+
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
3111
3111
+
"integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
3112
3112
+
"requires": {
3113
3113
+
"wrappy": "1.0.2"
3114
3114
+
}
3115
3115
+
},
3116
3116
+
"onetime": {
3117
3117
+
"version": "2.0.1",
3118
3118
+
"resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz",
3119
3119
+
"integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=",
3120
3120
+
"dev": true,
3121
3121
+
"requires": {
3122
3122
+
"mimic-fn": "1.1.0"
3123
3123
+
}
3124
3124
+
},
3125
3125
+
"optionator": {
3126
3126
+
"version": "0.8.2",
3127
3127
+
"resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz",
3128
3128
+
"integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=",
3129
3129
+
"dev": true,
3130
3130
+
"requires": {
3131
3131
+
"deep-is": "0.1.3",
3132
3132
+
"fast-levenshtein": "2.0.6",
3133
3133
+
"levn": "0.3.0",
3134
3134
+
"prelude-ls": "1.1.2",
3135
3135
+
"type-check": "0.3.2",
3136
3136
+
"wordwrap": "1.0.0"
3137
3137
+
}
3138
3138
+
},
3139
3139
+
"os-homedir": {
3140
3140
+
"version": "1.0.2",
3141
3141
+
"resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz",
3142
3142
+
"integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M="
3143
3143
+
},
3144
3144
+
"os-tmpdir": {
3145
3145
+
"version": "1.0.2",
3146
3146
+
"resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
3147
3147
+
"integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
3148
3148
+
"dev": true
3149
3149
+
},
3150
3150
+
"p-finally": {
3151
3151
+
"version": "1.0.0",
3152
3152
+
"resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz",
3153
3153
+
"integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4="
3154
3154
+
},
3155
3155
+
"p-limit": {
3156
3156
+
"version": "1.1.0",
3157
3157
+
"resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.1.0.tgz",
3158
3158
+
"integrity": "sha1-sH/y2aXYi+yAYDWJWiurZqJ5iLw=",
3159
3159
+
"dev": true
3160
3160
+
},
3161
3161
+
"p-locate": {
3162
3162
+
"version": "2.0.0",
3163
3163
+
"resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz",
3164
3164
+
"integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=",
3165
3165
+
"dev": true,
3166
3166
+
"requires": {
3167
3167
+
"p-limit": "1.1.0"
3168
3168
+
}
3169
3169
+
},
3170
3170
+
"package-json": {
3171
3171
+
"version": "4.0.1",
3172
3172
+
"resolved": "https://registry.npmjs.org/package-json/-/package-json-4.0.1.tgz",
3173
3173
+
"integrity": "sha1-iGmgQBJTZhxMTKPabCEh7VVfXu0=",
3174
3174
+
"requires": {
3175
3175
+
"got": "6.7.1",
3176
3176
+
"registry-auth-token": "3.3.1",
3177
3177
+
"registry-url": "3.1.0",
3178
3178
+
"semver": "5.4.1"
3179
3179
+
}
3180
3180
+
},
3181
3181
+
"parse-glob": {
3182
3182
+
"version": "3.0.4",
3183
3183
+
"resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz",
3184
3184
+
"integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=",
3185
3185
+
"requires": {
3186
3186
+
"glob-base": "0.3.0",
3187
3187
+
"is-dotfile": "1.0.3",
3188
3188
+
"is-extglob": "1.0.0",
3189
3189
+
"is-glob": "2.0.1"
3190
3190
+
}
3191
3191
+
},
3192
3192
+
"parse-json": {
3193
3193
+
"version": "2.2.0",
3194
3194
+
"resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz",
3195
3195
+
"integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=",
3196
3196
+
"dev": true,
3197
3197
+
"requires": {
3198
3198
+
"error-ex": "1.3.1"
3199
3199
+
}
3200
3200
+
},
3201
3201
+
"path-exists": {
3202
3202
+
"version": "2.1.0",
3203
3203
+
"resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz",
3204
3204
+
"integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=",
3205
3205
+
"dev": true,
3206
3206
+
"requires": {
3207
3207
+
"pinkie-promise": "2.0.1"
3208
3208
+
}
3209
3209
+
},
3210
3210
+
"path-is-absolute": {
3211
3211
+
"version": "1.0.1",
3212
3212
+
"resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
3213
3213
+
"integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18="
3214
3214
+
},
3215
3215
+
"path-is-inside": {
3216
3216
+
"version": "1.0.2",
3217
3217
+
"resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz",
3218
3218
+
"integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM="
3219
3219
+
},
3220
3220
+
"path-key": {
3221
3221
+
"version": "2.0.1",
3222
3222
+
"resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz",
3223
3223
+
"integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A="
3224
3224
+
},
3225
3225
+
"path-parse": {
3226
3226
+
"version": "1.0.5",
3227
3227
+
"resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.5.tgz",
3228
3228
+
"integrity": "sha1-PBrfhx6pzWyUMbbqK9dKD/BVxME=",
3229
3229
+
"dev": true
3230
3230
+
},
3231
3231
+
"path-type": {
3232
3232
+
"version": "2.0.0",
3233
3233
+
"resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz",
3234
3234
+
"integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=",
3235
3235
+
"dev": true,
3236
3236
+
"requires": {
3237
3237
+
"pify": "2.3.0"
3238
3238
+
},
3239
3239
+
"dependencies": {
3240
3240
+
"pify": {
3241
3241
+
"version": "2.3.0",
3242
3242
+
"resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
3243
3243
+
"integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
3244
3244
+
"dev": true
3245
3245
+
}
3246
3246
+
}
3247
3247
+
},
3248
3248
+
"pause-stream": {
3249
3249
+
"version": "0.0.11",
3250
3250
+
"resolved": "https://registry.npmjs.org/pause-stream/-/pause-stream-0.0.11.tgz",
3251
3251
+
"integrity": "sha1-/lo0sMvOErWqaitAPuLnO2AvFEU=",
3252
3252
+
"requires": {
3253
3253
+
"through": "2.3.8"
3254
3254
+
}
3255
3255
+
},
3256
3256
+
"pez": {
3257
3257
+
"version": "4.0.1",
3258
3258
+
"resolved": "https://registry.npmjs.org/pez/-/pez-4.0.1.tgz",
3259
3259
+
"integrity": "sha512-0c/SoW5MY7lPdc5U1Q/ixyjLZbluGWJonHVmn4mKwSq7vgO9+a9WzoCopHubIwkot6Q+fevNVElaA+1M9SqHrA==",
3260
3260
+
"requires": {
3261
3261
+
"b64": "4.0.0",
3262
3262
+
"boom": "7.1.1",
3263
3263
+
"content": "4.0.3",
3264
3264
+
"hoek": "5.0.2",
3265
3265
+
"nigel": "3.0.0"
3266
3266
+
}
3267
3267
+
},
3268
3268
+
"pify": {
3269
3269
+
"version": "3.0.0",
3270
3270
+
"resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
3271
3271
+
"integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY="
3272
3272
+
},
3273
3273
+
"pinkie": {
3274
3274
+
"version": "2.0.4",
3275
3275
+
"resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz",
3276
3276
+
"integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=",
3277
3277
+
"dev": true
3278
3278
+
},
3279
3279
+
"pinkie-promise": {
3280
3280
+
"version": "2.0.1",
3281
3281
+
"resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz",
3282
3282
+
"integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=",
3283
3283
+
"dev": true,
3284
3284
+
"requires": {
3285
3285
+
"pinkie": "2.0.4"
3286
3286
+
}
3287
3287
+
},
3288
3288
+
"pkg-dir": {
3289
3289
+
"version": "1.0.0",
3290
3290
+
"resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-1.0.0.tgz",
3291
3291
+
"integrity": "sha1-ektQio1bstYp1EcFb/TpyTFM89Q=",
3292
3292
+
"dev": true,
3293
3293
+
"requires": {
3294
3294
+
"find-up": "1.1.2"
3295
3295
+
}
3296
3296
+
},
3297
3297
+
"pluralize": {
3298
3298
+
"version": "7.0.0",
3299
3299
+
"resolved": "https://registry.npmjs.org/pluralize/-/pluralize-7.0.0.tgz",
3300
3300
+
"integrity": "sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow==",
3301
3301
+
"dev": true
3302
3302
+
},
3303
3303
+
"podium": {
3304
3304
+
"version": "3.1.2",
3305
3305
+
"resolved": "https://registry.npmjs.org/podium/-/podium-3.1.2.tgz",
3306
3306
+
"integrity": "sha512-18VrjJAduIdPv7d9zWsfmKxTj3cQTYC5Pv5gtKxcWujYBpGbV+mhNSPYhlHW5xeWoazYyKfB9FEsPT12r5rY1A==",
3307
3307
+
"requires": {
3308
3308
+
"hoek": "5.0.2",
3309
3309
+
"joi": "13.0.2"
3310
3310
+
}
3311
3311
+
},
3312
3312
+
"prelude-ls": {
3313
3313
+
"version": "1.1.2",
3314
3314
+
"resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
3315
3315
+
"integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=",
3316
3316
+
"dev": true
3317
3317
+
},
3318
3318
+
"prepend-http": {
3319
3319
+
"version": "1.0.4",
3320
3320
+
"resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz",
3321
3321
+
"integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw="
3322
3322
+
},
3323
3323
+
"preserve": {
3324
3324
+
"version": "0.2.0",
3325
3325
+
"resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz",
3326
3326
+
"integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks="
3327
3327
+
},
3328
3328
+
"pretty-error": {
3329
3329
+
"version": "2.1.1",
3330
3330
+
"resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-2.1.1.tgz",
3331
3331
+
"integrity": "sha1-X0+HyPkeWuPzuoerTPXgOxoX8aM=",
3332
3332
+
"requires": {
3333
3333
+
"renderkid": "2.0.1",
3334
3334
+
"utila": "0.4.0"
3335
3335
+
}
3336
3336
+
},
3337
3337
+
"process-nextick-args": {
3338
3338
+
"version": "1.0.7",
3339
3339
+
"resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz",
3340
3340
+
"integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M="
3341
3341
+
},
3342
3342
+
"progress": {
3343
3343
+
"version": "2.0.0",
3344
3344
+
"resolved": "https://registry.npmjs.org/progress/-/progress-2.0.0.tgz",
3345
3345
+
"integrity": "sha1-ihvjZr+Pwj2yvSPxDG/pILQ4nR8=",
3346
3346
+
"dev": true
3347
3347
+
},
3348
3348
+
"proto-list": {
3349
3349
+
"version": "1.2.4",
3350
3350
+
"resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz",
3351
3351
+
"integrity": "sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk="
3352
3352
+
},
3353
3353
+
"ps-tree": {
3354
3354
+
"version": "1.1.0",
3355
3355
+
"resolved": "https://registry.npmjs.org/ps-tree/-/ps-tree-1.1.0.tgz",
3356
3356
+
"integrity": "sha1-tCGyQUDWID8e08dplrRCewjowBQ=",
3357
3357
+
"requires": {
3358
3358
+
"event-stream": "3.3.4"
3359
3359
+
}
3360
3360
+
},
3361
3361
+
"pseudomap": {
3362
3362
+
"version": "1.0.2",
3363
3363
+
"resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz",
3364
3364
+
"integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM="
3365
3365
+
},
3366
3366
+
"punycode": {
3367
3367
+
"version": "2.1.0",
3368
3368
+
"resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.0.tgz",
3369
3369
+
"integrity": "sha1-X4Y+3Im5bbCQdLrXlHvwkFbKTn0="
3370
3370
+
},
3371
3371
+
"randomatic": {
3372
3372
+
"version": "1.1.7",
3373
3373
+
"resolved": "https://registry.npmjs.org/randomatic/-/randomatic-1.1.7.tgz",
3374
3374
+
"integrity": "sha512-D5JUjPyJbaJDkuAazpVnSfVkLlpeO3wDlPROTMLGKG1zMFNFRgrciKo1ltz/AzNTkqE0HzDx655QOL51N06how==",
3375
3375
+
"requires": {
3376
3376
+
"is-number": "3.0.0",
3377
3377
+
"kind-of": "4.0.0"
3378
3378
+
},
3379
3379
+
"dependencies": {
3380
3380
+
"is-number": {
3381
3381
+
"version": "3.0.0",
3382
3382
+
"resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz",
3383
3383
+
"integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=",
3384
3384
+
"requires": {
3385
3385
+
"kind-of": "3.2.2"
3386
3386
+
},
3387
3387
+
"dependencies": {
3388
3388
+
"kind-of": {
3389
3389
+
"version": "3.2.2",
3390
3390
+
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
3391
3391
+
"integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
3392
3392
+
"requires": {
3393
3393
+
"is-buffer": "1.1.6"
3394
3394
+
}
3395
3395
+
}
3396
3396
+
}
3397
3397
+
},
3398
3398
+
"kind-of": {
3399
3399
+
"version": "4.0.0",
3400
3400
+
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz",
3401
3401
+
"integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=",
3402
3402
+
"requires": {
3403
3403
+
"is-buffer": "1.1.6"
3404
3404
+
}
3405
3405
+
}
3406
3406
+
}
3407
3407
+
},
3408
3408
+
"rc": {
3409
3409
+
"version": "1.2.2",
3410
3410
+
"resolved": "https://registry.npmjs.org/rc/-/rc-1.2.2.tgz",
3411
3411
+
"integrity": "sha1-2M6ctX6NZNnHut2YdsfDTL48cHc=",
3412
3412
+
"requires": {
3413
3413
+
"deep-extend": "0.4.2",
3414
3414
+
"ini": "1.3.5",
3415
3415
+
"minimist": "1.2.0",
3416
3416
+
"strip-json-comments": "2.0.1"
3417
3417
+
},
3418
3418
+
"dependencies": {
3419
3419
+
"minimist": {
3420
3420
+
"version": "1.2.0",
3421
3421
+
"resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
3422
3422
+
"integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ="
3423
3423
+
}
3424
3424
+
}
3425
3425
+
},
3426
3426
+
"read-pkg": {
3427
3427
+
"version": "2.0.0",
3428
3428
+
"resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz",
3429
3429
+
"integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=",
3430
3430
+
"dev": true,
3431
3431
+
"requires": {
3432
3432
+
"load-json-file": "2.0.0",
3433
3433
+
"normalize-package-data": "2.4.0",
3434
3434
+
"path-type": "2.0.0"
3435
3435
+
}
3436
3436
+
},
3437
3437
+
"read-pkg-up": {
3438
3438
+
"version": "2.0.0",
3439
3439
+
"resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz",
3440
3440
+
"integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=",
3441
3441
+
"dev": true,
3442
3442
+
"requires": {
3443
3443
+
"find-up": "2.1.0",
3444
3444
+
"read-pkg": "2.0.0"
3445
3445
+
},
3446
3446
+
"dependencies": {
3447
3447
+
"find-up": {
3448
3448
+
"version": "2.1.0",
3449
3449
+
"resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz",
3450
3450
+
"integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=",
3451
3451
+
"dev": true,
3452
3452
+
"requires": {
3453
3453
+
"locate-path": "2.0.0"
3454
3454
+
}
3455
3455
+
}
3456
3456
+
}
3457
3457
+
},
3458
3458
+
"readable-stream": {
3459
3459
+
"version": "1.0.34",
3460
3460
+
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz",
3461
3461
+
"integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=",
3462
3462
+
"requires": {
3463
3463
+
"core-util-is": "1.0.2",
3464
3464
+
"inherits": "2.0.3",
3465
3465
+
"isarray": "0.0.1",
3466
3466
+
"string_decoder": "0.10.31"
3467
3467
+
}
3468
3468
+
},
3469
3469
+
"readdirp": {
3470
3470
+
"version": "2.1.0",
3471
3471
+
"resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz",
3472
3472
+
"integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=",
3473
3473
+
"requires": {
3474
3474
+
"graceful-fs": "4.1.11",
3475
3475
+
"minimatch": "3.0.4",
3476
3476
+
"readable-stream": "2.3.3",
3477
3477
+
"set-immediate-shim": "1.0.1"
3478
3478
+
},
3479
3479
+
"dependencies": {
3480
3480
+
"isarray": {
3481
3481
+
"version": "1.0.0",
3482
3482
+
"resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
3483
3483
+
"integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE="
3484
3484
+
},
3485
3485
+
"readable-stream": {
3486
3486
+
"version": "2.3.3",
3487
3487
+
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz",
3488
3488
+
"integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==",
3489
3489
+
"requires": {
3490
3490
+
"core-util-is": "1.0.2",
3491
3491
+
"inherits": "2.0.3",
3492
3492
+
"isarray": "1.0.0",
3493
3493
+
"process-nextick-args": "1.0.7",
3494
3494
+
"safe-buffer": "5.1.1",
3495
3495
+
"string_decoder": "1.0.3",
3496
3496
+
"util-deprecate": "1.0.2"
3497
3497
+
}
3498
3498
+
},
3499
3499
+
"string_decoder": {
3500
3500
+
"version": "1.0.3",
3501
3501
+
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
3502
3502
+
"integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
3503
3503
+
"requires": {
3504
3504
+
"safe-buffer": "5.1.1"
3505
3505
+
}
3506
3506
+
}
3507
3507
+
}
3508
3508
+
},
3509
3509
+
"recursive-readdir": {
3510
3510
+
"version": "2.2.1",
3511
3511
+
"resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.1.tgz",
3512
3512
+
"integrity": "sha1-kO8jHQd4xc4JPJpI105cVCLROpk=",
3513
3513
+
"requires": {
3514
3514
+
"minimatch": "3.0.3"
3515
3515
+
},
3516
3516
+
"dependencies": {
3517
3517
+
"minimatch": {
3518
3518
+
"version": "3.0.3",
3519
3519
+
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.3.tgz",
3520
3520
+
"integrity": "sha1-Kk5AkLlrLbBqnX3wEFWmKnfJt3Q=",
3521
3521
+
"requires": {
3522
3522
+
"brace-expansion": "1.1.8"
3523
3523
+
}
3524
3524
+
}
3525
3525
+
}
3526
3526
+
},
3527
3527
+
"regex-cache": {
3528
3528
+
"version": "0.4.4",
3529
3529
+
"resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz",
3530
3530
+
"integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==",
3531
3531
+
"requires": {
3532
3532
+
"is-equal-shallow": "0.1.3"
3533
3533
+
}
3534
3534
+
},
3535
3535
+
"registry-auth-token": {
3536
3536
+
"version": "3.3.1",
3537
3537
+
"resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.3.1.tgz",
3538
3538
+
"integrity": "sha1-+w0yie4Nmtosu1KvXf5mywcNMAY=",
3539
3539
+
"requires": {
3540
3540
+
"rc": "1.2.2",
3541
3541
+
"safe-buffer": "5.1.1"
3542
3542
+
}
3543
3543
+
},
3544
3544
+
"registry-url": {
3545
3545
+
"version": "3.1.0",
3546
3546
+
"resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz",
3547
3547
+
"integrity": "sha1-PU74cPc93h138M+aOBQyRE4XSUI=",
3548
3548
+
"requires": {
3549
3549
+
"rc": "1.2.2"
3550
3550
+
}
3551
3551
+
},
3552
3552
+
"remove-trailing-separator": {
3553
3553
+
"version": "1.1.0",
3554
3554
+
"resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz",
3555
3555
+
"integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8="
3556
3556
+
},
3557
3557
+
"renderkid": {
3558
3558
+
"version": "2.0.1",
3559
3559
+
"resolved": "https://registry.npmjs.org/renderkid/-/renderkid-2.0.1.tgz",
3560
3560
+
"integrity": "sha1-iYyr/Ivt5Le5ETWj/9Mj5YwNsxk=",
3561
3561
+
"requires": {
3562
3562
+
"css-select": "1.2.0",
3563
3563
+
"dom-converter": "0.1.4",
3564
3564
+
"htmlparser2": "3.3.0",
3565
3565
+
"strip-ansi": "3.0.1",
3566
3566
+
"utila": "0.3.3"
3567
3567
+
},
3568
3568
+
"dependencies": {
3569
3569
+
"utila": {
3570
3570
+
"version": "0.3.3",
3571
3571
+
"resolved": "https://registry.npmjs.org/utila/-/utila-0.3.3.tgz",
3572
3572
+
"integrity": "sha1-1+jn1+MJEHCSsF+NloiCTWM6QiY="
3573
3573
+
}
3574
3574
+
}
3575
3575
+
},
3576
3576
+
"repeat-element": {
3577
3577
+
"version": "1.1.2",
3578
3578
+
"resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz",
3579
3579
+
"integrity": "sha1-7wiaF40Ug7quTZPrmLT55OEdmQo="
3580
3580
+
},
3581
3581
+
"repeat-string": {
3582
3582
+
"version": "1.6.1",
3583
3583
+
"resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz",
3584
3584
+
"integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc="
3585
3585
+
},
3586
3586
+
"require-uncached": {
3587
3587
+
"version": "1.0.3",
3588
3588
+
"resolved": "https://registry.npmjs.org/require-uncached/-/require-uncached-1.0.3.tgz",
3589
3589
+
"integrity": "sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM=",
3590
3590
+
"dev": true,
3591
3591
+
"requires": {
3592
3592
+
"caller-path": "0.1.0",
3593
3593
+
"resolve-from": "1.0.1"
3594
3594
+
}
3595
3595
+
},
3596
3596
+
"resolve": {
3597
3597
+
"version": "1.5.0",
3598
3598
+
"resolved": "https://registry.npmjs.org/resolve/-/resolve-1.5.0.tgz",
3599
3599
+
"integrity": "sha512-hgoSGrc3pjzAPHNBg+KnFcK2HwlHTs/YrAGUr6qgTVUZmXv1UEXXl0bZNBKMA9fud6lRYFdPGz0xXxycPzmmiw==",
3600
3600
+
"dev": true,
3601
3601
+
"requires": {
3602
3602
+
"path-parse": "1.0.5"
3603
3603
+
}
3604
3604
+
},
3605
3605
+
"resolve-from": {
3606
3606
+
"version": "1.0.1",
3607
3607
+
"resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-1.0.1.tgz",
3608
3608
+
"integrity": "sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY=",
3609
3609
+
"dev": true
3610
3610
+
},
3611
3611
+
"restore-cursor": {
3612
3612
+
"version": "2.0.0",
3613
3613
+
"resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz",
3614
3614
+
"integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=",
3615
3615
+
"dev": true,
3616
3616
+
"requires": {
3617
3617
+
"onetime": "2.0.1",
3618
3618
+
"signal-exit": "3.0.2"
3619
3619
+
}
3620
3620
+
},
3621
3621
+
"rimraf": {
3622
3622
+
"version": "2.6.2",
3623
3623
+
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz",
3624
3624
+
"integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==",
3625
3625
+
"dev": true,
3626
3626
+
"requires": {
3627
3627
+
"glob": "7.1.2"
3628
3628
+
}
3629
3629
+
},
3630
3630
+
"run-async": {
3631
3631
+
"version": "2.3.0",
3632
3632
+
"resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz",
3633
3633
+
"integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=",
3634
3634
+
"dev": true,
3635
3635
+
"requires": {
3636
3636
+
"is-promise": "2.1.0"
3637
3637
+
}
3638
3638
+
},
3639
3639
+
"rx-lite": {
3640
3640
+
"version": "4.0.8",
3641
3641
+
"resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz",
3642
3642
+
"integrity": "sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ=",
3643
3643
+
"dev": true
3644
3644
+
},
3645
3645
+
"rx-lite-aggregates": {
3646
3646
+
"version": "4.0.8",
3647
3647
+
"resolved": "https://registry.npmjs.org/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz",
3648
3648
+
"integrity": "sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74=",
3649
3649
+
"dev": true,
3650
3650
+
"requires": {
3651
3651
+
"rx-lite": "4.0.8"
3652
3652
+
}
3653
3653
+
},
3654
3654
+
"safe-buffer": {
3655
3655
+
"version": "5.1.1",
3656
3656
+
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz",
3657
3657
+
"integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg=="
3658
3658
+
},
3659
3659
+
"semver": {
3660
3660
+
"version": "5.4.1",
3661
3661
+
"resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz",
3662
3662
+
"integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg=="
3663
3663
+
},
3664
3664
+
"semver-diff": {
3665
3665
+
"version": "2.1.0",
3666
3666
+
"resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-2.1.0.tgz",
3667
3667
+
"integrity": "sha1-S7uEN8jTfksM8aaP1ybsbWRdbTY=",
3668
3668
+
"requires": {
3669
3669
+
"semver": "5.4.1"
3670
3670
+
}
3671
3671
+
},
3672
3672
+
"set-immediate-shim": {
3673
3673
+
"version": "1.0.1",
3674
3674
+
"resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz",
3675
3675
+
"integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E="
3676
3676
+
},
3677
3677
+
"sharp": {
3678
3678
+
"version": "0.18.4",
3679
3679
+
"resolved": "https://registry.npmjs.org/sharp/-/sharp-0.18.4.tgz",
3680
3680
+
"integrity": "sha1-/jKcDwaJbCiqJDdt8f/wKuV/LTQ=",
3681
3681
+
"requires": {
3682
3682
+
"caw": "2.0.1",
3683
3683
+
"color": "2.0.1",
3684
3684
+
"detect-libc": "0.2.0",
3685
3685
+
"nan": "2.8.0",
3686
3686
+
"semver": "5.4.1",
3687
3687
+
"simple-get": "2.7.0",
3688
3688
+
"tar": "3.2.1"
3689
3689
+
}
3690
3690
+
},
3691
3691
+
"shebang-command": {
3692
3692
+
"version": "1.2.0",
3693
3693
+
"resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz",
3694
3694
+
"integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=",
3695
3695
+
"requires": {
3696
3696
+
"shebang-regex": "1.0.0"
3697
3697
+
}
3698
3698
+
},
3699
3699
+
"shebang-regex": {
3700
3700
+
"version": "1.0.0",
3701
3701
+
"resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz",
3702
3702
+
"integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM="
3703
3703
+
},
3704
3704
+
"shot": {
3705
3705
+
"version": "4.0.4",
3706
3706
+
"resolved": "https://registry.npmjs.org/shot/-/shot-4.0.4.tgz",
3707
3707
+
"integrity": "sha512-V8wHSJSNqt8ZIgdbTQCFIrp5BwBH+tsFLNBL1REmkFN/0PJdmzUBQscZqsbdSvdLc+Qxq7J5mcwzai66vs3ozA==",
3708
3708
+
"requires": {
3709
3709
+
"hoek": "5.0.2",
3710
3710
+
"joi": "13.0.2"
3711
3711
+
}
3712
3712
+
},
3713
3713
+
"signal-exit": {
3714
3714
+
"version": "3.0.2",
3715
3715
+
"resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz",
3716
3716
+
"integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0="
3717
3717
+
},
3718
3718
+
"simple-concat": {
3719
3719
+
"version": "1.0.0",
3720
3720
+
"resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.0.tgz",
3721
3721
+
"integrity": "sha1-c0TLuLbib7J9ZrL8hvn21Zl1IcY="
3722
3722
+
},
3723
3723
+
"simple-get": {
3724
3724
+
"version": "2.7.0",
3725
3725
+
"resolved": "https://registry.npmjs.org/simple-get/-/simple-get-2.7.0.tgz",
3726
3726
+
"integrity": "sha512-RkE9rGPHcxYZ/baYmgJtOSM63vH0Vyq+ma5TijBcLla41SWlh8t6XYIGMR/oeZcmr+/G8k+zrClkkVrtnQ0esg==",
3727
3727
+
"requires": {
3728
3728
+
"decompress-response": "3.3.0",
3729
3729
+
"once": "1.4.0",
3730
3730
+
"simple-concat": "1.0.0"
3731
3731
+
}
3732
3732
+
},
3733
3733
+
"simple-swizzle": {
3734
3734
+
"version": "0.2.2",
3735
3735
+
"resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz",
3736
3736
+
"integrity": "sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo=",
3737
3737
+
"requires": {
3738
3738
+
"is-arrayish": "0.3.1"
3739
3739
+
}
3740
3740
+
},
3741
3741
+
"slice-ansi": {
3742
3742
+
"version": "1.0.0",
3743
3743
+
"resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-1.0.0.tgz",
3744
3744
+
"integrity": "sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg==",
3745
3745
+
"dev": true,
3746
3746
+
"requires": {
3747
3747
+
"is-fullwidth-code-point": "2.0.0"
3748
3748
+
}
3749
3749
+
},
3750
3750
+
"spdx-correct": {
3751
3751
+
"version": "1.0.2",
3752
3752
+
"resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-1.0.2.tgz",
3753
3753
+
"integrity": "sha1-SzBz2TP/UfORLwOsVRlJikFQ20A=",
3754
3754
+
"dev": true,
3755
3755
+
"requires": {
3756
3756
+
"spdx-license-ids": "1.2.2"
3757
3757
+
}
3758
3758
+
},
3759
3759
+
"spdx-expression-parse": {
3760
3760
+
"version": "1.0.4",
3761
3761
+
"resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz",
3762
3762
+
"integrity": "sha1-m98vIOH0DtRH++JzJmGR/O1RYmw=",
3763
3763
+
"dev": true
3764
3764
+
},
3765
3765
+
"spdx-license-ids": {
3766
3766
+
"version": "1.2.2",
3767
3767
+
"resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz",
3768
3768
+
"integrity": "sha1-yd96NCRZSt5r0RkA1ZZpbcBrrFc=",
3769
3769
+
"dev": true
3770
3770
+
},
3771
3771
+
"split": {
3772
3772
+
"version": "0.3.3",
3773
3773
+
"resolved": "https://registry.npmjs.org/split/-/split-0.3.3.tgz",
3774
3774
+
"integrity": "sha1-zQ7qXmOiEd//frDwkcQTPi0N0o8=",
3775
3775
+
"requires": {
3776
3776
+
"through": "2.3.8"
3777
3777
+
}
3778
3778
+
},
3779
3779
+
"sprintf-js": {
3780
3780
+
"version": "1.0.3",
3781
3781
+
"resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
3782
3782
+
"integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
3783
3783
+
"dev": true
3784
3784
+
},
3785
3785
+
"stack-trace": {
3786
3786
+
"version": "0.0.10",
3787
3787
+
"resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz",
3788
3788
+
"integrity": "sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA="
3789
3789
+
},
3790
3790
+
"statehood": {
3791
3791
+
"version": "6.0.5",
3792
3792
+
"resolved": "https://registry.npmjs.org/statehood/-/statehood-6.0.5.tgz",
3793
3793
+
"integrity": "sha512-HPa8qT5sGTBVn1Fc9czBYR1oo7gBaay3ysnb04cvcF80YrDIV7880KpjmMj54j7CrFuQFfgMRb44QCRxRmAdTg==",
3794
3794
+
"requires": {
3795
3795
+
"boom": "7.1.1",
3796
3796
+
"bounce": "1.2.0",
3797
3797
+
"cryptiles": "4.1.1",
3798
3798
+
"hoek": "5.0.2",
3799
3799
+
"iron": "5.0.4",
3800
3800
+
"joi": "13.0.2"
3801
3801
+
}
3802
3802
+
},
3803
3803
+
"stream-combiner": {
3804
3804
+
"version": "0.0.4",
3805
3805
+
"resolved": "https://registry.npmjs.org/stream-combiner/-/stream-combiner-0.0.4.tgz",
3806
3806
+
"integrity": "sha1-TV5DPBhSYd3mI8o/RMWGvPXErRQ=",
3807
3807
+
"requires": {
3808
3808
+
"duplexer": "0.1.1"
3809
3809
+
}
3810
3810
+
},
3811
3811
+
"string-width": {
3812
3812
+
"version": "2.1.1",
3813
3813
+
"resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz",
3814
3814
+
"integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==",
3815
3815
+
"requires": {
3816
3816
+
"is-fullwidth-code-point": "2.0.0",
3817
3817
+
"strip-ansi": "4.0.0"
3818
3818
+
},
3819
3819
+
"dependencies": {
3820
3820
+
"ansi-regex": {
3821
3821
+
"version": "3.0.0",
3822
3822
+
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz",
3823
3823
+
"integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg="
3824
3824
+
},
3825
3825
+
"strip-ansi": {
3826
3826
+
"version": "4.0.0",
3827
3827
+
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz",
3828
3828
+
"integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=",
3829
3829
+
"requires": {
3830
3830
+
"ansi-regex": "3.0.0"
3831
3831
+
}
3832
3832
+
}
3833
3833
+
}
3834
3834
+
},
3835
3835
+
"string_decoder": {
3836
3836
+
"version": "0.10.31",
3837
3837
+
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
3838
3838
+
"integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ="
3839
3839
+
},
3840
3840
+
"strip-ansi": {
3841
3841
+
"version": "3.0.1",
3842
3842
+
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
3843
3843
+
"integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
3844
3844
+
"requires": {
3845
3845
+
"ansi-regex": "2.1.1"
3846
3846
+
}
3847
3847
+
},
3848
3848
+
"strip-bom": {
3849
3849
+
"version": "3.0.0",
3850
3850
+
"resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
3851
3851
+
"integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=",
3852
3852
+
"dev": true
3853
3853
+
},
3854
3854
+
"strip-eof": {
3855
3855
+
"version": "1.0.0",
3856
3856
+
"resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz",
3857
3857
+
"integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8="
3858
3858
+
},
3859
3859
+
"strip-json-comments": {
3860
3860
+
"version": "2.0.1",
3861
3861
+
"resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz",
3862
3862
+
"integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo="
3863
3863
+
},
3864
3864
+
"subtext": {
3865
3865
+
"version": "6.0.7",
3866
3866
+
"resolved": "https://registry.npmjs.org/subtext/-/subtext-6.0.7.tgz",
3867
3867
+
"integrity": "sha512-IcJUvRjeR+NB437Iq+LORFNJW4L6Knqkj3oQrBrkdhIaS2VKJvx/9aYEq7vi+PEx5/OuehOL/40SkSZotLi/MA==",
3868
3868
+
"requires": {
3869
3869
+
"boom": "7.1.1",
3870
3870
+
"content": "4.0.3",
3871
3871
+
"hoek": "5.0.2",
3872
3872
+
"pez": "4.0.1",
3873
3873
+
"wreck": "14.0.2"
3874
3874
+
}
3875
3875
+
},
3876
3876
+
"supports-color": {
3877
3877
+
"version": "4.5.0",
3878
3878
+
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz",
3879
3879
+
"integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=",
3880
3880
+
"requires": {
3881
3881
+
"has-flag": "2.0.0"
3882
3882
+
}
3883
3883
+
},
3884
3884
+
"sywac": {
3885
3885
+
"version": "1.2.0",
3886
3886
+
"resolved": "https://registry.npmjs.org/sywac/-/sywac-1.2.0.tgz",
3887
3887
+
"integrity": "sha512-78wpxGqTfJJ8Evfc8YCItmmkcJQ9CwFgCXGeIbzzlfUSJ8UFKTrgWer86ZeSWQCj/NYN8MfFKzrlH1F9jSrlTg=="
3888
3888
+
},
3889
3889
+
"table": {
3890
3890
+
"version": "4.0.2",
3891
3891
+
"resolved": "https://registry.npmjs.org/table/-/table-4.0.2.tgz",
3892
3892
+
"integrity": "sha512-UUkEAPdSGxtRpiV9ozJ5cMTtYiqz7Ni1OGqLXRCynrvzdtR1p+cfOWe2RJLwvUG8hNanaSRjecIqwOjqeatDsA==",
3893
3893
+
"dev": true,
3894
3894
+
"requires": {
3895
3895
+
"ajv": "5.5.0",
3896
3896
+
"ajv-keywords": "2.1.1",
3897
3897
+
"chalk": "2.3.0",
3898
3898
+
"lodash": "4.17.4",
3899
3899
+
"slice-ansi": "1.0.0",
3900
3900
+
"string-width": "2.1.1"
3901
3901
+
}
3902
3902
+
},
3903
3903
+
"tar": {
3904
3904
+
"version": "3.2.1",
3905
3905
+
"resolved": "https://registry.npmjs.org/tar/-/tar-3.2.1.tgz",
3906
3906
+
"integrity": "sha512-ZSzds1E0IqutvMU8HxjMaU8eB7urw2fGwTq88ukDOVuUIh0656l7/P7LiVPxhO5kS4flcRJQk8USG+cghQbTUQ==",
3907
3907
+
"requires": {
3908
3908
+
"chownr": "1.0.1",
3909
3909
+
"minipass": "2.2.1",
3910
3910
+
"minizlib": "1.0.4",
3911
3911
+
"mkdirp": "0.5.1",
3912
3912
+
"yallist": "3.0.2"
3913
3913
+
}
3914
3914
+
},
3915
3915
+
"teamwork": {
3916
3916
+
"version": "3.0.1",
3917
3917
+
"resolved": "https://registry.npmjs.org/teamwork/-/teamwork-3.0.1.tgz",
3918
3918
+
"integrity": "sha512-hEkJIpDOfOYe9NYaLFk00zQbzZeKNCY8T2pRH3I13Y1mJwxaSQ6NEsjY5rCp+11ezCiZpWGoGFTbOuhg4qKevQ=="
3919
3919
+
},
3920
3920
+
"term-size": {
3921
3921
+
"version": "1.2.0",
3922
3922
+
"resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz",
3923
3923
+
"integrity": "sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk=",
3924
3924
+
"requires": {
3925
3925
+
"execa": "0.7.0"
3926
3926
+
}
3927
3927
+
},
3928
3928
+
"text-table": {
3929
3929
+
"version": "0.2.0",
3930
3930
+
"resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
3931
3931
+
"integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=",
3932
3932
+
"dev": true
3933
3933
+
},
3934
3934
+
"through": {
3935
3935
+
"version": "2.3.8",
3936
3936
+
"resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
3937
3937
+
"integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU="
3938
3938
+
},
3939
3939
+
"timed-out": {
3940
3940
+
"version": "4.0.1",
3941
3941
+
"resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz",
3942
3942
+
"integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8="
3943
3943
+
},
3944
3944
+
"tmp": {
3945
3945
+
"version": "0.0.33",
3946
3946
+
"resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
3947
3947
+
"integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==",
3948
3948
+
"dev": true,
3949
3949
+
"requires": {
3950
3950
+
"os-tmpdir": "1.0.2"
3951
3951
+
}
3952
3952
+
},
3953
3953
+
"topo": {
3954
3954
+
"version": "3.0.0",
3955
3955
+
"resolved": "https://registry.npmjs.org/topo/-/topo-3.0.0.tgz",
3956
3956
+
"integrity": "sha512-Tlu1fGlR90iCdIPURqPiufqAlCZYzLjHYVVbcFWDMcX7+tK8hdZWAfsMrD/pBul9jqHHwFjNdf1WaxA9vTRRhw==",
3957
3957
+
"requires": {
3958
3958
+
"hoek": "5.0.2"
3959
3959
+
}
3960
3960
+
},
3961
3961
+
"touch": {
3962
3962
+
"version": "3.1.0",
3963
3963
+
"resolved": "https://registry.npmjs.org/touch/-/touch-3.1.0.tgz",
3964
3964
+
"integrity": "sha512-WBx8Uy5TLtOSRtIq+M03/sKDrXCLHxwDcquSP2c43Le03/9serjQBIztjRz6FkJez9D/hleyAXTBGLwwZUw9lA==",
3965
3965
+
"requires": {
3966
3966
+
"nopt": "1.0.10"
3967
3967
+
}
3968
3968
+
},
3969
3969
+
"tryit": {
3970
3970
+
"version": "1.0.3",
3971
3971
+
"resolved": "https://registry.npmjs.org/tryit/-/tryit-1.0.3.tgz",
3972
3972
+
"integrity": "sha1-OTvnMKlEb9Hq1tpZoBQwjzbCics=",
3973
3973
+
"dev": true
3974
3974
+
},
3975
3975
+
"tunnel-agent": {
3976
3976
+
"version": "0.6.0",
3977
3977
+
"resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
3978
3978
+
"integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=",
3979
3979
+
"requires": {
3980
3980
+
"safe-buffer": "5.1.1"
3981
3981
+
}
3982
3982
+
},
3983
3983
+
"type-check": {
3984
3984
+
"version": "0.3.2",
3985
3985
+
"resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz",
3986
3986
+
"integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=",
3987
3987
+
"dev": true,
3988
3988
+
"requires": {
3989
3989
+
"prelude-ls": "1.1.2"
3990
3990
+
}
3991
3991
+
},
3992
3992
+
"typedarray": {
3993
3993
+
"version": "0.0.6",
3994
3994
+
"resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
3995
3995
+
"integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=",
3996
3996
+
"dev": true
3997
3997
+
},
3998
3998
+
"undefsafe": {
3999
3999
+
"version": "0.0.3",
4000
4000
+
"resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-0.0.3.tgz",
4001
4001
+
"integrity": "sha1-7Mo6A+VrmvFzhbqsgSrIO5lKli8="
4002
4002
+
},
4003
4003
+
"unique-string": {
4004
4004
+
"version": "1.0.0",
4005
4005
+
"resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz",
4006
4006
+
"integrity": "sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=",
4007
4007
+
"requires": {
4008
4008
+
"crypto-random-string": "1.0.0"
4009
4009
+
}
4010
4010
+
},
4011
4011
+
"universalify": {
4012
4012
+
"version": "0.1.1",
4013
4013
+
"resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.1.tgz",
4014
4014
+
"integrity": "sha1-+nG63UQ3r0wUiEHjs7Fl+enlkLc="
4015
4015
+
},
4016
4016
+
"unzip-response": {
4017
4017
+
"version": "2.0.1",
4018
4018
+
"resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-2.0.1.tgz",
4019
4019
+
"integrity": "sha1-0vD3N9FrBhXnKmk17QQhRXLVb5c="
4020
4020
+
},
4021
4021
+
"update-notifier": {
4022
4022
+
"version": "2.3.0",
4023
4023
+
"resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-2.3.0.tgz",
4024
4024
+
"integrity": "sha1-TognpruRUUCrCTVZ1wFOPruDdFE=",
4025
4025
+
"requires": {
4026
4026
+
"boxen": "1.2.2",
4027
4027
+
"chalk": "2.3.0",
4028
4028
+
"configstore": "3.1.1",
4029
4029
+
"import-lazy": "2.1.0",
4030
4030
+
"is-installed-globally": "0.1.0",
4031
4031
+
"is-npm": "1.0.0",
4032
4032
+
"latest-version": "3.1.0",
4033
4033
+
"semver-diff": "2.1.0",
4034
4034
+
"xdg-basedir": "3.0.0"
4035
4035
+
}
4036
4036
+
},
4037
4037
+
"url-parse-lax": {
4038
4038
+
"version": "1.0.0",
4039
4039
+
"resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz",
4040
4040
+
"integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=",
4041
4041
+
"requires": {
4042
4042
+
"prepend-http": "1.0.4"
4043
4043
+
}
4044
4044
+
},
4045
4045
+
"url-to-options": {
4046
4046
+
"version": "1.0.1",
4047
4047
+
"resolved": "https://registry.npmjs.org/url-to-options/-/url-to-options-1.0.1.tgz",
4048
4048
+
"integrity": "sha1-FQWgOiiaSMvXpDTvuu7FBV9WM6k="
4049
4049
+
},
4050
4050
+
"util-deprecate": {
4051
4051
+
"version": "1.0.2",
4052
4052
+
"resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
4053
4053
+
"integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8="
4054
4054
+
},
4055
4055
+
"utila": {
4056
4056
+
"version": "0.4.0",
4057
4057
+
"resolved": "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz",
4058
4058
+
"integrity": "sha1-ihagXURWV6Oupe7MWxKk+lN5dyw="
4059
4059
+
},
4060
4060
+
"validate-npm-package-license": {
4061
4061
+
"version": "3.0.1",
4062
4062
+
"resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz",
4063
4063
+
"integrity": "sha1-KAS6vnEq0zeUWaz74kdGqywwP7w=",
4064
4064
+
"dev": true,
4065
4065
+
"requires": {
4066
4066
+
"spdx-correct": "1.0.2",
4067
4067
+
"spdx-expression-parse": "1.0.4"
4068
4068
+
}
4069
4069
+
},
4070
4070
+
"vise": {
4071
4071
+
"version": "3.0.0",
4072
4072
+
"resolved": "https://registry.npmjs.org/vise/-/vise-3.0.0.tgz",
4073
4073
+
"integrity": "sha512-kBFZLmiL1Vm3rHXphkhvvAcsjgeQXRrOFCbJb0I50YZZP4HGRNH+xGzK3matIMcpbsfr3I02u9odj4oCD0TWgA==",
4074
4074
+
"requires": {
4075
4075
+
"hoek": "5.0.2"
4076
4076
+
}
4077
4077
+
},
4078
4078
+
"which": {
4079
4079
+
"version": "1.3.0",
4080
4080
+
"resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz",
4081
4081
+
"integrity": "sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==",
4082
4082
+
"requires": {
4083
4083
+
"isexe": "2.0.0"
4084
4084
+
}
4085
4085
+
},
4086
4086
+
"widest-line": {
4087
4087
+
"version": "1.0.0",
4088
4088
+
"resolved": "https://registry.npmjs.org/widest-line/-/widest-line-1.0.0.tgz",
4089
4089
+
"integrity": "sha1-DAnIXCqUaD0Nfq+O4JfVZL8OEFw=",
4090
4090
+
"requires": {
4091
4091
+
"string-width": "1.0.2"
4092
4092
+
},
4093
4093
+
"dependencies": {
4094
4094
+
"is-fullwidth-code-point": {
4095
4095
+
"version": "1.0.0",
4096
4096
+
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
4097
4097
+
"integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
4098
4098
+
"requires": {
4099
4099
+
"number-is-nan": "1.0.1"
4100
4100
+
}
4101
4101
+
},
4102
4102
+
"string-width": {
4103
4103
+
"version": "1.0.2",
4104
4104
+
"resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
4105
4105
+
"integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
4106
4106
+
"requires": {
4107
4107
+
"code-point-at": "1.1.0",
4108
4108
+
"is-fullwidth-code-point": "1.0.0",
4109
4109
+
"strip-ansi": "3.0.1"
4110
4110
+
}
4111
4111
+
}
4112
4112
+
}
4113
4113
+
},
4114
4114
+
"wordwrap": {
4115
4115
+
"version": "1.0.0",
4116
4116
+
"resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz",
4117
4117
+
"integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=",
4118
4118
+
"dev": true
4119
4119
+
},
4120
4120
+
"wrappy": {
4121
4121
+
"version": "1.0.2",
4122
4122
+
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
4123
4123
+
"integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8="
4124
4124
+
},
4125
4125
+
"wreck": {
4126
4126
+
"version": "14.0.2",
4127
4127
+
"resolved": "https://registry.npmjs.org/wreck/-/wreck-14.0.2.tgz",
4128
4128
+
"integrity": "sha512-QCm3omWNJUseqrSzwX2QZi1rBbmCfbFHJAXputLLyZ37VSiFnSYQB0ms/mPnSvrlIu7GVm89Y/gBNhSY26uVIQ==",
4129
4129
+
"requires": {
4130
4130
+
"boom": "7.1.1",
4131
4131
+
"hoek": "5.0.2"
4132
4132
+
}
4133
4133
+
},
4134
4134
+
"write": {
4135
4135
+
"version": "0.2.1",
4136
4136
+
"resolved": "https://registry.npmjs.org/write/-/write-0.2.1.tgz",
4137
4137
+
"integrity": "sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c=",
4138
4138
+
"dev": true,
4139
4139
+
"requires": {
4140
4140
+
"mkdirp": "0.5.1"
4141
4141
+
}
4142
4142
+
},
4143
4143
+
"write-file-atomic": {
4144
4144
+
"version": "2.3.0",
4145
4145
+
"resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.3.0.tgz",
4146
4146
+
"integrity": "sha512-xuPeK4OdjWqtfi59ylvVL0Yn35SF3zgcAcv7rBPFHVaEapaDr4GdGgm3j7ckTwH9wHL7fGmgfAnb0+THrHb8tA==",
4147
4147
+
"requires": {
4148
4148
+
"graceful-fs": "4.1.11",
4149
4149
+
"imurmurhash": "0.1.4",
4150
4150
+
"signal-exit": "3.0.2"
4151
4151
+
}
4152
4152
+
},
4153
4153
+
"xdg-basedir": {
4154
4154
+
"version": "3.0.0",
4155
4155
+
"resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz",
4156
4156
+
"integrity": "sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ="
4157
4157
+
},
4158
4158
+
"yallist": {
4159
4159
+
"version": "3.0.2",
4160
4160
+
"resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.2.tgz",
4161
4161
+
"integrity": "sha1-hFK0u36Dx8GI2AQcGoN8dz1ti7k="
4162
4162
+
}
4163
4163
+
}
4164
4164
+
}
···
1
1
+
{
2
2
+
"name": "ipx",
3
3
+
"version": "0.0.1",
4
4
+
"license": "MIT",
5
5
+
"contributors": [
6
6
+
"Pooya Parsa <pooya@fandogh.org>"
7
7
+
],
8
8
+
"main": "src/index.js",
9
9
+
"scripts": {
10
10
+
"start": "bak start",
11
11
+
"dev": "nodemon node_modules/.bin/bak start"
12
12
+
},
13
13
+
"dependencies": {
14
14
+
"bak": "^2.0.3",
15
15
+
"config": "^1.28.1",
16
16
+
"cron": "^1.3.0",
17
17
+
"fs-extra": "^4.0.3",
18
18
+
"is-valid-path": "^0.1.1",
19
19
+
"nodemon": "^1.12.1",
20
20
+
"recursive-readdir": "^2.2.1",
21
21
+
"sharp": "^0.18.4"
22
22
+
},
23
23
+
"devDependencies": {
24
24
+
"eslint": "^4.12.0",
25
25
+
"eslint-config-standard": "^10.2.1",
26
26
+
"eslint-plugin-html": "^4.0.1",
27
27
+
"eslint-plugin-import": "^2.8.0",
28
28
+
"eslint-plugin-jest": "^21.3.2",
29
29
+
"eslint-plugin-node": "^5.2.1",
30
30
+
"eslint-plugin-promise": "^3.6.0",
31
31
+
"eslint-plugin-standard": "^3.0.1"
32
32
+
}
33
33
+
}
···
1
1
+
const Boom = require('boom')
2
2
+
const Config = require('config')
3
3
+
const IPX = require('./ipx')
4
4
+
5
5
+
const ipx = new IPX(Config.get('ipx'))
6
6
+
7
7
+
module.exports = {
8
8
+
method: 'GET',
9
9
+
path: '{format}/{operations}/{src*}',
10
10
+
async handler ({ params = {} }, h) {
11
11
+
const { format, operations, src } = params
12
12
+
13
13
+
if (!src || !operations || !format) {
14
14
+
throw Boom.badRequest('Invalid URL')
15
15
+
}
16
16
+
17
17
+
const img = await ipx.get({ format, operations, src })
18
18
+
const response = h.response(img.data)
19
19
+
20
20
+
if (img.format) {
21
21
+
response.type('image/' + img.format)
22
22
+
} else {
23
23
+
response.type('image')
24
24
+
}
25
25
+
26
26
+
return response
27
27
+
}
28
28
+
}
···
1
1
+
const IPX = require('./ipx')
2
2
+
const Utils = require('./utils')
3
3
+
const Operations = require('./operations')
4
4
+
5
5
+
module.exports = {
6
6
+
IPX,
7
7
+
Utils,
8
8
+
Operations
9
9
+
}
···
1
1
+
const { isAbsolute } = require('path').posix
2
2
+
const isValidPath = require('is-valid-path')
3
3
+
const { resolve, relative } = require('path')
4
4
+
const { exists, readFile } = require('fs-extra')
5
5
+
6
6
+
module.exports = class fileAdapter {
7
7
+
constructor (sharp) {
8
8
+
this.sharp = sharp
9
9
+
this.options = sharp.options
10
10
+
}
11
11
+
12
12
+
get dir () {
13
13
+
return this.options.input.dir
14
14
+
}
15
15
+
16
16
+
_resolve (src) {
17
17
+
return resolve(this.dir, src)
18
18
+
}
19
19
+
20
20
+
async validate (src) {
21
21
+
if (isAbsolute(src) || !isValidPath(src)) {
22
22
+
return false
23
23
+
}
24
24
+
25
25
+
const _src = this._resolve(src)
26
26
+
27
27
+
if (relative(this.dir, _src).indexOf('..') !== -1) {
28
28
+
return false
29
29
+
}
30
30
+
31
31
+
if (!await exists(_src)) {
32
32
+
return false
33
33
+
}
34
34
+
35
35
+
return true
36
36
+
}
37
37
+
38
38
+
/**
39
39
+
* @param {String} src
40
40
+
* @returns Promise<Buffer>
41
41
+
*/
42
42
+
get (src) {
43
43
+
const _src = this._resolve(src)
44
44
+
const buff = readFile(_src)
45
45
+
return buff
46
46
+
}
47
47
+
}
···
1
1
+
const OPERATIONS = require('./operations')
2
2
+
const { resolve, extname } = require('path')
3
3
+
const Boom = require('boom')
4
4
+
const Sharp = require('sharp')
5
5
+
const { CronJob } = require('cron')
6
6
+
7
7
+
const operationSeparator = ','
8
8
+
const argSeparator = '_'
9
9
+
10
10
+
class Shark {
11
11
+
constructor (options) {
12
12
+
this.options = options
13
13
+
this.operations = {}
14
14
+
this.adapter = null
15
15
+
16
16
+
this.init()
17
17
+
}
18
18
+
19
19
+
init () {
20
20
+
// Merge and normalize operations
21
21
+
const _operations = Object.assign({}, OPERATIONS, this.options.operations)
22
22
+
Object.keys(_operations)
23
23
+
.filter(_key => _operations[_key])
24
24
+
.forEach(_key => {
25
25
+
const operation = _operations[_key]
26
26
+
const key = _key || operation.key
27
27
+
this.operations[key] = {
28
28
+
name: operation.name || key,
29
29
+
handler: operation.handler || operation,
30
30
+
multiply: Boolean(operation.multiply),
31
31
+
order: Boolean(operation.order),
32
32
+
args: operation.args || []
33
33
+
}
34
34
+
})
35
35
+
36
36
+
// Create instance of input
37
37
+
let InputCtor = this.options.input.adapter
38
38
+
if (typeof InputCtor === 'string') {
39
39
+
InputCtor = require(resolve(__dirname, 'input', InputCtor))
40
40
+
}
41
41
+
this.input = new InputCtor(this)
42
42
+
43
43
+
// Create instance of cache
44
44
+
let CacheCtor = this.options.cache.adapter
45
45
+
if (typeof CacheCtor === 'string') {
46
46
+
CacheCtor = require(resolve(__dirname, 'cache', CacheCtor))
47
47
+
}
48
48
+
this.cache = new CacheCtor(this)
49
49
+
50
50
+
// Start cache cleaning cron
51
51
+
if (this.options.cache.cleanCron) {
52
52
+
this.cacheCleanCron = new CronJob(
53
53
+
this.options.cache.cleanCron,
54
54
+
() => this.cleanCache().catch(console.error)
55
55
+
)
56
56
+
this.cacheCleanCron.start()
57
57
+
}
58
58
+
}
59
59
+
60
60
+
/**
61
61
+
* Parse operations
62
62
+
* @param {String} operations
63
63
+
*/
64
64
+
parseOperations (operations) {
65
65
+
const ops = {}
66
66
+
67
67
+
if (operations === '_') {
68
68
+
return []
69
69
+
}
70
70
+
71
71
+
return operations.split(operationSeparator).map(_o => {
72
72
+
let [key, ...args] = _o.split(argSeparator)
73
73
+
74
74
+
const operation = this.operations[key]
75
75
+
if (!operation) {
76
76
+
throw Boom.badRequest('Invalid operation: ' + key)
77
77
+
}
78
78
+
79
79
+
if (operation.args.length !== args.length) {
80
80
+
throw Boom.badRequest('Invalid number of args for ' + key + '. Expected ' + operation.args.length + ' got ' + args.length)
81
81
+
}
82
82
+
83
83
+
for (let i = 0; i < operation.args.length; i++) {
84
84
+
args[i] = operation.args[i](args[i])
85
85
+
}
86
86
+
87
87
+
if (!operation.multiply) {
88
88
+
if (ops[operation.name]) {
89
89
+
throw Boom.badRequest(key + ' can be only used once')
90
90
+
}
91
91
+
ops[operation.name] = true
92
92
+
}
93
93
+
94
94
+
return {
95
95
+
operation,
96
96
+
args,
97
97
+
cacheKey: key + argSeparator + args.join(argSeparator)
98
98
+
}
99
99
+
})
100
100
+
}
101
101
+
102
102
+
/**
103
103
+
* Convert and get the result
104
104
+
* @param {String} format
105
105
+
* @param {String} operations
106
106
+
* @param {String} src
107
107
+
*/
108
108
+
async get ({ format, operations, src }) {
109
109
+
// Validate format
110
110
+
if (format === '_') {
111
111
+
format = extname(src).substr(1)
112
112
+
}
113
113
+
114
114
+
if (format === 'jpg') {
115
115
+
format = 'jpeg'
116
116
+
}
117
117
+
118
118
+
if (['jpeg', 'webp', 'png'].indexOf(format) === -1) {
119
119
+
throw Boom.badRequest('Invalid format ' + format)
120
120
+
}
121
121
+
122
122
+
// Validate src
123
123
+
if (!src || src.indexOf('..') >= 0 || !await this.input.validate(src)) {
124
124
+
throw Boom.notFound()
125
125
+
}
126
126
+
127
127
+
// Parse and validate operations
128
128
+
let _operations = this.parseOperations(operations)
129
129
+
130
130
+
// Reorder operations
131
131
+
_operations = [].concat(
132
132
+
_operations.filter(o => o.operation.order !== true).sort(),
133
133
+
_operations.filter(o => o.operation.order === true)
134
134
+
)
135
135
+
136
136
+
// Calculate unique hash key
137
137
+
const cacheKey =
138
138
+
src +
139
139
+
'/' +
140
140
+
(_operations.length ? _operations.map(o => o.cacheKey).join(argSeparator) : '_') +
141
141
+
'.' +
142
142
+
format
143
143
+
144
144
+
// Check cache existence
145
145
+
const cache = await this.cache.get(cacheKey)
146
146
+
if (cache) {
147
147
+
console.log('HIT!')
148
148
+
return {
149
149
+
format,
150
150
+
data: cache
151
151
+
}
152
152
+
}
153
153
+
154
154
+
// Read buffer from input
155
155
+
const srcBuff = await this.input.get(src)
156
156
+
157
157
+
// Process using Sharp
158
158
+
let sharp = new Sharp(srcBuff)
159
159
+
160
160
+
if (format !== '_') {
161
161
+
sharp = sharp.toFormat(format)
162
162
+
}
163
163
+
164
164
+
_operations.forEach(({ operation, args }) => {
165
165
+
try {
166
166
+
sharp = operation.handler(this, sharp, ...args)
167
167
+
} catch (e) {
168
168
+
if (Boom.isBoom(e)) {
169
169
+
throw e
170
170
+
}
171
171
+
console.error(e + '')
172
172
+
throw Boom.internal()
173
173
+
}
174
174
+
})
175
175
+
const data = await sharp.toBuffer()
176
176
+
177
177
+
// Put data into cache
178
178
+
try {
179
179
+
await this.cache.set(cacheKey, data)
180
180
+
} catch (e) {
181
181
+
console.error(e)
182
182
+
}
183
183
+
184
184
+
return {
185
185
+
data,
186
186
+
format
187
187
+
}
188
188
+
}
189
189
+
190
190
+
async cleanCache () {
191
191
+
if (this.cache) {
192
192
+
await this.cache.clean()
193
193
+
}
194
194
+
}
195
195
+
}
196
196
+
197
197
+
module.exports = Shark
···
1
1
+
const { VSize } = require('./utils')
2
2
+
3
3
+
module.exports = {
4
4
+
s: {
5
5
+
name: 'resize',
6
6
+
args: [ VSize, VSize ],
7
7
+
handler: (context, pipe, width, height) => pipe.resize(width, height)
8
8
+
},
9
9
+
10
10
+
w: {
11
11
+
name: 'width',
12
12
+
args: [ VSize ],
13
13
+
handler: (context, pipe, width) => pipe.resize(width, null)
14
14
+
},
15
15
+
16
16
+
h: {
17
17
+
name: 'height',
18
18
+
args: [ VSize ],
19
19
+
handler: (context, pipe, height) => pipe.resize(null, height)
20
20
+
},
21
21
+
22
22
+
embed: {
23
23
+
name: 'embed',
24
24
+
handler: (context, pipe) => pipe.embed()
25
25
+
},
26
26
+
27
27
+
max: {
28
28
+
name: 'max',
29
29
+
handler: (context, pipe) => pipe.max()
30
30
+
},
31
31
+
32
32
+
min: {
33
33
+
name: 'min',
34
34
+
handler: (context, pipe) => pipe.min()
35
35
+
}
36
36
+
}
···
1
1
+
const Boom = require('boom')
2
2
+
3
3
+
const MAX_SIZE = 2048
4
4
+
5
5
+
const argRegex = /^[a-z0-9]+$/i
6
6
+
const numRegex = /^[1-9][0-9]*$/
7
7
+
8
8
+
const VArg = arg => {
9
9
+
if (!argRegex.test(arg)) {
10
10
+
throw Boom.badRequest('Invalid argument: ' + arg)
11
11
+
}
12
12
+
return arg
13
13
+
}
14
14
+
15
15
+
const VMax = max => num => {
16
16
+
if (!numRegex.test(num)) {
17
17
+
throw Boom.badRequest('Invalid numeric argument: ' + num)
18
18
+
}
19
19
+
return Math.min(parseInt(num), max) || null
20
20
+
}
21
21
+
22
22
+
const VSize = VMax(MAX_SIZE)
23
23
+
24
24
+
module.exports = {
25
25
+
VArg,
26
26
+
VMax,
27
27
+
VSize
28
28
+
}