aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorJohannes Zellner <johannes@cloudron.io>2019-02-23 22:40:58 +0100
committerJohannes Zellner <johannes@cloudron.io>2019-02-23 22:40:58 +0100
commit7af3d8556de81996d476d92807928fafdc91c41b (patch)
tree379922954ee45cd23cb25cb955ab1220ed2924ce
parenta7317b4ba7e4f37ab1e562669c03e4867c070d39 (diff)
downloadSurfer-7af3d8556de81996d476d92807928fafdc91c41b.tar.gz
Surfer-7af3d8556de81996d476d92807928fafdc91c41b.tar.zst
Surfer-7af3d8556de81996d476d92807928fafdc91c41b.zip
add webdav server for easier file access
-rw-r--r--package-lock.json674
-rw-r--r--package.json3
-rwxr-xr-xserver.js12
-rw-r--r--src/auth.js39
4 files changed, 442 insertions, 286 deletions
diff --git a/package-lock.json b/package-lock.json
index fb69dc2..8535c99 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -14,7 +14,7 @@
14 "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.4.tgz", 14 "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.4.tgz",
15 "integrity": "sha1-hiRnWMfdbSGmR0/whKR0DsBesh8=", 15 "integrity": "sha1-hiRnWMfdbSGmR0/whKR0DsBesh8=",
16 "requires": { 16 "requires": {
17 "mime-types": "2.1.18", 17 "mime-types": "~2.1.16",
18 "negotiator": "0.6.1" 18 "negotiator": "0.6.1"
19 }, 19 },
20 "dependencies": { 20 "dependencies": {
@@ -28,7 +28,7 @@
28 "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", 28 "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz",
29 "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", 29 "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==",
30 "requires": { 30 "requires": {
31 "mime-db": "1.33.0" 31 "mime-db": "~1.33.0"
32 } 32 }
33 } 33 }
34 } 34 }
@@ -44,10 +44,10 @@
44 "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", 44 "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz",
45 "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", 45 "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=",
46 "requires": { 46 "requires": {
47 "co": "4.6.0", 47 "co": "^4.6.0",
48 "fast-deep-equal": "1.0.0", 48 "fast-deep-equal": "^1.0.0",
49 "fast-json-stable-stringify": "2.0.0", 49 "fast-json-stable-stringify": "^2.0.0",
50 "json-schema-traverse": "0.3.1" 50 "json-schema-traverse": "^0.3.0"
51 } 51 }
52 }, 52 },
53 "array-flatten": { 53 "array-flatten": {
@@ -56,18 +56,21 @@
56 "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" 56 "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI="
57 }, 57 },
58 "array-union": { 58 "array-union": {
59 "version": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", 59 "version": "1.0.2",
60 "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz",
60 "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", 61 "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=",
61 "requires": { 62 "requires": {
62 "array-uniq": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz" 63 "array-uniq": "^1.0.1"
63 } 64 }
64 }, 65 },
65 "array-uniq": { 66 "array-uniq": {
66 "version": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", 67 "version": "1.0.3",
68 "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz",
67 "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=" 69 "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY="
68 }, 70 },
69 "arrify": { 71 "arrify": {
70 "version": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", 72 "version": "1.0.1",
73 "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz",
71 "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=" 74 "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0="
72 }, 75 },
73 "asn1": { 76 "asn1": {
@@ -81,7 +84,8 @@
81 "integrity": "sha1-7nQAlBMALYTOxyGcasgRgS5yMWA=" 84 "integrity": "sha1-7nQAlBMALYTOxyGcasgRgS5yMWA="
82 }, 85 },
83 "async": { 86 "async": {
84 "version": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", 87 "version": "1.5.2",
88 "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz",
85 "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=" 89 "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo="
86 }, 90 },
87 "asynckit": { 91 "asynckit": {
@@ -123,11 +127,12 @@
123 "integrity": "sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40=", 127 "integrity": "sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40=",
124 "optional": true, 128 "optional": true,
125 "requires": { 129 "requires": {
126 "tweetnacl": "0.14.5" 130 "tweetnacl": "^0.14.3"
127 } 131 }
128 }, 132 },
129 "bcryptjs": { 133 "bcryptjs": {
130 "version": "https://registry.npmjs.org/bcryptjs/-/bcryptjs-2.4.3.tgz", 134 "version": "2.4.3",
135 "resolved": "https://registry.npmjs.org/bcryptjs/-/bcryptjs-2.4.3.tgz",
131 "integrity": "sha1-mrVie5PmBiH/fNrF2pczAn3x0Ms=" 136 "integrity": "sha1-mrVie5PmBiH/fNrF2pczAn3x0Ms="
132 }, 137 },
133 "body-parser": { 138 "body-parser": {
@@ -136,15 +141,15 @@
136 "integrity": "sha1-h2eKGdhLR9hZuDGZvVm84iKxBFQ=", 141 "integrity": "sha1-h2eKGdhLR9hZuDGZvVm84iKxBFQ=",
137 "requires": { 142 "requires": {
138 "bytes": "3.0.0", 143 "bytes": "3.0.0",
139 "content-type": "1.0.4", 144 "content-type": "~1.0.4",
140 "debug": "2.6.9", 145 "debug": "2.6.9",
141 "depd": "1.1.2", 146 "depd": "~1.1.1",
142 "http-errors": "1.6.2", 147 "http-errors": "~1.6.2",
143 "iconv-lite": "0.4.19", 148 "iconv-lite": "0.4.19",
144 "on-finished": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", 149 "on-finished": "~2.3.0",
145 "qs": "6.5.1", 150 "qs": "6.5.1",
146 "raw-body": "2.3.2", 151 "raw-body": "2.3.2",
147 "type-is": "1.6.16" 152 "type-is": "~1.6.15"
148 }, 153 },
149 "dependencies": { 154 "dependencies": {
150 "depd": { 155 "depd": {
@@ -158,9 +163,9 @@
158 "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=", 163 "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=",
159 "requires": { 164 "requires": {
160 "depd": "1.1.1", 165 "depd": "1.1.1",
161 "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 166 "inherits": "2.0.3",
162 "setprototypeof": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz", 167 "setprototypeof": "1.0.3",
163 "statuses": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz" 168 "statuses": ">= 1.3.1 < 2"
164 }, 169 },
165 "dependencies": { 170 "dependencies": {
166 "depd": { 171 "depd": {
@@ -177,7 +182,7 @@
177 "resolved": "https://registry.npmjs.org/boom/-/boom-4.3.1.tgz", 182 "resolved": "https://registry.npmjs.org/boom/-/boom-4.3.1.tgz",
178 "integrity": "sha1-T4owBctKfjiJ90kDD9JbluAdLjE=", 183 "integrity": "sha1-T4owBctKfjiJ90kDD9JbluAdLjE=",
179 "requires": { 184 "requires": {
180 "hoek": "4.2.1" 185 "hoek": "4.x.x"
181 } 186 }
182 }, 187 },
183 "brace-expansion": { 188 "brace-expansion": {
@@ -185,7 +190,7 @@
185 "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", 190 "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz",
186 "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=", 191 "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=",
187 "requires": { 192 "requires": {
188 "balanced-match": "1.0.0", 193 "balanced-match": "^1.0.0",
189 "concat-map": "0.0.1" 194 "concat-map": "0.0.1"
190 } 195 }
191 }, 196 },
@@ -214,14 +219,16 @@
214 "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=" 219 "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ="
215 }, 220 },
216 "colors": { 221 "colors": {
217 "version": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", 222 "version": "1.1.2",
223 "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz",
218 "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=" 224 "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM="
219 }, 225 },
220 "combined-stream": { 226 "combined-stream": {
221 "version": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz", 227 "version": "1.0.5",
228 "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz",
222 "integrity": "sha1-k4NwpXtKUd6ix3wV1cX9+JUWQAk=", 229 "integrity": "sha1-k4NwpXtKUd6ix3wV1cX9+JUWQAk=",
223 "requires": { 230 "requires": {
224 "delayed-stream": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz" 231 "delayed-stream": "~1.0.0"
225 } 232 }
226 }, 233 },
227 "commander": { 234 "commander": {
@@ -230,7 +237,8 @@
230 "integrity": "sha512-+YR16o3rK53SmWHU3rEM3tPAh2rwb1yPcQX5irVn7mb0gXbwuCCrnkbV5+PBfETdfg1vui07nM6PCG1zndcjQw==" 237 "integrity": "sha512-+YR16o3rK53SmWHU3rEM3tPAh2rwb1yPcQX5irVn7mb0gXbwuCCrnkbV5+PBfETdfg1vui07nM6PCG1zndcjQw=="
231 }, 238 },
232 "component-emitter": { 239 "component-emitter": {
233 "version": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", 240 "version": "1.2.1",
241 "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz",
234 "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=" 242 "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY="
235 }, 243 },
236 "compressible": { 244 "compressible": {
@@ -238,7 +246,7 @@
238 "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.13.tgz", 246 "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.13.tgz",
239 "integrity": "sha1-DRAgq5JLL9tNYnmHXH1tq6a6p6k=", 247 "integrity": "sha1-DRAgq5JLL9tNYnmHXH1tq6a6p6k=",
240 "requires": { 248 "requires": {
241 "mime-db": "1.33.0" 249 "mime-db": ">= 1.33.0 < 2"
242 }, 250 },
243 "dependencies": { 251 "dependencies": {
244 "mime-db": { 252 "mime-db": {
@@ -253,13 +261,13 @@
253 "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.2.tgz", 261 "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.2.tgz",
254 "integrity": "sha1-qv+81qr4VLROuygDU9WtFlH1mmk=", 262 "integrity": "sha1-qv+81qr4VLROuygDU9WtFlH1mmk=",
255 "requires": { 263 "requires": {
256 "accepts": "1.3.4", 264 "accepts": "~1.3.4",
257 "bytes": "3.0.0", 265 "bytes": "3.0.0",
258 "compressible": "2.0.13", 266 "compressible": "~2.0.13",
259 "debug": "2.6.9", 267 "debug": "2.6.9",
260 "on-headers": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.1.tgz", 268 "on-headers": "~1.0.1",
261 "safe-buffer": "5.1.1", 269 "safe-buffer": "5.1.1",
262 "vary": "1.1.2" 270 "vary": "~1.1.2"
263 } 271 }
264 }, 272 },
265 "concat-map": { 273 "concat-map": {
@@ -268,33 +276,37 @@
268 "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" 276 "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s="
269 }, 277 },
270 "connect-lastmile": { 278 "connect-lastmile": {
271 "version": "https://registry.npmjs.org/connect-lastmile/-/connect-lastmile-0.0.10.tgz", 279 "version": "0.0.10",
280 "resolved": "https://registry.npmjs.org/connect-lastmile/-/connect-lastmile-0.0.10.tgz",
272 "integrity": "sha1-vwF4kJH9sPpk3GYvzbtsnm6V3v8=", 281 "integrity": "sha1-vwF4kJH9sPpk3GYvzbtsnm6V3v8=",
273 "requires": { 282 "requires": {
274 "debug": "https://registry.npmjs.org/debug/-/debug-2.1.3.tgz" 283 "debug": "~2.1.0"
275 }, 284 },
276 "dependencies": { 285 "dependencies": {
277 "debug": { 286 "debug": {
278 "version": "https://registry.npmjs.org/debug/-/debug-2.1.3.tgz", 287 "version": "2.1.3",
288 "resolved": "https://registry.npmjs.org/debug/-/debug-2.1.3.tgz",
279 "integrity": "sha1-zoqxte6PvuK/o7Yzyrk9NmtjQY4=", 289 "integrity": "sha1-zoqxte6PvuK/o7Yzyrk9NmtjQY4=",
280 "requires": { 290 "requires": {
281 "ms": "http://registry.npmjs.org/ms/-/ms-0.7.0.tgz" 291 "ms": "0.7.0"
282 } 292 }
283 }, 293 },
284 "ms": { 294 "ms": {
285 "version": "http://registry.npmjs.org/ms/-/ms-0.7.0.tgz", 295 "version": "0.7.0",
296 "resolved": "http://registry.npmjs.org/ms/-/ms-0.7.0.tgz",
286 "integrity": "sha1-hlvpTC5zl62KV9pqYzpuLzB5i4M=" 297 "integrity": "sha1-hlvpTC5zl62KV9pqYzpuLzB5i4M="
287 } 298 }
288 } 299 }
289 }, 300 },
290 "connect-timeout": { 301 "connect-timeout": {
291 "version": "https://registry.npmjs.org/connect-timeout/-/connect-timeout-1.9.0.tgz", 302 "version": "1.9.0",
303 "resolved": "https://registry.npmjs.org/connect-timeout/-/connect-timeout-1.9.0.tgz",
292 "integrity": "sha1-vCcyaxIhA3FL6/oNlYurM/ZSLjo=", 304 "integrity": "sha1-vCcyaxIhA3FL6/oNlYurM/ZSLjo=",
293 "requires": { 305 "requires": {
294 "http-errors": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.1.tgz", 306 "http-errors": "~1.6.1",
295 "ms": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", 307 "ms": "2.0.0",
296 "on-finished": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", 308 "on-finished": "~2.3.0",
297 "on-headers": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.1.tgz" 309 "on-headers": "~1.0.1"
298 } 310 }
299 }, 311 },
300 "content-disposition": { 312 "content-disposition": {
@@ -308,27 +320,32 @@
308 "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" 320 "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA=="
309 }, 321 },
310 "cookie": { 322 "cookie": {
311 "version": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", 323 "version": "0.3.1",
324 "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz",
312 "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=" 325 "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s="
313 }, 326 },
314 "cookie-parser": { 327 "cookie-parser": {
315 "version": "https://registry.npmjs.org/cookie-parser/-/cookie-parser-1.4.3.tgz", 328 "version": "1.4.3",
329 "resolved": "https://registry.npmjs.org/cookie-parser/-/cookie-parser-1.4.3.tgz",
316 "integrity": "sha1-D+MfoZ0AC5X0qt8fU/3CuKIDuqU=", 330 "integrity": "sha1-D+MfoZ0AC5X0qt8fU/3CuKIDuqU=",
317 "requires": { 331 "requires": {
318 "cookie": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", 332 "cookie": "0.3.1",
319 "cookie-signature": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz" 333 "cookie-signature": "1.0.6"
320 } 334 }
321 }, 335 },
322 "cookie-signature": { 336 "cookie-signature": {
323 "version": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", 337 "version": "1.0.6",
338 "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz",
324 "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" 339 "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw="
325 }, 340 },
326 "cookiejar": { 341 "cookiejar": {
327 "version": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.0.6.tgz", 342 "version": "2.0.6",
343 "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.0.6.tgz",
328 "integrity": "sha1-Cr81atANHFohnYjURRgEbdAmrP4=" 344 "integrity": "sha1-Cr81atANHFohnYjURRgEbdAmrP4="
329 }, 345 },
330 "core-util-is": { 346 "core-util-is": {
331 "version": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", 347 "version": "1.0.2",
348 "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
332 "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" 349 "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac="
333 }, 350 },
334 "crc": { 351 "crc": {
@@ -341,7 +358,7 @@
341 "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-3.1.2.tgz", 358 "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-3.1.2.tgz",
342 "integrity": "sha1-qJ+7Ig9c4l7FboxKqKT9e1sNKf4=", 359 "integrity": "sha1-qJ+7Ig9c4l7FboxKqKT9e1sNKf4=",
343 "requires": { 360 "requires": {
344 "boom": "5.2.0" 361 "boom": "5.x.x"
345 }, 362 },
346 "dependencies": { 363 "dependencies": {
347 "boom": { 364 "boom": {
@@ -349,7 +366,7 @@
349 "resolved": "https://registry.npmjs.org/boom/-/boom-5.2.0.tgz", 366 "resolved": "https://registry.npmjs.org/boom/-/boom-5.2.0.tgz",
350 "integrity": "sha512-Z5BTk6ZRe4tXXQlkqftmsAUANpXmuwlsF5Oov8ThoMbQRzdGTA1ngYRW160GexgOgjsFOKJz0LYhoNi+2AMBUw==", 367 "integrity": "sha512-Z5BTk6ZRe4tXXQlkqftmsAUANpXmuwlsF5Oov8ThoMbQRzdGTA1ngYRW160GexgOgjsFOKJz0LYhoNi+2AMBUw==",
351 "requires": { 368 "requires": {
352 "hoek": "4.2.1" 369 "hoek": "4.x.x"
353 } 370 }
354 } 371 }
355 } 372 }
@@ -359,7 +376,7 @@
359 "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", 376 "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz",
360 "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", 377 "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=",
361 "requires": { 378 "requires": {
362 "assert-plus": "1.0.0" 379 "assert-plus": "^1.0.0"
363 }, 380 },
364 "dependencies": { 381 "dependencies": {
365 "assert-plus": { 382 "assert-plus": {
@@ -374,28 +391,31 @@
374 "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", 391 "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
375 "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", 392 "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
376 "requires": { 393 "requires": {
377 "ms": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz" 394 "ms": "2.0.0"
378 } 395 }
379 }, 396 },
380 "del": { 397 "del": {
381 "version": "https://registry.npmjs.org/del/-/del-2.2.2.tgz", 398 "version": "2.2.2",
399 "resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz",
382 "integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=", 400 "integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=",
383 "requires": { 401 "requires": {
384 "globby": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz", 402 "globby": "^5.0.0",
385 "is-path-cwd": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", 403 "is-path-cwd": "^1.0.0",
386 "is-path-in-cwd": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz", 404 "is-path-in-cwd": "^1.0.0",
387 "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", 405 "object-assign": "^4.0.1",
388 "pify": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", 406 "pify": "^2.0.0",
389 "pinkie-promise": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", 407 "pinkie-promise": "^2.0.0",
390 "rimraf": "2.6.1" 408 "rimraf": "^2.2.8"
391 } 409 }
392 }, 410 },
393 "delayed-stream": { 411 "delayed-stream": {
394 "version": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", 412 "version": "1.0.0",
413 "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
395 "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" 414 "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk="
396 }, 415 },
397 "depd": { 416 "depd": {
398 "version": "https://registry.npmjs.org/depd/-/depd-1.1.0.tgz", 417 "version": "1.1.0",
418 "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.0.tgz",
399 "integrity": "sha1-4b2Cxqq2ztlluXuIsX7T5SjKGMM=" 419 "integrity": "sha1-4b2Cxqq2ztlluXuIsX7T5SjKGMM="
400 }, 420 },
401 "destroy": { 421 "destroy": {
@@ -421,11 +441,12 @@
421 "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=", 441 "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=",
422 "optional": true, 442 "optional": true,
423 "requires": { 443 "requires": {
424 "jsbn": "0.1.1" 444 "jsbn": "~0.1.0"
425 } 445 }
426 }, 446 },
427 "ee-first": { 447 "ee-first": {
428 "version": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", 448 "version": "1.1.1",
449 "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
429 "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" 450 "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0="
430 }, 451 },
431 "encodeurl": { 452 "encodeurl": {
@@ -460,36 +481,36 @@
460 "resolved": "https://registry.npmjs.org/express/-/express-4.16.2.tgz", 481 "resolved": "https://registry.npmjs.org/express/-/express-4.16.2.tgz",
461 "integrity": "sha1-41xt/i1kt9ygpc1PIXgb4ymeB2w=", 482 "integrity": "sha1-41xt/i1kt9ygpc1PIXgb4ymeB2w=",
462 "requires": { 483 "requires": {
463 "accepts": "1.3.4", 484 "accepts": "~1.3.4",
464 "array-flatten": "1.1.1", 485 "array-flatten": "1.1.1",
465 "body-parser": "1.18.2", 486 "body-parser": "1.18.2",
466 "content-disposition": "0.5.2", 487 "content-disposition": "0.5.2",
467 "content-type": "1.0.4", 488 "content-type": "~1.0.4",
468 "cookie": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", 489 "cookie": "0.3.1",
469 "cookie-signature": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", 490 "cookie-signature": "1.0.6",
470 "debug": "2.6.9", 491 "debug": "2.6.9",
471 "depd": "1.1.2", 492 "depd": "~1.1.1",
472 "encodeurl": "1.0.2", 493 "encodeurl": "~1.0.1",
473 "escape-html": "1.0.3", 494 "escape-html": "~1.0.3",
474 "etag": "1.8.1", 495 "etag": "~1.8.1",
475 "finalhandler": "1.1.0", 496 "finalhandler": "1.1.0",
476 "fresh": "0.5.2", 497 "fresh": "0.5.2",
477 "merge-descriptors": "1.0.1", 498 "merge-descriptors": "1.0.1",
478 "methods": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", 499 "methods": "~1.1.2",
479 "on-finished": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", 500 "on-finished": "~2.3.0",
480 "parseurl": "1.3.2", 501 "parseurl": "~1.3.2",
481 "path-to-regexp": "0.1.7", 502 "path-to-regexp": "0.1.7",
482 "proxy-addr": "2.0.2", 503 "proxy-addr": "~2.0.2",
483 "qs": "6.5.1", 504 "qs": "6.5.1",
484 "range-parser": "1.2.0", 505 "range-parser": "~1.2.0",
485 "safe-buffer": "5.1.1", 506 "safe-buffer": "5.1.1",
486 "send": "0.16.1", 507 "send": "0.16.1",
487 "serve-static": "1.13.1", 508 "serve-static": "1.13.1",
488 "setprototypeof": "1.1.0", 509 "setprototypeof": "1.1.0",
489 "statuses": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz", 510 "statuses": "~1.3.1",
490 "type-is": "1.6.16", 511 "type-is": "~1.6.15",
491 "utils-merge": "1.0.1", 512 "utils-merge": "1.0.1",
492 "vary": "1.1.2" 513 "vary": "~1.1.2"
493 }, 514 },
494 "dependencies": { 515 "dependencies": {
495 "depd": { 516 "depd": {
@@ -509,14 +530,14 @@
509 "resolved": "https://registry.npmjs.org/express-session/-/express-session-1.15.6.tgz", 530 "resolved": "https://registry.npmjs.org/express-session/-/express-session-1.15.6.tgz",
510 "integrity": "sha512-r0nrHTCYtAMrFwZ0kBzZEXa1vtPVrw0dKvGSrKP4dahwBQ1BJpF2/y1Pp4sCD/0kvxV4zZeclyvfmw0B4RMJQA==", 531 "integrity": "sha512-r0nrHTCYtAMrFwZ0kBzZEXa1vtPVrw0dKvGSrKP4dahwBQ1BJpF2/y1Pp4sCD/0kvxV4zZeclyvfmw0B4RMJQA==",
511 "requires": { 532 "requires": {
512 "cookie": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", 533 "cookie": "0.3.1",
513 "cookie-signature": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", 534 "cookie-signature": "1.0.6",
514 "crc": "3.4.4", 535 "crc": "3.4.4",
515 "debug": "2.6.9", 536 "debug": "2.6.9",
516 "depd": "1.1.2", 537 "depd": "~1.1.1",
517 "on-headers": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.1.tgz", 538 "on-headers": "~1.0.1",
518 "parseurl": "1.3.2", 539 "parseurl": "~1.3.2",
519 "uid-safe": "2.1.5", 540 "uid-safe": "~2.1.5",
520 "utils-merge": "1.0.1" 541 "utils-merge": "1.0.1"
521 }, 542 },
522 "dependencies": { 543 "dependencies": {
@@ -548,10 +569,11 @@
548 "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=" 569 "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I="
549 }, 570 },
550 "fd-slicer": { 571 "fd-slicer": {
551 "version": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.0.1.tgz", 572 "version": "1.0.1",
573 "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.0.1.tgz",
552 "integrity": "sha1-i1vL2ewyfFBBv5qwI/1nUPEXfmU=", 574 "integrity": "sha1-i1vL2ewyfFBBv5qwI/1nUPEXfmU=",
553 "requires": { 575 "requires": {
554 "pend": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz" 576 "pend": "~1.2.0"
555 } 577 }
556 }, 578 },
557 "finalhandler": { 579 "finalhandler": {
@@ -560,12 +582,12 @@
560 "integrity": "sha1-zgtoVbRYU+eRsvzGgARtiCU91/U=", 582 "integrity": "sha1-zgtoVbRYU+eRsvzGgARtiCU91/U=",
561 "requires": { 583 "requires": {
562 "debug": "2.6.9", 584 "debug": "2.6.9",
563 "encodeurl": "1.0.2", 585 "encodeurl": "~1.0.1",
564 "escape-html": "1.0.3", 586 "escape-html": "~1.0.3",
565 "on-finished": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", 587 "on-finished": "~2.3.0",
566 "parseurl": "1.3.2", 588 "parseurl": "~1.3.2",
567 "statuses": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz", 589 "statuses": "~1.3.1",
568 "unpipe": "1.0.0" 590 "unpipe": "~1.0.0"
569 } 591 }
570 }, 592 },
571 "forever-agent": { 593 "forever-agent": {
@@ -578,9 +600,9 @@
578 "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz", 600 "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz",
579 "integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=", 601 "integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=",
580 "requires": { 602 "requires": {
581 "asynckit": "0.4.0", 603 "asynckit": "^0.4.0",
582 "combined-stream": "1.0.6", 604 "combined-stream": "1.0.6",
583 "mime-types": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.15.tgz" 605 "mime-types": "^2.1.12"
584 }, 606 },
585 "dependencies": { 607 "dependencies": {
586 "combined-stream": { 608 "combined-stream": {
@@ -588,13 +610,14 @@
588 "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz", 610 "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz",
589 "integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=", 611 "integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=",
590 "requires": { 612 "requires": {
591 "delayed-stream": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz" 613 "delayed-stream": "~1.0.0"
592 } 614 }
593 } 615 }
594 } 616 }
595 }, 617 },
596 "formidable": { 618 "formidable": {
597 "version": "https://registry.npmjs.org/formidable/-/formidable-1.0.17.tgz", 619 "version": "1.0.17",
620 "resolved": "https://registry.npmjs.org/formidable/-/formidable-1.0.17.tgz",
598 "integrity": "sha1-71SRSQ+UM7cF+qdyScmQKa40hVk=" 621 "integrity": "sha1-71SRSQ+UM7cF+qdyScmQKa40hVk="
599 }, 622 },
600 "forwarded": { 623 "forwarded": {
@@ -617,7 +640,7 @@
617 "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", 640 "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz",
618 "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", 641 "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=",
619 "requires": { 642 "requires": {
620 "assert-plus": "1.0.0" 643 "assert-plus": "^1.0.0"
621 }, 644 },
622 "dependencies": { 645 "dependencies": {
623 "assert-plus": { 646 "assert-plus": {
@@ -628,27 +651,29 @@
628 } 651 }
629 }, 652 },
630 "glob": { 653 "glob": {
631 "version": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", 654 "version": "7.1.2",
655 "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
632 "integrity": "sha1-wZyd+aAocC1nhhI4SmVSQExjbRU=", 656 "integrity": "sha1-wZyd+aAocC1nhhI4SmVSQExjbRU=",
633 "requires": { 657 "requires": {
634 "fs.realpath": "1.0.0", 658 "fs.realpath": "^1.0.0",
635 "inflight": "1.0.6", 659 "inflight": "^1.0.4",
636 "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 660 "inherits": "2",
637 "minimatch": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", 661 "minimatch": "^3.0.4",
638 "once": "1.4.0", 662 "once": "^1.3.0",
639 "path-is-absolute": "1.0.1" 663 "path-is-absolute": "^1.0.0"
640 } 664 }
641 }, 665 },
642 "globby": { 666 "globby": {
643 "version": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz", 667 "version": "5.0.0",
668 "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz",
644 "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=", 669 "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=",
645 "requires": { 670 "requires": {
646 "array-union": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", 671 "array-union": "^1.0.1",
647 "arrify": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", 672 "arrify": "^1.0.0",
648 "glob": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", 673 "glob": "^7.0.3",
649 "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", 674 "object-assign": "^4.0.1",
650 "pify": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", 675 "pify": "^2.0.0",
651 "pinkie-promise": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz" 676 "pinkie-promise": "^2.0.0"
652 } 677 }
653 }, 678 },
654 "growl": { 679 "growl": {
@@ -667,8 +692,8 @@
667 "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz", 692 "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz",
668 "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", 693 "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=",
669 "requires": { 694 "requires": {
670 "ajv": "5.5.2", 695 "ajv": "^5.1.0",
671 "har-schema": "2.0.0" 696 "har-schema": "^2.0.0"
672 } 697 }
673 }, 698 },
674 "hawk": { 699 "hawk": {
@@ -676,10 +701,10 @@
676 "resolved": "https://registry.npmjs.org/hawk/-/hawk-6.0.2.tgz", 701 "resolved": "https://registry.npmjs.org/hawk/-/hawk-6.0.2.tgz",
677 "integrity": "sha512-miowhl2+U7Qle4vdLqDdPt9m09K6yZhkLDTWGoUiUzrQCn+mHHSmfJgAyGaLRZbPmTqfFFjRV1QWCW0VWUJBbQ==", 702 "integrity": "sha512-miowhl2+U7Qle4vdLqDdPt9m09K6yZhkLDTWGoUiUzrQCn+mHHSmfJgAyGaLRZbPmTqfFFjRV1QWCW0VWUJBbQ==",
678 "requires": { 703 "requires": {
679 "boom": "4.3.1", 704 "boom": "4.x.x",
680 "cryptiles": "3.1.2", 705 "cryptiles": "3.x.x",
681 "hoek": "4.2.1", 706 "hoek": "4.x.x",
682 "sntp": "2.1.0" 707 "sntp": "2.x.x"
683 } 708 }
684 }, 709 },
685 "hoek": { 710 "hoek": {
@@ -688,13 +713,14 @@
688 "integrity": "sha512-QLg82fGkfnJ/4iy1xZ81/9SIJiq1NGFUMGs6ParyjBZr6jW2Ufj/snDqTHixNlHdPNwN2RLVD0Pi3igeK9+JfA==" 713 "integrity": "sha512-QLg82fGkfnJ/4iy1xZ81/9SIJiq1NGFUMGs6ParyjBZr6jW2Ufj/snDqTHixNlHdPNwN2RLVD0Pi3igeK9+JfA=="
689 }, 714 },
690 "http-errors": { 715 "http-errors": {
691 "version": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.1.tgz", 716 "version": "1.6.1",
717 "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.1.tgz",
692 "integrity": "sha1-X4uO2YrKVFZWv1cplzh/kEpyIlc=", 718 "integrity": "sha1-X4uO2YrKVFZWv1cplzh/kEpyIlc=",
693 "requires": { 719 "requires": {
694 "depd": "https://registry.npmjs.org/depd/-/depd-1.1.0.tgz", 720 "depd": "1.1.0",
695 "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 721 "inherits": "2.0.3",
696 "setprototypeof": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz", 722 "setprototypeof": "1.0.3",
697 "statuses": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz" 723 "statuses": ">= 1.3.1 < 2"
698 } 724 }
699 }, 725 },
700 "http-signature": { 726 "http-signature": {
@@ -702,9 +728,9 @@
702 "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", 728 "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz",
703 "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", 729 "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=",
704 "requires": { 730 "requires": {
705 "assert-plus": "1.0.0", 731 "assert-plus": "^1.0.0",
706 "jsprim": "1.4.1", 732 "jsprim": "^1.2.2",
707 "sshpk": "1.13.1" 733 "sshpk": "^1.7.0"
708 }, 734 },
709 "dependencies": { 735 "dependencies": {
710 "assert-plus": { 736 "assert-plus": {
@@ -738,9 +764,9 @@
738 "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", 764 "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz",
739 "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", 765 "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=",
740 "requires": { 766 "requires": {
741 "assert-plus": "1.0.0", 767 "assert-plus": "^1.0.0",
742 "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", 768 "core-util-is": "1.0.2",
743 "extsprintf": "1.3.0" 769 "extsprintf": "^1.2.0"
744 } 770 }
745 } 771 }
746 } 772 }
@@ -755,12 +781,13 @@
755 "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", 781 "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
756 "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", 782 "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
757 "requires": { 783 "requires": {
758 "once": "1.4.0", 784 "once": "^1.3.0",
759 "wrappy": "1.0.2" 785 "wrappy": "1"
760 } 786 }
761 }, 787 },
762 "inherits": { 788 "inherits": {
763 "version": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 789 "version": "2.0.3",
790 "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
764 "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" 791 "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4="
765 }, 792 },
766 "ipaddr.js": { 793 "ipaddr.js": {
@@ -769,21 +796,24 @@
769 "integrity": "sha1-1LUFvemUaYfM8PxY2QEP+WB+P6A=" 796 "integrity": "sha1-1LUFvemUaYfM8PxY2QEP+WB+P6A="
770 }, 797 },
771 "is-path-cwd": { 798 "is-path-cwd": {
772 "version": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", 799 "version": "1.0.0",
800 "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz",
773 "integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=" 801 "integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0="
774 }, 802 },
775 "is-path-in-cwd": { 803 "is-path-in-cwd": {
776 "version": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz", 804 "version": "1.0.0",
805 "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz",
777 "integrity": "sha1-ZHdYK4IU1gI0YJRWcAO+ip6sBNw=", 806 "integrity": "sha1-ZHdYK4IU1gI0YJRWcAO+ip6sBNw=",
778 "requires": { 807 "requires": {
779 "is-path-inside": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.0.tgz" 808 "is-path-inside": "^1.0.0"
780 } 809 }
781 }, 810 },
782 "is-path-inside": { 811 "is-path-inside": {
783 "version": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.0.tgz", 812 "version": "1.0.0",
813 "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.0.tgz",
784 "integrity": "sha1-/AbloWg/vaE95mev9xe7wQpI838=", 814 "integrity": "sha1-/AbloWg/vaE95mev9xe7wQpI838=",
785 "requires": { 815 "requires": {
786 "path-is-inside": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz" 816 "path-is-inside": "^1.0.1"
787 } 817 }
788 }, 818 },
789 "is-typedarray": { 819 "is-typedarray": {
@@ -792,7 +822,8 @@
792 "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" 822 "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo="
793 }, 823 },
794 "isarray": { 824 "isarray": {
795 "version": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", 825 "version": "0.0.1",
826 "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
796 "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" 827 "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8="
797 }, 828 },
798 "isstream": { 829 "isstream": {
@@ -895,40 +926,47 @@
895 "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" 926 "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E="
896 }, 927 },
897 "methods": { 928 "methods": {
898 "version": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", 929 "version": "1.1.2",
930 "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz",
899 "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" 931 "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4="
900 }, 932 },
901 "mime": { 933 "mime": {
902 "version": "https://registry.npmjs.org/mime/-/mime-1.3.4.tgz", 934 "version": "1.3.4",
935 "resolved": "https://registry.npmjs.org/mime/-/mime-1.3.4.tgz",
903 "integrity": "sha1-EV+eO2s9rylZmDyzjxSaLUDrXVM=" 936 "integrity": "sha1-EV+eO2s9rylZmDyzjxSaLUDrXVM="
904 }, 937 },
905 "mime-db": { 938 "mime-db": {
906 "version": "https://registry.npmjs.org/mime-db/-/mime-db-1.27.0.tgz", 939 "version": "1.27.0",
940 "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.27.0.tgz",
907 "integrity": "sha1-gg9XIpa70g7CXtVeW13oaeVDbrE=" 941 "integrity": "sha1-gg9XIpa70g7CXtVeW13oaeVDbrE="
908 }, 942 },
909 "mime-types": { 943 "mime-types": {
910 "version": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.15.tgz", 944 "version": "2.1.15",
945 "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.15.tgz",
911 "integrity": "sha1-pOv1BkCUVpI3uM9wBGd20J/JKu0=", 946 "integrity": "sha1-pOv1BkCUVpI3uM9wBGd20J/JKu0=",
912 "requires": { 947 "requires": {
913 "mime-db": "https://registry.npmjs.org/mime-db/-/mime-db-1.27.0.tgz" 948 "mime-db": "~1.27.0"
914 } 949 }
915 }, 950 },
916 "minimatch": { 951 "minimatch": {
917 "version": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", 952 "version": "3.0.4",
953 "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
918 "integrity": "sha1-UWbihkV/AzBgZL5Ul+jbsMPTIIM=", 954 "integrity": "sha1-UWbihkV/AzBgZL5Ul+jbsMPTIIM=",
919 "requires": { 955 "requires": {
920 "brace-expansion": "1.1.8" 956 "brace-expansion": "^1.1.7"
921 } 957 }
922 }, 958 },
923 "minimist": { 959 "minimist": {
924 "version": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", 960 "version": "0.0.8",
961 "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
925 "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" 962 "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0="
926 }, 963 },
927 "mkdirp": { 964 "mkdirp": {
928 "version": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", 965 "version": "0.5.1",
966 "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
929 "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", 967 "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
930 "requires": { 968 "requires": {
931 "minimist": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz" 969 "minimist": "0.0.8"
932 } 970 }
933 }, 971 },
934 "mocha": { 972 "mocha": {
@@ -944,7 +982,7 @@
944 "glob": "3.2.11", 982 "glob": "3.2.11",
945 "growl": "1.9.2", 983 "growl": "1.9.2",
946 "jade": "0.26.3", 984 "jade": "0.26.3",
947 "mkdirp": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", 985 "mkdirp": "0.5.1",
948 "supports-color": "1.2.0", 986 "supports-color": "1.2.0",
949 "to-iso-string": "0.0.2" 987 "to-iso-string": "0.0.2"
950 }, 988 },
@@ -970,8 +1008,8 @@
970 "integrity": "sha1-Spc/Y1uRkPcV0QmH1cAP0oFevj0=", 1008 "integrity": "sha1-Spc/Y1uRkPcV0QmH1cAP0oFevj0=",
971 "dev": true, 1009 "dev": true,
972 "requires": { 1010 "requires": {
973 "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 1011 "inherits": "2",
974 "minimatch": "0.3.0" 1012 "minimatch": "0.3"
975 } 1013 }
976 }, 1014 },
977 "minimatch": { 1015 "minimatch": {
@@ -980,8 +1018,8 @@
980 "integrity": "sha1-J12O2qxPG7MyZHIInnlJyDlGmd0=", 1018 "integrity": "sha1-J12O2qxPG7MyZHIInnlJyDlGmd0=",
981 "dev": true, 1019 "dev": true,
982 "requires": { 1020 "requires": {
983 "lru-cache": "2.7.3", 1021 "lru-cache": "2",
984 "sigmund": "1.0.1" 1022 "sigmund": "~1.0.0"
985 } 1023 }
986 }, 1024 },
987 "ms": { 1025 "ms": {
@@ -997,11 +1035,11 @@
997 "resolved": "https://registry.npmjs.org/morgan/-/morgan-1.9.0.tgz", 1035 "resolved": "https://registry.npmjs.org/morgan/-/morgan-1.9.0.tgz",
998 "integrity": "sha1-0B+mxlhZt2/PMbPLU6OCGjEdgFE=", 1036 "integrity": "sha1-0B+mxlhZt2/PMbPLU6OCGjEdgFE=",
999 "requires": { 1037 "requires": {
1000 "basic-auth": "2.0.0", 1038 "basic-auth": "~2.0.0",
1001 "debug": "2.6.9", 1039 "debug": "2.6.9",
1002 "depd": "1.1.2", 1040 "depd": "~1.1.1",
1003 "on-finished": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", 1041 "on-finished": "~2.3.0",
1004 "on-headers": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.1.tgz" 1042 "on-headers": "~1.0.1"
1005 }, 1043 },
1006 "dependencies": { 1044 "dependencies": {
1007 "depd": { 1045 "depd": {
@@ -1012,14 +1050,16 @@
1012 } 1050 }
1013 }, 1051 },
1014 "ms": { 1052 "ms": {
1015 "version": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", 1053 "version": "2.0.0",
1054 "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
1016 "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" 1055 "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
1017 }, 1056 },
1018 "multiparty": { 1057 "multiparty": {
1019 "version": "https://registry.npmjs.org/multiparty/-/multiparty-4.1.3.tgz", 1058 "version": "4.1.3",
1059 "resolved": "https://registry.npmjs.org/multiparty/-/multiparty-4.1.3.tgz",
1020 "integrity": "sha1-PEPH/LGJbhdGBDap3Qtu8WaOT5Q=", 1060 "integrity": "sha1-PEPH/LGJbhdGBDap3Qtu8WaOT5Q=",
1021 "requires": { 1061 "requires": {
1022 "fd-slicer": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.0.1.tgz" 1062 "fd-slicer": "~1.0.1"
1023 } 1063 }
1024 }, 1064 },
1025 "mv": { 1065 "mv": {
@@ -1038,7 +1078,7 @@
1038 "resolved": "https://registry.npmjs.org/nopt/-/nopt-2.1.1.tgz", 1078 "resolved": "https://registry.npmjs.org/nopt/-/nopt-2.1.1.tgz",
1039 "integrity": "sha1-ket8SwF+fACtytH9bWOUTQ/bdcE=", 1079 "integrity": "sha1-ket8SwF+fACtytH9bWOUTQ/bdcE=",
1040 "requires": { 1080 "requires": {
1041 "abbrev": "1.1.1" 1081 "abbrev": "1"
1042 } 1082 }
1043 }, 1083 },
1044 "oauth-sign": { 1084 "oauth-sign": {
@@ -1047,18 +1087,21 @@
1047 "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=" 1087 "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM="
1048 }, 1088 },
1049 "object-assign": { 1089 "object-assign": {
1050 "version": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", 1090 "version": "4.1.1",
1091 "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
1051 "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" 1092 "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM="
1052 }, 1093 },
1053 "on-finished": { 1094 "on-finished": {
1054 "version": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", 1095 "version": "2.3.0",
1096 "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz",
1055 "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", 1097 "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=",
1056 "requires": { 1098 "requires": {
1057 "ee-first": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz" 1099 "ee-first": "1.1.1"
1058 } 1100 }
1059 }, 1101 },
1060 "on-headers": { 1102 "on-headers": {
1061 "version": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.1.tgz", 1103 "version": "1.0.1",
1104 "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.1.tgz",
1062 "integrity": "sha1-ko9dD0cNSTQmUepnlLCFfBAGk/c=" 1105 "integrity": "sha1-ko9dD0cNSTQmUepnlLCFfBAGk/c="
1063 }, 1106 },
1064 "once": { 1107 "once": {
@@ -1066,7 +1109,7 @@
1066 "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 1109 "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
1067 "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", 1110 "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
1068 "requires": { 1111 "requires": {
1069 "wrappy": "1.0.2" 1112 "wrappy": "1"
1070 } 1113 }
1071 }, 1114 },
1072 "options": { 1115 "options": {
@@ -1081,11 +1124,12 @@
1081 "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=" 1124 "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M="
1082 }, 1125 },
1083 "passport": { 1126 "passport": {
1084 "version": "https://registry.npmjs.org/passport/-/passport-0.2.2.tgz", 1127 "version": "0.2.2",
1128 "resolved": "https://registry.npmjs.org/passport/-/passport-0.2.2.tgz",
1085 "integrity": "sha1-nDjxe+uSnz2Br3uIOOhDDbhwPys=", 1129 "integrity": "sha1-nDjxe+uSnz2Br3uIOOhDDbhwPys=",
1086 "requires": { 1130 "requires": {
1087 "passport-strategy": "1.0.0", 1131 "passport-strategy": "1.x.x",
1088 "pause": "https://registry.npmjs.org/pause/-/pause-0.0.1.tgz" 1132 "pause": "0.0.1"
1089 } 1133 }
1090 }, 1134 },
1091 "passport-http-bearer": { 1135 "passport-http-bearer": {
@@ -1093,7 +1137,7 @@
1093 "resolved": "https://registry.npmjs.org/passport-http-bearer/-/passport-http-bearer-1.0.1.tgz", 1137 "resolved": "https://registry.npmjs.org/passport-http-bearer/-/passport-http-bearer-1.0.1.tgz",
1094 "integrity": "sha1-FHRp6jZp4qhMYWfvmdu3fh8AmKg=", 1138 "integrity": "sha1-FHRp6jZp4qhMYWfvmdu3fh8AmKg=",
1095 "requires": { 1139 "requires": {
1096 "passport-strategy": "1.0.0" 1140 "passport-strategy": "1.x.x"
1097 } 1141 }
1098 }, 1142 },
1099 "passport-ldapjs": { 1143 "passport-ldapjs": {
@@ -1101,8 +1145,8 @@
1101 "resolved": "https://registry.npmjs.org/passport-ldapjs/-/passport-ldapjs-1.0.3.tgz", 1145 "resolved": "https://registry.npmjs.org/passport-ldapjs/-/passport-ldapjs-1.0.3.tgz",
1102 "integrity": "sha512-pWyqehzK5IAtg53S6uIc9PHqgxL3xDcog3XDhtvidNd4+3z8XTGV2qQKPaUZnkkRLmWqZ7Dm3gnwnAtp6R1LNQ==", 1146 "integrity": "sha512-pWyqehzK5IAtg53S6uIc9PHqgxL3xDcog3XDhtvidNd4+3z8XTGV2qQKPaUZnkkRLmWqZ7Dm3gnwnAtp6R1LNQ==",
1103 "requires": { 1147 "requires": {
1104 "ldapjs": "0.7.1", 1148 "ldapjs": "^0.7.1",
1105 "passport-strategy": "1.0.0" 1149 "passport-strategy": "^1.0.0"
1106 } 1150 }
1107 }, 1151 },
1108 "passport-strategy": { 1152 "passport-strategy": {
@@ -1116,7 +1160,8 @@
1116 "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" 1160 "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18="
1117 }, 1161 },
1118 "path-is-inside": { 1162 "path-is-inside": {
1119 "version": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", 1163 "version": "1.0.2",
1164 "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz",
1120 "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=" 1165 "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM="
1121 }, 1166 },
1122 "path-to-regexp": { 1167 "path-to-regexp": {
@@ -1125,11 +1170,13 @@
1125 "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" 1170 "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w="
1126 }, 1171 },
1127 "pause": { 1172 "pause": {
1128 "version": "https://registry.npmjs.org/pause/-/pause-0.0.1.tgz", 1173 "version": "0.0.1",
1174 "resolved": "https://registry.npmjs.org/pause/-/pause-0.0.1.tgz",
1129 "integrity": "sha1-HUCLP9t2kjuVQ9lvtMnf1TXZy10=" 1175 "integrity": "sha1-HUCLP9t2kjuVQ9lvtMnf1TXZy10="
1130 }, 1176 },
1131 "pend": { 1177 "pend": {
1132 "version": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", 1178 "version": "1.2.0",
1179 "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz",
1133 "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=" 1180 "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA="
1134 }, 1181 },
1135 "performance-now": { 1182 "performance-now": {
@@ -1138,18 +1185,21 @@
1138 "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" 1185 "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns="
1139 }, 1186 },
1140 "pify": { 1187 "pify": {
1141 "version": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", 1188 "version": "2.3.0",
1189 "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
1142 "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" 1190 "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw="
1143 }, 1191 },
1144 "pinkie": { 1192 "pinkie": {
1145 "version": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", 1193 "version": "2.0.4",
1194 "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz",
1146 "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=" 1195 "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA="
1147 }, 1196 },
1148 "pinkie-promise": { 1197 "pinkie-promise": {
1149 "version": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", 1198 "version": "2.0.1",
1199 "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz",
1150 "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", 1200 "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=",
1151 "requires": { 1201 "requires": {
1152 "pinkie": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz" 1202 "pinkie": "^2.0.0"
1153 } 1203 }
1154 }, 1204 },
1155 "pooling": { 1205 "pooling": {
@@ -1176,7 +1226,7 @@
1176 "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.2.tgz", 1226 "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.2.tgz",
1177 "integrity": "sha1-ZXFQT0e7mI7IGAJT+F3X4UlSvew=", 1227 "integrity": "sha1-ZXFQT0e7mI7IGAJT+F3X4UlSvew=",
1178 "requires": { 1228 "requires": {
1179 "forwarded": "0.1.2", 1229 "forwarded": "~0.1.2",
1180 "ipaddr.js": "1.5.2" 1230 "ipaddr.js": "1.5.2"
1181 } 1231 }
1182 }, 1232 },
@@ -1222,21 +1272,22 @@
1222 "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=", 1272 "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=",
1223 "requires": { 1273 "requires": {
1224 "depd": "1.1.1", 1274 "depd": "1.1.1",
1225 "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 1275 "inherits": "2.0.3",
1226 "setprototypeof": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz", 1276 "setprototypeof": "1.0.3",
1227 "statuses": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz" 1277 "statuses": ">= 1.3.1 < 2"
1228 } 1278 }
1229 } 1279 }
1230 } 1280 }
1231 }, 1281 },
1232 "readable-stream": { 1282 "readable-stream": {
1233 "version": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.27-1.tgz", 1283 "version": "1.0.27-1",
1284 "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.27-1.tgz",
1234 "integrity": "sha1-a2eYPCA1fO/QfwFlABoW1xDZEHg=", 1285 "integrity": "sha1-a2eYPCA1fO/QfwFlABoW1xDZEHg=",
1235 "requires": { 1286 "requires": {
1236 "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", 1287 "core-util-is": "~1.0.0",
1237 "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 1288 "inherits": "~2.0.1",
1238 "isarray": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", 1289 "isarray": "0.0.1",
1239 "string_decoder": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz" 1290 "string_decoder": "~0.10.x"
1240 } 1291 }
1241 }, 1292 },
1242 "readline-sync": { 1293 "readline-sync": {
@@ -1245,7 +1296,8 @@
1245 "integrity": "sha1-PtqOZfI80qF+YTAbHwADOWr17No=" 1296 "integrity": "sha1-PtqOZfI80qF+YTAbHwADOWr17No="
1246 }, 1297 },
1247 "reduce-component": { 1298 "reduce-component": {
1248 "version": "http://registry.npmjs.org/reduce-component/-/reduce-component-1.0.1.tgz", 1299 "version": "1.0.1",
1300 "resolved": "http://registry.npmjs.org/reduce-component/-/reduce-component-1.0.1.tgz",
1249 "integrity": "sha1-4Mk1QsV0UhvqE98PlIjtgqt3xdo=" 1301 "integrity": "sha1-4Mk1QsV0UhvqE98PlIjtgqt3xdo="
1250 }, 1302 },
1251 "request": { 1303 "request": {
@@ -1253,28 +1305,28 @@
1253 "resolved": "https://registry.npmjs.org/request/-/request-2.83.0.tgz", 1305 "resolved": "https://registry.npmjs.org/request/-/request-2.83.0.tgz",
1254 "integrity": "sha512-lR3gD69osqm6EYLk9wB/G1W/laGWjzH90t1vEa2xuxHD5KUrSzp9pUSfTm+YC5Nxt2T8nMPEvKlhbQayU7bgFw==", 1306 "integrity": "sha512-lR3gD69osqm6EYLk9wB/G1W/laGWjzH90t1vEa2xuxHD5KUrSzp9pUSfTm+YC5Nxt2T8nMPEvKlhbQayU7bgFw==",
1255 "requires": { 1307 "requires": {
1256 "aws-sign2": "0.7.0", 1308 "aws-sign2": "~0.7.0",
1257 "aws4": "1.6.0", 1309 "aws4": "^1.6.0",
1258 "caseless": "0.12.0", 1310 "caseless": "~0.12.0",
1259 "combined-stream": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz", 1311 "combined-stream": "~1.0.5",
1260 "extend": "3.0.1", 1312 "extend": "~3.0.1",
1261 "forever-agent": "0.6.1", 1313 "forever-agent": "~0.6.1",
1262 "form-data": "2.3.2", 1314 "form-data": "~2.3.1",
1263 "har-validator": "5.0.3", 1315 "har-validator": "~5.0.3",
1264 "hawk": "6.0.2", 1316 "hawk": "~6.0.2",
1265 "http-signature": "1.2.0", 1317 "http-signature": "~1.2.0",
1266 "is-typedarray": "1.0.0", 1318 "is-typedarray": "~1.0.0",
1267 "isstream": "0.1.2", 1319 "isstream": "~0.1.2",
1268 "json-stringify-safe": "5.0.1", 1320 "json-stringify-safe": "~5.0.1",
1269 "mime-types": "2.1.18", 1321 "mime-types": "~2.1.17",
1270 "oauth-sign": "0.8.2", 1322 "oauth-sign": "~0.8.2",
1271 "performance-now": "2.1.0", 1323 "performance-now": "^2.1.0",
1272 "qs": "6.5.1", 1324 "qs": "~6.5.1",
1273 "safe-buffer": "5.1.1", 1325 "safe-buffer": "^5.1.1",
1274 "stringstream": "0.0.5", 1326 "stringstream": "~0.0.5",
1275 "tough-cookie": "2.3.3", 1327 "tough-cookie": "~2.3.3",
1276 "tunnel-agent": "0.6.0", 1328 "tunnel-agent": "^0.6.0",
1277 "uuid": "3.2.1" 1329 "uuid": "^3.1.0"
1278 }, 1330 },
1279 "dependencies": { 1331 "dependencies": {
1280 "mime-db": { 1332 "mime-db": {
@@ -1287,7 +1339,7 @@
1287 "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", 1339 "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz",
1288 "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", 1340 "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==",
1289 "requires": { 1341 "requires": {
1290 "mime-db": "1.33.0" 1342 "mime-db": "~1.33.0"
1291 } 1343 }
1292 } 1344 }
1293 } 1345 }
@@ -1297,7 +1349,7 @@
1297 "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.1.tgz", 1349 "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.1.tgz",
1298 "integrity": "sha1-wjOOxkPfeht/5cVPqG9XQopV8z0=", 1350 "integrity": "sha1-wjOOxkPfeht/5cVPqG9XQopV8z0=",
1299 "requires": { 1351 "requires": {
1300 "glob": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz" 1352 "glob": "^7.0.5"
1301 } 1353 }
1302 }, 1354 },
1303 "safe-buffer": { 1355 "safe-buffer": {
@@ -1306,7 +1358,8 @@
1306 "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" 1358 "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg=="
1307 }, 1359 },
1308 "safetydance": { 1360 "safetydance": {
1309 "version": "https://registry.npmjs.org/safetydance/-/safetydance-0.1.1.tgz", 1361 "version": "0.1.1",
1362 "resolved": "https://registry.npmjs.org/safetydance/-/safetydance-0.1.1.tgz",
1310 "integrity": "sha1-FYjGkTOnxpzd/WotHTNDgdC3svc=" 1363 "integrity": "sha1-FYjGkTOnxpzd/WotHTNDgdC3svc="
1311 }, 1364 },
1312 "sax": { 1365 "sax": {
@@ -1322,9 +1375,9 @@
1322 "dev": true, 1375 "dev": true,
1323 "requires": { 1376 "requires": {
1324 "adm-zip": "0.4.4", 1377 "adm-zip": "0.4.4",
1325 "rimraf": "2.6.1", 1378 "rimraf": "^2.2.8",
1326 "tmp": "0.0.24", 1379 "tmp": "0.0.24",
1327 "ws": "1.1.5", 1380 "ws": "^1.0.1",
1328 "xml2js": "0.4.4" 1381 "xml2js": "0.4.4"
1329 } 1382 }
1330 }, 1383 },
@@ -1334,18 +1387,18 @@
1334 "integrity": "sha512-ElCLJdJIKPk6ux/Hocwhk7NFHpI3pVm/IZOYWqUmoxcgeyM+MpxHHKhb8QmlJDX1pU6WrgaHBkVNm73Sv7uc2A==", 1387 "integrity": "sha512-ElCLJdJIKPk6ux/Hocwhk7NFHpI3pVm/IZOYWqUmoxcgeyM+MpxHHKhb8QmlJDX1pU6WrgaHBkVNm73Sv7uc2A==",
1335 "requires": { 1388 "requires": {
1336 "debug": "2.6.9", 1389 "debug": "2.6.9",
1337 "depd": "1.1.2", 1390 "depd": "~1.1.1",
1338 "destroy": "1.0.4", 1391 "destroy": "~1.0.4",
1339 "encodeurl": "1.0.2", 1392 "encodeurl": "~1.0.1",
1340 "escape-html": "1.0.3", 1393 "escape-html": "~1.0.3",
1341 "etag": "1.8.1", 1394 "etag": "~1.8.1",
1342 "fresh": "0.5.2", 1395 "fresh": "0.5.2",
1343 "http-errors": "1.6.2", 1396 "http-errors": "~1.6.2",
1344 "mime": "1.4.1", 1397 "mime": "1.4.1",
1345 "ms": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", 1398 "ms": "2.0.0",
1346 "on-finished": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", 1399 "on-finished": "~2.3.0",
1347 "range-parser": "1.2.0", 1400 "range-parser": "~1.2.0",
1348 "statuses": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz" 1401 "statuses": "~1.3.1"
1349 }, 1402 },
1350 "dependencies": { 1403 "dependencies": {
1351 "depd": { 1404 "depd": {
@@ -1359,9 +1412,9 @@
1359 "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=", 1412 "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=",
1360 "requires": { 1413 "requires": {
1361 "depd": "1.1.1", 1414 "depd": "1.1.1",
1362 "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 1415 "inherits": "2.0.3",
1363 "setprototypeof": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz", 1416 "setprototypeof": "1.0.3",
1364 "statuses": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz" 1417 "statuses": ">= 1.3.1 < 2"
1365 }, 1418 },
1366 "dependencies": { 1419 "dependencies": {
1367 "depd": { 1420 "depd": {
@@ -1383,13 +1436,13 @@
1383 "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", 1436 "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz",
1384 "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=", 1437 "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=",
1385 "requires": { 1438 "requires": {
1386 "accepts": "1.3.4", 1439 "accepts": "~1.3.4",
1387 "batch": "0.6.1", 1440 "batch": "0.6.1",
1388 "debug": "2.6.9", 1441 "debug": "2.6.9",
1389 "escape-html": "1.0.3", 1442 "escape-html": "~1.0.3",
1390 "http-errors": "1.6.2", 1443 "http-errors": "~1.6.2",
1391 "mime-types": "2.1.18", 1444 "mime-types": "~2.1.17",
1392 "parseurl": "1.3.2" 1445 "parseurl": "~1.3.2"
1393 }, 1446 },
1394 "dependencies": { 1447 "dependencies": {
1395 "depd": { 1448 "depd": {
@@ -1403,9 +1456,9 @@
1403 "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=", 1456 "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=",
1404 "requires": { 1457 "requires": {
1405 "depd": "1.1.1", 1458 "depd": "1.1.1",
1406 "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 1459 "inherits": "2.0.3",
1407 "setprototypeof": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz", 1460 "setprototypeof": "1.0.3",
1408 "statuses": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz" 1461 "statuses": ">= 1.3.1 < 2"
1409 } 1462 }
1410 }, 1463 },
1411 "mime-db": { 1464 "mime-db": {
@@ -1418,7 +1471,7 @@
1418 "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", 1471 "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz",
1419 "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", 1472 "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==",
1420 "requires": { 1473 "requires": {
1421 "mime-db": "1.33.0" 1474 "mime-db": "~1.33.0"
1422 } 1475 }
1423 } 1476 }
1424 } 1477 }
@@ -1428,14 +1481,15 @@
1428 "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.1.tgz", 1481 "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.1.tgz",
1429 "integrity": "sha512-hSMUZrsPa/I09VYFJwa627JJkNs0NrfL1Uzuup+GqHfToR2KcsXFymXSV90hoyw3M+msjFuQly+YzIH/q0MGlQ==", 1482 "integrity": "sha512-hSMUZrsPa/I09VYFJwa627JJkNs0NrfL1Uzuup+GqHfToR2KcsXFymXSV90hoyw3M+msjFuQly+YzIH/q0MGlQ==",
1430 "requires": { 1483 "requires": {
1431 "encodeurl": "1.0.2", 1484 "encodeurl": "~1.0.1",
1432 "escape-html": "1.0.3", 1485 "escape-html": "~1.0.3",
1433 "parseurl": "1.3.2", 1486 "parseurl": "~1.3.2",
1434 "send": "0.16.1" 1487 "send": "0.16.1"
1435 } 1488 }
1436 }, 1489 },
1437 "setprototypeof": { 1490 "setprototypeof": {
1438 "version": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz", 1491 "version": "1.0.3",
1492 "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz",
1439 "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ=" 1493 "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ="
1440 }, 1494 },
1441 "sigmund": { 1495 "sigmund": {
@@ -1449,7 +1503,7 @@
1449 "resolved": "https://registry.npmjs.org/sntp/-/sntp-2.1.0.tgz", 1503 "resolved": "https://registry.npmjs.org/sntp/-/sntp-2.1.0.tgz",
1450 "integrity": "sha512-FL1b58BDrqS3A11lJ0zEdnJ3UOKqVxawAkF3k7F0CVN7VQ34aZrV+G8BZ1WC9ZL7NyrwsW0oviwsWDgRuVYtJg==", 1504 "integrity": "sha512-FL1b58BDrqS3A11lJ0zEdnJ3UOKqVxawAkF3k7F0CVN7VQ34aZrV+G8BZ1WC9ZL7NyrwsW0oviwsWDgRuVYtJg==",
1451 "requires": { 1505 "requires": {
1452 "hoek": "4.2.1" 1506 "hoek": "4.x.x"
1453 } 1507 }
1454 }, 1508 },
1455 "sshpk": { 1509 "sshpk": {
@@ -1457,14 +1511,14 @@
1457 "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.13.1.tgz", 1511 "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.13.1.tgz",
1458 "integrity": "sha1-US322mKHFEMW3EwY/hzx2UBzm+M=", 1512 "integrity": "sha1-US322mKHFEMW3EwY/hzx2UBzm+M=",
1459 "requires": { 1513 "requires": {
1460 "asn1": "0.2.3", 1514 "asn1": "~0.2.3",
1461 "assert-plus": "1.0.0", 1515 "assert-plus": "^1.0.0",
1462 "bcrypt-pbkdf": "1.0.1", 1516 "bcrypt-pbkdf": "^1.0.0",
1463 "dashdash": "1.14.1", 1517 "dashdash": "^1.12.0",
1464 "ecc-jsbn": "0.1.1", 1518 "ecc-jsbn": "~0.1.1",
1465 "getpass": "0.1.7", 1519 "getpass": "^0.1.1",
1466 "jsbn": "0.1.1", 1520 "jsbn": "~0.1.0",
1467 "tweetnacl": "0.14.5" 1521 "tweetnacl": "~0.14.0"
1468 }, 1522 },
1469 "dependencies": { 1523 "dependencies": {
1470 "asn1": { 1524 "asn1": {
@@ -1480,11 +1534,13 @@
1480 } 1534 }
1481 }, 1535 },
1482 "statuses": { 1536 "statuses": {
1483 "version": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz", 1537 "version": "1.3.1",
1538 "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz",
1484 "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=" 1539 "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4="
1485 }, 1540 },
1486 "string_decoder": { 1541 "string_decoder": {
1487 "version": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", 1542 "version": "0.10.31",
1543 "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
1488 "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" 1544 "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ="
1489 }, 1545 },
1490 "stringstream": { 1546 "stringstream": {
@@ -1493,37 +1549,41 @@
1493 "integrity": "sha1-TkhM1N5aC7vuGORjB3EKioFiGHg=" 1549 "integrity": "sha1-TkhM1N5aC7vuGORjB3EKioFiGHg="
1494 }, 1550 },
1495 "superagent": { 1551 "superagent": {
1496 "version": "https://registry.npmjs.org/superagent/-/superagent-1.8.5.tgz", 1552 "version": "1.8.5",
1553 "resolved": "https://registry.npmjs.org/superagent/-/superagent-1.8.5.tgz",
1497 "integrity": "sha1-HA3cOvMOgOuE68BcshItqP6UC1U=", 1554 "integrity": "sha1-HA3cOvMOgOuE68BcshItqP6UC1U=",
1498 "requires": { 1555 "requires": {
1499 "component-emitter": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", 1556 "component-emitter": "~1.2.0",
1500 "cookiejar": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.0.6.tgz", 1557 "cookiejar": "2.0.6",
1501 "debug": "2.6.9", 1558 "debug": "2",
1502 "extend": "https://registry.npmjs.org/extend/-/extend-3.0.0.tgz", 1559 "extend": "3.0.0",
1503 "form-data": "https://registry.npmjs.org/form-data/-/form-data-1.0.0-rc3.tgz", 1560 "form-data": "1.0.0-rc3",
1504 "formidable": "https://registry.npmjs.org/formidable/-/formidable-1.0.17.tgz", 1561 "formidable": "~1.0.14",
1505 "methods": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", 1562 "methods": "~1.1.1",
1506 "mime": "https://registry.npmjs.org/mime/-/mime-1.3.4.tgz", 1563 "mime": "1.3.4",
1507 "qs": "https://registry.npmjs.org/qs/-/qs-2.3.3.tgz", 1564 "qs": "2.3.3",
1508 "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.27-1.tgz", 1565 "readable-stream": "1.0.27-1",
1509 "reduce-component": "http://registry.npmjs.org/reduce-component/-/reduce-component-1.0.1.tgz" 1566 "reduce-component": "1.0.1"
1510 }, 1567 },
1511 "dependencies": { 1568 "dependencies": {
1512 "extend": { 1569 "extend": {
1513 "version": "https://registry.npmjs.org/extend/-/extend-3.0.0.tgz", 1570 "version": "3.0.0",
1571 "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.0.tgz",
1514 "integrity": "sha1-WkdDU7nzNT3dgXbf03uRyDpG8dQ=" 1572 "integrity": "sha1-WkdDU7nzNT3dgXbf03uRyDpG8dQ="
1515 }, 1573 },
1516 "form-data": { 1574 "form-data": {
1517 "version": "https://registry.npmjs.org/form-data/-/form-data-1.0.0-rc3.tgz", 1575 "version": "1.0.0-rc3",
1576 "resolved": "https://registry.npmjs.org/form-data/-/form-data-1.0.0-rc3.tgz",
1518 "integrity": "sha1-01vGLn+8KTeuePlIqqDTjZBgdXc=", 1577 "integrity": "sha1-01vGLn+8KTeuePlIqqDTjZBgdXc=",
1519 "requires": { 1578 "requires": {
1520 "async": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", 1579 "async": "^1.4.0",
1521 "combined-stream": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz", 1580 "combined-stream": "^1.0.5",
1522 "mime-types": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.15.tgz" 1581 "mime-types": "^2.1.3"
1523 } 1582 }
1524 }, 1583 },
1525 "qs": { 1584 "qs": {
1526 "version": "https://registry.npmjs.org/qs/-/qs-2.3.3.tgz", 1585 "version": "2.3.3",
1586 "resolved": "https://registry.npmjs.org/qs/-/qs-2.3.3.tgz",
1527 "integrity": "sha1-6eha2+ddoLvkyOBHaghikPhjtAQ=" 1587 "integrity": "sha1-6eha2+ddoLvkyOBHaghikPhjtAQ="
1528 } 1588 }
1529 } 1589 }
@@ -1551,7 +1611,7 @@
1551 "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.3.tgz", 1611 "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.3.tgz",
1552 "integrity": "sha1-C2GKVWW23qkL80JdBNVe3EdadWE=", 1612 "integrity": "sha1-C2GKVWW23qkL80JdBNVe3EdadWE=",
1553 "requires": { 1613 "requires": {
1554 "punycode": "1.4.1" 1614 "punycode": "^1.4.1"
1555 } 1615 }
1556 }, 1616 },
1557 "tunnel-agent": { 1617 "tunnel-agent": {
@@ -1559,7 +1619,7 @@
1559 "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", 1619 "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
1560 "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", 1620 "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=",
1561 "requires": { 1621 "requires": {
1562 "safe-buffer": "5.1.1" 1622 "safe-buffer": "^5.0.1"
1563 } 1623 }
1564 }, 1624 },
1565 "tweetnacl": { 1625 "tweetnacl": {
@@ -1574,7 +1634,7 @@
1574 "integrity": "sha512-HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q==", 1634 "integrity": "sha512-HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q==",
1575 "requires": { 1635 "requires": {
1576 "media-typer": "0.3.0", 1636 "media-typer": "0.3.0",
1577 "mime-types": "2.1.18" 1637 "mime-types": "~2.1.18"
1578 }, 1638 },
1579 "dependencies": { 1639 "dependencies": {
1580 "mime-db": { 1640 "mime-db": {
@@ -1587,7 +1647,7 @@
1587 "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", 1647 "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz",
1588 "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", 1648 "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==",
1589 "requires": { 1649 "requires": {
1590 "mime-db": "1.33.0" 1650 "mime-db": "~1.33.0"
1591 } 1651 }
1592 } 1652 }
1593 } 1653 }
@@ -1597,7 +1657,7 @@
1597 "resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.5.tgz", 1657 "resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.5.tgz",
1598 "integrity": "sha512-KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA==", 1658 "integrity": "sha512-KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA==",
1599 "requires": { 1659 "requires": {
1600 "random-bytes": "1.0.0" 1660 "random-bytes": "~1.0.0"
1601 } 1661 }
1602 }, 1662 },
1603 "ultron": { 1663 "ultron": {
@@ -1607,7 +1667,8 @@
1607 "dev": true 1667 "dev": true
1608 }, 1668 },
1609 "underscore": { 1669 "underscore": {
1610 "version": "http://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", 1670 "version": "1.8.3",
1671 "resolved": "http://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz",
1611 "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=" 1672 "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI="
1612 }, 1673 },
1613 "unpipe": { 1674 "unpipe": {
@@ -1647,6 +1708,30 @@
1647 "extsprintf": "1.0.0" 1708 "extsprintf": "1.0.0"
1648 } 1709 }
1649 }, 1710 },
1711 "webdav-server": {
1712 "version": "2.4.6",
1713 "resolved": "https://registry.npmjs.org/webdav-server/-/webdav-server-2.4.6.tgz",
1714 "integrity": "sha512-YhqjqlQdD4H55UEnRgk99a9epTuulKMW05m6KBTtG6fBXcc4/2H87F2DRJHH7a33PibNn3jWv8u9AgcMHLGUrw==",
1715 "requires": {
1716 "mime-types": "^2.1.18",
1717 "xml-js-builder": "^1.0.3"
1718 },
1719 "dependencies": {
1720 "mime-db": {
1721 "version": "1.38.0",
1722 "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.38.0.tgz",
1723 "integrity": "sha512-bqVioMFFzc2awcdJZIzR3HjZFX20QhilVS7hytkKrv7xFAn8bM1gzc/FOX2awLISvWe0PV8ptFKcon+wZ5qYkg=="
1724 },
1725 "mime-types": {
1726 "version": "2.1.22",
1727 "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.22.tgz",
1728 "integrity": "sha512-aGl6TZGnhm/li6F7yx82bJiBZwgiEa4Hf6CNr8YO+r5UHr53tSTYZb102zyU50DOWWKeOv0uQLRL0/9EiKWCog==",
1729 "requires": {
1730 "mime-db": "~1.38.0"
1731 }
1732 }
1733 }
1734 },
1650 "wrappy": { 1735 "wrappy": {
1651 "version": "1.0.2", 1736 "version": "1.0.2",
1652 "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 1737 "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
@@ -1658,8 +1743,31 @@
1658 "integrity": "sha512-o3KqipXNUdS7wpQzBHSe180lBGO60SoK0yVo3CYJgb2MkobuWuBX6dhkYP5ORCLd55y+SaflMOV5fqAB53ux4w==", 1743 "integrity": "sha512-o3KqipXNUdS7wpQzBHSe180lBGO60SoK0yVo3CYJgb2MkobuWuBX6dhkYP5ORCLd55y+SaflMOV5fqAB53ux4w==",
1659 "dev": true, 1744 "dev": true,
1660 "requires": { 1745 "requires": {
1661 "options": "0.0.6", 1746 "options": ">=0.0.5",
1662 "ultron": "1.0.2" 1747 "ultron": "1.0.x"
1748 }
1749 },
1750 "xml-js": {
1751 "version": "1.6.11",
1752 "resolved": "https://registry.npmjs.org/xml-js/-/xml-js-1.6.11.tgz",
1753 "integrity": "sha512-7rVi2KMfwfWFl+GpPg6m80IVMWXLRjO+PxTq7V2CDhoGak0wzYzFgUY2m4XJ47OGdXd8eLE8EmwfAmdjw7lC1g==",
1754 "requires": {
1755 "sax": "^1.2.4"
1756 },
1757 "dependencies": {
1758 "sax": {
1759 "version": "1.2.4",
1760 "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz",
1761 "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw=="
1762 }
1763 }
1764 },
1765 "xml-js-builder": {
1766 "version": "1.0.3",
1767 "resolved": "https://registry.npmjs.org/xml-js-builder/-/xml-js-builder-1.0.3.tgz",
1768 "integrity": "sha512-BoLgG/glT45M0jK5PGh9h+iGrQxa8jJk9ofR63GroRifl2tbGB3/yYiVY3wQWHrZgWWfl9+7fhEB/VoD9mWnSg==",
1769 "requires": {
1770 "xml-js": "^1.6.2"
1663 } 1771 }
1664 }, 1772 },
1665 "xml2js": { 1773 "xml2js": {
@@ -1668,8 +1776,8 @@
1668 "integrity": "sha1-MREBAAMAiuGSQOuhdJe1fHKcVV0=", 1776 "integrity": "sha1-MREBAAMAiuGSQOuhdJe1fHKcVV0=",
1669 "dev": true, 1777 "dev": true,
1670 "requires": { 1778 "requires": {
1671 "sax": "0.6.1", 1779 "sax": "0.6.x",
1672 "xmlbuilder": "9.0.4" 1780 "xmlbuilder": ">=1.0.0"
1673 } 1781 }
1674 }, 1782 },
1675 "xmlbuilder": { 1783 "xmlbuilder": {
diff --git a/package.json b/package.json
index 6f70436..0ec6b50 100644
--- a/package.json
+++ b/package.json
@@ -45,7 +45,8 @@
45 "serve-index": "^1.9.1", 45 "serve-index": "^1.9.1",
46 "superagent": "^1.7.2", 46 "superagent": "^1.7.2",
47 "underscore": "^1.8.3", 47 "underscore": "^1.8.3",
48 "uuid": "^3.2.1" 48 "uuid": "^3.2.1",
49 "webdav-server": "^2.4.6"
49 }, 50 },
50 "devDependencies": { 51 "devDependencies": {
51 "expect.js": "^0.3.1", 52 "expect.js": "^0.3.1",
diff --git a/server.js b/server.js
index cc644e6..ec123e9 100755
--- a/server.js
+++ b/server.js
@@ -2,7 +2,6 @@
2 2
3'use strict'; 3'use strict';
4 4
5
6var express = require('express'), 5var express = require('express'),
7 morgan = require('morgan'), 6 morgan = require('morgan'),
8 passport = require('passport'), 7 passport = require('passport'),
@@ -19,6 +18,7 @@ var express = require('express'),
19 mkdirp = require('mkdirp'), 18 mkdirp = require('mkdirp'),
20 auth = require('./src/auth.js'), 19 auth = require('./src/auth.js'),
21 serveIndex = require('serve-index'), 20 serveIndex = require('serve-index'),
21 webdav = require('webdav-server').v2,
22 files = require('./src/files.js')(path.resolve(__dirname, process.argv[2] || 'files')); 22 files = require('./src/files.js')(path.resolve(__dirname, process.argv[2] || 'files'));
23 23
24 24
@@ -63,6 +63,15 @@ if (typeof config.folderListingEnabled === 'undefined') config.folderListingEnab
63var app = express(); 63var app = express();
64var router = new express.Router(); 64var router = new express.Router();
65 65
66var webdavServer = new webdav.WebDAVServer({
67 requireAuthentification: true,
68 httpAuthentication: new webdav.HTTPBasicAuthentication(new auth.WebdavUserManager(), 'Cloudron Surfer')
69});
70
71webdavServer.setFileSystem('/', new webdav.PhysicalFileSystem(ROOT_FOLDER), function (success) {
72 console.log(`Mounting ${ROOT_FOLDER} as webdav resource`, success);
73});
74
66var multipart = multipart({ maxFieldsSize: 2 * 1024, limit: '512mb', timeout: 3 * 60 * 1000 }); 75var multipart = multipart({ maxFieldsSize: 2 * 1024, limit: '512mb', timeout: 3 * 60 * 1000 });
67 76
68router.post ('/api/login', auth.login); 77router.post ('/api/login', auth.login);
@@ -78,6 +87,7 @@ router.get ('/api/healthcheck', function (req, res) { res.status(200).send();
78 87
79app.use(morgan('dev')); 88app.use(morgan('dev'));
80app.use(compression()); 89app.use(compression());
90app.use(webdav.extensions.express('/webdav', webdavServer));
81app.use('/api', bodyParser.json()); 91app.use('/api', bodyParser.json());
82app.use('/api', bodyParser.urlencoded({ extended: false, limit: '100mb' })); 92app.use('/api', bodyParser.urlencoded({ extended: false, limit: '100mb' }));
83app.use('/api', cookieParser()); 93app.use('/api', cookieParser());
diff --git a/src/auth.js b/src/auth.js
index 093f297..67c2050 100644
--- a/src/auth.js
+++ b/src/auth.js
@@ -9,7 +9,8 @@ var passport = require('passport'),
9 BearerStrategy = require('passport-http-bearer').Strategy, 9 BearerStrategy = require('passport-http-bearer').Strategy,
10 LdapStrategy = require('passport-ldapjs').Strategy, 10 LdapStrategy = require('passport-ldapjs').Strategy,
11 HttpError = require('connect-lastmile').HttpError, 11 HttpError = require('connect-lastmile').HttpError,
12 HttpSuccess = require('connect-lastmile').HttpSuccess; 12 HttpSuccess = require('connect-lastmile').HttpSuccess,
13 webdavErrors = require('webdav-server').v2.Errors;
13 14
14const LOCAL_AUTH_FILE = path.resolve(process.env.LOCAL_AUTH_FILE || './.users.json'); 15const LOCAL_AUTH_FILE = path.resolve(process.env.LOCAL_AUTH_FILE || './.users.json');
15const TOKENSTORE_FILE = path.resolve(process.env.TOKENSTORE_FILE || './.tokens.json'); 16const TOKENSTORE_FILE = path.resolve(process.env.TOKENSTORE_FILE || './.tokens.json');
@@ -140,3 +141,39 @@ exports.logout = function (req, res, next) {
140exports.getProfile = function (req, res, next) { 141exports.getProfile = function (req, res, next) {
141 next(new HttpSuccess(200, { username: req.user.username })); 142 next(new HttpSuccess(200, { username: req.user.username }));
142}; 143};
144
145// webdav usermanager
146exports.WebdavUserManager = WebdavUserManager;
147
148// This implements the required interface only for the Basic Authentication for webdav-server
149function WebdavUserManager() {};
150
151WebdavUserManager.prototype.getDefaultUser = function (callback) {
152 // this is only a dummy user, since we always require authentication
153 var user = {
154 username: 'DefaultUser',
155 password: null,
156 isAdministrator: false,
157 isDefaultUser: true,
158 uid: 'DefaultUser'
159 };
160
161 callback(user);
162};
163
164WebdavUserManager.prototype.getUserByNamePassword = function (username, password, callback) {
165 var users = safe.JSON.parse(safe.fs.readFileSync(LOCAL_AUTH_FILE));
166 if (!users) return callback(webdavErrors.UserNotFound);
167 if (!users[username]) return callback(webdavErrors.UserNotFound);
168
169 bcrypt.compare(password, users[username].passwordHash, function (error, valid) {
170 if (error || !valid) return callback(webdavErrors.UserNotFound);
171
172 callback(null, {
173 username: username,
174 isAdministrator: true,
175 isDefaultUser: false,
176 uid: username
177 });
178 });
179};