fsevents 1.1.3 → 1.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of fsevents might be problematic. Click here for more details.

Files changed (979) hide show
  1. package/.travis.yml +1 -1
  2. package/build/.target.mk +4 -2
  3. package/build/Makefile +2 -2
  4. package/build/Release/.deps/Release/.node.d +1 -1
  5. package/build/Release/.deps/Release/fse.node.d +1 -1
  6. package/build/Release/.deps/Release/obj.target/fse/fsevents.o.d +31 -29
  7. package/build/Release/.deps/Users/eshanker/Code/fsevents/lib/binding/Release/node-v64-darwin-x64/fse.node.d +1 -0
  8. package/build/Release/.node +0 -0
  9. package/build/Release/fse.node +0 -0
  10. package/build/Release/obj.target/fse/fsevents.o +0 -0
  11. package/build/action_after_build.target.mk +4 -4
  12. package/build/binding.Makefile +1 -1
  13. package/build/fse.target.mk +18 -13
  14. package/fsevents.cc +5 -7
  15. package/lib/binding/Release/node-v64-darwin-x64/fse.node +0 -0
  16. package/node_modules/abbrev/LICENSE +31 -0
  17. package/node_modules/abbrev/package.json +14 -11
  18. package/node_modules/ansi-regex/package.json +3 -1
  19. package/node_modules/aproba/README.md +16 -11
  20. package/node_modules/aproba/index.js +11 -9
  21. package/node_modules/aproba/package.json +15 -13
  22. package/node_modules/are-we-there-yet/package.json +3 -1
  23. package/node_modules/balanced-match/index.js +1 -0
  24. package/node_modules/balanced-match/package.json +15 -11
  25. package/node_modules/{asynckit → brace-expansion}/LICENSE +2 -2
  26. package/node_modules/brace-expansion/README.md +7 -1
  27. package/node_modules/brace-expansion/package.json +14 -12
  28. package/node_modules/{block-stream → chownr}/LICENSE +0 -0
  29. package/node_modules/chownr/README.md +3 -0
  30. package/node_modules/chownr/chownr.js +52 -0
  31. package/node_modules/chownr/package.json +59 -0
  32. package/node_modules/code-point-at/package.json +3 -1
  33. package/node_modules/concat-map/package.json +3 -1
  34. package/node_modules/console-control-strings/package.json +4 -1
  35. package/node_modules/core-util-is/package.json +3 -1
  36. package/node_modules/debug/CHANGELOG.md +5 -0
  37. package/node_modules/debug/component.json +1 -1
  38. package/node_modules/debug/package.json +13 -11
  39. package/node_modules/debug/src/inspector-log.js +15 -0
  40. package/node_modules/debug/src/node.js +3 -1
  41. package/node_modules/deep-extend/CHANGELOG.md +20 -3
  42. package/node_modules/deep-extend/LICENSE +1 -1
  43. package/node_modules/deep-extend/README.md +3 -0
  44. package/node_modules/deep-extend/lib/deep-extend.js +11 -5
  45. package/node_modules/deep-extend/package.json +26 -27
  46. package/node_modules/delegates/package.json +3 -1
  47. package/node_modules/detect-libc/lib/detect-libc.js +21 -14
  48. package/node_modules/detect-libc/package.json +17 -14
  49. package/node_modules/{fstream-ignore → fs-minipass}/LICENSE +0 -0
  50. package/node_modules/fs-minipass/README.md +70 -0
  51. package/node_modules/fs-minipass/index.js +386 -0
  52. package/node_modules/fs-minipass/package.json +65 -0
  53. package/node_modules/fs.realpath/package.json +3 -1
  54. package/node_modules/gauge/package.json +3 -1
  55. package/node_modules/glob/package.json +3 -1
  56. package/node_modules/has-unicode/package.json +3 -1
  57. package/node_modules/iconv-lite/.travis.yml +23 -0
  58. package/node_modules/iconv-lite/Changelog.md +146 -0
  59. package/node_modules/{punycode/LICENSE-MIT.txt → iconv-lite/LICENSE} +2 -1
  60. package/node_modules/iconv-lite/README.md +156 -0
  61. package/node_modules/iconv-lite/encodings/dbcs-codec.js +555 -0
  62. package/node_modules/iconv-lite/encodings/dbcs-data.js +176 -0
  63. package/node_modules/iconv-lite/encodings/index.js +22 -0
  64. package/node_modules/iconv-lite/encodings/internal.js +188 -0
  65. package/node_modules/iconv-lite/encodings/sbcs-codec.js +72 -0
  66. package/node_modules/iconv-lite/encodings/sbcs-data-generated.js +451 -0
  67. package/node_modules/iconv-lite/encodings/sbcs-data.js +169 -0
  68. package/node_modules/iconv-lite/encodings/tables/big5-added.json +122 -0
  69. package/node_modules/iconv-lite/encodings/tables/cp936.json +264 -0
  70. package/node_modules/iconv-lite/encodings/tables/cp949.json +273 -0
  71. package/node_modules/iconv-lite/encodings/tables/cp950.json +177 -0
  72. package/node_modules/iconv-lite/encodings/tables/eucjp.json +182 -0
  73. package/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json +1 -0
  74. package/node_modules/iconv-lite/encodings/tables/gbk-added.json +55 -0
  75. package/node_modules/iconv-lite/encodings/tables/shiftjis.json +125 -0
  76. package/node_modules/iconv-lite/encodings/utf16.js +177 -0
  77. package/node_modules/iconv-lite/encodings/utf7.js +290 -0
  78. package/node_modules/iconv-lite/lib/bom-handling.js +52 -0
  79. package/node_modules/iconv-lite/lib/extend-node.js +217 -0
  80. package/node_modules/iconv-lite/lib/index.d.ts +24 -0
  81. package/node_modules/iconv-lite/lib/index.js +153 -0
  82. package/node_modules/iconv-lite/lib/streams.js +121 -0
  83. package/node_modules/iconv-lite/package.json +79 -0
  84. package/node_modules/{fstream → ignore-walk}/LICENSE +0 -0
  85. package/node_modules/ignore-walk/README.md +60 -0
  86. package/node_modules/ignore-walk/index.js +265 -0
  87. package/node_modules/ignore-walk/package.json +74 -0
  88. package/node_modules/inflight/package.json +3 -1
  89. package/node_modules/inherits/package.json +6 -1
  90. package/node_modules/ini/ini.js +66 -62
  91. package/node_modules/ini/package.json +20 -13
  92. package/node_modules/is-fullwidth-code-point/package.json +3 -1
  93. package/node_modules/isarray/package.json +3 -1
  94. package/node_modules/minimatch/package.json +4 -1
  95. package/node_modules/minimist/package.json +3 -1
  96. package/node_modules/minipass/README.md +46 -0
  97. package/node_modules/minipass/index.js +304 -0
  98. package/node_modules/minipass/package.json +72 -0
  99. package/node_modules/minizlib/LICENSE +26 -0
  100. package/node_modules/minizlib/README.md +44 -0
  101. package/node_modules/minizlib/constants.js +46 -0
  102. package/node_modules/minizlib/index.js +364 -0
  103. package/node_modules/minizlib/package.json +74 -0
  104. package/node_modules/mkdirp/package.json +5 -1
  105. package/node_modules/ms/package.json +3 -1
  106. package/node_modules/needle/README.md +593 -0
  107. package/node_modules/needle/bin/needle +40 -0
  108. package/node_modules/needle/examples/deflated-stream.js +22 -0
  109. package/node_modules/needle/examples/digest-auth.js +16 -0
  110. package/node_modules/needle/examples/download-to-file.js +18 -0
  111. package/node_modules/needle/examples/multipart-stream.js +25 -0
  112. package/node_modules/needle/examples/parsed-stream.js +23 -0
  113. package/node_modules/needle/examples/parsed-stream2.js +21 -0
  114. package/node_modules/needle/examples/stream-events.js +23 -0
  115. package/node_modules/needle/examples/stream-to-file.js +14 -0
  116. package/node_modules/needle/examples/upload-image.js +51 -0
  117. package/node_modules/needle/lib/auth.js +110 -0
  118. package/node_modules/needle/lib/cookies.js +77 -0
  119. package/node_modules/needle/lib/decoder.js +53 -0
  120. package/node_modules/needle/lib/multipart.js +98 -0
  121. package/node_modules/needle/lib/needle.js +783 -0
  122. package/node_modules/needle/lib/parsers.js +120 -0
  123. package/node_modules/needle/lib/querystring.js +49 -0
  124. package/node_modules/{delayed-stream/License → needle/license.txt} +2 -2
  125. package/node_modules/needle/package.json +105 -0
  126. package/node_modules/needle/test/basic_auth_spec.js +196 -0
  127. package/node_modules/needle/test/compression_spec.js +94 -0
  128. package/node_modules/needle/test/cookies_spec.js +305 -0
  129. package/node_modules/needle/test/decoder_spec.js +86 -0
  130. package/node_modules/needle/test/errors_spec.js +286 -0
  131. package/node_modules/needle/test/headers_spec.js +198 -0
  132. package/node_modules/needle/test/helpers.js +72 -0
  133. package/node_modules/needle/test/long_string_spec.js +34 -0
  134. package/node_modules/needle/test/output_spec.js +254 -0
  135. package/node_modules/needle/test/parsing_spec.js +494 -0
  136. package/node_modules/needle/test/post_data_spec.js +1021 -0
  137. package/node_modules/needle/test/proxy_spec.js +202 -0
  138. package/node_modules/needle/test/querystring_spec.js +128 -0
  139. package/node_modules/needle/test/redirect_spec.js +392 -0
  140. package/node_modules/needle/test/redirect_with_timeout.js +45 -0
  141. package/node_modules/needle/test/request_stream_spec.js +202 -0
  142. package/node_modules/needle/test/response_stream_spec.js +139 -0
  143. package/node_modules/needle/test/socket_pool_spec.js +66 -0
  144. package/node_modules/needle/test/url_spec.js +147 -0
  145. package/node_modules/needle/test/utils/formidable.js +17 -0
  146. package/node_modules/needle/test/utils/proxy.js +62 -0
  147. package/node_modules/needle/test/utils/test.js +104 -0
  148. package/node_modules/node-pre-gyp/CHANGELOG.md +36 -3
  149. package/node_modules/node-pre-gyp/README.md +83 -8
  150. package/node_modules/node-pre-gyp/appveyor.yml +1 -15
  151. package/node_modules/node-pre-gyp/contributing.md +2 -2
  152. package/node_modules/node-pre-gyp/lib/build.js +8 -0
  153. package/node_modules/node-pre-gyp/lib/clean.js +17 -8
  154. package/node_modules/node-pre-gyp/lib/configure.js +4 -0
  155. package/node_modules/node-pre-gyp/lib/install.js +58 -34
  156. package/node_modules/node-pre-gyp/lib/node-pre-gyp.js +9 -0
  157. package/node_modules/node-pre-gyp/lib/package.js +23 -13
  158. package/node_modules/node-pre-gyp/lib/pre-binding.js +6 -1
  159. package/node_modules/node-pre-gyp/lib/publish.js +3 -1
  160. package/node_modules/node-pre-gyp/lib/rebuild.js +12 -4
  161. package/node_modules/node-pre-gyp/lib/reinstall.js +8 -1
  162. package/node_modules/node-pre-gyp/lib/reveal.js +4 -2
  163. package/node_modules/node-pre-gyp/lib/testbinary.js +3 -1
  164. package/node_modules/node-pre-gyp/lib/testpackage.js +22 -16
  165. package/node_modules/node-pre-gyp/lib/unpublish.js +3 -1
  166. package/node_modules/node-pre-gyp/lib/util/abi_crosswalk.json +156 -0
  167. package/node_modules/node-pre-gyp/lib/util/handle_gyp_opts.js +8 -2
  168. package/node_modules/node-pre-gyp/lib/util/napi.js +156 -0
  169. package/node_modules/node-pre-gyp/lib/util/versioning.js +7 -2
  170. package/node_modules/node-pre-gyp/package.json +16 -16
  171. package/node_modules/nopt/package.json +3 -1
  172. package/node_modules/npm-bundled/README.md +46 -0
  173. package/node_modules/npm-bundled/index.js +227 -0
  174. package/node_modules/npm-bundled/package.json +63 -0
  175. package/node_modules/{json-stringify-safe → npm-packlist}/LICENSE +0 -0
  176. package/node_modules/npm-packlist/README.md +68 -0
  177. package/node_modules/npm-packlist/index.js +220 -0
  178. package/node_modules/npm-packlist/package.json +69 -0
  179. package/node_modules/npmlog/log.js +6 -1
  180. package/node_modules/npmlog/package.json +13 -11
  181. package/node_modules/number-is-nan/package.json +3 -1
  182. package/node_modules/object-assign/package.json +3 -1
  183. package/node_modules/once/package.json +4 -1
  184. package/node_modules/os-homedir/package.json +3 -1
  185. package/node_modules/os-tmpdir/package.json +3 -1
  186. package/node_modules/osenv/package.json +20 -12
  187. package/node_modules/path-is-absolute/package.json +3 -1
  188. package/node_modules/process-nextick-args/index.js +3 -2
  189. package/node_modules/process-nextick-args/package.json +16 -11
  190. package/node_modules/process-nextick-args/readme.md +2 -2
  191. package/node_modules/rc/README.md +80 -2
  192. package/node_modules/rc/cli.js +4 -0
  193. package/node_modules/rc/index.js +0 -7
  194. package/node_modules/rc/node_modules/minimist/package.json +3 -1
  195. package/node_modules/rc/package.json +20 -19
  196. package/node_modules/readable-stream/.travis.yml +26 -20
  197. package/node_modules/readable-stream/README.md +3 -2
  198. package/node_modules/readable-stream/lib/_stream_duplex.js +69 -13
  199. package/node_modules/readable-stream/lib/_stream_passthrough.js +21 -0
  200. package/node_modules/readable-stream/lib/_stream_readable.js +194 -110
  201. package/node_modules/readable-stream/lib/_stream_transform.js +64 -32
  202. package/node_modules/readable-stream/lib/_stream_writable.js +198 -55
  203. package/node_modules/readable-stream/lib/internal/streams/BufferList.js +68 -53
  204. package/node_modules/readable-stream/lib/internal/streams/destroy.js +74 -0
  205. package/node_modules/readable-stream/package.json +23 -23
  206. package/node_modules/readable-stream/writable.js +2 -2
  207. package/node_modules/rimraf/package.json +13 -11
  208. package/node_modules/rimraf/rimraf.js +3 -2
  209. package/node_modules/safe-buffer/README.md +12 -9
  210. package/node_modules/safe-buffer/index.js +10 -6
  211. package/node_modules/safe-buffer/package.json +17 -13
  212. package/node_modules/safe-buffer/test.js +2 -0
  213. package/node_modules/{ajv → safer-buffer}/LICENSE +2 -3
  214. package/node_modules/safer-buffer/Porting-Buffer.md +268 -0
  215. package/node_modules/safer-buffer/Readme.md +156 -0
  216. package/node_modules/safer-buffer/dangerous.js +58 -0
  217. package/node_modules/safer-buffer/package.json +63 -0
  218. package/node_modules/safer-buffer/safer.js +77 -0
  219. package/node_modules/safer-buffer/tests.js +406 -0
  220. package/node_modules/sax/LICENSE +41 -0
  221. package/node_modules/sax/README.md +225 -0
  222. package/node_modules/sax/lib/sax.js +1565 -0
  223. package/node_modules/sax/package.json +64 -0
  224. package/node_modules/semver/README.md +75 -37
  225. package/node_modules/semver/bin/semver +12 -2
  226. package/node_modules/semver/package.json +15 -13
  227. package/node_modules/semver/range.bnf +2 -2
  228. package/node_modules/semver/semver.js +134 -13
  229. package/node_modules/set-blocking/package.json +3 -1
  230. package/node_modules/signal-exit/package.json +3 -1
  231. package/node_modules/string-width/package.json +4 -1
  232. package/node_modules/string_decoder/.travis.yml +50 -0
  233. package/node_modules/string_decoder/README.md +22 -3
  234. package/node_modules/string_decoder/lib/string_decoder.js +35 -11
  235. package/node_modules/string_decoder/package.json +21 -16
  236. package/node_modules/strip-ansi/package.json +4 -1
  237. package/node_modules/strip-json-comments/package.json +3 -1
  238. package/node_modules/tar/LICENSE +3 -0
  239. package/node_modules/tar/README.md +929 -30
  240. package/node_modules/tar/index.js +18 -0
  241. package/node_modules/tar/lib/buffer.js +11 -0
  242. package/node_modules/tar/lib/create.js +105 -0
  243. package/node_modules/tar/lib/extract.js +97 -79
  244. package/node_modules/tar/lib/header.js +236 -348
  245. package/node_modules/tar/lib/high-level-opt.js +29 -0
  246. package/node_modules/tar/lib/large-numbers.js +92 -0
  247. package/node_modules/tar/lib/list.js +130 -0
  248. package/node_modules/tar/lib/mkdir.js +206 -0
  249. package/node_modules/tar/lib/pack.js +354 -187
  250. package/node_modules/tar/lib/parse.js +393 -246
  251. package/node_modules/tar/lib/pax.js +146 -0
  252. package/node_modules/tar/lib/read-entry.js +94 -0
  253. package/node_modules/tar/lib/replace.js +220 -0
  254. package/node_modules/tar/lib/types.js +44 -0
  255. package/node_modules/tar/lib/unpack.js +560 -0
  256. package/node_modules/tar/lib/update.js +36 -0
  257. package/node_modules/tar/lib/warn-mixin.js +14 -0
  258. package/node_modules/tar/lib/winchars.js +23 -0
  259. package/node_modules/tar/lib/write-entry.js +403 -0
  260. package/node_modules/tar/package.json +44 -23
  261. package/node_modules/util-deprecate/package.json +3 -1
  262. package/node_modules/wide-align/package.json +3 -1
  263. package/node_modules/wrappy/package.json +4 -1
  264. package/node_modules/yallist/LICENSE +15 -0
  265. package/node_modules/yallist/README.md +204 -0
  266. package/node_modules/yallist/iterator.js +8 -0
  267. package/node_modules/yallist/package.json +66 -0
  268. package/node_modules/yallist/yallist.js +376 -0
  269. package/package.json +3 -3
  270. package/src/methods.cc +9 -7
  271. package/.npmignore +0 -1
  272. package/build/Release/.deps/Users/eshanker/Code/fsevents/lib/binding/Release/node-v48-darwin-x64/fse.node.d +0 -1
  273. package/build/stage/v1.1.2/fse-v1.1.2-node-v48-darwin-x64.tar.gz +0 -0
  274. package/node_modules/ajv/.tonic_example.js +0 -20
  275. package/node_modules/ajv/README.md +0 -1213
  276. package/node_modules/ajv/dist/ajv.bundle.js +0 -8023
  277. package/node_modules/ajv/dist/ajv.min.js +0 -6
  278. package/node_modules/ajv/dist/ajv.min.js.map +0 -1
  279. package/node_modules/ajv/dist/nodent.min.js +0 -8
  280. package/node_modules/ajv/dist/regenerator.min.js +0 -32
  281. package/node_modules/ajv/lib/ajv.d.ts +0 -284
  282. package/node_modules/ajv/lib/ajv.js +0 -420
  283. package/node_modules/ajv/lib/async.js +0 -218
  284. package/node_modules/ajv/lib/cache.js +0 -26
  285. package/node_modules/ajv/lib/compile/_rules.js +0 -28
  286. package/node_modules/ajv/lib/compile/equal.js +0 -45
  287. package/node_modules/ajv/lib/compile/formats.js +0 -164
  288. package/node_modules/ajv/lib/compile/index.js +0 -390
  289. package/node_modules/ajv/lib/compile/resolve.js +0 -267
  290. package/node_modules/ajv/lib/compile/rules.js +0 -40
  291. package/node_modules/ajv/lib/compile/schema_obj.js +0 -9
  292. package/node_modules/ajv/lib/compile/ucs2length.js +0 -20
  293. package/node_modules/ajv/lib/compile/util.js +0 -257
  294. package/node_modules/ajv/lib/compile/validation_error.js +0 -14
  295. package/node_modules/ajv/lib/dot/_limit.jst +0 -49
  296. package/node_modules/ajv/lib/dot/_limitItems.jst +0 -10
  297. package/node_modules/ajv/lib/dot/_limitLength.jst +0 -10
  298. package/node_modules/ajv/lib/dot/_limitProperties.jst +0 -10
  299. package/node_modules/ajv/lib/dot/allOf.jst +0 -34
  300. package/node_modules/ajv/lib/dot/anyOf.jst +0 -48
  301. package/node_modules/ajv/lib/dot/coerce.def +0 -61
  302. package/node_modules/ajv/lib/dot/custom.jst +0 -184
  303. package/node_modules/ajv/lib/dot/defaults.def +0 -32
  304. package/node_modules/ajv/lib/dot/definitions.def +0 -182
  305. package/node_modules/ajv/lib/dot/dependencies.jst +0 -69
  306. package/node_modules/ajv/lib/dot/enum.jst +0 -30
  307. package/node_modules/ajv/lib/dot/errors.def +0 -185
  308. package/node_modules/ajv/lib/dot/format.jst +0 -100
  309. package/node_modules/ajv/lib/dot/items.jst +0 -101
  310. package/node_modules/ajv/lib/dot/missing.def +0 -34
  311. package/node_modules/ajv/lib/dot/multipleOf.jst +0 -20
  312. package/node_modules/ajv/lib/dot/not.jst +0 -43
  313. package/node_modules/ajv/lib/dot/oneOf.jst +0 -44
  314. package/node_modules/ajv/lib/dot/pattern.jst +0 -14
  315. package/node_modules/ajv/lib/dot/properties.jst +0 -319
  316. package/node_modules/ajv/lib/dot/ref.jst +0 -86
  317. package/node_modules/ajv/lib/dot/required.jst +0 -96
  318. package/node_modules/ajv/lib/dot/uniqueItems.jst +0 -38
  319. package/node_modules/ajv/lib/dot/v5/_formatLimit.jst +0 -116
  320. package/node_modules/ajv/lib/dot/v5/constant.jst +0 -10
  321. package/node_modules/ajv/lib/dot/v5/patternRequired.jst +0 -28
  322. package/node_modules/ajv/lib/dot/v5/switch.jst +0 -73
  323. package/node_modules/ajv/lib/dot/validate.jst +0 -210
  324. package/node_modules/ajv/lib/dotjs/README.md +0 -3
  325. package/node_modules/ajv/lib/dotjs/_formatLimit.js +0 -176
  326. package/node_modules/ajv/lib/dotjs/_limit.js +0 -124
  327. package/node_modules/ajv/lib/dotjs/_limitItems.js +0 -76
  328. package/node_modules/ajv/lib/dotjs/_limitLength.js +0 -81
  329. package/node_modules/ajv/lib/dotjs/_limitProperties.js +0 -76
  330. package/node_modules/ajv/lib/dotjs/allOf.js +0 -43
  331. package/node_modules/ajv/lib/dotjs/anyOf.js +0 -65
  332. package/node_modules/ajv/lib/dotjs/constant.js +0 -52
  333. package/node_modules/ajv/lib/dotjs/custom.js +0 -220
  334. package/node_modules/ajv/lib/dotjs/dependencies.js +0 -147
  335. package/node_modules/ajv/lib/dotjs/enum.js +0 -65
  336. package/node_modules/ajv/lib/dotjs/format.js +0 -138
  337. package/node_modules/ajv/lib/dotjs/items.js +0 -144
  338. package/node_modules/ajv/lib/dotjs/multipleOf.js +0 -76
  339. package/node_modules/ajv/lib/dotjs/not.js +0 -83
  340. package/node_modules/ajv/lib/dotjs/oneOf.js +0 -76
  341. package/node_modules/ajv/lib/dotjs/pattern.js +0 -74
  342. package/node_modules/ajv/lib/dotjs/patternRequired.js +0 -51
  343. package/node_modules/ajv/lib/dotjs/properties.js +0 -445
  344. package/node_modules/ajv/lib/dotjs/ref.js +0 -119
  345. package/node_modules/ajv/lib/dotjs/required.js +0 -249
  346. package/node_modules/ajv/lib/dotjs/switch.js +0 -128
  347. package/node_modules/ajv/lib/dotjs/uniqueItems.js +0 -71
  348. package/node_modules/ajv/lib/dotjs/validate.js +0 -375
  349. package/node_modules/ajv/lib/keyword.js +0 -129
  350. package/node_modules/ajv/lib/refs/json-schema-draft-04.json +0 -150
  351. package/node_modules/ajv/lib/refs/json-schema-v5.json +0 -328
  352. package/node_modules/ajv/lib/v5.js +0 -52
  353. package/node_modules/ajv/package.json +0 -132
  354. package/node_modules/ajv/scripts/.eslintrc.yml +0 -3
  355. package/node_modules/ajv/scripts/bundle.js +0 -54
  356. package/node_modules/ajv/scripts/compile-dots.js +0 -73
  357. package/node_modules/ajv/scripts/info +0 -10
  358. package/node_modules/ajv/scripts/prepare-tests +0 -9
  359. package/node_modules/ajv/scripts/travis-gh-pages +0 -23
  360. package/node_modules/asn1/.npmignore +0 -2
  361. package/node_modules/asn1/.travis.yml +0 -4
  362. package/node_modules/asn1/LICENSE +0 -19
  363. package/node_modules/asn1/README.md +0 -50
  364. package/node_modules/asn1/lib/ber/errors.js +0 -13
  365. package/node_modules/asn1/lib/ber/index.js +0 -27
  366. package/node_modules/asn1/lib/ber/reader.js +0 -261
  367. package/node_modules/asn1/lib/ber/types.js +0 -36
  368. package/node_modules/asn1/lib/ber/writer.js +0 -316
  369. package/node_modules/asn1/lib/index.js +0 -20
  370. package/node_modules/asn1/package.json +0 -66
  371. package/node_modules/asn1/tst/ber/reader.test.js +0 -208
  372. package/node_modules/asn1/tst/ber/writer.test.js +0 -370
  373. package/node_modules/assert-plus/AUTHORS +0 -6
  374. package/node_modules/assert-plus/CHANGES.md +0 -8
  375. package/node_modules/assert-plus/README.md +0 -155
  376. package/node_modules/assert-plus/assert.js +0 -206
  377. package/node_modules/assert-plus/package.json +0 -83
  378. package/node_modules/asynckit/README.md +0 -233
  379. package/node_modules/asynckit/bench.js +0 -76
  380. package/node_modules/asynckit/index.js +0 -6
  381. package/node_modules/asynckit/lib/abort.js +0 -29
  382. package/node_modules/asynckit/lib/async.js +0 -34
  383. package/node_modules/asynckit/lib/defer.js +0 -26
  384. package/node_modules/asynckit/lib/iterate.js +0 -75
  385. package/node_modules/asynckit/lib/readable_asynckit.js +0 -91
  386. package/node_modules/asynckit/lib/readable_parallel.js +0 -25
  387. package/node_modules/asynckit/lib/readable_serial.js +0 -25
  388. package/node_modules/asynckit/lib/readable_serial_ordered.js +0 -29
  389. package/node_modules/asynckit/lib/state.js +0 -37
  390. package/node_modules/asynckit/lib/streamify.js +0 -141
  391. package/node_modules/asynckit/lib/terminator.js +0 -29
  392. package/node_modules/asynckit/package.json +0 -92
  393. package/node_modules/asynckit/parallel.js +0 -43
  394. package/node_modules/asynckit/serial.js +0 -17
  395. package/node_modules/asynckit/serialOrdered.js +0 -75
  396. package/node_modules/asynckit/stream.js +0 -21
  397. package/node_modules/aws-sign2/LICENSE +0 -55
  398. package/node_modules/aws-sign2/README.md +0 -4
  399. package/node_modules/aws-sign2/index.js +0 -212
  400. package/node_modules/aws-sign2/package.json +0 -51
  401. package/node_modules/aws4/.npmignore +0 -4
  402. package/node_modules/aws4/.tern-port +0 -1
  403. package/node_modules/aws4/.travis.yml +0 -5
  404. package/node_modules/aws4/LICENSE +0 -19
  405. package/node_modules/aws4/README.md +0 -523
  406. package/node_modules/aws4/aws4.js +0 -332
  407. package/node_modules/aws4/lru.js +0 -96
  408. package/node_modules/aws4/package.json +0 -105
  409. package/node_modules/bcrypt-pbkdf/README.md +0 -39
  410. package/node_modules/bcrypt-pbkdf/index.js +0 -556
  411. package/node_modules/bcrypt-pbkdf/package.json +0 -38
  412. package/node_modules/block-stream/LICENCE +0 -25
  413. package/node_modules/block-stream/README.md +0 -14
  414. package/node_modules/block-stream/block-stream.js +0 -209
  415. package/node_modules/block-stream/package.json +0 -61
  416. package/node_modules/boom/.npmignore +0 -18
  417. package/node_modules/boom/.travis.yml +0 -8
  418. package/node_modules/boom/CONTRIBUTING.md +0 -1
  419. package/node_modules/boom/LICENSE +0 -28
  420. package/node_modules/boom/README.md +0 -652
  421. package/node_modules/boom/images/boom.png +0 -0
  422. package/node_modules/boom/lib/index.js +0 -318
  423. package/node_modules/boom/package.json +0 -59
  424. package/node_modules/boom/test/index.js +0 -654
  425. package/node_modules/buffer-shims/index.js +0 -108
  426. package/node_modules/buffer-shims/license.md +0 -19
  427. package/node_modules/buffer-shims/package.json +0 -50
  428. package/node_modules/buffer-shims/readme.md +0 -21
  429. package/node_modules/caseless/LICENSE +0 -28
  430. package/node_modules/caseless/README.md +0 -45
  431. package/node_modules/caseless/index.js +0 -67
  432. package/node_modules/caseless/package.json +0 -57
  433. package/node_modules/caseless/test.js +0 -67
  434. package/node_modules/co/History.md +0 -172
  435. package/node_modules/co/LICENSE +0 -22
  436. package/node_modules/co/Readme.md +0 -212
  437. package/node_modules/co/index.js +0 -237
  438. package/node_modules/co/package.json +0 -67
  439. package/node_modules/combined-stream/License +0 -19
  440. package/node_modules/combined-stream/Readme.md +0 -138
  441. package/node_modules/combined-stream/lib/combined_stream.js +0 -188
  442. package/node_modules/combined-stream/package.json +0 -58
  443. package/node_modules/cryptiles/.npmignore +0 -18
  444. package/node_modules/cryptiles/.travis.yml +0 -8
  445. package/node_modules/cryptiles/LICENSE +0 -28
  446. package/node_modules/cryptiles/README.md +0 -16
  447. package/node_modules/cryptiles/lib/index.js +0 -68
  448. package/node_modules/cryptiles/package.json +0 -60
  449. package/node_modules/cryptiles/test/index.js +0 -102
  450. package/node_modules/dashdash/CHANGES.md +0 -364
  451. package/node_modules/dashdash/LICENSE.txt +0 -24
  452. package/node_modules/dashdash/README.md +0 -574
  453. package/node_modules/dashdash/etc/dashdash.bash_completion.in +0 -389
  454. package/node_modules/dashdash/lib/dashdash.js +0 -1055
  455. package/node_modules/dashdash/node_modules/assert-plus/AUTHORS +0 -6
  456. package/node_modules/dashdash/node_modules/assert-plus/CHANGES.md +0 -14
  457. package/node_modules/dashdash/node_modules/assert-plus/README.md +0 -162
  458. package/node_modules/dashdash/node_modules/assert-plus/assert.js +0 -211
  459. package/node_modules/dashdash/node_modules/assert-plus/package.json +0 -83
  460. package/node_modules/dashdash/package.json +0 -68
  461. package/node_modules/delayed-stream/.npmignore +0 -1
  462. package/node_modules/delayed-stream/Makefile +0 -7
  463. package/node_modules/delayed-stream/Readme.md +0 -141
  464. package/node_modules/delayed-stream/lib/delayed_stream.js +0 -107
  465. package/node_modules/delayed-stream/package.json +0 -63
  466. package/node_modules/ecc-jsbn/.npmignore +0 -15
  467. package/node_modules/ecc-jsbn/LICENSE +0 -21
  468. package/node_modules/ecc-jsbn/README.md +0 -8
  469. package/node_modules/ecc-jsbn/index.js +0 -57
  470. package/node_modules/ecc-jsbn/lib/LICENSE-jsbn +0 -40
  471. package/node_modules/ecc-jsbn/lib/ec.js +0 -561
  472. package/node_modules/ecc-jsbn/lib/sec.js +0 -170
  473. package/node_modules/ecc-jsbn/package.json +0 -66
  474. package/node_modules/ecc-jsbn/test.js +0 -14
  475. package/node_modules/extend/.eslintrc +0 -17
  476. package/node_modules/extend/.jscs.json +0 -175
  477. package/node_modules/extend/.npmignore +0 -1
  478. package/node_modules/extend/.travis.yml +0 -179
  479. package/node_modules/extend/CHANGELOG.md +0 -77
  480. package/node_modules/extend/LICENSE +0 -23
  481. package/node_modules/extend/README.md +0 -81
  482. package/node_modules/extend/component.json +0 -32
  483. package/node_modules/extend/index.js +0 -86
  484. package/node_modules/extend/package.json +0 -76
  485. package/node_modules/extsprintf/.gitmodules +0 -6
  486. package/node_modules/extsprintf/LICENSE +0 -19
  487. package/node_modules/extsprintf/Makefile +0 -23
  488. package/node_modules/extsprintf/Makefile.deps +0 -39
  489. package/node_modules/extsprintf/Makefile.targ +0 -285
  490. package/node_modules/extsprintf/README.md +0 -39
  491. package/node_modules/extsprintf/examples/simple.js +0 -2
  492. package/node_modules/extsprintf/jsl.node.conf +0 -137
  493. package/node_modules/extsprintf/lib/extsprintf.js +0 -166
  494. package/node_modules/extsprintf/package.json +0 -43
  495. package/node_modules/forever-agent/LICENSE +0 -55
  496. package/node_modules/forever-agent/README.md +0 -4
  497. package/node_modules/forever-agent/index.js +0 -138
  498. package/node_modules/forever-agent/package.json +0 -51
  499. package/node_modules/form-data/License +0 -19
  500. package/node_modules/form-data/README.md +0 -217
  501. package/node_modules/form-data/lib/browser.js +0 -2
  502. package/node_modules/form-data/lib/form_data.js +0 -444
  503. package/node_modules/form-data/lib/populate.js +0 -10
  504. package/node_modules/form-data/package.json +0 -99
  505. package/node_modules/fstream/.npmignore +0 -5
  506. package/node_modules/fstream/.travis.yml +0 -9
  507. package/node_modules/fstream/README.md +0 -76
  508. package/node_modules/fstream/examples/filter-pipe.js +0 -134
  509. package/node_modules/fstream/examples/pipe.js +0 -118
  510. package/node_modules/fstream/examples/reader.js +0 -68
  511. package/node_modules/fstream/examples/symlink-write.js +0 -27
  512. package/node_modules/fstream/fstream.js +0 -35
  513. package/node_modules/fstream/lib/abstract.js +0 -85
  514. package/node_modules/fstream/lib/collect.js +0 -70
  515. package/node_modules/fstream/lib/dir-reader.js +0 -252
  516. package/node_modules/fstream/lib/dir-writer.js +0 -174
  517. package/node_modules/fstream/lib/file-reader.js +0 -150
  518. package/node_modules/fstream/lib/file-writer.js +0 -107
  519. package/node_modules/fstream/lib/get-type.js +0 -33
  520. package/node_modules/fstream/lib/link-reader.js +0 -53
  521. package/node_modules/fstream/lib/link-writer.js +0 -95
  522. package/node_modules/fstream/lib/proxy-reader.js +0 -95
  523. package/node_modules/fstream/lib/proxy-writer.js +0 -111
  524. package/node_modules/fstream/lib/reader.js +0 -255
  525. package/node_modules/fstream/lib/socket-reader.js +0 -36
  526. package/node_modules/fstream/lib/writer.js +0 -390
  527. package/node_modules/fstream/package.json +0 -62
  528. package/node_modules/fstream-ignore/README.md +0 -22
  529. package/node_modules/fstream-ignore/ignore.js +0 -275
  530. package/node_modules/fstream-ignore/package.json +0 -62
  531. package/node_modules/getpass/.npmignore +0 -8
  532. package/node_modules/getpass/.travis.yml +0 -9
  533. package/node_modules/getpass/LICENSE +0 -18
  534. package/node_modules/getpass/README.md +0 -32
  535. package/node_modules/getpass/lib/index.js +0 -123
  536. package/node_modules/getpass/node_modules/assert-plus/AUTHORS +0 -6
  537. package/node_modules/getpass/node_modules/assert-plus/CHANGES.md +0 -14
  538. package/node_modules/getpass/node_modules/assert-plus/README.md +0 -162
  539. package/node_modules/getpass/node_modules/assert-plus/assert.js +0 -211
  540. package/node_modules/getpass/node_modules/assert-plus/package.json +0 -83
  541. package/node_modules/getpass/package.json +0 -51
  542. package/node_modules/graceful-fs/LICENSE +0 -15
  543. package/node_modules/graceful-fs/README.md +0 -133
  544. package/node_modules/graceful-fs/fs.js +0 -21
  545. package/node_modules/graceful-fs/graceful-fs.js +0 -262
  546. package/node_modules/graceful-fs/legacy-streams.js +0 -118
  547. package/node_modules/graceful-fs/package.json +0 -77
  548. package/node_modules/graceful-fs/polyfills.js +0 -330
  549. package/node_modules/har-schema/LICENSE +0 -13
  550. package/node_modules/har-schema/README.md +0 -49
  551. package/node_modules/har-schema/lib/afterRequest.json +0 -29
  552. package/node_modules/har-schema/lib/beforeRequest.json +0 -29
  553. package/node_modules/har-schema/lib/browser.json +0 -19
  554. package/node_modules/har-schema/lib/cache.json +0 -20
  555. package/node_modules/har-schema/lib/content.json +0 -28
  556. package/node_modules/har-schema/lib/cookie.json +0 -35
  557. package/node_modules/har-schema/lib/creator.json +0 -19
  558. package/node_modules/har-schema/lib/entry.json +0 -52
  559. package/node_modules/har-schema/lib/har.json +0 -12
  560. package/node_modules/har-schema/lib/header.json +0 -19
  561. package/node_modules/har-schema/lib/index.js +0 -22
  562. package/node_modules/har-schema/lib/log.json +0 -35
  563. package/node_modules/har-schema/lib/page.json +0 -31
  564. package/node_modules/har-schema/lib/pageTimings.json +0 -17
  565. package/node_modules/har-schema/lib/postData.json +0 -42
  566. package/node_modules/har-schema/lib/query.json +0 -19
  567. package/node_modules/har-schema/lib/request.json +0 -56
  568. package/node_modules/har-schema/lib/response.json +0 -53
  569. package/node_modules/har-schema/lib/timings.json +0 -41
  570. package/node_modules/har-schema/package.json +0 -87
  571. package/node_modules/har-validator/LICENSE +0 -13
  572. package/node_modules/har-validator/README.md +0 -75
  573. package/node_modules/har-validator/lib/browser/async.js +0 -96
  574. package/node_modules/har-validator/lib/browser/error.js +0 -15
  575. package/node_modules/har-validator/lib/browser/promise.js +0 -93
  576. package/node_modules/har-validator/lib/node4/async.js +0 -136
  577. package/node_modules/har-validator/lib/node4/error.js +0 -22
  578. package/node_modules/har-validator/lib/node4/promise.js +0 -132
  579. package/node_modules/har-validator/lib/node6/async.js +0 -133
  580. package/node_modules/har-validator/lib/node6/error.js +0 -22
  581. package/node_modules/har-validator/lib/node6/promise.js +0 -130
  582. package/node_modules/har-validator/lib/node7/async.js +0 -133
  583. package/node_modules/har-validator/lib/node7/error.js +0 -22
  584. package/node_modules/har-validator/lib/node7/promise.js +0 -130
  585. package/node_modules/har-validator/package.json +0 -102
  586. package/node_modules/har-validator/src/async.js +0 -96
  587. package/node_modules/har-validator/src/error.js +0 -15
  588. package/node_modules/har-validator/src/promise.js +0 -93
  589. package/node_modules/hawk/.npmignore +0 -20
  590. package/node_modules/hawk/.travis.yml +0 -5
  591. package/node_modules/hawk/LICENSE +0 -28
  592. package/node_modules/hawk/README.md +0 -634
  593. package/node_modules/hawk/bower.json +0 -24
  594. package/node_modules/hawk/component.json +0 -19
  595. package/node_modules/hawk/dist/client.js +0 -343
  596. package/node_modules/hawk/example/usage.js +0 -78
  597. package/node_modules/hawk/images/hawk.png +0 -0
  598. package/node_modules/hawk/images/logo.png +0 -0
  599. package/node_modules/hawk/lib/browser.js +0 -637
  600. package/node_modules/hawk/lib/client.js +0 -369
  601. package/node_modules/hawk/lib/crypto.js +0 -126
  602. package/node_modules/hawk/lib/index.js +0 -15
  603. package/node_modules/hawk/lib/server.js +0 -548
  604. package/node_modules/hawk/lib/utils.js +0 -184
  605. package/node_modules/hawk/package.json +0 -71
  606. package/node_modules/hawk/test/browser.js +0 -1492
  607. package/node_modules/hawk/test/client.js +0 -440
  608. package/node_modules/hawk/test/crypto.js +0 -70
  609. package/node_modules/hawk/test/index.js +0 -378
  610. package/node_modules/hawk/test/readme.js +0 -95
  611. package/node_modules/hawk/test/server.js +0 -1329
  612. package/node_modules/hawk/test/uri.js +0 -838
  613. package/node_modules/hawk/test/utils.js +0 -149
  614. package/node_modules/hoek/.npmignore +0 -18
  615. package/node_modules/hoek/.travis.yml +0 -7
  616. package/node_modules/hoek/CONTRIBUTING.md +0 -1
  617. package/node_modules/hoek/LICENSE +0 -31
  618. package/node_modules/hoek/README.md +0 -584
  619. package/node_modules/hoek/images/hoek.png +0 -0
  620. package/node_modules/hoek/lib/escape.js +0 -132
  621. package/node_modules/hoek/lib/index.js +0 -993
  622. package/node_modules/hoek/package.json +0 -56
  623. package/node_modules/hoek/test/escaper.js +0 -88
  624. package/node_modules/hoek/test/index.js +0 -2513
  625. package/node_modules/hoek/test/modules/ignore.txt +0 -0
  626. package/node_modules/hoek/test/modules/test1.js +0 -1
  627. package/node_modules/hoek/test/modules/test2.js +0 -1
  628. package/node_modules/hoek/test/modules/test3.js +0 -1
  629. package/node_modules/http-signature/.dir-locals.el +0 -6
  630. package/node_modules/http-signature/.npmignore +0 -7
  631. package/node_modules/http-signature/CHANGES.md +0 -46
  632. package/node_modules/http-signature/LICENSE +0 -18
  633. package/node_modules/http-signature/README.md +0 -79
  634. package/node_modules/http-signature/http_signing.md +0 -363
  635. package/node_modules/http-signature/lib/index.js +0 -29
  636. package/node_modules/http-signature/lib/parser.js +0 -318
  637. package/node_modules/http-signature/lib/signer.js +0 -399
  638. package/node_modules/http-signature/lib/utils.js +0 -112
  639. package/node_modules/http-signature/lib/verify.js +0 -88
  640. package/node_modules/http-signature/package.json +0 -78
  641. package/node_modules/is-typedarray/LICENSE.md +0 -18
  642. package/node_modules/is-typedarray/README.md +0 -16
  643. package/node_modules/is-typedarray/index.js +0 -41
  644. package/node_modules/is-typedarray/package.json +0 -60
  645. package/node_modules/is-typedarray/test.js +0 -34
  646. package/node_modules/isstream/.jshintrc +0 -59
  647. package/node_modules/isstream/.npmignore +0 -1
  648. package/node_modules/isstream/.travis.yml +0 -12
  649. package/node_modules/isstream/LICENSE.md +0 -11
  650. package/node_modules/isstream/README.md +0 -66
  651. package/node_modules/isstream/isstream.js +0 -27
  652. package/node_modules/isstream/package.json +0 -62
  653. package/node_modules/isstream/test.js +0 -168
  654. package/node_modules/jodid25519/.npmignore +0 -11
  655. package/node_modules/jodid25519/.travis.yml +0 -7
  656. package/node_modules/jodid25519/AUTHORS.md +0 -3
  657. package/node_modules/jodid25519/LICENSE +0 -23
  658. package/node_modules/jodid25519/README.md +0 -51
  659. package/node_modules/jodid25519/almond.0 +0 -42
  660. package/node_modules/jodid25519/almond.1 +0 -13
  661. package/node_modules/jodid25519/index.js +0 -35
  662. package/node_modules/jodid25519/jsdoc.json +0 -19
  663. package/node_modules/jodid25519/lib/core.js +0 -481
  664. package/node_modules/jodid25519/lib/curve255.js +0 -221
  665. package/node_modules/jodid25519/lib/dh.js +0 -111
  666. package/node_modules/jodid25519/lib/eddsa.js +0 -573
  667. package/node_modules/jodid25519/lib/utils.js +0 -198
  668. package/node_modules/jodid25519/package.json +0 -76
  669. package/node_modules/jsbn/.npmignore +0 -2
  670. package/node_modules/jsbn/LICENSE +0 -40
  671. package/node_modules/jsbn/README.md +0 -175
  672. package/node_modules/jsbn/example.html +0 -12
  673. package/node_modules/jsbn/example.js +0 -3
  674. package/node_modules/jsbn/index.js +0 -1357
  675. package/node_modules/jsbn/package.json +0 -54
  676. package/node_modules/json-schema/README.md +0 -5
  677. package/node_modules/json-schema/draft-00/hyper-schema +0 -68
  678. package/node_modules/json-schema/draft-00/json-ref +0 -26
  679. package/node_modules/json-schema/draft-00/links +0 -33
  680. package/node_modules/json-schema/draft-00/schema +0 -155
  681. package/node_modules/json-schema/draft-01/hyper-schema +0 -68
  682. package/node_modules/json-schema/draft-01/json-ref +0 -26
  683. package/node_modules/json-schema/draft-01/links +0 -33
  684. package/node_modules/json-schema/draft-01/schema +0 -155
  685. package/node_modules/json-schema/draft-02/hyper-schema +0 -68
  686. package/node_modules/json-schema/draft-02/json-ref +0 -26
  687. package/node_modules/json-schema/draft-02/links +0 -35
  688. package/node_modules/json-schema/draft-02/schema +0 -166
  689. package/node_modules/json-schema/draft-03/examples/address +0 -20
  690. package/node_modules/json-schema/draft-03/examples/calendar +0 -53
  691. package/node_modules/json-schema/draft-03/examples/card +0 -105
  692. package/node_modules/json-schema/draft-03/examples/geo +0 -8
  693. package/node_modules/json-schema/draft-03/examples/interfaces +0 -23
  694. package/node_modules/json-schema/draft-03/hyper-schema +0 -60
  695. package/node_modules/json-schema/draft-03/json-ref +0 -26
  696. package/node_modules/json-schema/draft-03/links +0 -35
  697. package/node_modules/json-schema/draft-03/schema +0 -174
  698. package/node_modules/json-schema/draft-04/hyper-schema +0 -60
  699. package/node_modules/json-schema/draft-04/links +0 -41
  700. package/node_modules/json-schema/draft-04/schema +0 -189
  701. package/node_modules/json-schema/draft-zyp-json-schema-03.xml +0 -1120
  702. package/node_modules/json-schema/draft-zyp-json-schema-04.xml +0 -1072
  703. package/node_modules/json-schema/lib/links.js +0 -66
  704. package/node_modules/json-schema/lib/validate.js +0 -273
  705. package/node_modules/json-schema/package.json +0 -72
  706. package/node_modules/json-schema/test/tests.js +0 -95
  707. package/node_modules/json-stable-stringify/.npmignore +0 -1
  708. package/node_modules/json-stable-stringify/.travis.yml +0 -4
  709. package/node_modules/json-stable-stringify/LICENSE +0 -18
  710. package/node_modules/json-stable-stringify/example/key_cmp.js +0 -7
  711. package/node_modules/json-stable-stringify/example/nested.js +0 -3
  712. package/node_modules/json-stable-stringify/example/str.js +0 -3
  713. package/node_modules/json-stable-stringify/example/value_cmp.js +0 -7
  714. package/node_modules/json-stable-stringify/index.js +0 -84
  715. package/node_modules/json-stable-stringify/package.json +0 -75
  716. package/node_modules/json-stable-stringify/readme.markdown +0 -130
  717. package/node_modules/json-stable-stringify/test/cmp.js +0 -11
  718. package/node_modules/json-stable-stringify/test/nested.js +0 -35
  719. package/node_modules/json-stable-stringify/test/replacer.js +0 -74
  720. package/node_modules/json-stable-stringify/test/space.js +0 -59
  721. package/node_modules/json-stable-stringify/test/str.js +0 -32
  722. package/node_modules/json-stable-stringify/test/to-json.js +0 -20
  723. package/node_modules/json-stringify-safe/.npmignore +0 -1
  724. package/node_modules/json-stringify-safe/CHANGELOG.md +0 -14
  725. package/node_modules/json-stringify-safe/Makefile +0 -35
  726. package/node_modules/json-stringify-safe/README.md +0 -52
  727. package/node_modules/json-stringify-safe/package.json +0 -67
  728. package/node_modules/json-stringify-safe/stringify.js +0 -27
  729. package/node_modules/json-stringify-safe/test/mocha.opts +0 -2
  730. package/node_modules/json-stringify-safe/test/stringify_test.js +0 -246
  731. package/node_modules/jsonify/README.markdown +0 -34
  732. package/node_modules/jsonify/index.js +0 -2
  733. package/node_modules/jsonify/lib/parse.js +0 -273
  734. package/node_modules/jsonify/lib/stringify.js +0 -154
  735. package/node_modules/jsonify/package.json +0 -60
  736. package/node_modules/jsonify/test/parse.js +0 -16
  737. package/node_modules/jsonify/test/stringify.js +0 -15
  738. package/node_modules/jsprim/CHANGES.md +0 -43
  739. package/node_modules/jsprim/LICENSE +0 -19
  740. package/node_modules/jsprim/README.md +0 -292
  741. package/node_modules/jsprim/lib/jsprim.js +0 -735
  742. package/node_modules/jsprim/node_modules/assert-plus/AUTHORS +0 -6
  743. package/node_modules/jsprim/node_modules/assert-plus/CHANGES.md +0 -14
  744. package/node_modules/jsprim/node_modules/assert-plus/README.md +0 -162
  745. package/node_modules/jsprim/node_modules/assert-plus/assert.js +0 -211
  746. package/node_modules/jsprim/node_modules/assert-plus/package.json +0 -83
  747. package/node_modules/jsprim/package.json +0 -50
  748. package/node_modules/mime-db/HISTORY.md +0 -412
  749. package/node_modules/mime-db/LICENSE +0 -22
  750. package/node_modules/mime-db/README.md +0 -82
  751. package/node_modules/mime-db/db.json +0 -6805
  752. package/node_modules/mime-db/index.js +0 -11
  753. package/node_modules/mime-db/package.json +0 -99
  754. package/node_modules/mime-types/HISTORY.md +0 -223
  755. package/node_modules/mime-types/LICENSE +0 -23
  756. package/node_modules/mime-types/README.md +0 -108
  757. package/node_modules/mime-types/index.js +0 -188
  758. package/node_modules/mime-types/package.json +0 -85
  759. package/node_modules/oauth-sign/LICENSE +0 -55
  760. package/node_modules/oauth-sign/README.md +0 -4
  761. package/node_modules/oauth-sign/index.js +0 -136
  762. package/node_modules/oauth-sign/package.json +0 -57
  763. package/node_modules/osenv/.npmignore +0 -13
  764. package/node_modules/osenv/.travis.yml +0 -9
  765. package/node_modules/osenv/test/unix.js +0 -71
  766. package/node_modules/osenv/test/windows.js +0 -74
  767. package/node_modules/osenv/x.tap +0 -39
  768. package/node_modules/performance-now/.npmignore +0 -1
  769. package/node_modules/performance-now/.tm_properties +0 -7
  770. package/node_modules/performance-now/.travis.yml +0 -4
  771. package/node_modules/performance-now/Makefile +0 -25
  772. package/node_modules/performance-now/README.md +0 -30
  773. package/node_modules/performance-now/lib/performance-now.js +0 -32
  774. package/node_modules/performance-now/license.txt +0 -7
  775. package/node_modules/performance-now/package.json +0 -58
  776. package/node_modules/performance-now/src/performance-now.coffee +0 -15
  777. package/node_modules/performance-now/test/mocha.opts +0 -3
  778. package/node_modules/performance-now/test/performance-now.coffee +0 -38
  779. package/node_modules/process-nextick-args/.travis.yml +0 -12
  780. package/node_modules/process-nextick-args/test.js +0 -24
  781. package/node_modules/punycode/README.md +0 -176
  782. package/node_modules/punycode/package.json +0 -92
  783. package/node_modules/punycode/punycode.js +0 -533
  784. package/node_modules/qs/.eslintignore +0 -1
  785. package/node_modules/qs/.eslintrc +0 -18
  786. package/node_modules/qs/.jscs.json +0 -176
  787. package/node_modules/qs/CHANGELOG.md +0 -175
  788. package/node_modules/qs/LICENSE +0 -28
  789. package/node_modules/qs/README.md +0 -440
  790. package/node_modules/qs/dist/qs.js +0 -597
  791. package/node_modules/qs/lib/formats.js +0 -18
  792. package/node_modules/qs/lib/index.js +0 -11
  793. package/node_modules/qs/lib/parse.js +0 -167
  794. package/node_modules/qs/lib/stringify.js +0 -207
  795. package/node_modules/qs/lib/utils.js +0 -182
  796. package/node_modules/qs/package.json +0 -79
  797. package/node_modules/qs/test/.eslintrc +0 -11
  798. package/node_modules/qs/test/index.js +0 -7
  799. package/node_modules/qs/test/parse.js +0 -519
  800. package/node_modules/qs/test/stringify.js +0 -567
  801. package/node_modules/qs/test/utils.js +0 -22
  802. package/node_modules/rc/.npmignore +0 -3
  803. package/node_modules/readable-stream/.npmignore +0 -9
  804. package/node_modules/request/CHANGELOG.md +0 -674
  805. package/node_modules/request/LICENSE +0 -55
  806. package/node_modules/request/README.md +0 -1115
  807. package/node_modules/request/index.js +0 -156
  808. package/node_modules/request/lib/auth.js +0 -168
  809. package/node_modules/request/lib/cookies.js +0 -39
  810. package/node_modules/request/lib/getProxyFromURI.js +0 -79
  811. package/node_modules/request/lib/har.js +0 -215
  812. package/node_modules/request/lib/helpers.js +0 -66
  813. package/node_modules/request/lib/multipart.js +0 -113
  814. package/node_modules/request/lib/oauth.js +0 -148
  815. package/node_modules/request/lib/querystring.js +0 -51
  816. package/node_modules/request/lib/redirect.js +0 -157
  817. package/node_modules/request/lib/tunnel.js +0 -176
  818. package/node_modules/request/package.json +0 -119
  819. package/node_modules/request/request.js +0 -1565
  820. package/node_modules/safe-buffer/browser.js +0 -1
  821. package/node_modules/sntp/.npmignore +0 -18
  822. package/node_modules/sntp/.travis.yml +0 -5
  823. package/node_modules/sntp/LICENSE +0 -28
  824. package/node_modules/sntp/Makefile +0 -9
  825. package/node_modules/sntp/README.md +0 -68
  826. package/node_modules/sntp/examples/offset.js +0 -16
  827. package/node_modules/sntp/examples/time.js +0 -25
  828. package/node_modules/sntp/index.js +0 -1
  829. package/node_modules/sntp/lib/index.js +0 -412
  830. package/node_modules/sntp/package.json +0 -69
  831. package/node_modules/sntp/test/index.js +0 -435
  832. package/node_modules/sshpk/.npmignore +0 -9
  833. package/node_modules/sshpk/.travis.yml +0 -11
  834. package/node_modules/sshpk/LICENSE +0 -18
  835. package/node_modules/sshpk/README.md +0 -698
  836. package/node_modules/sshpk/bin/sshpk-conv +0 -201
  837. package/node_modules/sshpk/bin/sshpk-sign +0 -191
  838. package/node_modules/sshpk/bin/sshpk-verify +0 -166
  839. package/node_modules/sshpk/lib/algs.js +0 -168
  840. package/node_modules/sshpk/lib/certificate.js +0 -377
  841. package/node_modules/sshpk/lib/dhe.js +0 -410
  842. package/node_modules/sshpk/lib/ed-compat.js +0 -96
  843. package/node_modules/sshpk/lib/errors.js +0 -84
  844. package/node_modules/sshpk/lib/fingerprint.js +0 -161
  845. package/node_modules/sshpk/lib/formats/auto.js +0 -73
  846. package/node_modules/sshpk/lib/formats/openssh-cert.js +0 -322
  847. package/node_modules/sshpk/lib/formats/pem.js +0 -186
  848. package/node_modules/sshpk/lib/formats/pkcs1.js +0 -320
  849. package/node_modules/sshpk/lib/formats/pkcs8.js +0 -505
  850. package/node_modules/sshpk/lib/formats/rfc4253.js +0 -146
  851. package/node_modules/sshpk/lib/formats/ssh-private.js +0 -261
  852. package/node_modules/sshpk/lib/formats/ssh.js +0 -114
  853. package/node_modules/sshpk/lib/formats/x509-pem.js +0 -77
  854. package/node_modules/sshpk/lib/formats/x509.js +0 -726
  855. package/node_modules/sshpk/lib/identity.js +0 -277
  856. package/node_modules/sshpk/lib/index.js +0 -39
  857. package/node_modules/sshpk/lib/key.js +0 -274
  858. package/node_modules/sshpk/lib/private-key.js +0 -255
  859. package/node_modules/sshpk/lib/signature.js +0 -313
  860. package/node_modules/sshpk/lib/ssh-buffer.js +0 -148
  861. package/node_modules/sshpk/lib/utils.js +0 -288
  862. package/node_modules/sshpk/man/man1/sshpk-conv.1 +0 -135
  863. package/node_modules/sshpk/man/man1/sshpk-sign.1 +0 -81
  864. package/node_modules/sshpk/man/man1/sshpk-verify.1 +0 -68
  865. package/node_modules/sshpk/node_modules/assert-plus/AUTHORS +0 -6
  866. package/node_modules/sshpk/node_modules/assert-plus/CHANGES.md +0 -14
  867. package/node_modules/sshpk/node_modules/assert-plus/README.md +0 -162
  868. package/node_modules/sshpk/node_modules/assert-plus/assert.js +0 -211
  869. package/node_modules/sshpk/node_modules/assert-plus/package.json +0 -83
  870. package/node_modules/sshpk/package.json +0 -103
  871. package/node_modules/string_decoder/.npmignore +0 -2
  872. package/node_modules/stringstream/.npmignore +0 -15
  873. package/node_modules/stringstream/.travis.yml +0 -4
  874. package/node_modules/stringstream/LICENSE.txt +0 -22
  875. package/node_modules/stringstream/README.md +0 -38
  876. package/node_modules/stringstream/example.js +0 -27
  877. package/node_modules/stringstream/package.json +0 -52
  878. package/node_modules/stringstream/stringstream.js +0 -102
  879. package/node_modules/tar/.npmignore +0 -5
  880. package/node_modules/tar/.travis.yml +0 -4
  881. package/node_modules/tar/examples/extracter.js +0 -19
  882. package/node_modules/tar/examples/packer.js +0 -24
  883. package/node_modules/tar/examples/reader.js +0 -36
  884. package/node_modules/tar/lib/buffer-entry.js +0 -30
  885. package/node_modules/tar/lib/entry-writer.js +0 -169
  886. package/node_modules/tar/lib/entry.js +0 -220
  887. package/node_modules/tar/lib/extended-header-writer.js +0 -191
  888. package/node_modules/tar/lib/extended-header.js +0 -140
  889. package/node_modules/tar/lib/global-header-writer.js +0 -14
  890. package/node_modules/tar/tar.js +0 -173
  891. package/node_modules/tar/test/00-setup-fixtures.js +0 -53
  892. package/node_modules/tar/test/cb-never-called-1.0.1.tgz +0 -0
  893. package/node_modules/tar/test/dir-normalization.js +0 -177
  894. package/node_modules/tar/test/dir-normalization.tar +0 -0
  895. package/node_modules/tar/test/error-on-broken.js +0 -33
  896. package/node_modules/tar/test/extract-move.js +0 -132
  897. package/node_modules/tar/test/extract.js +0 -367
  898. package/node_modules/tar/test/fixtures.tgz +0 -0
  899. package/node_modules/tar/test/header.js +0 -183
  900. package/node_modules/tar/test/pack-no-proprietary.js +0 -886
  901. package/node_modules/tar/test/pack.js +0 -952
  902. package/node_modules/tar/test/parse-discard.js +0 -29
  903. package/node_modules/tar/test/parse.js +0 -359
  904. package/node_modules/tar/test/zz-cleanup.js +0 -20
  905. package/node_modules/tar-pack/.npmignore +0 -14
  906. package/node_modules/tar-pack/.travis.yml +0 -7
  907. package/node_modules/tar-pack/LICENSE +0 -23
  908. package/node_modules/tar-pack/README.md +0 -84
  909. package/node_modules/tar-pack/index.js +0 -245
  910. package/node_modules/tar-pack/package.json +0 -58
  911. package/node_modules/tar-pack/test/fixtures/packed-file.txt +0 -1
  912. package/node_modules/tar-pack/test/fixtures/packed.tar +0 -0
  913. package/node_modules/tar-pack/test/fixtures/packed.tar.gz +0 -0
  914. package/node_modules/tar-pack/test/fixtures/to-pack/bar.txt +0 -1
  915. package/node_modules/tar-pack/test/fixtures/to-pack/foo.txt +0 -1
  916. package/node_modules/tar-pack/test/index.js +0 -109
  917. package/node_modules/tough-cookie/LICENSE +0 -27
  918. package/node_modules/tough-cookie/README.md +0 -506
  919. package/node_modules/tough-cookie/lib/cookie.js +0 -1336
  920. package/node_modules/tough-cookie/lib/memstore.js +0 -170
  921. package/node_modules/tough-cookie/lib/pathMatch.js +0 -61
  922. package/node_modules/tough-cookie/lib/permuteDomain.js +0 -56
  923. package/node_modules/tough-cookie/lib/pubsuffix.js +0 -98
  924. package/node_modules/tough-cookie/lib/store.js +0 -71
  925. package/node_modules/tough-cookie/package.json +0 -93
  926. package/node_modules/tunnel-agent/LICENSE +0 -55
  927. package/node_modules/tunnel-agent/README.md +0 -4
  928. package/node_modules/tunnel-agent/index.js +0 -244
  929. package/node_modules/tunnel-agent/package.json +0 -56
  930. package/node_modules/tweetnacl/.npmignore +0 -4
  931. package/node_modules/tweetnacl/AUTHORS.md +0 -28
  932. package/node_modules/tweetnacl/CHANGELOG.md +0 -221
  933. package/node_modules/tweetnacl/LICENSE +0 -24
  934. package/node_modules/tweetnacl/PULL_REQUEST_TEMPLATE.md +0 -20
  935. package/node_modules/tweetnacl/README.md +0 -459
  936. package/node_modules/tweetnacl/nacl-fast.js +0 -2388
  937. package/node_modules/tweetnacl/nacl-fast.min.js +0 -2
  938. package/node_modules/tweetnacl/nacl.d.ts +0 -98
  939. package/node_modules/tweetnacl/nacl.js +0 -1175
  940. package/node_modules/tweetnacl/nacl.min.js +0 -1
  941. package/node_modules/tweetnacl/package.json +0 -87
  942. package/node_modules/uid-number/LICENSE +0 -15
  943. package/node_modules/uid-number/README.md +0 -17
  944. package/node_modules/uid-number/get-uid-gid.js +0 -24
  945. package/node_modules/uid-number/package.json +0 -52
  946. package/node_modules/uid-number/uid-number.js +0 -59
  947. package/node_modules/uuid/.npmignore +0 -8
  948. package/node_modules/uuid/.travis.yml +0 -5
  949. package/node_modules/uuid/AUTHORS +0 -5
  950. package/node_modules/uuid/HISTORY.md +0 -28
  951. package/node_modules/uuid/LICENSE.md +0 -21
  952. package/node_modules/uuid/README.md +0 -132
  953. package/node_modules/uuid/bin/uuid +0 -26
  954. package/node_modules/uuid/index.js +0 -8
  955. package/node_modules/uuid/lib/bytesToUuid.js +0 -23
  956. package/node_modules/uuid/lib/rng-browser.js +0 -33
  957. package/node_modules/uuid/lib/rng.js +0 -10
  958. package/node_modules/uuid/package.json +0 -79
  959. package/node_modules/uuid/test/mocha.opts +0 -3
  960. package/node_modules/uuid/test/test.js +0 -96
  961. package/node_modules/uuid/v1.js +0 -103
  962. package/node_modules/uuid/v4.js +0 -29
  963. package/node_modules/verror/.gitmodules +0 -0
  964. package/node_modules/verror/.npmignore +0 -1
  965. package/node_modules/verror/LICENSE +0 -19
  966. package/node_modules/verror/Makefile +0 -35
  967. package/node_modules/verror/Makefile.targ +0 -285
  968. package/node_modules/verror/README.md +0 -120
  969. package/node_modules/verror/examples/levels-verror.js +0 -36
  970. package/node_modules/verror/examples/levels-werror.js +0 -34
  971. package/node_modules/verror/examples/varargs.js +0 -6
  972. package/node_modules/verror/examples/verror.js +0 -13
  973. package/node_modules/verror/examples/werror.js +0 -14
  974. package/node_modules/verror/jsl.node.conf +0 -139
  975. package/node_modules/verror/lib/verror.js +0 -157
  976. package/node_modules/verror/package.json +0 -49
  977. package/node_modules/verror/tests/tst.inherit.js +0 -100
  978. package/node_modules/verror/tests/tst.verror.js +0 -156
  979. package/node_modules/verror/tests/tst.werror.js +0 -179
@@ -1,1565 +0,0 @@
1
- 'use strict'
2
-
3
- var http = require('http')
4
- , https = require('https')
5
- , url = require('url')
6
- , util = require('util')
7
- , stream = require('stream')
8
- , zlib = require('zlib')
9
- , hawk = require('hawk')
10
- , aws2 = require('aws-sign2')
11
- , aws4 = require('aws4')
12
- , httpSignature = require('http-signature')
13
- , mime = require('mime-types')
14
- , stringstream = require('stringstream')
15
- , caseless = require('caseless')
16
- , ForeverAgent = require('forever-agent')
17
- , FormData = require('form-data')
18
- , extend = require('extend')
19
- , isstream = require('isstream')
20
- , isTypedArray = require('is-typedarray').strict
21
- , helpers = require('./lib/helpers')
22
- , cookies = require('./lib/cookies')
23
- , getProxyFromURI = require('./lib/getProxyFromURI')
24
- , Querystring = require('./lib/querystring').Querystring
25
- , Har = require('./lib/har').Har
26
- , Auth = require('./lib/auth').Auth
27
- , OAuth = require('./lib/oauth').OAuth
28
- , Multipart = require('./lib/multipart').Multipart
29
- , Redirect = require('./lib/redirect').Redirect
30
- , Tunnel = require('./lib/tunnel').Tunnel
31
- , now = require('performance-now')
32
- , Buffer = require('safe-buffer').Buffer
33
-
34
- var safeStringify = helpers.safeStringify
35
- , isReadStream = helpers.isReadStream
36
- , toBase64 = helpers.toBase64
37
- , defer = helpers.defer
38
- , copy = helpers.copy
39
- , version = helpers.version
40
- , globalCookieJar = cookies.jar()
41
-
42
-
43
- var globalPool = {}
44
-
45
- function filterForNonReserved(reserved, options) {
46
- // Filter out properties that are not reserved.
47
- // Reserved values are passed in at call site.
48
-
49
- var object = {}
50
- for (var i in options) {
51
- var notReserved = (reserved.indexOf(i) === -1)
52
- if (notReserved) {
53
- object[i] = options[i]
54
- }
55
- }
56
- return object
57
- }
58
-
59
- function filterOutReservedFunctions(reserved, options) {
60
- // Filter out properties that are functions and are reserved.
61
- // Reserved values are passed in at call site.
62
-
63
- var object = {}
64
- for (var i in options) {
65
- var isReserved = !(reserved.indexOf(i) === -1)
66
- var isFunction = (typeof options[i] === 'function')
67
- if (!(isReserved && isFunction)) {
68
- object[i] = options[i]
69
- }
70
- }
71
- return object
72
-
73
- }
74
-
75
- // Return a simpler request object to allow serialization
76
- function requestToJSON() {
77
- var self = this
78
- return {
79
- uri: self.uri,
80
- method: self.method,
81
- headers: self.headers
82
- }
83
- }
84
-
85
- // Return a simpler response object to allow serialization
86
- function responseToJSON() {
87
- var self = this
88
- return {
89
- statusCode: self.statusCode,
90
- body: self.body,
91
- headers: self.headers,
92
- request: requestToJSON.call(self.request)
93
- }
94
- }
95
-
96
- function Request (options) {
97
- // if given the method property in options, set property explicitMethod to true
98
-
99
- // extend the Request instance with any non-reserved properties
100
- // remove any reserved functions from the options object
101
- // set Request instance to be readable and writable
102
- // call init
103
-
104
- var self = this
105
-
106
- // start with HAR, then override with additional options
107
- if (options.har) {
108
- self._har = new Har(self)
109
- options = self._har.options(options)
110
- }
111
-
112
- stream.Stream.call(self)
113
- var reserved = Object.keys(Request.prototype)
114
- var nonReserved = filterForNonReserved(reserved, options)
115
-
116
- extend(self, nonReserved)
117
- options = filterOutReservedFunctions(reserved, options)
118
-
119
- self.readable = true
120
- self.writable = true
121
- if (options.method) {
122
- self.explicitMethod = true
123
- }
124
- self._qs = new Querystring(self)
125
- self._auth = new Auth(self)
126
- self._oauth = new OAuth(self)
127
- self._multipart = new Multipart(self)
128
- self._redirect = new Redirect(self)
129
- self._tunnel = new Tunnel(self)
130
- self.init(options)
131
- }
132
-
133
- util.inherits(Request, stream.Stream)
134
-
135
- // Debugging
136
- Request.debug = process.env.NODE_DEBUG && /\brequest\b/.test(process.env.NODE_DEBUG)
137
- function debug() {
138
- if (Request.debug) {
139
- console.error('REQUEST %s', util.format.apply(util, arguments))
140
- }
141
- }
142
- Request.prototype.debug = debug
143
-
144
- Request.prototype.init = function (options) {
145
- // init() contains all the code to setup the request object.
146
- // the actual outgoing request is not started until start() is called
147
- // this function is called from both the constructor and on redirect.
148
- var self = this
149
- if (!options) {
150
- options = {}
151
- }
152
- self.headers = self.headers ? copy(self.headers) : {}
153
-
154
- // Delete headers with value undefined since they break
155
- // ClientRequest.OutgoingMessage.setHeader in node 0.12
156
- for (var headerName in self.headers) {
157
- if (typeof self.headers[headerName] === 'undefined') {
158
- delete self.headers[headerName]
159
- }
160
- }
161
-
162
- caseless.httpify(self, self.headers)
163
-
164
- if (!self.method) {
165
- self.method = options.method || 'GET'
166
- }
167
- if (!self.localAddress) {
168
- self.localAddress = options.localAddress
169
- }
170
-
171
- self._qs.init(options)
172
-
173
- debug(options)
174
- if (!self.pool && self.pool !== false) {
175
- self.pool = globalPool
176
- }
177
- self.dests = self.dests || []
178
- self.__isRequestRequest = true
179
-
180
- // Protect against double callback
181
- if (!self._callback && self.callback) {
182
- self._callback = self.callback
183
- self.callback = function () {
184
- if (self._callbackCalled) {
185
- return // Print a warning maybe?
186
- }
187
- self._callbackCalled = true
188
- self._callback.apply(self, arguments)
189
- }
190
- self.on('error', self.callback.bind())
191
- self.on('complete', self.callback.bind(self, null))
192
- }
193
-
194
- // People use this property instead all the time, so support it
195
- if (!self.uri && self.url) {
196
- self.uri = self.url
197
- delete self.url
198
- }
199
-
200
- // If there's a baseUrl, then use it as the base URL (i.e. uri must be
201
- // specified as a relative path and is appended to baseUrl).
202
- if (self.baseUrl) {
203
- if (typeof self.baseUrl !== 'string') {
204
- return self.emit('error', new Error('options.baseUrl must be a string'))
205
- }
206
-
207
- if (typeof self.uri !== 'string') {
208
- return self.emit('error', new Error('options.uri must be a string when using options.baseUrl'))
209
- }
210
-
211
- if (self.uri.indexOf('//') === 0 || self.uri.indexOf('://') !== -1) {
212
- return self.emit('error', new Error('options.uri must be a path when using options.baseUrl'))
213
- }
214
-
215
- // Handle all cases to make sure that there's only one slash between
216
- // baseUrl and uri.
217
- var baseUrlEndsWithSlash = self.baseUrl.lastIndexOf('/') === self.baseUrl.length - 1
218
- var uriStartsWithSlash = self.uri.indexOf('/') === 0
219
-
220
- if (baseUrlEndsWithSlash && uriStartsWithSlash) {
221
- self.uri = self.baseUrl + self.uri.slice(1)
222
- } else if (baseUrlEndsWithSlash || uriStartsWithSlash) {
223
- self.uri = self.baseUrl + self.uri
224
- } else if (self.uri === '') {
225
- self.uri = self.baseUrl
226
- } else {
227
- self.uri = self.baseUrl + '/' + self.uri
228
- }
229
- delete self.baseUrl
230
- }
231
-
232
- // A URI is needed by this point, emit error if we haven't been able to get one
233
- if (!self.uri) {
234
- return self.emit('error', new Error('options.uri is a required argument'))
235
- }
236
-
237
- // If a string URI/URL was given, parse it into a URL object
238
- if (typeof self.uri === 'string') {
239
- self.uri = url.parse(self.uri)
240
- }
241
-
242
- // Some URL objects are not from a URL parsed string and need href added
243
- if (!self.uri.href) {
244
- self.uri.href = url.format(self.uri)
245
- }
246
-
247
- // DEPRECATED: Warning for users of the old Unix Sockets URL Scheme
248
- if (self.uri.protocol === 'unix:') {
249
- return self.emit('error', new Error('`unix://` URL scheme is no longer supported. Please use the format `http://unix:SOCKET:PATH`'))
250
- }
251
-
252
- // Support Unix Sockets
253
- if (self.uri.host === 'unix') {
254
- self.enableUnixSocket()
255
- }
256
-
257
- if (self.strictSSL === false) {
258
- self.rejectUnauthorized = false
259
- }
260
-
261
- if (!self.uri.pathname) {self.uri.pathname = '/'}
262
-
263
- if (!(self.uri.host || (self.uri.hostname && self.uri.port)) && !self.uri.isUnix) {
264
- // Invalid URI: it may generate lot of bad errors, like 'TypeError: Cannot call method `indexOf` of undefined' in CookieJar
265
- // Detect and reject it as soon as possible
266
- var faultyUri = url.format(self.uri)
267
- var message = 'Invalid URI "' + faultyUri + '"'
268
- if (Object.keys(options).length === 0) {
269
- // No option ? This can be the sign of a redirect
270
- // As this is a case where the user cannot do anything (they didn't call request directly with this URL)
271
- // they should be warned that it can be caused by a redirection (can save some hair)
272
- message += '. This can be caused by a crappy redirection.'
273
- }
274
- // This error was fatal
275
- self.abort()
276
- return self.emit('error', new Error(message))
277
- }
278
-
279
- if (!self.hasOwnProperty('proxy')) {
280
- self.proxy = getProxyFromURI(self.uri)
281
- }
282
-
283
- self.tunnel = self._tunnel.isEnabled()
284
- if (self.proxy) {
285
- self._tunnel.setup(options)
286
- }
287
-
288
- self._redirect.onRequest(options)
289
-
290
- self.setHost = false
291
- if (!self.hasHeader('host')) {
292
- var hostHeaderName = self.originalHostHeaderName || 'host'
293
- // When used with an IPv6 address, `host` will provide
294
- // the correct bracketed format, unlike using `hostname` and
295
- // optionally adding the `port` when necessary.
296
- self.setHeader(hostHeaderName, self.uri.host)
297
- self.setHost = true
298
- }
299
-
300
- self.jar(self._jar || options.jar)
301
-
302
- if (!self.uri.port) {
303
- if (self.uri.protocol === 'http:') {self.uri.port = 80}
304
- else if (self.uri.protocol === 'https:') {self.uri.port = 443}
305
- }
306
-
307
- if (self.proxy && !self.tunnel) {
308
- self.port = self.proxy.port
309
- self.host = self.proxy.hostname
310
- } else {
311
- self.port = self.uri.port
312
- self.host = self.uri.hostname
313
- }
314
-
315
- if (options.form) {
316
- self.form(options.form)
317
- }
318
-
319
- if (options.formData) {
320
- var formData = options.formData
321
- var requestForm = self.form()
322
- var appendFormValue = function (key, value) {
323
- if (value && value.hasOwnProperty('value') && value.hasOwnProperty('options')) {
324
- requestForm.append(key, value.value, value.options)
325
- } else {
326
- requestForm.append(key, value)
327
- }
328
- }
329
- for (var formKey in formData) {
330
- if (formData.hasOwnProperty(formKey)) {
331
- var formValue = formData[formKey]
332
- if (formValue instanceof Array) {
333
- for (var j = 0; j < formValue.length; j++) {
334
- appendFormValue(formKey, formValue[j])
335
- }
336
- } else {
337
- appendFormValue(formKey, formValue)
338
- }
339
- }
340
- }
341
- }
342
-
343
- if (options.qs) {
344
- self.qs(options.qs)
345
- }
346
-
347
- if (self.uri.path) {
348
- self.path = self.uri.path
349
- } else {
350
- self.path = self.uri.pathname + (self.uri.search || '')
351
- }
352
-
353
- if (self.path.length === 0) {
354
- self.path = '/'
355
- }
356
-
357
- // Auth must happen last in case signing is dependent on other headers
358
- if (options.aws) {
359
- self.aws(options.aws)
360
- }
361
-
362
- if (options.hawk) {
363
- self.hawk(options.hawk)
364
- }
365
-
366
- if (options.httpSignature) {
367
- self.httpSignature(options.httpSignature)
368
- }
369
-
370
- if (options.auth) {
371
- if (Object.prototype.hasOwnProperty.call(options.auth, 'username')) {
372
- options.auth.user = options.auth.username
373
- }
374
- if (Object.prototype.hasOwnProperty.call(options.auth, 'password')) {
375
- options.auth.pass = options.auth.password
376
- }
377
-
378
- self.auth(
379
- options.auth.user,
380
- options.auth.pass,
381
- options.auth.sendImmediately,
382
- options.auth.bearer
383
- )
384
- }
385
-
386
- if (self.gzip && !self.hasHeader('accept-encoding')) {
387
- self.setHeader('accept-encoding', 'gzip, deflate')
388
- }
389
-
390
- if (self.uri.auth && !self.hasHeader('authorization')) {
391
- var uriAuthPieces = self.uri.auth.split(':').map(function(item) {return self._qs.unescape(item)})
392
- self.auth(uriAuthPieces[0], uriAuthPieces.slice(1).join(':'), true)
393
- }
394
-
395
- if (!self.tunnel && self.proxy && self.proxy.auth && !self.hasHeader('proxy-authorization')) {
396
- var proxyAuthPieces = self.proxy.auth.split(':').map(function(item) {return self._qs.unescape(item)})
397
- var authHeader = 'Basic ' + toBase64(proxyAuthPieces.join(':'))
398
- self.setHeader('proxy-authorization', authHeader)
399
- }
400
-
401
- if (self.proxy && !self.tunnel) {
402
- self.path = (self.uri.protocol + '//' + self.uri.host + self.path)
403
- }
404
-
405
- if (options.json) {
406
- self.json(options.json)
407
- }
408
- if (options.multipart) {
409
- self.multipart(options.multipart)
410
- }
411
-
412
- if (options.time) {
413
- self.timing = true
414
-
415
- // NOTE: elapsedTime is deprecated in favor of .timings
416
- self.elapsedTime = self.elapsedTime || 0
417
- }
418
-
419
- function setContentLength () {
420
- if (isTypedArray(self.body)) {
421
- self.body = Buffer.from(self.body)
422
- }
423
-
424
- if (!self.hasHeader('content-length')) {
425
- var length
426
- if (typeof self.body === 'string') {
427
- length = Buffer.byteLength(self.body)
428
- }
429
- else if (Array.isArray(self.body)) {
430
- length = self.body.reduce(function (a, b) {return a + b.length}, 0)
431
- }
432
- else {
433
- length = self.body.length
434
- }
435
-
436
- if (length) {
437
- self.setHeader('content-length', length)
438
- } else {
439
- self.emit('error', new Error('Argument error, options.body.'))
440
- }
441
- }
442
- }
443
- if (self.body && !isstream(self.body)) {
444
- setContentLength()
445
- }
446
-
447
- if (options.oauth) {
448
- self.oauth(options.oauth)
449
- } else if (self._oauth.params && self.hasHeader('authorization')) {
450
- self.oauth(self._oauth.params)
451
- }
452
-
453
- var protocol = self.proxy && !self.tunnel ? self.proxy.protocol : self.uri.protocol
454
- , defaultModules = {'http:':http, 'https:':https}
455
- , httpModules = self.httpModules || {}
456
-
457
- self.httpModule = httpModules[protocol] || defaultModules[protocol]
458
-
459
- if (!self.httpModule) {
460
- return self.emit('error', new Error('Invalid protocol: ' + protocol))
461
- }
462
-
463
- if (options.ca) {
464
- self.ca = options.ca
465
- }
466
-
467
- if (!self.agent) {
468
- if (options.agentOptions) {
469
- self.agentOptions = options.agentOptions
470
- }
471
-
472
- if (options.agentClass) {
473
- self.agentClass = options.agentClass
474
- } else if (options.forever) {
475
- var v = version()
476
- // use ForeverAgent in node 0.10- only
477
- if (v.major === 0 && v.minor <= 10) {
478
- self.agentClass = protocol === 'http:' ? ForeverAgent : ForeverAgent.SSL
479
- } else {
480
- self.agentClass = self.httpModule.Agent
481
- self.agentOptions = self.agentOptions || {}
482
- self.agentOptions.keepAlive = true
483
- }
484
- } else {
485
- self.agentClass = self.httpModule.Agent
486
- }
487
- }
488
-
489
- if (self.pool === false) {
490
- self.agent = false
491
- } else {
492
- self.agent = self.agent || self.getNewAgent()
493
- }
494
-
495
- self.on('pipe', function (src) {
496
- if (self.ntick && self._started) {
497
- self.emit('error', new Error('You cannot pipe to this stream after the outbound request has started.'))
498
- }
499
- self.src = src
500
- if (isReadStream(src)) {
501
- if (!self.hasHeader('content-type')) {
502
- self.setHeader('content-type', mime.lookup(src.path))
503
- }
504
- } else {
505
- if (src.headers) {
506
- for (var i in src.headers) {
507
- if (!self.hasHeader(i)) {
508
- self.setHeader(i, src.headers[i])
509
- }
510
- }
511
- }
512
- if (self._json && !self.hasHeader('content-type')) {
513
- self.setHeader('content-type', 'application/json')
514
- }
515
- if (src.method && !self.explicitMethod) {
516
- self.method = src.method
517
- }
518
- }
519
-
520
- // self.on('pipe', function () {
521
- // console.error('You have already piped to this stream. Pipeing twice is likely to break the request.')
522
- // })
523
- })
524
-
525
- defer(function () {
526
- if (self._aborted) {
527
- return
528
- }
529
-
530
- var end = function () {
531
- if (self._form) {
532
- if (!self._auth.hasAuth) {
533
- self._form.pipe(self)
534
- }
535
- else if (self._auth.hasAuth && self._auth.sentAuth) {
536
- self._form.pipe(self)
537
- }
538
- }
539
- if (self._multipart && self._multipart.chunked) {
540
- self._multipart.body.pipe(self)
541
- }
542
- if (self.body) {
543
- if (isstream(self.body)) {
544
- self.body.pipe(self)
545
- } else {
546
- setContentLength()
547
- if (Array.isArray(self.body)) {
548
- self.body.forEach(function (part) {
549
- self.write(part)
550
- })
551
- } else {
552
- self.write(self.body)
553
- }
554
- self.end()
555
- }
556
- } else if (self.requestBodyStream) {
557
- console.warn('options.requestBodyStream is deprecated, please pass the request object to stream.pipe.')
558
- self.requestBodyStream.pipe(self)
559
- } else if (!self.src) {
560
- if (self._auth.hasAuth && !self._auth.sentAuth) {
561
- self.end()
562
- return
563
- }
564
- if (self.method !== 'GET' && typeof self.method !== 'undefined') {
565
- self.setHeader('content-length', 0)
566
- }
567
- self.end()
568
- }
569
- }
570
-
571
- if (self._form && !self.hasHeader('content-length')) {
572
- // Before ending the request, we had to compute the length of the whole form, asyncly
573
- self.setHeader(self._form.getHeaders(), true)
574
- self._form.getLength(function (err, length) {
575
- if (!err && !isNaN(length)) {
576
- self.setHeader('content-length', length)
577
- }
578
- end()
579
- })
580
- } else {
581
- end()
582
- }
583
-
584
- self.ntick = true
585
- })
586
-
587
- }
588
-
589
- Request.prototype.getNewAgent = function () {
590
- var self = this
591
- var Agent = self.agentClass
592
- var options = {}
593
- if (self.agentOptions) {
594
- for (var i in self.agentOptions) {
595
- options[i] = self.agentOptions[i]
596
- }
597
- }
598
- if (self.ca) {
599
- options.ca = self.ca
600
- }
601
- if (self.ciphers) {
602
- options.ciphers = self.ciphers
603
- }
604
- if (self.secureProtocol) {
605
- options.secureProtocol = self.secureProtocol
606
- }
607
- if (self.secureOptions) {
608
- options.secureOptions = self.secureOptions
609
- }
610
- if (typeof self.rejectUnauthorized !== 'undefined') {
611
- options.rejectUnauthorized = self.rejectUnauthorized
612
- }
613
-
614
- if (self.cert && self.key) {
615
- options.key = self.key
616
- options.cert = self.cert
617
- }
618
-
619
- if (self.pfx) {
620
- options.pfx = self.pfx
621
- }
622
-
623
- if (self.passphrase) {
624
- options.passphrase = self.passphrase
625
- }
626
-
627
- var poolKey = ''
628
-
629
- // different types of agents are in different pools
630
- if (Agent !== self.httpModule.Agent) {
631
- poolKey += Agent.name
632
- }
633
-
634
- // ca option is only relevant if proxy or destination are https
635
- var proxy = self.proxy
636
- if (typeof proxy === 'string') {
637
- proxy = url.parse(proxy)
638
- }
639
- var isHttps = (proxy && proxy.protocol === 'https:') || this.uri.protocol === 'https:'
640
-
641
- if (isHttps) {
642
- if (options.ca) {
643
- if (poolKey) {
644
- poolKey += ':'
645
- }
646
- poolKey += options.ca
647
- }
648
-
649
- if (typeof options.rejectUnauthorized !== 'undefined') {
650
- if (poolKey) {
651
- poolKey += ':'
652
- }
653
- poolKey += options.rejectUnauthorized
654
- }
655
-
656
- if (options.cert) {
657
- if (poolKey) {
658
- poolKey += ':'
659
- }
660
- poolKey += options.cert.toString('ascii') + options.key.toString('ascii')
661
- }
662
-
663
- if (options.pfx) {
664
- if (poolKey) {
665
- poolKey += ':'
666
- }
667
- poolKey += options.pfx.toString('ascii')
668
- }
669
-
670
- if (options.ciphers) {
671
- if (poolKey) {
672
- poolKey += ':'
673
- }
674
- poolKey += options.ciphers
675
- }
676
-
677
- if (options.secureProtocol) {
678
- if (poolKey) {
679
- poolKey += ':'
680
- }
681
- poolKey += options.secureProtocol
682
- }
683
-
684
- if (options.secureOptions) {
685
- if (poolKey) {
686
- poolKey += ':'
687
- }
688
- poolKey += options.secureOptions
689
- }
690
- }
691
-
692
- if (self.pool === globalPool && !poolKey && Object.keys(options).length === 0 && self.httpModule.globalAgent) {
693
- // not doing anything special. Use the globalAgent
694
- return self.httpModule.globalAgent
695
- }
696
-
697
- // we're using a stored agent. Make sure it's protocol-specific
698
- poolKey = self.uri.protocol + poolKey
699
-
700
- // generate a new agent for this setting if none yet exists
701
- if (!self.pool[poolKey]) {
702
- self.pool[poolKey] = new Agent(options)
703
- // properly set maxSockets on new agents
704
- if (self.pool.maxSockets) {
705
- self.pool[poolKey].maxSockets = self.pool.maxSockets
706
- }
707
- }
708
-
709
- return self.pool[poolKey]
710
- }
711
-
712
- Request.prototype.start = function () {
713
- // start() is called once we are ready to send the outgoing HTTP request.
714
- // this is usually called on the first write(), end() or on nextTick()
715
- var self = this
716
-
717
- if (self.timing) {
718
- // All timings will be relative to this request's startTime. In order to do this,
719
- // we need to capture the wall-clock start time (via Date), immediately followed
720
- // by the high-resolution timer (via now()). While these two won't be set
721
- // at the _exact_ same time, they should be close enough to be able to calculate
722
- // high-resolution, monotonically non-decreasing timestamps relative to startTime.
723
- var startTime = new Date().getTime()
724
- var startTimeNow = now()
725
- }
726
-
727
- if (self._aborted) {
728
- return
729
- }
730
-
731
- self._started = true
732
- self.method = self.method || 'GET'
733
- self.href = self.uri.href
734
-
735
- if (self.src && self.src.stat && self.src.stat.size && !self.hasHeader('content-length')) {
736
- self.setHeader('content-length', self.src.stat.size)
737
- }
738
- if (self._aws) {
739
- self.aws(self._aws, true)
740
- }
741
-
742
- // We have a method named auth, which is completely different from the http.request
743
- // auth option. If we don't remove it, we're gonna have a bad time.
744
- var reqOptions = copy(self)
745
- delete reqOptions.auth
746
-
747
- debug('make request', self.uri.href)
748
-
749
- // node v6.8.0 now supports a `timeout` value in `http.request()`, but we
750
- // should delete it for now since we handle timeouts manually for better
751
- // consistency with node versions before v6.8.0
752
- delete reqOptions.timeout
753
-
754
- try {
755
- self.req = self.httpModule.request(reqOptions)
756
- } catch (err) {
757
- self.emit('error', err)
758
- return
759
- }
760
-
761
- if (self.timing) {
762
- self.startTime = startTime
763
- self.startTimeNow = startTimeNow
764
-
765
- // Timing values will all be relative to startTime (by comparing to startTimeNow
766
- // so we have an accurate clock)
767
- self.timings = {}
768
- }
769
-
770
- var timeout
771
- if (self.timeout && !self.timeoutTimer) {
772
- if (self.timeout < 0) {
773
- timeout = 0
774
- } else if (typeof self.timeout === 'number' && isFinite(self.timeout)) {
775
- timeout = self.timeout
776
- }
777
- }
778
-
779
- self.req.on('response', self.onRequestResponse.bind(self))
780
- self.req.on('error', self.onRequestError.bind(self))
781
- self.req.on('drain', function() {
782
- self.emit('drain')
783
- })
784
- self.req.on('socket', function(socket) {
785
- // `._connecting` was the old property which was made public in node v6.1.0
786
- var isConnecting = socket._connecting || socket.connecting
787
- if (self.timing) {
788
- self.timings.socket = now() - self.startTimeNow
789
-
790
- if (isConnecting) {
791
- var onLookupTiming = function() {
792
- self.timings.lookup = now() - self.startTimeNow
793
- }
794
-
795
- var onConnectTiming = function() {
796
- self.timings.connect = now() - self.startTimeNow
797
- }
798
-
799
- socket.once('lookup', onLookupTiming)
800
- socket.once('connect', onConnectTiming)
801
-
802
- // clean up timing event listeners if needed on error
803
- self.req.once('error', function() {
804
- socket.removeListener('lookup', onLookupTiming)
805
- socket.removeListener('connect', onConnectTiming)
806
- })
807
- }
808
- }
809
-
810
- var setReqTimeout = function() {
811
- // This timeout sets the amount of time to wait *between* bytes sent
812
- // from the server once connected.
813
- //
814
- // In particular, it's useful for erroring if the server fails to send
815
- // data halfway through streaming a response.
816
- self.req.setTimeout(timeout, function () {
817
- if (self.req) {
818
- self.abort()
819
- var e = new Error('ESOCKETTIMEDOUT')
820
- e.code = 'ESOCKETTIMEDOUT'
821
- e.connect = false
822
- self.emit('error', e)
823
- }
824
- })
825
- }
826
- if (timeout !== undefined) {
827
- // Only start the connection timer if we're actually connecting a new
828
- // socket, otherwise if we're already connected (because this is a
829
- // keep-alive connection) do not bother. This is important since we won't
830
- // get a 'connect' event for an already connected socket.
831
- if (isConnecting) {
832
- var onReqSockConnect = function() {
833
- socket.removeListener('connect', onReqSockConnect)
834
- clearTimeout(self.timeoutTimer)
835
- self.timeoutTimer = null
836
- setReqTimeout()
837
- }
838
-
839
- socket.on('connect', onReqSockConnect)
840
-
841
- self.req.on('error', function(err) {
842
- socket.removeListener('connect', onReqSockConnect)
843
- })
844
-
845
- // Set a timeout in memory - this block will throw if the server takes more
846
- // than `timeout` to write the HTTP status and headers (corresponding to
847
- // the on('response') event on the client). NB: this measures wall-clock
848
- // time, not the time between bytes sent by the server.
849
- self.timeoutTimer = setTimeout(function () {
850
- socket.removeListener('connect', onReqSockConnect)
851
- self.abort()
852
- var e = new Error('ETIMEDOUT')
853
- e.code = 'ETIMEDOUT'
854
- e.connect = true
855
- self.emit('error', e)
856
- }, timeout)
857
- } else {
858
- // We're already connected
859
- setReqTimeout()
860
- }
861
- }
862
- self.emit('socket', socket)
863
- })
864
-
865
- self.emit('request', self.req)
866
- }
867
-
868
- Request.prototype.onRequestError = function (error) {
869
- var self = this
870
- if (self._aborted) {
871
- return
872
- }
873
- if (self.req && self.req._reusedSocket && error.code === 'ECONNRESET'
874
- && self.agent.addRequestNoreuse) {
875
- self.agent = { addRequest: self.agent.addRequestNoreuse.bind(self.agent) }
876
- self.start()
877
- self.req.end()
878
- return
879
- }
880
- if (self.timeout && self.timeoutTimer) {
881
- clearTimeout(self.timeoutTimer)
882
- self.timeoutTimer = null
883
- }
884
- self.emit('error', error)
885
- }
886
-
887
- Request.prototype.onRequestResponse = function (response) {
888
- var self = this
889
-
890
- if (self.timing) {
891
- self.timings.response = now() - self.startTimeNow
892
- }
893
-
894
- debug('onRequestResponse', self.uri.href, response.statusCode, response.headers)
895
- response.on('end', function() {
896
- if (self.timing) {
897
- self.timings.end = now() - self.startTimeNow
898
- response.timingStart = self.startTime
899
-
900
- // fill in the blanks for any periods that didn't trigger, such as
901
- // no lookup or connect due to keep alive
902
- if (!self.timings.socket) {
903
- self.timings.socket = 0
904
- }
905
- if (!self.timings.lookup) {
906
- self.timings.lookup = self.timings.socket
907
- }
908
- if (!self.timings.connect) {
909
- self.timings.connect = self.timings.lookup
910
- }
911
- if (!self.timings.response) {
912
- self.timings.response = self.timings.connect
913
- }
914
-
915
- debug('elapsed time', self.timings.end)
916
-
917
- // elapsedTime includes all redirects
918
- self.elapsedTime += Math.round(self.timings.end)
919
-
920
- // NOTE: elapsedTime is deprecated in favor of .timings
921
- response.elapsedTime = self.elapsedTime
922
-
923
- // timings is just for the final fetch
924
- response.timings = self.timings
925
-
926
- // pre-calculate phase timings as well
927
- response.timingPhases = {
928
- wait: self.timings.socket,
929
- dns: self.timings.lookup - self.timings.socket,
930
- tcp: self.timings.connect - self.timings.lookup,
931
- firstByte: self.timings.response - self.timings.connect,
932
- download: self.timings.end - self.timings.response,
933
- total: self.timings.end
934
- }
935
- }
936
- debug('response end', self.uri.href, response.statusCode, response.headers)
937
- })
938
-
939
- if (self._aborted) {
940
- debug('aborted', self.uri.href)
941
- response.resume()
942
- return
943
- }
944
-
945
- self.response = response
946
- response.request = self
947
- response.toJSON = responseToJSON
948
-
949
- // XXX This is different on 0.10, because SSL is strict by default
950
- if (self.httpModule === https &&
951
- self.strictSSL && (!response.hasOwnProperty('socket') ||
952
- !response.socket.authorized)) {
953
- debug('strict ssl error', self.uri.href)
954
- var sslErr = response.hasOwnProperty('socket') ? response.socket.authorizationError : self.uri.href + ' does not support SSL'
955
- self.emit('error', new Error('SSL Error: ' + sslErr))
956
- return
957
- }
958
-
959
- // Save the original host before any redirect (if it changes, we need to
960
- // remove any authorization headers). Also remember the case of the header
961
- // name because lots of broken servers expect Host instead of host and we
962
- // want the caller to be able to specify this.
963
- self.originalHost = self.getHeader('host')
964
- if (!self.originalHostHeaderName) {
965
- self.originalHostHeaderName = self.hasHeader('host')
966
- }
967
- if (self.setHost) {
968
- self.removeHeader('host')
969
- }
970
- if (self.timeout && self.timeoutTimer) {
971
- clearTimeout(self.timeoutTimer)
972
- self.timeoutTimer = null
973
- }
974
-
975
- var targetCookieJar = (self._jar && self._jar.setCookie) ? self._jar : globalCookieJar
976
- var addCookie = function (cookie) {
977
- //set the cookie if it's domain in the href's domain.
978
- try {
979
- targetCookieJar.setCookie(cookie, self.uri.href, {ignoreError: true})
980
- } catch (e) {
981
- self.emit('error', e)
982
- }
983
- }
984
-
985
- response.caseless = caseless(response.headers)
986
-
987
- if (response.caseless.has('set-cookie') && (!self._disableCookies)) {
988
- var headerName = response.caseless.has('set-cookie')
989
- if (Array.isArray(response.headers[headerName])) {
990
- response.headers[headerName].forEach(addCookie)
991
- } else {
992
- addCookie(response.headers[headerName])
993
- }
994
- }
995
-
996
- if (self._redirect.onResponse(response)) {
997
- return // Ignore the rest of the response
998
- } else {
999
- // Be a good stream and emit end when the response is finished.
1000
- // Hack to emit end on close because of a core bug that never fires end
1001
- response.on('close', function () {
1002
- if (!self._ended) {
1003
- self.response.emit('end')
1004
- }
1005
- })
1006
-
1007
- response.once('end', function () {
1008
- self._ended = true
1009
- })
1010
-
1011
- var noBody = function (code) {
1012
- return (
1013
- self.method === 'HEAD'
1014
- // Informational
1015
- || (code >= 100 && code < 200)
1016
- // No Content
1017
- || code === 204
1018
- // Not Modified
1019
- || code === 304
1020
- )
1021
- }
1022
-
1023
- var responseContent
1024
- if (self.gzip && !noBody(response.statusCode)) {
1025
- var contentEncoding = response.headers['content-encoding'] || 'identity'
1026
- contentEncoding = contentEncoding.trim().toLowerCase()
1027
-
1028
- // Be more lenient with decoding compressed responses, since (very rarely)
1029
- // servers send slightly invalid gzip responses that are still accepted
1030
- // by common browsers.
1031
- // Always using Z_SYNC_FLUSH is what cURL does.
1032
- var zlibOptions = {
1033
- flush: zlib.Z_SYNC_FLUSH
1034
- , finishFlush: zlib.Z_SYNC_FLUSH
1035
- }
1036
-
1037
- if (contentEncoding === 'gzip') {
1038
- responseContent = zlib.createGunzip(zlibOptions)
1039
- response.pipe(responseContent)
1040
- } else if (contentEncoding === 'deflate') {
1041
- responseContent = zlib.createInflate(zlibOptions)
1042
- response.pipe(responseContent)
1043
- } else {
1044
- // Since previous versions didn't check for Content-Encoding header,
1045
- // ignore any invalid values to preserve backwards-compatibility
1046
- if (contentEncoding !== 'identity') {
1047
- debug('ignoring unrecognized Content-Encoding ' + contentEncoding)
1048
- }
1049
- responseContent = response
1050
- }
1051
- } else {
1052
- responseContent = response
1053
- }
1054
-
1055
- if (self.encoding) {
1056
- if (self.dests.length !== 0) {
1057
- console.error('Ignoring encoding parameter as this stream is being piped to another stream which makes the encoding option invalid.')
1058
- } else if (responseContent.setEncoding) {
1059
- responseContent.setEncoding(self.encoding)
1060
- } else {
1061
- // Should only occur on node pre-v0.9.4 (joyent/node@9b5abe5) with
1062
- // zlib streams.
1063
- // If/When support for 0.9.4 is dropped, this should be unnecessary.
1064
- responseContent = responseContent.pipe(stringstream(self.encoding))
1065
- }
1066
- }
1067
-
1068
- if (self._paused) {
1069
- responseContent.pause()
1070
- }
1071
-
1072
- self.responseContent = responseContent
1073
-
1074
- self.emit('response', response)
1075
-
1076
- self.dests.forEach(function (dest) {
1077
- self.pipeDest(dest)
1078
- })
1079
-
1080
- responseContent.on('data', function (chunk) {
1081
- if (self.timing && !self.responseStarted) {
1082
- self.responseStartTime = (new Date()).getTime()
1083
-
1084
- // NOTE: responseStartTime is deprecated in favor of .timings
1085
- response.responseStartTime = self.responseStartTime
1086
- }
1087
- self._destdata = true
1088
- self.emit('data', chunk)
1089
- })
1090
- responseContent.once('end', function (chunk) {
1091
- self.emit('end', chunk)
1092
- })
1093
- responseContent.on('error', function (error) {
1094
- self.emit('error', error)
1095
- })
1096
- responseContent.on('close', function () {self.emit('close')})
1097
-
1098
- if (self.callback) {
1099
- self.readResponseBody(response)
1100
- }
1101
- //if no callback
1102
- else {
1103
- self.on('end', function () {
1104
- if (self._aborted) {
1105
- debug('aborted', self.uri.href)
1106
- return
1107
- }
1108
- self.emit('complete', response)
1109
- })
1110
- }
1111
- }
1112
- debug('finish init function', self.uri.href)
1113
- }
1114
-
1115
- Request.prototype.readResponseBody = function (response) {
1116
- var self = this
1117
- debug('reading response\'s body')
1118
- var buffers = []
1119
- , bufferLength = 0
1120
- , strings = []
1121
-
1122
- self.on('data', function (chunk) {
1123
- if (!Buffer.isBuffer(chunk)) {
1124
- strings.push(chunk)
1125
- } else if (chunk.length) {
1126
- bufferLength += chunk.length
1127
- buffers.push(chunk)
1128
- }
1129
- })
1130
- self.on('end', function () {
1131
- debug('end event', self.uri.href)
1132
- if (self._aborted) {
1133
- debug('aborted', self.uri.href)
1134
- // `buffer` is defined in the parent scope and used in a closure it exists for the life of the request.
1135
- // This can lead to leaky behavior if the user retains a reference to the request object.
1136
- buffers = []
1137
- bufferLength = 0
1138
- return
1139
- }
1140
-
1141
- if (bufferLength) {
1142
- debug('has body', self.uri.href, bufferLength)
1143
- response.body = Buffer.concat(buffers, bufferLength)
1144
- if (self.encoding !== null) {
1145
- response.body = response.body.toString(self.encoding)
1146
- }
1147
- // `buffer` is defined in the parent scope and used in a closure it exists for the life of the Request.
1148
- // This can lead to leaky behavior if the user retains a reference to the request object.
1149
- buffers = []
1150
- bufferLength = 0
1151
- } else if (strings.length) {
1152
- // The UTF8 BOM [0xEF,0xBB,0xBF] is converted to [0xFE,0xFF] in the JS UTC16/UCS2 representation.
1153
- // Strip this value out when the encoding is set to 'utf8', as upstream consumers won't expect it and it breaks JSON.parse().
1154
- if (self.encoding === 'utf8' && strings[0].length > 0 && strings[0][0] === '\uFEFF') {
1155
- strings[0] = strings[0].substring(1)
1156
- }
1157
- response.body = strings.join('')
1158
- }
1159
-
1160
- if (self._json) {
1161
- try {
1162
- response.body = JSON.parse(response.body, self._jsonReviver)
1163
- } catch (e) {
1164
- debug('invalid JSON received', self.uri.href)
1165
- }
1166
- }
1167
- debug('emitting complete', self.uri.href)
1168
- if (typeof response.body === 'undefined' && !self._json) {
1169
- response.body = self.encoding === null ? Buffer.alloc(0) : ''
1170
- }
1171
- self.emit('complete', response, response.body)
1172
- })
1173
- }
1174
-
1175
- Request.prototype.abort = function () {
1176
- var self = this
1177
- self._aborted = true
1178
-
1179
- if (self.req) {
1180
- self.req.abort()
1181
- }
1182
- else if (self.response) {
1183
- self.response.destroy()
1184
- }
1185
-
1186
- self.emit('abort')
1187
- }
1188
-
1189
- Request.prototype.pipeDest = function (dest) {
1190
- var self = this
1191
- var response = self.response
1192
- // Called after the response is received
1193
- if (dest.headers && !dest.headersSent) {
1194
- if (response.caseless.has('content-type')) {
1195
- var ctname = response.caseless.has('content-type')
1196
- if (dest.setHeader) {
1197
- dest.setHeader(ctname, response.headers[ctname])
1198
- }
1199
- else {
1200
- dest.headers[ctname] = response.headers[ctname]
1201
- }
1202
- }
1203
-
1204
- if (response.caseless.has('content-length')) {
1205
- var clname = response.caseless.has('content-length')
1206
- if (dest.setHeader) {
1207
- dest.setHeader(clname, response.headers[clname])
1208
- } else {
1209
- dest.headers[clname] = response.headers[clname]
1210
- }
1211
- }
1212
- }
1213
- if (dest.setHeader && !dest.headersSent) {
1214
- for (var i in response.headers) {
1215
- // If the response content is being decoded, the Content-Encoding header
1216
- // of the response doesn't represent the piped content, so don't pass it.
1217
- if (!self.gzip || i !== 'content-encoding') {
1218
- dest.setHeader(i, response.headers[i])
1219
- }
1220
- }
1221
- dest.statusCode = response.statusCode
1222
- }
1223
- if (self.pipefilter) {
1224
- self.pipefilter(response, dest)
1225
- }
1226
- }
1227
-
1228
- Request.prototype.qs = function (q, clobber) {
1229
- var self = this
1230
- var base
1231
- if (!clobber && self.uri.query) {
1232
- base = self._qs.parse(self.uri.query)
1233
- } else {
1234
- base = {}
1235
- }
1236
-
1237
- for (var i in q) {
1238
- base[i] = q[i]
1239
- }
1240
-
1241
- var qs = self._qs.stringify(base)
1242
-
1243
- if (qs === '') {
1244
- return self
1245
- }
1246
-
1247
- self.uri = url.parse(self.uri.href.split('?')[0] + '?' + qs)
1248
- self.url = self.uri
1249
- self.path = self.uri.path
1250
-
1251
- if (self.uri.host === 'unix') {
1252
- self.enableUnixSocket()
1253
- }
1254
-
1255
- return self
1256
- }
1257
- Request.prototype.form = function (form) {
1258
- var self = this
1259
- if (form) {
1260
- if (!/^application\/x-www-form-urlencoded\b/.test(self.getHeader('content-type'))) {
1261
- self.setHeader('content-type', 'application/x-www-form-urlencoded')
1262
- }
1263
- self.body = (typeof form === 'string')
1264
- ? self._qs.rfc3986(form.toString('utf8'))
1265
- : self._qs.stringify(form).toString('utf8')
1266
- return self
1267
- }
1268
- // create form-data object
1269
- self._form = new FormData()
1270
- self._form.on('error', function(err) {
1271
- err.message = 'form-data: ' + err.message
1272
- self.emit('error', err)
1273
- self.abort()
1274
- })
1275
- return self._form
1276
- }
1277
- Request.prototype.multipart = function (multipart) {
1278
- var self = this
1279
-
1280
- self._multipart.onRequest(multipart)
1281
-
1282
- if (!self._multipart.chunked) {
1283
- self.body = self._multipart.body
1284
- }
1285
-
1286
- return self
1287
- }
1288
- Request.prototype.json = function (val) {
1289
- var self = this
1290
-
1291
- if (!self.hasHeader('accept')) {
1292
- self.setHeader('accept', 'application/json')
1293
- }
1294
-
1295
- if (typeof self.jsonReplacer === 'function') {
1296
- self._jsonReplacer = self.jsonReplacer
1297
- }
1298
-
1299
- self._json = true
1300
- if (typeof val === 'boolean') {
1301
- if (self.body !== undefined) {
1302
- if (!/^application\/x-www-form-urlencoded\b/.test(self.getHeader('content-type'))) {
1303
- self.body = safeStringify(self.body, self._jsonReplacer)
1304
- } else {
1305
- self.body = self._qs.rfc3986(self.body)
1306
- }
1307
- if (!self.hasHeader('content-type')) {
1308
- self.setHeader('content-type', 'application/json')
1309
- }
1310
- }
1311
- } else {
1312
- self.body = safeStringify(val, self._jsonReplacer)
1313
- if (!self.hasHeader('content-type')) {
1314
- self.setHeader('content-type', 'application/json')
1315
- }
1316
- }
1317
-
1318
- if (typeof self.jsonReviver === 'function') {
1319
- self._jsonReviver = self.jsonReviver
1320
- }
1321
-
1322
- return self
1323
- }
1324
- Request.prototype.getHeader = function (name, headers) {
1325
- var self = this
1326
- var result, re, match
1327
- if (!headers) {
1328
- headers = self.headers
1329
- }
1330
- Object.keys(headers).forEach(function (key) {
1331
- if (key.length !== name.length) {
1332
- return
1333
- }
1334
- re = new RegExp(name, 'i')
1335
- match = key.match(re)
1336
- if (match) {
1337
- result = headers[key]
1338
- }
1339
- })
1340
- return result
1341
- }
1342
- Request.prototype.enableUnixSocket = function () {
1343
- // Get the socket & request paths from the URL
1344
- var unixParts = this.uri.path.split(':')
1345
- , host = unixParts[0]
1346
- , path = unixParts[1]
1347
- // Apply unix properties to request
1348
- this.socketPath = host
1349
- this.uri.pathname = path
1350
- this.uri.path = path
1351
- this.uri.host = host
1352
- this.uri.hostname = host
1353
- this.uri.isUnix = true
1354
- }
1355
-
1356
-
1357
- Request.prototype.auth = function (user, pass, sendImmediately, bearer) {
1358
- var self = this
1359
-
1360
- self._auth.onRequest(user, pass, sendImmediately, bearer)
1361
-
1362
- return self
1363
- }
1364
- Request.prototype.aws = function (opts, now) {
1365
- var self = this
1366
-
1367
- if (!now) {
1368
- self._aws = opts
1369
- return self
1370
- }
1371
-
1372
- if (opts.sign_version == 4 || opts.sign_version == '4') {
1373
- // use aws4
1374
- var options = {
1375
- host: self.uri.host,
1376
- path: self.uri.path,
1377
- method: self.method,
1378
- headers: {
1379
- 'content-type': self.getHeader('content-type') || ''
1380
- },
1381
- body: self.body
1382
- }
1383
- var signRes = aws4.sign(options, {
1384
- accessKeyId: opts.key,
1385
- secretAccessKey: opts.secret,
1386
- sessionToken: opts.session
1387
- })
1388
- self.setHeader('authorization', signRes.headers.Authorization)
1389
- self.setHeader('x-amz-date', signRes.headers['X-Amz-Date'])
1390
- if (signRes.headers['X-Amz-Security-Token']) {
1391
- self.setHeader('x-amz-security-token', signRes.headers['X-Amz-Security-Token'])
1392
- }
1393
- }
1394
- else {
1395
- // default: use aws-sign2
1396
- var date = new Date()
1397
- self.setHeader('date', date.toUTCString())
1398
- var auth =
1399
- { key: opts.key
1400
- , secret: opts.secret
1401
- , verb: self.method.toUpperCase()
1402
- , date: date
1403
- , contentType: self.getHeader('content-type') || ''
1404
- , md5: self.getHeader('content-md5') || ''
1405
- , amazonHeaders: aws2.canonicalizeHeaders(self.headers)
1406
- }
1407
- var path = self.uri.path
1408
- if (opts.bucket && path) {
1409
- auth.resource = '/' + opts.bucket + path
1410
- } else if (opts.bucket && !path) {
1411
- auth.resource = '/' + opts.bucket
1412
- } else if (!opts.bucket && path) {
1413
- auth.resource = path
1414
- } else if (!opts.bucket && !path) {
1415
- auth.resource = '/'
1416
- }
1417
- auth.resource = aws2.canonicalizeResource(auth.resource)
1418
- self.setHeader('authorization', aws2.authorization(auth))
1419
- }
1420
-
1421
- return self
1422
- }
1423
- Request.prototype.httpSignature = function (opts) {
1424
- var self = this
1425
- httpSignature.signRequest({
1426
- getHeader: function(header) {
1427
- return self.getHeader(header, self.headers)
1428
- },
1429
- setHeader: function(header, value) {
1430
- self.setHeader(header, value)
1431
- },
1432
- method: self.method,
1433
- path: self.path
1434
- }, opts)
1435
- debug('httpSignature authorization', self.getHeader('authorization'))
1436
-
1437
- return self
1438
- }
1439
- Request.prototype.hawk = function (opts) {
1440
- var self = this
1441
- self.setHeader('Authorization', hawk.client.header(self.uri, self.method, opts).field)
1442
- }
1443
- Request.prototype.oauth = function (_oauth) {
1444
- var self = this
1445
-
1446
- self._oauth.onRequest(_oauth)
1447
-
1448
- return self
1449
- }
1450
-
1451
- Request.prototype.jar = function (jar) {
1452
- var self = this
1453
- var cookies
1454
-
1455
- if (self._redirect.redirectsFollowed === 0) {
1456
- self.originalCookieHeader = self.getHeader('cookie')
1457
- }
1458
-
1459
- if (!jar) {
1460
- // disable cookies
1461
- cookies = false
1462
- self._disableCookies = true
1463
- } else {
1464
- var targetCookieJar = (jar && jar.getCookieString) ? jar : globalCookieJar
1465
- var urihref = self.uri.href
1466
- //fetch cookie in the Specified host
1467
- if (targetCookieJar) {
1468
- cookies = targetCookieJar.getCookieString(urihref)
1469
- }
1470
- }
1471
-
1472
- //if need cookie and cookie is not empty
1473
- if (cookies && cookies.length) {
1474
- if (self.originalCookieHeader) {
1475
- // Don't overwrite existing Cookie header
1476
- self.setHeader('cookie', self.originalCookieHeader + '; ' + cookies)
1477
- } else {
1478
- self.setHeader('cookie', cookies)
1479
- }
1480
- }
1481
- self._jar = jar
1482
- return self
1483
- }
1484
-
1485
-
1486
- // Stream API
1487
- Request.prototype.pipe = function (dest, opts) {
1488
- var self = this
1489
-
1490
- if (self.response) {
1491
- if (self._destdata) {
1492
- self.emit('error', new Error('You cannot pipe after data has been emitted from the response.'))
1493
- } else if (self._ended) {
1494
- self.emit('error', new Error('You cannot pipe after the response has been ended.'))
1495
- } else {
1496
- stream.Stream.prototype.pipe.call(self, dest, opts)
1497
- self.pipeDest(dest)
1498
- return dest
1499
- }
1500
- } else {
1501
- self.dests.push(dest)
1502
- stream.Stream.prototype.pipe.call(self, dest, opts)
1503
- return dest
1504
- }
1505
- }
1506
- Request.prototype.write = function () {
1507
- var self = this
1508
- if (self._aborted) {return}
1509
-
1510
- if (!self._started) {
1511
- self.start()
1512
- }
1513
- if (self.req) {
1514
- return self.req.write.apply(self.req, arguments)
1515
- }
1516
- }
1517
- Request.prototype.end = function (chunk) {
1518
- var self = this
1519
- if (self._aborted) {return}
1520
-
1521
- if (chunk) {
1522
- self.write(chunk)
1523
- }
1524
- if (!self._started) {
1525
- self.start()
1526
- }
1527
- if (self.req) {
1528
- self.req.end()
1529
- }
1530
- }
1531
- Request.prototype.pause = function () {
1532
- var self = this
1533
- if (!self.responseContent) {
1534
- self._paused = true
1535
- } else {
1536
- self.responseContent.pause.apply(self.responseContent, arguments)
1537
- }
1538
- }
1539
- Request.prototype.resume = function () {
1540
- var self = this
1541
- if (!self.responseContent) {
1542
- self._paused = false
1543
- } else {
1544
- self.responseContent.resume.apply(self.responseContent, arguments)
1545
- }
1546
- }
1547
- Request.prototype.destroy = function () {
1548
- var self = this
1549
- if (!self._ended) {
1550
- self.end()
1551
- } else if (self.response) {
1552
- self.response.destroy()
1553
- }
1554
- }
1555
-
1556
- Request.defaultProxyHeaderWhiteList =
1557
- Tunnel.defaultProxyHeaderWhiteList.slice()
1558
-
1559
- Request.defaultProxyHeaderExclusiveList =
1560
- Tunnel.defaultProxyHeaderExclusiveList.slice()
1561
-
1562
- // Exports
1563
-
1564
- Request.prototype.toJSON = requestToJSON
1565
- module.exports = Request