fsevents 1.0.11 → 1.0.17

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 (641) hide show
  1. package/.npmignore +1 -3
  2. package/.travis.yml +7 -5
  3. package/ISSUE_TEMPLATE.md +8 -0
  4. package/build/.target.mk +49 -0
  5. package/build/Makefile +352 -0
  6. package/build/action_after_build.target.mk +32 -0
  7. package/build/binding.Makefile +6 -0
  8. package/build/fse.target.mk +169 -0
  9. package/build/gyp-mac-tool +612 -0
  10. package/fsevents.cc +2 -2
  11. package/lib/binding/Release/node-v11-darwin-x64/fse.node +0 -0
  12. package/lib/binding/Release/node-v46-darwin-x64/fse.node +0 -0
  13. package/lib/binding/Release/node-v47-darwin-x64/fse.node +0 -0
  14. package/lib/binding/Release/node-v48-darwin-x64/fse.node +0 -0
  15. package/node_modules/{aws4/node_modules/lru-cache/node_modules/pseudomap → abbrev}/LICENSE +0 -0
  16. package/node_modules/{node-pre-gyp/node_modules/nopt/node_modules/abbrev → abbrev}/README.md +0 -0
  17. package/node_modules/{node-pre-gyp/node_modules/nopt/node_modules/abbrev → abbrev}/abbrev.js +0 -0
  18. package/node_modules/abbrev/package.json +90 -0
  19. package/node_modules/{lodash.repeat/LICENSE → ansi-regex/license} +5 -7
  20. package/node_modules/ansi-regex/package.json +47 -21
  21. package/node_modules/{lodash.padstart/LICENSE → ansi-styles/license} +5 -7
  22. package/node_modules/ansi-styles/package.json +44 -19
  23. package/node_modules/aproba/LICENSE +14 -0
  24. package/node_modules/aproba/README.md +59 -0
  25. package/node_modules/aproba/index.js +62 -0
  26. package/node_modules/aproba/package.json +96 -0
  27. package/node_modules/are-we-there-yet/package.json +31 -6
  28. package/node_modules/asn1/package.json +31 -5
  29. package/node_modules/assert-plus/package.json +33 -8
  30. package/node_modules/{node-uuid/LICENSE.md → asynckit/LICENSE} +1 -1
  31. package/node_modules/asynckit/README.md +233 -0
  32. package/node_modules/asynckit/bench.js +76 -0
  33. package/node_modules/asynckit/index.js +6 -0
  34. package/node_modules/asynckit/lib/abort.js +29 -0
  35. package/node_modules/asynckit/lib/async.js +34 -0
  36. package/node_modules/asynckit/lib/defer.js +26 -0
  37. package/node_modules/asynckit/lib/iterate.js +75 -0
  38. package/node_modules/asynckit/lib/readable_asynckit.js +91 -0
  39. package/node_modules/asynckit/lib/readable_parallel.js +25 -0
  40. package/node_modules/asynckit/lib/readable_serial.js +25 -0
  41. package/node_modules/asynckit/lib/readable_serial_ordered.js +29 -0
  42. package/node_modules/asynckit/lib/state.js +37 -0
  43. package/node_modules/asynckit/lib/streamify.js +141 -0
  44. package/node_modules/asynckit/lib/terminator.js +29 -0
  45. package/node_modules/asynckit/package.json +126 -0
  46. package/node_modules/asynckit/parallel.js +43 -0
  47. package/node_modules/asynckit/serial.js +17 -0
  48. package/node_modules/asynckit/serialOrdered.js +75 -0
  49. package/node_modules/asynckit/stream.js +21 -0
  50. package/node_modules/aws-sign2/package.json +31 -5
  51. package/node_modules/aws4/README.md +9 -0
  52. package/node_modules/aws4/aws4.js +9 -4
  53. package/node_modules/aws4/lru.js +96 -0
  54. package/node_modules/aws4/package.json +79 -56
  55. package/node_modules/{fstream-ignore/node_modules/minimatch/node_modules/brace-expansion → balanced-match}/.npmignore +2 -0
  56. package/node_modules/{fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match → balanced-match}/LICENSE.md +0 -0
  57. package/node_modules/{rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match → balanced-match}/README.md +5 -3
  58. package/node_modules/{fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match → balanced-match}/index.js +9 -1
  59. package/node_modules/balanced-match/package.json +110 -0
  60. package/node_modules/bcrypt-pbkdf/README.md +39 -0
  61. package/node_modules/bcrypt-pbkdf/index.js +559 -0
  62. package/node_modules/bcrypt-pbkdf/package.json +72 -0
  63. package/node_modules/block-stream/package.json +47 -14
  64. package/node_modules/boom/package.json +30 -4
  65. package/node_modules/{fstream-ignore/node_modules/minimatch/node_modules/brace-expansion → brace-expansion}/README.md +0 -0
  66. package/node_modules/{rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion → brace-expansion}/index.js +10 -0
  67. package/node_modules/brace-expansion/package.json +112 -0
  68. package/node_modules/buffer-shims/index.js +108 -0
  69. package/node_modules/buffer-shims/license.md +19 -0
  70. package/node_modules/buffer-shims/package.json +86 -0
  71. package/node_modules/buffer-shims/readme.md +21 -0
  72. package/node_modules/caseless/package.json +34 -8
  73. package/node_modules/{lodash.pad/LICENSE → chalk/license} +5 -7
  74. package/node_modules/chalk/node_modules/supports-color/index.js +50 -0
  75. package/node_modules/chalk/node_modules/supports-color/license +21 -0
  76. package/node_modules/chalk/node_modules/supports-color/package.json +113 -0
  77. package/node_modules/chalk/node_modules/supports-color/readme.md +36 -0
  78. package/node_modules/chalk/package.json +47 -22
  79. package/node_modules/code-point-at/index.js +32 -0
  80. package/node_modules/code-point-at/license +21 -0
  81. package/node_modules/code-point-at/package.json +106 -0
  82. package/node_modules/code-point-at/readme.md +32 -0
  83. package/node_modules/combined-stream/package.json +31 -5
  84. package/node_modules/commander/History.md +261 -0
  85. package/node_modules/commander/LICENSE +22 -0
  86. package/node_modules/commander/package.json +32 -6
  87. package/node_modules/{fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map → concat-map}/.travis.yml +0 -0
  88. package/node_modules/{fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map → concat-map}/LICENSE +0 -0
  89. package/node_modules/{fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map → concat-map}/README.markdown +0 -0
  90. package/node_modules/{fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map → concat-map}/example/map.js +0 -0
  91. package/node_modules/{fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map → concat-map}/index.js +0 -0
  92. package/node_modules/{rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map → concat-map}/package.json +47 -21
  93. package/node_modules/{fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map → concat-map}/test/map.js +0 -0
  94. package/node_modules/console-control-strings/LICENSE +13 -0
  95. package/node_modules/console-control-strings/README.md +145 -0
  96. package/node_modules/console-control-strings/README.md~ +140 -0
  97. package/node_modules/console-control-strings/index.js +125 -0
  98. package/node_modules/console-control-strings/package.json +96 -0
  99. package/node_modules/core-util-is/package.json +38 -11
  100. package/node_modules/cryptiles/package.json +30 -4
  101. package/node_modules/dashdash/CHANGES.md +364 -0
  102. package/node_modules/dashdash/LICENSE.txt +24 -0
  103. package/node_modules/dashdash/etc/dashdash.bash_completion.in +4 -3
  104. package/node_modules/dashdash/lib/dashdash.js +34 -1
  105. package/node_modules/dashdash/node_modules/assert-plus/package.json +33 -8
  106. package/node_modules/dashdash/package.json +49 -23
  107. package/node_modules/debug/package.json +36 -10
  108. package/node_modules/deep-extend/CHANGELOG.md +21 -0
  109. package/node_modules/{rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map → deep-extend}/LICENSE +3 -1
  110. package/node_modules/deep-extend/package.json +40 -15
  111. package/node_modules/delayed-stream/package.json +31 -5
  112. package/node_modules/delegates/package.json +31 -6
  113. package/node_modules/ecc-jsbn/package.json +33 -7
  114. package/node_modules/escape-string-regexp/license +21 -0
  115. package/node_modules/escape-string-regexp/package.json +37 -12
  116. package/node_modules/extend/package.json +32 -6
  117. package/node_modules/extsprintf/package.json +30 -5
  118. package/node_modules/forever-agent/package.json +31 -5
  119. package/node_modules/form-data/README.md +7 -8
  120. package/node_modules/form-data/lib/browser.js +1 -1
  121. package/node_modules/form-data/lib/form_data.js +101 -72
  122. package/node_modules/form-data/lib/populate.js +6 -5
  123. package/node_modules/form-data/package.json +80 -47
  124. package/node_modules/fs.realpath/LICENSE +43 -0
  125. package/node_modules/fs.realpath/README.md +33 -0
  126. package/node_modules/fs.realpath/index.js +66 -0
  127. package/node_modules/fs.realpath/old.js +303 -0
  128. package/node_modules/fs.realpath/package.json +94 -0
  129. package/node_modules/fstream/.travis.yml +4 -4
  130. package/node_modules/fstream/lib/collect.js +2 -0
  131. package/node_modules/fstream/package.json +46 -16
  132. package/node_modules/fstream-ignore/package.json +54 -18
  133. package/node_modules/gauge/CHANGELOG.md +145 -0
  134. package/node_modules/gauge/README.md +321 -88
  135. package/node_modules/gauge/base-theme.js +14 -0
  136. package/node_modules/gauge/error.js +24 -0
  137. package/node_modules/gauge/has-color.js +12 -0
  138. package/node_modules/gauge/index.js +230 -0
  139. package/node_modules/gauge/package.json +82 -27
  140. package/node_modules/gauge/plumbing.js +47 -0
  141. package/node_modules/gauge/process.js +3 -0
  142. package/node_modules/gauge/progress-bar.js +29 -219
  143. package/node_modules/gauge/render-template.js +181 -0
  144. package/node_modules/gauge/set-immediate.js +7 -0
  145. package/node_modules/gauge/set-interval.js +3 -0
  146. package/node_modules/gauge/spin.js +5 -0
  147. package/node_modules/gauge/template-item.js +73 -0
  148. package/node_modules/gauge/theme-set.js +115 -0
  149. package/node_modules/gauge/themes.js +54 -0
  150. package/node_modules/gauge/wide-truncate.js +25 -0
  151. package/node_modules/generate-function/package.json +32 -6
  152. package/node_modules/generate-object-property/package.json +30 -4
  153. package/node_modules/getpass/.npmignore +8 -0
  154. package/node_modules/getpass/.travis.yml +9 -0
  155. package/node_modules/getpass/LICENSE +18 -0
  156. package/node_modules/getpass/README.md +32 -0
  157. package/node_modules/getpass/lib/index.js +123 -0
  158. package/node_modules/getpass/node_modules/assert-plus/AUTHORS +6 -0
  159. package/node_modules/getpass/node_modules/assert-plus/CHANGES.md +14 -0
  160. package/node_modules/getpass/node_modules/assert-plus/README.md +162 -0
  161. package/node_modules/getpass/node_modules/assert-plus/assert.js +211 -0
  162. package/node_modules/getpass/node_modules/assert-plus/package.json +115 -0
  163. package/node_modules/getpass/package.json +90 -0
  164. package/node_modules/{aws4/node_modules/lru-cache/node_modules/yallist → glob}/LICENSE +0 -0
  165. package/node_modules/{rimraf/node_modules/glob → glob}/README.md +3 -0
  166. package/node_modules/glob/changelog.md +67 -0
  167. package/node_modules/{rimraf/node_modules/glob → glob}/common.js +6 -1
  168. package/node_modules/{rimraf/node_modules/glob → glob}/glob.js +25 -15
  169. package/node_modules/glob/package.json +111 -0
  170. package/node_modules/{rimraf/node_modules/glob → glob}/sync.js +31 -12
  171. package/node_modules/graceful-fs/LICENSE +15 -0
  172. package/node_modules/graceful-fs/README.md +83 -3
  173. package/node_modules/graceful-fs/graceful-fs.js +23 -14
  174. package/node_modules/graceful-fs/package.json +50 -24
  175. package/node_modules/graceful-fs/polyfills.js +99 -21
  176. package/node_modules/graceful-readlink/package.json +30 -4
  177. package/node_modules/har-validator/LICENSE +13 -0
  178. package/node_modules/har-validator/package.json +32 -6
  179. package/node_modules/has-ansi/license +21 -0
  180. package/node_modules/has-ansi/package.json +45 -19
  181. package/node_modules/has-unicode/index.js +3 -8
  182. package/node_modules/has-unicode/package.json +50 -18
  183. package/node_modules/hawk/package.json +34 -8
  184. package/node_modules/hoek/package.json +30 -4
  185. package/node_modules/http-signature/package.json +30 -4
  186. package/node_modules/{rimraf/node_modules/glob/node_modules/inflight → inflight}/LICENSE +0 -0
  187. package/node_modules/{rimraf/node_modules/glob/node_modules/inflight → inflight}/README.md +0 -0
  188. package/node_modules/inflight/inflight.js +54 -0
  189. package/node_modules/inflight/package.json +105 -0
  190. package/node_modules/inherits/inherits.js +7 -1
  191. package/node_modules/inherits/package.json +53 -26
  192. package/node_modules/{node-pre-gyp/node_modules/nopt → ini}/LICENSE +0 -0
  193. package/node_modules/ini/package.json +32 -7
  194. package/node_modules/is-fullwidth-code-point/index.js +46 -0
  195. package/node_modules/is-fullwidth-code-point/license +21 -0
  196. package/node_modules/is-fullwidth-code-point/package.json +108 -0
  197. package/node_modules/is-fullwidth-code-point/readme.md +39 -0
  198. package/node_modules/is-my-json-valid/index.js +10 -0
  199. package/node_modules/is-my-json-valid/package.json +52 -19
  200. package/node_modules/is-my-json-valid/test/misc.js +24 -0
  201. package/node_modules/is-property/package.json +35 -9
  202. package/node_modules/is-typedarray/package.json +32 -6
  203. package/node_modules/isarray/package.json +44 -17
  204. package/node_modules/isstream/package.json +35 -9
  205. package/node_modules/jodid25519/package.json +33 -7
  206. package/node_modules/jsbn/package.json +30 -4
  207. package/node_modules/json-schema/lib/links.js +17 -3
  208. package/node_modules/json-schema/lib/validate.js +18 -5
  209. package/node_modules/json-schema/package.json +44 -12
  210. package/node_modules/json-stringify-safe/package.json +34 -8
  211. package/node_modules/jsonpointer/LICENSE.md +21 -0
  212. package/node_modules/jsonpointer/README.md +17 -10
  213. package/node_modules/jsonpointer/jsonpointer.js +73 -56
  214. package/node_modules/jsonpointer/package.json +57 -18
  215. package/node_modules/jsprim/CHANGES.md +9 -0
  216. package/node_modules/jsprim/README.md +13 -4
  217. package/node_modules/jsprim/lib/jsprim.js +12 -2
  218. package/node_modules/jsprim/package.json +44 -14
  219. package/node_modules/mime-db/HISTORY.md +55 -0
  220. package/node_modules/mime-db/db.json +139 -2
  221. package/node_modules/mime-db/package.json +56 -27
  222. package/node_modules/mime-types/HISTORY.md +19 -0
  223. package/node_modules/mime-types/index.js +8 -8
  224. package/node_modules/mime-types/package.json +48 -19
  225. package/node_modules/{node-pre-gyp/node_modules/nopt/node_modules/abbrev → minimatch}/LICENSE +0 -0
  226. package/node_modules/{fstream-ignore/node_modules/minimatch → minimatch}/README.md +2 -9
  227. package/node_modules/{rimraf/node_modules/glob/node_modules/minimatch → minimatch}/minimatch.js +34 -23
  228. package/node_modules/minimatch/package.json +98 -0
  229. package/node_modules/minimist/package.json +24 -16
  230. package/node_modules/mkdirp/package.json +25 -15
  231. package/node_modules/ms/History.md +66 -0
  232. package/node_modules/ms/package.json +29 -3
  233. package/node_modules/node-pre-gyp/CHANGELOG.md +37 -0
  234. package/node_modules/node-pre-gyp/README.md +34 -30
  235. package/node_modules/node-pre-gyp/appveyor.yml +20 -10
  236. package/node_modules/node-pre-gyp/lib/install.js +42 -8
  237. package/node_modules/node-pre-gyp/lib/node-pre-gyp.js +2 -0
  238. package/node_modules/node-pre-gyp/lib/testbinary.js +9 -9
  239. package/node_modules/node-pre-gyp/lib/util/abi_crosswalk.json +172 -0
  240. package/node_modules/node-pre-gyp/package.json +55 -57
  241. package/node_modules/{ansi → nopt}/.npmignore +0 -0
  242. package/node_modules/{node-pre-gyp/node_modules/nopt → nopt}/.travis.yml +0 -0
  243. package/node_modules/{rimraf/node_modules/glob/node_modules/inflight/node_modules/wrappy → nopt}/LICENSE +0 -0
  244. package/node_modules/{node-pre-gyp/node_modules/nopt → nopt}/README.md +0 -0
  245. package/node_modules/{node-pre-gyp/node_modules/nopt → nopt}/bin/nopt.js +0 -0
  246. package/node_modules/{node-pre-gyp/node_modules/nopt → nopt}/examples/my-program.js +0 -0
  247. package/node_modules/{node-pre-gyp/node_modules/nopt → nopt}/lib/nopt.js +0 -0
  248. package/node_modules/{node-pre-gyp/node_modules/nopt → nopt}/package.json +32 -6
  249. package/node_modules/{node-pre-gyp/node_modules/nopt → nopt}/test/basic.js +0 -0
  250. package/node_modules/npmlog/CHANGELOG.md +45 -0
  251. package/node_modules/npmlog/README.md +23 -2
  252. package/node_modules/npmlog/log.js +109 -58
  253. package/node_modules/npmlog/package.json +54 -20
  254. package/node_modules/number-is-nan/index.js +4 -0
  255. package/node_modules/number-is-nan/license +21 -0
  256. package/node_modules/number-is-nan/package.json +103 -0
  257. package/node_modules/number-is-nan/readme.md +28 -0
  258. package/node_modules/oauth-sign/package.json +47 -15
  259. package/node_modules/object-assign/index.js +83 -0
  260. package/node_modules/object-assign/license +21 -0
  261. package/node_modules/object-assign/package.json +114 -0
  262. package/node_modules/object-assign/readme.md +56 -0
  263. package/node_modules/{rimraf/node_modules/glob/node_modules/once/node_modules/wrappy → once}/LICENSE +0 -0
  264. package/node_modules/once/README.md +28 -0
  265. package/node_modules/once/once.js +21 -0
  266. package/node_modules/once/package.json +47 -16
  267. package/node_modules/{rimraf/node_modules/glob/node_modules/path-is-absolute → path-is-absolute}/index.js +5 -5
  268. package/node_modules/path-is-absolute/license +21 -0
  269. package/node_modules/path-is-absolute/package.json +111 -0
  270. package/node_modules/{rimraf/node_modules/glob/node_modules/path-is-absolute → path-is-absolute}/readme.md +19 -11
  271. package/node_modules/pinkie/license +21 -0
  272. package/node_modules/pinkie/package.json +35 -10
  273. package/node_modules/pinkie-promise/index.js +1 -1
  274. package/node_modules/pinkie-promise/license +21 -0
  275. package/node_modules/pinkie-promise/package.json +46 -16
  276. package/node_modules/process-nextick-args/index.js +31 -8
  277. package/node_modules/process-nextick-args/package.json +44 -13
  278. package/node_modules/punycode/LICENSE-MIT.txt +20 -0
  279. package/node_modules/punycode/README.md +176 -0
  280. package/node_modules/punycode/package.json +127 -0
  281. package/node_modules/punycode/punycode.js +533 -0
  282. package/node_modules/qs/.eslintrc +15 -13
  283. package/node_modules/qs/CHANGELOG.md +34 -0
  284. package/node_modules/qs/README.md +66 -3
  285. package/node_modules/qs/dist/qs.js +196 -97
  286. package/node_modules/qs/lib/formats.js +18 -0
  287. package/node_modules/qs/lib/index.js +6 -4
  288. package/node_modules/qs/lib/parse.js +48 -46
  289. package/node_modules/qs/lib/stringify.js +90 -33
  290. package/node_modules/qs/lib/utils.js +28 -10
  291. package/node_modules/qs/package.json +57 -24
  292. package/node_modules/qs/test/.eslintrc +9 -0
  293. package/node_modules/qs/test/index.js +2 -0
  294. package/node_modules/qs/test/parse.js +100 -34
  295. package/node_modules/qs/test/stringify.js +315 -12
  296. package/node_modules/qs/test/utils.js +13 -0
  297. package/node_modules/rc/node_modules/minimist/package.json +40 -14
  298. package/node_modules/rc/package.json +34 -9
  299. package/node_modules/readable-stream/.npmignore +5 -1
  300. package/node_modules/readable-stream/.travis.yml +4 -7
  301. package/node_modules/readable-stream/README.md +6 -2
  302. package/node_modules/readable-stream/lib/_stream_readable.js +173 -112
  303. package/node_modules/readable-stream/lib/_stream_transform.js +9 -7
  304. package/node_modules/readable-stream/lib/_stream_writable.js +57 -19
  305. package/node_modules/readable-stream/lib/internal/streams/BufferList.js +64 -0
  306. package/node_modules/readable-stream/package.json +59 -22
  307. package/node_modules/readable-stream/readable.js +4 -0
  308. package/node_modules/request/CHANGELOG.md +93 -24
  309. package/node_modules/request/README.md +12 -8
  310. package/node_modules/request/index.js +8 -8
  311. package/node_modules/request/lib/auth.js +1 -1
  312. package/node_modules/request/lib/helpers.js +7 -16
  313. package/node_modules/request/lib/multipart.js +1 -1
  314. package/node_modules/request/lib/oauth.js +1 -1
  315. package/node_modules/request/lib/redirect.js +5 -1
  316. package/node_modules/request/package.json +79 -38
  317. package/node_modules/request/request.js +140 -84
  318. package/node_modules/rimraf/package.json +44 -19
  319. package/node_modules/rimraf/rimraf.js +12 -4
  320. package/node_modules/semver/README.md +31 -8
  321. package/node_modules/semver/package.json +48 -14
  322. package/node_modules/semver/range.bnf +1 -1
  323. package/node_modules/semver/semver.js +21 -6
  324. package/node_modules/set-blocking/CHANGELOG.md +26 -0
  325. package/node_modules/set-blocking/LICENSE.txt +14 -0
  326. package/node_modules/set-blocking/README.md +31 -0
  327. package/node_modules/set-blocking/index.js +7 -0
  328. package/node_modules/set-blocking/package.json +106 -0
  329. package/node_modules/signal-exit/CHANGELOG.md +27 -0
  330. package/node_modules/signal-exit/LICENSE.txt +16 -0
  331. package/node_modules/signal-exit/README.md +40 -0
  332. package/node_modules/signal-exit/index.js +157 -0
  333. package/node_modules/signal-exit/package.json +106 -0
  334. package/node_modules/signal-exit/signals.js +53 -0
  335. package/node_modules/sntp/package.json +32 -6
  336. package/node_modules/sshpk/.travis.yml +3 -3
  337. package/node_modules/sshpk/README.md +237 -7
  338. package/node_modules/sshpk/bin/sshpk-conv +20 -2
  339. package/node_modules/sshpk/bin/sshpk-sign +16 -1
  340. package/node_modules/sshpk/lib/certificate.js +291 -0
  341. package/node_modules/sshpk/lib/errors.js +27 -1
  342. package/node_modules/sshpk/lib/fingerprint.js +28 -7
  343. package/node_modules/sshpk/lib/formats/auto.js +8 -8
  344. package/node_modules/sshpk/lib/formats/openssh-cert.js +289 -0
  345. package/node_modules/sshpk/lib/formats/pem.js +41 -7
  346. package/node_modules/sshpk/lib/formats/pkcs1.js +4 -4
  347. package/node_modules/sshpk/lib/formats/pkcs8.js +6 -11
  348. package/node_modules/sshpk/lib/formats/rfc4253.js +2 -2
  349. package/node_modules/sshpk/lib/formats/ssh-private.js +143 -20
  350. package/node_modules/sshpk/lib/formats/ssh.js +2 -2
  351. package/node_modules/sshpk/lib/formats/x509-pem.js +77 -0
  352. package/node_modules/sshpk/lib/formats/x509.js +484 -0
  353. package/node_modules/sshpk/lib/identity.js +255 -0
  354. package/node_modules/sshpk/lib/index.js +14 -1
  355. package/node_modules/sshpk/lib/key.js +21 -17
  356. package/node_modules/sshpk/lib/private-key.js +19 -12
  357. package/node_modules/sshpk/lib/signature.js +14 -6
  358. package/node_modules/sshpk/lib/ssh-buffer.js +24 -0
  359. package/node_modules/sshpk/lib/utils.js +82 -1
  360. package/node_modules/sshpk/node_modules/assert-plus/AUTHORS +6 -0
  361. package/node_modules/sshpk/node_modules/assert-plus/CHANGES.md +14 -0
  362. package/node_modules/sshpk/node_modules/assert-plus/README.md +162 -0
  363. package/node_modules/sshpk/node_modules/assert-plus/assert.js +211 -0
  364. package/node_modules/sshpk/node_modules/assert-plus/package.json +115 -0
  365. package/node_modules/sshpk/package.json +63 -35
  366. package/node_modules/string-width/index.js +37 -0
  367. package/node_modules/string-width/license +21 -0
  368. package/node_modules/string-width/package.json +124 -0
  369. package/node_modules/string-width/readme.md +42 -0
  370. package/node_modules/string_decoder/package.json +35 -8
  371. package/node_modules/stringstream/package.json +34 -8
  372. package/node_modules/strip-ansi/license +21 -0
  373. package/node_modules/strip-ansi/package.json +49 -22
  374. package/node_modules/strip-json-comments/license +21 -0
  375. package/node_modules/strip-json-comments/package.json +43 -17
  376. package/node_modules/supports-color/cli.js +28 -0
  377. package/node_modules/supports-color/index.js +2 -20
  378. package/node_modules/supports-color/package.json +61 -36
  379. package/node_modules/supports-color/readme.md +14 -6
  380. package/node_modules/tar/package.json +31 -5
  381. package/node_modules/tar-pack/README.md +4 -1
  382. package/node_modules/tar-pack/index.js +17 -12
  383. package/node_modules/tar-pack/node_modules/once/LICENSE +15 -0
  384. package/node_modules/{rimraf/node_modules/glob → tar-pack}/node_modules/once/README.md +0 -0
  385. package/node_modules/{rimraf/node_modules/glob → tar-pack}/node_modules/once/once.js +0 -0
  386. package/node_modules/{rimraf/node_modules/glob → tar-pack}/node_modules/once/package.json +34 -9
  387. package/node_modules/tar-pack/node_modules/readable-stream/.npmignore +8 -0
  388. package/node_modules/tar-pack/node_modules/readable-stream/.travis.yml +49 -0
  389. package/node_modules/tar-pack/node_modules/readable-stream/LICENSE +18 -0
  390. package/node_modules/tar-pack/node_modules/readable-stream/README.md +36 -0
  391. package/node_modules/tar-pack/node_modules/readable-stream/doc/stream.md +2015 -0
  392. package/node_modules/tar-pack/node_modules/readable-stream/doc/wg-meetings/2015-01-30.md +60 -0
  393. package/node_modules/tar-pack/node_modules/readable-stream/duplex.js +1 -0
  394. package/node_modules/tar-pack/node_modules/readable-stream/lib/_stream_duplex.js +75 -0
  395. package/node_modules/tar-pack/node_modules/readable-stream/lib/_stream_passthrough.js +26 -0
  396. package/node_modules/tar-pack/node_modules/readable-stream/lib/_stream_readable.js +937 -0
  397. package/node_modules/tar-pack/node_modules/readable-stream/lib/_stream_transform.js +180 -0
  398. package/node_modules/tar-pack/node_modules/readable-stream/lib/_stream_writable.js +526 -0
  399. package/node_modules/tar-pack/node_modules/readable-stream/lib/internal/streams/BufferList.js +64 -0
  400. package/node_modules/tar-pack/node_modules/readable-stream/package.json +125 -0
  401. package/node_modules/tar-pack/node_modules/readable-stream/passthrough.js +1 -0
  402. package/node_modules/tar-pack/node_modules/readable-stream/readable.js +16 -0
  403. package/node_modules/tar-pack/node_modules/readable-stream/transform.js +1 -0
  404. package/node_modules/tar-pack/node_modules/readable-stream/writable.js +1 -0
  405. package/node_modules/tar-pack/package.json +54 -20
  406. package/node_modules/tar-pack/test/index.js +43 -1
  407. package/node_modules/tough-cookie/LICENSE +27 -0
  408. package/node_modules/tough-cookie/README.md +17 -3
  409. package/node_modules/tough-cookie/lib/cookie.js +6 -12
  410. package/node_modules/tough-cookie/package.json +62 -30
  411. package/node_modules/tunnel-agent/package.json +46 -13
  412. package/node_modules/tweetnacl/AUTHORS.md +28 -0
  413. package/node_modules/tweetnacl/CHANGELOG.md +40 -0
  414. package/node_modules/tweetnacl/LICENSE +24 -0
  415. package/node_modules/tweetnacl/PULL_REQUEST_TEMPLATE.md +20 -0
  416. package/node_modules/tweetnacl/README.md +33 -19
  417. package/node_modules/tweetnacl/nacl-fast.min.js +2 -2
  418. package/node_modules/tweetnacl/nacl.d.ts +98 -0
  419. package/node_modules/tweetnacl/nacl.min.js +1 -1
  420. package/node_modules/tweetnacl/package.json +44 -17
  421. package/node_modules/uid-number/package.json +32 -7
  422. package/node_modules/util-deprecate/package.json +37 -10
  423. package/node_modules/uuid/.npmignore +8 -0
  424. package/node_modules/uuid/.travis.yml +5 -0
  425. package/node_modules/uuid/AUTHORS +5 -0
  426. package/node_modules/uuid/HISTORY.md +28 -0
  427. package/node_modules/{lodash.padend/LICENSE → uuid/LICENSE.md} +1 -3
  428. package/node_modules/uuid/README.md +132 -0
  429. package/node_modules/{node-uuid → uuid}/bin/uuid +0 -0
  430. package/node_modules/uuid/index.js +8 -0
  431. package/node_modules/uuid/lib/bytesToUuid.js +23 -0
  432. package/node_modules/uuid/lib/rng-browser.js +33 -0
  433. package/node_modules/uuid/lib/rng.js +10 -0
  434. package/node_modules/uuid/package.json +122 -0
  435. package/node_modules/uuid/test/mocha.opts +3 -0
  436. package/node_modules/uuid/test/test.js +96 -0
  437. package/node_modules/uuid/v1.js +103 -0
  438. package/node_modules/uuid/v4.js +29 -0
  439. package/node_modules/verror/package.json +30 -5
  440. package/node_modules/wide-align/.npmignore +5 -0
  441. package/node_modules/wide-align/LICENSE +14 -0
  442. package/node_modules/wide-align/README.md +47 -0
  443. package/node_modules/wide-align/align.js +65 -0
  444. package/node_modules/wide-align/package.json +93 -0
  445. package/node_modules/wide-align/test/align.js +37 -0
  446. package/node_modules/wrappy/package.json +55 -16
  447. package/node_modules/xtend/package.json +45 -19
  448. package/package.json +3 -3
  449. package/node_modules/ansi/.jshintrc +0 -4
  450. package/node_modules/ansi/History.md +0 -23
  451. package/node_modules/ansi/LICENSE +0 -24
  452. package/node_modules/ansi/README.md +0 -98
  453. package/node_modules/ansi/examples/beep/index.js +0 -16
  454. package/node_modules/ansi/examples/clear/index.js +0 -15
  455. package/node_modules/ansi/examples/cursorPosition.js +0 -32
  456. package/node_modules/ansi/examples/progress/index.js +0 -87
  457. package/node_modules/ansi/lib/ansi.js +0 -405
  458. package/node_modules/ansi/lib/newlines.js +0 -71
  459. package/node_modules/ansi/package.json +0 -69
  460. package/node_modules/async/README.md +0 -1877
  461. package/node_modules/async/dist/async.js +0 -1265
  462. package/node_modules/async/dist/async.min.js +0 -2
  463. package/node_modules/async/lib/async.js +0 -1265
  464. package/node_modules/async/package.json +0 -131
  465. package/node_modules/aws4/node_modules/lru-cache/README.md +0 -142
  466. package/node_modules/aws4/node_modules/lru-cache/lib/lru-cache.js +0 -469
  467. package/node_modules/aws4/node_modules/lru-cache/node_modules/pseudomap/README.md +0 -60
  468. package/node_modules/aws4/node_modules/lru-cache/node_modules/pseudomap/map.js +0 -9
  469. package/node_modules/aws4/node_modules/lru-cache/node_modules/pseudomap/package.json +0 -60
  470. package/node_modules/aws4/node_modules/lru-cache/node_modules/pseudomap/pseudomap.js +0 -113
  471. package/node_modules/aws4/node_modules/lru-cache/node_modules/pseudomap/test/basic.js +0 -86
  472. package/node_modules/aws4/node_modules/lru-cache/node_modules/yallist/.npmignore +0 -4
  473. package/node_modules/aws4/node_modules/lru-cache/node_modules/yallist/.travis.yml +0 -7
  474. package/node_modules/aws4/node_modules/lru-cache/node_modules/yallist/CONTRIBUTING.md +0 -4
  475. package/node_modules/aws4/node_modules/lru-cache/node_modules/yallist/README.md +0 -204
  476. package/node_modules/aws4/node_modules/lru-cache/node_modules/yallist/package.json +0 -60
  477. package/node_modules/aws4/node_modules/lru-cache/node_modules/yallist/test/basic.js +0 -188
  478. package/node_modules/aws4/node_modules/lru-cache/node_modules/yallist/yallist.js +0 -360
  479. package/node_modules/aws4/node_modules/lru-cache/package.json +0 -78
  480. package/node_modules/bl/.jshintrc +0 -59
  481. package/node_modules/bl/.npmignore +0 -1
  482. package/node_modules/bl/.travis.yml +0 -13
  483. package/node_modules/bl/LICENSE.md +0 -13
  484. package/node_modules/bl/README.md +0 -200
  485. package/node_modules/bl/bl.js +0 -227
  486. package/node_modules/bl/package.json +0 -72
  487. package/node_modules/bl/test/test.js +0 -571
  488. package/node_modules/block-stream/bench/block-stream-pause.js +0 -70
  489. package/node_modules/block-stream/bench/block-stream.js +0 -68
  490. package/node_modules/block-stream/bench/dropper-pause.js +0 -70
  491. package/node_modules/block-stream/bench/dropper.js +0 -68
  492. package/node_modules/block-stream/test/basic.js +0 -27
  493. package/node_modules/block-stream/test/nopad-thorough.js +0 -68
  494. package/node_modules/block-stream/test/nopad.js +0 -57
  495. package/node_modules/block-stream/test/pause-resume.js +0 -73
  496. package/node_modules/block-stream/test/thorough.js +0 -68
  497. package/node_modules/block-stream/test/two-stream.js +0 -59
  498. package/node_modules/form-data/.dockerignore +0 -7
  499. package/node_modules/form-data/.editorconfig +0 -10
  500. package/node_modules/form-data/.eslintignore +0 -1
  501. package/node_modules/form-data/.eslintrc +0 -64
  502. package/node_modules/form-data/wercker.yml +0 -36
  503. package/node_modules/fstream-ignore/.npmignore +0 -1
  504. package/node_modules/fstream-ignore/example/basic.js +0 -13
  505. package/node_modules/fstream-ignore/node_modules/minimatch/minimatch.js +0 -912
  506. package/node_modules/fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/example.js +0 -8
  507. package/node_modules/fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/index.js +0 -191
  508. package/node_modules/fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/.npmignore +0 -2
  509. package/node_modules/fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/.travis.yml +0 -3
  510. package/node_modules/fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/Makefile +0 -6
  511. package/node_modules/fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/README.md +0 -89
  512. package/node_modules/fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/example.js +0 -5
  513. package/node_modules/fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/package.json +0 -80
  514. package/node_modules/fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/test/balanced.js +0 -84
  515. package/node_modules/fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/package.json +0 -91
  516. package/node_modules/fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/package.json +0 -86
  517. package/node_modules/fstream-ignore/node_modules/minimatch/package.json +0 -67
  518. package/node_modules/fstream-ignore/test/.ignore +0 -2
  519. package/node_modules/fstream-ignore/test/.npmignore +0 -1
  520. package/node_modules/fstream-ignore/test/00-setup.js +0 -71
  521. package/node_modules/fstream-ignore/test/basic.js +0 -28
  522. package/node_modules/fstream-ignore/test/common.js +0 -40
  523. package/node_modules/fstream-ignore/test/ignore-most.js +0 -41
  524. package/node_modules/fstream-ignore/test/nested-ignores.js +0 -51
  525. package/node_modules/fstream-ignore/test/read-file-order.js +0 -81
  526. package/node_modules/fstream-ignore/test/unignore-child.js +0 -38
  527. package/node_modules/fstream-ignore/test/zz-cleanup.js +0 -10
  528. package/node_modules/gauge/.npmignore +0 -32
  529. package/node_modules/gauge/example.png +0 -0
  530. package/node_modules/gauge/test/progress-bar.js +0 -176
  531. package/node_modules/has-unicode/.npmignore +0 -32
  532. package/node_modules/has-unicode/test/index.js +0 -26
  533. package/node_modules/inherits/test.js +0 -25
  534. package/node_modules/jsonpointer/.travis.yml +0 -10
  535. package/node_modules/jsonpointer/test.js +0 -98
  536. package/node_modules/lodash.pad/README.md +0 -18
  537. package/node_modules/lodash.pad/index.js +0 -296
  538. package/node_modules/lodash.pad/package.json +0 -91
  539. package/node_modules/lodash.padend/README.md +0 -18
  540. package/node_modules/lodash.padend/index.js +0 -285
  541. package/node_modules/lodash.padend/package.json +0 -91
  542. package/node_modules/lodash.padstart/README.md +0 -18
  543. package/node_modules/lodash.padstart/index.js +0 -285
  544. package/node_modules/lodash.padstart/package.json +0 -91
  545. package/node_modules/lodash.repeat/README.md +0 -18
  546. package/node_modules/lodash.repeat/index.js +0 -215
  547. package/node_modules/lodash.repeat/package.json +0 -92
  548. package/node_modules/lodash.tostring/LICENSE +0 -23
  549. package/node_modules/lodash.tostring/README.md +0 -18
  550. package/node_modules/lodash.tostring/index.js +0 -164
  551. package/node_modules/lodash.tostring/package.json +0 -91
  552. package/node_modules/node-pre-gyp/node_modules/nopt/.npmignore +0 -1
  553. package/node_modules/node-pre-gyp/node_modules/nopt/node_modules/abbrev/.npmignore +0 -4
  554. package/node_modules/node-pre-gyp/node_modules/nopt/node_modules/abbrev/.travis.yml +0 -5
  555. package/node_modules/node-pre-gyp/node_modules/nopt/node_modules/abbrev/CONTRIBUTING.md +0 -3
  556. package/node_modules/node-pre-gyp/node_modules/nopt/node_modules/abbrev/package.json +0 -56
  557. package/node_modules/node-pre-gyp/node_modules/nopt/node_modules/abbrev/test.js +0 -47
  558. package/node_modules/node-uuid/.npmignore +0 -4
  559. package/node_modules/node-uuid/README.md +0 -254
  560. package/node_modules/node-uuid/benchmark/README.md +0 -53
  561. package/node_modules/node-uuid/benchmark/bench.gnu +0 -174
  562. package/node_modules/node-uuid/benchmark/bench.sh +0 -34
  563. package/node_modules/node-uuid/benchmark/benchmark-native.c +0 -34
  564. package/node_modules/node-uuid/benchmark/benchmark.js +0 -84
  565. package/node_modules/node-uuid/bower.json +0 -23
  566. package/node_modules/node-uuid/component.json +0 -25
  567. package/node_modules/node-uuid/package.json +0 -87
  568. package/node_modules/node-uuid/test/compare_v1.js +0 -63
  569. package/node_modules/node-uuid/test/test.html +0 -17
  570. package/node_modules/node-uuid/test/test.js +0 -231
  571. package/node_modules/node-uuid/uuid.js +0 -272
  572. package/node_modules/npmlog/.nyc_output/64996.json +0 -1
  573. package/node_modules/npmlog/.nyc_output/64998.json +0 -1
  574. package/node_modules/npmlog/.nyc_output/65000.json +0 -1
  575. package/node_modules/npmlog/.travis.yml +0 -14
  576. package/node_modules/npmlog/example.js +0 -39
  577. package/node_modules/npmlog/test/basic.js +0 -235
  578. package/node_modules/npmlog/test/progress.js +0 -131
  579. package/node_modules/oauth-sign/test.js +0 -89
  580. package/node_modules/qs/.npmignore +0 -18
  581. package/node_modules/qs/.travis.yml +0 -69
  582. package/node_modules/qs/bower.json +0 -22
  583. package/node_modules/qs/component.json +0 -15
  584. package/node_modules/readable-stream/.zuul.yml +0 -1
  585. package/node_modules/readable-stream/doc/stream.markdown +0 -1760
  586. package/node_modules/request/.eslintrc +0 -45
  587. package/node_modules/request/.npmignore +0 -6
  588. package/node_modules/request/.travis.yml +0 -15
  589. package/node_modules/request/CONTRIBUTING.md +0 -44
  590. package/node_modules/rimraf/node_modules/glob/node_modules/inflight/.eslintrc +0 -17
  591. package/node_modules/rimraf/node_modules/glob/node_modules/inflight/inflight.js +0 -44
  592. package/node_modules/rimraf/node_modules/glob/node_modules/inflight/node_modules/wrappy/README.md +0 -36
  593. package/node_modules/rimraf/node_modules/glob/node_modules/inflight/node_modules/wrappy/package.json +0 -59
  594. package/node_modules/rimraf/node_modules/glob/node_modules/inflight/node_modules/wrappy/test/basic.js +0 -51
  595. package/node_modules/rimraf/node_modules/glob/node_modules/inflight/node_modules/wrappy/wrappy.js +0 -33
  596. package/node_modules/rimraf/node_modules/glob/node_modules/inflight/package.json +0 -68
  597. package/node_modules/rimraf/node_modules/glob/node_modules/inflight/test.js +0 -97
  598. package/node_modules/rimraf/node_modules/glob/node_modules/inherits/LICENSE +0 -16
  599. package/node_modules/rimraf/node_modules/glob/node_modules/inherits/README.md +0 -42
  600. package/node_modules/rimraf/node_modules/glob/node_modules/inherits/inherits.js +0 -1
  601. package/node_modules/rimraf/node_modules/glob/node_modules/inherits/inherits_browser.js +0 -23
  602. package/node_modules/rimraf/node_modules/glob/node_modules/inherits/package.json +0 -59
  603. package/node_modules/rimraf/node_modules/glob/node_modules/inherits/test.js +0 -25
  604. package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/README.md +0 -216
  605. package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/.npmignore +0 -3
  606. package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/README.md +0 -122
  607. package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/example.js +0 -8
  608. package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/.npmignore +0 -2
  609. package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/.travis.yml +0 -3
  610. package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/LICENSE.md +0 -21
  611. package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/Makefile +0 -6
  612. package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/example.js +0 -5
  613. package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/index.js +0 -50
  614. package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/package.json +0 -80
  615. package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/test/balanced.js +0 -84
  616. package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/.travis.yml +0 -4
  617. package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/README.markdown +0 -62
  618. package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/example/map.js +0 -6
  619. package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/index.js +0 -13
  620. package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/test/map.js +0 -39
  621. package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/package.json +0 -86
  622. package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/package.json +0 -67
  623. package/node_modules/rimraf/node_modules/glob/node_modules/once/node_modules/wrappy/README.md +0 -36
  624. package/node_modules/rimraf/node_modules/glob/node_modules/once/node_modules/wrappy/package.json +0 -59
  625. package/node_modules/rimraf/node_modules/glob/node_modules/once/node_modules/wrappy/test/basic.js +0 -51
  626. package/node_modules/rimraf/node_modules/glob/node_modules/once/node_modules/wrappy/wrappy.js +0 -33
  627. package/node_modules/rimraf/node_modules/glob/node_modules/path-is-absolute/package.json +0 -79
  628. package/node_modules/rimraf/node_modules/glob/package.json +0 -85
  629. package/node_modules/semver/.npmignore +0 -4
  630. package/node_modules/semver/.travis.yml +0 -5
  631. package/node_modules/semver/test/big-numbers.js +0 -31
  632. package/node_modules/semver/test/clean.js +0 -29
  633. package/node_modules/semver/test/gtr.js +0 -173
  634. package/node_modules/semver/test/index.js +0 -698
  635. package/node_modules/semver/test/ltr.js +0 -181
  636. package/node_modules/semver/test/major-minor-patch.js +0 -72
  637. package/node_modules/tunnel-agent/.jshintrc +0 -5
  638. package/node_modules/tweetnacl/COPYING.txt +0 -9
  639. package/node_modules/wrappy/test/basic.js +0 -51
  640. package/test/fsevents.js +0 -27
  641. package/test/function.js +0 -93
@@ -1,3 +1,34 @@
1
+ ## **6.3.0**
2
+ - [New] Add support for RFC 1738 (#174, #173)
3
+ - [New] `stringify`: Add `serializeDate` option to customize Date serialization (#159)
4
+ - [Fix] ensure `utils.merge` handles merging two arrays
5
+ - [Refactor] only constructors should be capitalized
6
+ - [Refactor] capitalized var names are for constructors only
7
+ - [Refactor] avoid using a sparse array
8
+ - [Robustness] `formats`: cache `String#replace`
9
+ - [Dev Deps] update `browserify`, `eslint`, `@ljharb/eslint-config`; add `safe-publish-latest`
10
+ - [Tests] up to `node` `v6.8`, `v4.6`; improve test matrix
11
+ - [Tests] flesh out arrayLimit/arrayFormat tests (#107)
12
+ - [Tests] skip Object.create tests when null objects are not available
13
+ - [Tests] Turn on eslint for test files (#175)
14
+
15
+ ## **6.2.1**
16
+ - [Fix] ensure `key[]=x&key[]&key[]=y` results in 3, not 2, values
17
+ - [Refactor] Be explicit and use `Object.prototype.hasOwnProperty.call`
18
+ - [Tests] remove `parallelshell` since it does not reliably report failures
19
+ - [Tests] up to `node` `v6.3`, `v5.12`
20
+ - [Dev Deps] update `tape`, `eslint`, `@ljharb/eslint-config`, `qs-iconv`
21
+
22
+ ## [**6.2.0**](https://github.com/ljharb/qs/issues?milestone=36&state=closed)
23
+ - [New] pass Buffers to the encoder/decoder directly (#161)
24
+ - [New] add "encoder" and "decoder" options, for custom param encoding/decoding (#160)
25
+ - [Fix] fix compacting of nested sparse arrays (#150)
26
+
27
+ ## [**6.1.0**](https://github.com/ljharb/qs/issues?milestone=35&state=closed)
28
+ - [New] allowDots option for `stringify` (#151)
29
+ - [Fix] "sort" option should work at a depth of 3 or more (#151)
30
+ - [Fix] Restore `dist` directory; will be removed in v7 (#148)
31
+
1
32
  ## [**6.0.2**](https://github.com/ljharb/qs/issues?milestone=33&state=closed)
2
33
  - Revert ES6 requirement and restore support for node down to v0.8.
3
34
 
@@ -7,6 +38,9 @@
7
38
  ## [**6.0.0**](https://github.com/ljharb/qs/issues?milestone=31&state=closed)
8
39
  - [**#124**](https://github.com/ljharb/qs/issues/124) Use ES6 and drop support for node < v4
9
40
 
41
+ ## **5.2.1**
42
+ - [Fix] ensure `key[]=x&key[]&key[]=y` results in 3, not 2, values
43
+
10
44
  ## [**5.2.0**](https://github.com/ljharb/qs/issues?milestone=30&state=closed)
11
45
  - [**#64**](https://github.com/ljharb/qs/issues/64) Add option to sort object keys in the query string
12
46
 
@@ -39,11 +39,11 @@ assert.deepEqual(qs.parse('foo[bar]=baz'), {
39
39
  });
40
40
  ```
41
41
 
42
- When using the `plainObjects` option the parsed value is returned as a plain object, created via `Object.create(null)` and as such you should be aware that prototype methods will not exist on it and a user may set those names to whatever value they like:
42
+ When using the `plainObjects` option the parsed value is returned as a null object, created via `Object.create(null)` and as such you should be aware that prototype methods will not exist on it and a user may set those names to whatever value they like:
43
43
 
44
44
  ```javascript
45
- var plainObject = qs.parse('a[hasOwnProperty]=b', { plainObjects: true });
46
- assert.deepEqual(plainObject, { a: { hasOwnProperty: 'b' } });
45
+ var nullObject = qs.parse('a[hasOwnProperty]=b', { plainObjects: true });
46
+ assert.deepEqual(nullObject, { a: { hasOwnProperty: 'b' } });
47
47
  ```
48
48
 
49
49
  By default parameters that would overwrite properties on the object prototype are ignored, if you wish to keep the data from those fields either use `plainObjects` as mentioned above, or set `allowPrototypes` to `true` which will allow user input to overwrite those properties. *WARNING* It is generally a bad idea to enable this option as it can cause problems when attempting to use the properties that have been overwritten. Always be careful with this option.
@@ -225,6 +225,26 @@ var unencoded = qs.stringify({ a: { b: 'c' } }, { encode: false });
225
225
  assert.equal(unencoded, 'a[b]=c');
226
226
  ```
227
227
 
228
+ This encoding can also be replaced by a custom encoding method set as `encoder` option:
229
+
230
+ ```javascript
231
+ var encoded = qs.stringify({ a: { b: 'c' } }, { encoder: function (str) {
232
+ // Passed in values `a`, `b`, `c`
233
+ return // Return encoded string
234
+ }})
235
+ ```
236
+
237
+ _(Note: the `encoder` option does not apply if `encode` is `false`)_
238
+
239
+ Analogue to the `encoder` there is a `decoder` option for `parse` to override decoding of properties and values:
240
+
241
+ ```javascript
242
+ var decoded = qs.parse('x=z', { decoder: function (str) {
243
+ // Passed in values `x`, `z`
244
+ return // Return decoded string
245
+ }})
246
+ ```
247
+
228
248
  Examples beyond this point will be shown as though the output is not URI encoded for clarity. Please note that the return values in these cases *will* be URI encoded during real usage.
229
249
 
230
250
  When arrays are stringified, by default they are given explicit indices:
@@ -270,6 +290,17 @@ The delimiter may be overridden with stringify as well:
270
290
  assert.equal(qs.stringify({ a: 'b', c: 'd' }, { delimiter: ';' }), 'a=b;c=d');
271
291
  ```
272
292
 
293
+ If you only want to override the serialization of `Date` objects, you can provide a `serializeDate` option:
294
+
295
+ ```javascript
296
+ var date = new Date(7);
297
+ assert.equal(qs.stringify({ a: date }), 'a=1970-01-01T00:00:00.007Z'.replace(/:/g, '%3A'));
298
+ assert.equal(
299
+ qs.stringify({ a: date }, { serializeDate: function (d) { return d.getTime(); } }),
300
+ 'a=7'
301
+ );
302
+ ```
303
+
273
304
  Finally, you can use the `filter` option to restrict which keys will be included in the stringified output.
274
305
  If you pass a function, it will be called for each key to obtain the replacement value. Otherwise, if you
275
306
  pass an array, it will be used to select properties and array indices for stringification:
@@ -333,3 +364,35 @@ To completely skip rendering keys with `null` values, use the `skipNulls` flag:
333
364
  var nullsSkipped = qs.stringify({ a: 'b', c: null}, { skipNulls: true });
334
365
  assert.equal(nullsSkipped, 'a=b');
335
366
  ```
367
+
368
+ ### Dealing with special character sets
369
+
370
+ By default the encoding and decoding of characters is done in `utf-8`. If you
371
+ wish to encode querystrings to a different character set (i.e.
372
+ [Shift JIS](https://en.wikipedia.org/wiki/Shift_JIS)) you can use the
373
+ [`qs-iconv`](https://github.com/martinheidegger/qs-iconv) library:
374
+
375
+ ```javascript
376
+ var encoder = require('qs-iconv/encoder')('shift_jis');
377
+ var shiftJISEncoded = qs.stringify({ a: 'こんにちは!' }, { encoder: encoder });
378
+ assert.equal(shiftJISEncoded, 'a=%82%B1%82%F1%82%C9%82%BF%82%CD%81I');
379
+ ```
380
+
381
+ This also works for decoding of query strings:
382
+
383
+ ```javascript
384
+ var decoder = require('qs-iconv/decoder')('shift_jis');
385
+ var obj = qs.parse('a=%82%B1%82%F1%82%C9%82%BF%82%CD%81I', { decoder: decoder });
386
+ assert.deepEqual(obj, { a: 'こんにちは!' });
387
+ ```
388
+
389
+ ### RFC 3986 and RFC 1738 space encoding
390
+
391
+ RFC3986 used as default option and encodes ' ' to *%20* which is backward compatible.
392
+ In the same time, output can be stringified as per RFC1738 with ' ' equal to '+'.
393
+
394
+ ```
395
+ assert.equal(qs.stringify({ a: 'b c' }), 'a=b%20c');
396
+ assert.equal(qs.stringify({ a: 'b c' }, { format : 'RFC3986' }), 'a=b%20c');
397
+ assert.equal(qs.stringify({ a: 'b c' }, { format : 'RFC1738' }), 'a=b+c');
398
+ ```
@@ -1,31 +1,56 @@
1
1
  (function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.Qs = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){
2
2
  'use strict';
3
3
 
4
- var Stringify = require('./stringify');
5
- var Parse = require('./parse');
4
+ var replace = String.prototype.replace;
5
+ var percentTwenties = /%20/g;
6
6
 
7
7
  module.exports = {
8
- stringify: Stringify,
9
- parse: Parse
8
+ 'default': 'RFC3986',
9
+ formatters: {
10
+ RFC1738: function (value) {
11
+ return replace.call(value, percentTwenties, '+');
12
+ },
13
+ RFC3986: function (value) {
14
+ return value;
15
+ }
16
+ },
17
+ RFC1738: 'RFC1738',
18
+ RFC3986: 'RFC3986'
19
+ };
20
+
21
+ },{}],2:[function(require,module,exports){
22
+ 'use strict';
23
+
24
+ var stringify = require('./stringify');
25
+ var parse = require('./parse');
26
+ var formats = require('./formats');
27
+
28
+ module.exports = {
29
+ formats: formats,
30
+ parse: parse,
31
+ stringify: stringify
10
32
  };
11
33
 
12
- },{"./parse":2,"./stringify":3}],2:[function(require,module,exports){
34
+ },{"./formats":1,"./parse":3,"./stringify":4}],3:[function(require,module,exports){
13
35
  'use strict';
14
36
 
15
- var Utils = require('./utils');
37
+ var utils = require('./utils');
16
38
 
17
- var internals = {
39
+ var has = Object.prototype.hasOwnProperty;
40
+
41
+ var defaults = {
42
+ allowDots: false,
43
+ allowPrototypes: false,
44
+ arrayLimit: 20,
45
+ decoder: utils.decode,
18
46
  delimiter: '&',
19
47
  depth: 5,
20
- arrayLimit: 20,
21
48
  parameterLimit: 1000,
22
- strictNullHandling: false,
23
49
  plainObjects: false,
24
- allowPrototypes: false,
25
- allowDots: false
50
+ strictNullHandling: false
26
51
  };
27
52
 
28
- internals.parseValues = function (str, options) {
53
+ var parseValues = function parseValues(str, options) {
29
54
  var obj = {};
30
55
  var parts = str.split(options.delimiter, options.parameterLimit === Infinity ? undefined : options.parameterLimit);
31
56
 
@@ -33,28 +58,25 @@ internals.parseValues = function (str, options) {
33
58
  var part = parts[i];
34
59
  var pos = part.indexOf(']=') === -1 ? part.indexOf('=') : part.indexOf(']=') + 1;
35
60
 
61
+ var key, val;
36
62
  if (pos === -1) {
37
- obj[Utils.decode(part)] = '';
38
-
39
- if (options.strictNullHandling) {
40
- obj[Utils.decode(part)] = null;
41
- }
63
+ key = options.decoder(part);
64
+ val = options.strictNullHandling ? null : '';
42
65
  } else {
43
- var key = Utils.decode(part.slice(0, pos));
44
- var val = Utils.decode(part.slice(pos + 1));
45
-
46
- if (Object.prototype.hasOwnProperty.call(obj, key)) {
47
- obj[key] = [].concat(obj[key]).concat(val);
48
- } else {
49
- obj[key] = val;
50
- }
66
+ key = options.decoder(part.slice(0, pos));
67
+ val = options.decoder(part.slice(pos + 1));
68
+ }
69
+ if (has.call(obj, key)) {
70
+ obj[key] = [].concat(obj[key]).concat(val);
71
+ } else {
72
+ obj[key] = val;
51
73
  }
52
74
  }
53
75
 
54
76
  return obj;
55
77
  };
56
78
 
57
- internals.parseObject = function (chain, val, options) {
79
+ var parseObject = function parseObject(chain, val, options) {
58
80
  if (!chain.length) {
59
81
  return val;
60
82
  }
@@ -64,7 +86,7 @@ internals.parseObject = function (chain, val, options) {
64
86
  var obj;
65
87
  if (root === '[]') {
66
88
  obj = [];
67
- obj = obj.concat(internals.parseObject(chain, val, options));
89
+ obj = obj.concat(parseObject(chain, val, options));
68
90
  } else {
69
91
  obj = options.plainObjects ? Object.create(null) : {};
70
92
  var cleanRoot = root[0] === '[' && root[root.length - 1] === ']' ? root.slice(1, root.length - 1) : root;
@@ -77,16 +99,16 @@ internals.parseObject = function (chain, val, options) {
77
99
  (options.parseArrays && index <= options.arrayLimit)
78
100
  ) {
79
101
  obj = [];
80
- obj[index] = internals.parseObject(chain, val, options);
102
+ obj[index] = parseObject(chain, val, options);
81
103
  } else {
82
- obj[cleanRoot] = internals.parseObject(chain, val, options);
104
+ obj[cleanRoot] = parseObject(chain, val, options);
83
105
  }
84
106
  }
85
107
 
86
108
  return obj;
87
109
  };
88
110
 
89
- internals.parseKeys = function (givenKey, val, options) {
111
+ var parseKeys = function parseKeys(givenKey, val, options) {
90
112
  if (!givenKey) {
91
113
  return;
92
114
  }
@@ -109,7 +131,7 @@ internals.parseKeys = function (givenKey, val, options) {
109
131
  if (segment[1]) {
110
132
  // If we aren't using plain objects, optionally prefix keys
111
133
  // that would overwrite object prototype properties
112
- if (!options.plainObjects && Object.prototype.hasOwnProperty(segment[1])) {
134
+ if (!options.plainObjects && has.call(Object.prototype, segment[1])) {
113
135
  if (!options.allowPrototypes) {
114
136
  return;
115
137
  }
@@ -123,7 +145,7 @@ internals.parseKeys = function (givenKey, val, options) {
123
145
  var i = 0;
124
146
  while ((segment = child.exec(key)) !== null && i < options.depth) {
125
147
  i += 1;
126
- if (!options.plainObjects && Object.prototype.hasOwnProperty(segment[1].replace(/\[|\]/g, ''))) {
148
+ if (!options.plainObjects && has.call(Object.prototype, segment[1].replace(/\[|\]/g, ''))) {
127
149
  if (!options.allowPrototypes) {
128
150
  continue;
129
151
  }
@@ -137,30 +159,32 @@ internals.parseKeys = function (givenKey, val, options) {
137
159
  keys.push('[' + key.slice(segment.index) + ']');
138
160
  }
139
161
 
140
- return internals.parseObject(keys, val, options);
162
+ return parseObject(keys, val, options);
141
163
  };
142
164
 
143
165
  module.exports = function (str, opts) {
144
166
  var options = opts || {};
145
- options.delimiter = typeof options.delimiter === 'string' || Utils.isRegExp(options.delimiter) ? options.delimiter : internals.delimiter;
146
- options.depth = typeof options.depth === 'number' ? options.depth : internals.depth;
147
- options.arrayLimit = typeof options.arrayLimit === 'number' ? options.arrayLimit : internals.arrayLimit;
167
+
168
+ if (options.decoder !== null && options.decoder !== undefined && typeof options.decoder !== 'function') {
169
+ throw new TypeError('Decoder has to be a function.');
170
+ }
171
+
172
+ options.delimiter = typeof options.delimiter === 'string' || utils.isRegExp(options.delimiter) ? options.delimiter : defaults.delimiter;
173
+ options.depth = typeof options.depth === 'number' ? options.depth : defaults.depth;
174
+ options.arrayLimit = typeof options.arrayLimit === 'number' ? options.arrayLimit : defaults.arrayLimit;
148
175
  options.parseArrays = options.parseArrays !== false;
149
- options.allowDots = typeof options.allowDots === 'boolean' ? options.allowDots : internals.allowDots;
150
- options.plainObjects = typeof options.plainObjects === 'boolean' ? options.plainObjects : internals.plainObjects;
151
- options.allowPrototypes = typeof options.allowPrototypes === 'boolean' ? options.allowPrototypes : internals.allowPrototypes;
152
- options.parameterLimit = typeof options.parameterLimit === 'number' ? options.parameterLimit : internals.parameterLimit;
153
- options.strictNullHandling = typeof options.strictNullHandling === 'boolean' ? options.strictNullHandling : internals.strictNullHandling;
154
-
155
- if (
156
- str === '' ||
157
- str === null ||
158
- typeof str === 'undefined'
159
- ) {
176
+ options.decoder = typeof options.decoder === 'function' ? options.decoder : defaults.decoder;
177
+ options.allowDots = typeof options.allowDots === 'boolean' ? options.allowDots : defaults.allowDots;
178
+ options.plainObjects = typeof options.plainObjects === 'boolean' ? options.plainObjects : defaults.plainObjects;
179
+ options.allowPrototypes = typeof options.allowPrototypes === 'boolean' ? options.allowPrototypes : defaults.allowPrototypes;
180
+ options.parameterLimit = typeof options.parameterLimit === 'number' ? options.parameterLimit : defaults.parameterLimit;
181
+ options.strictNullHandling = typeof options.strictNullHandling === 'boolean' ? options.strictNullHandling : defaults.strictNullHandling;
182
+
183
+ if (str === '' || str === null || typeof str === 'undefined') {
160
184
  return options.plainObjects ? Object.create(null) : {};
161
185
  }
162
186
 
163
- var tempObj = typeof str === 'string' ? internals.parseValues(str, options) : str;
187
+ var tempObj = typeof str === 'string' ? parseValues(str, options) : str;
164
188
  var obj = options.plainObjects ? Object.create(null) : {};
165
189
 
166
190
  // Iterate over the keys and setup the new object
@@ -168,57 +192,63 @@ module.exports = function (str, opts) {
168
192
  var keys = Object.keys(tempObj);
169
193
  for (var i = 0; i < keys.length; ++i) {
170
194
  var key = keys[i];
171
- var newObj = internals.parseKeys(key, tempObj[key], options);
172
- obj = Utils.merge(obj, newObj, options);
195
+ var newObj = parseKeys(key, tempObj[key], options);
196
+ obj = utils.merge(obj, newObj, options);
173
197
  }
174
198
 
175
- return Utils.compact(obj);
199
+ return utils.compact(obj);
176
200
  };
177
201
 
178
- },{"./utils":4}],3:[function(require,module,exports){
202
+ },{"./utils":5}],4:[function(require,module,exports){
179
203
  'use strict';
180
204
 
181
- var Utils = require('./utils');
205
+ var utils = require('./utils');
206
+ var formats = require('./formats');
207
+
208
+ var arrayPrefixGenerators = {
209
+ brackets: function brackets(prefix) {
210
+ return prefix + '[]';
211
+ },
212
+ indices: function indices(prefix, key) {
213
+ return prefix + '[' + key + ']';
214
+ },
215
+ repeat: function repeat(prefix) {
216
+ return prefix;
217
+ }
218
+ };
219
+
220
+ var toISO = Date.prototype.toISOString;
182
221
 
183
- var internals = {
222
+ var defaults = {
184
223
  delimiter: '&',
185
- arrayPrefixGenerators: {
186
- brackets: function (prefix) {
187
- return prefix + '[]';
188
- },
189
- indices: function (prefix, key) {
190
- return prefix + '[' + key + ']';
191
- },
192
- repeat: function (prefix) {
193
- return prefix;
194
- }
224
+ encode: true,
225
+ encoder: utils.encode,
226
+ serializeDate: function serializeDate(date) {
227
+ return toISO.call(date);
195
228
  },
196
- strictNullHandling: false,
197
229
  skipNulls: false,
198
- encode: true
230
+ strictNullHandling: false
199
231
  };
200
232
 
201
- internals.stringify = function (object, prefix, generateArrayPrefix, strictNullHandling, skipNulls, encode, filter, sort) {
233
+ var stringify = function stringify(object, prefix, generateArrayPrefix, strictNullHandling, skipNulls, encoder, filter, sort, allowDots, serializeDate, formatter) {
202
234
  var obj = object;
203
235
  if (typeof filter === 'function') {
204
236
  obj = filter(prefix, obj);
205
- } else if (Utils.isBuffer(obj)) {
206
- obj = String(obj);
207
237
  } else if (obj instanceof Date) {
208
- obj = obj.toISOString();
238
+ obj = serializeDate(obj);
209
239
  } else if (obj === null) {
210
240
  if (strictNullHandling) {
211
- return encode ? Utils.encode(prefix) : prefix;
241
+ return encoder ? encoder(prefix) : prefix;
212
242
  }
213
243
 
214
244
  obj = '';
215
245
  }
216
246
 
217
- if (typeof obj === 'string' || typeof obj === 'number' || typeof obj === 'boolean') {
218
- if (encode) {
219
- return [Utils.encode(prefix) + '=' + Utils.encode(obj)];
247
+ if (typeof obj === 'string' || typeof obj === 'number' || typeof obj === 'boolean' || utils.isBuffer(obj)) {
248
+ if (encoder) {
249
+ return [formatter(encoder(prefix)) + '=' + formatter(encoder(obj))];
220
250
  }
221
- return [prefix + '=' + obj];
251
+ return [formatter(prefix) + '=' + formatter(String(obj))];
222
252
  }
223
253
 
224
254
  var values = [];
@@ -243,9 +273,33 @@ internals.stringify = function (object, prefix, generateArrayPrefix, strictNullH
243
273
  }
244
274
 
245
275
  if (Array.isArray(obj)) {
246
- values = values.concat(internals.stringify(obj[key], generateArrayPrefix(prefix, key), generateArrayPrefix, strictNullHandling, skipNulls, encode, filter));
276
+ values = values.concat(stringify(
277
+ obj[key],
278
+ generateArrayPrefix(prefix, key),
279
+ generateArrayPrefix,
280
+ strictNullHandling,
281
+ skipNulls,
282
+ encoder,
283
+ filter,
284
+ sort,
285
+ allowDots,
286
+ serializeDate,
287
+ formatter
288
+ ));
247
289
  } else {
248
- values = values.concat(internals.stringify(obj[key], prefix + '[' + key + ']', generateArrayPrefix, strictNullHandling, skipNulls, encode, filter));
290
+ values = values.concat(stringify(
291
+ obj[key],
292
+ prefix + (allowDots ? '.' + key : '[' + key + ']'),
293
+ generateArrayPrefix,
294
+ strictNullHandling,
295
+ skipNulls,
296
+ encoder,
297
+ filter,
298
+ sort,
299
+ allowDots,
300
+ serializeDate,
301
+ formatter
302
+ ));
249
303
  }
250
304
  }
251
305
 
@@ -255,18 +309,33 @@ internals.stringify = function (object, prefix, generateArrayPrefix, strictNullH
255
309
  module.exports = function (object, opts) {
256
310
  var obj = object;
257
311
  var options = opts || {};
258
- var delimiter = typeof options.delimiter === 'undefined' ? internals.delimiter : options.delimiter;
259
- var strictNullHandling = typeof options.strictNullHandling === 'boolean' ? options.strictNullHandling : internals.strictNullHandling;
260
- var skipNulls = typeof options.skipNulls === 'boolean' ? options.skipNulls : internals.skipNulls;
261
- var encode = typeof options.encode === 'boolean' ? options.encode : internals.encode;
312
+ var delimiter = typeof options.delimiter === 'undefined' ? defaults.delimiter : options.delimiter;
313
+ var strictNullHandling = typeof options.strictNullHandling === 'boolean' ? options.strictNullHandling : defaults.strictNullHandling;
314
+ var skipNulls = typeof options.skipNulls === 'boolean' ? options.skipNulls : defaults.skipNulls;
315
+ var encode = typeof options.encode === 'boolean' ? options.encode : defaults.encode;
316
+ var encoder = encode ? (typeof options.encoder === 'function' ? options.encoder : defaults.encoder) : null;
262
317
  var sort = typeof options.sort === 'function' ? options.sort : null;
318
+ var allowDots = typeof options.allowDots === 'undefined' ? false : options.allowDots;
319
+ var serializeDate = typeof options.serializeDate === 'function' ? options.serializeDate : defaults.serializeDate;
320
+ if (typeof options.format === 'undefined') {
321
+ options.format = formats.default;
322
+ } else if (!Object.prototype.hasOwnProperty.call(formats.formatters, options.format)) {
323
+ throw new TypeError('Unknown format option provided.');
324
+ }
325
+ var formatter = formats.formatters[options.format];
263
326
  var objKeys;
264
327
  var filter;
328
+
329
+ if (options.encoder !== null && options.encoder !== undefined && typeof options.encoder !== 'function') {
330
+ throw new TypeError('Encoder has to be a function.');
331
+ }
332
+
265
333
  if (typeof options.filter === 'function') {
266
334
  filter = options.filter;
267
335
  obj = filter('', obj);
268
336
  } else if (Array.isArray(options.filter)) {
269
- objKeys = filter = options.filter;
337
+ filter = options.filter;
338
+ objKeys = filter;
270
339
  }
271
340
 
272
341
  var keys = [];
@@ -276,7 +345,7 @@ module.exports = function (object, opts) {
276
345
  }
277
346
 
278
347
  var arrayFormat;
279
- if (options.arrayFormat in internals.arrayPrefixGenerators) {
348
+ if (options.arrayFormat in arrayPrefixGenerators) {
280
349
  arrayFormat = options.arrayFormat;
281
350
  } else if ('indices' in options) {
282
351
  arrayFormat = options.indices ? 'indices' : 'repeat';
@@ -284,7 +353,7 @@ module.exports = function (object, opts) {
284
353
  arrayFormat = 'indices';
285
354
  }
286
355
 
287
- var generateArrayPrefix = internals.arrayPrefixGenerators[arrayFormat];
356
+ var generateArrayPrefix = arrayPrefixGenerators[arrayFormat];
288
357
 
289
358
  if (!objKeys) {
290
359
  objKeys = Object.keys(obj);
@@ -301,26 +370,40 @@ module.exports = function (object, opts) {
301
370
  continue;
302
371
  }
303
372
 
304
- keys = keys.concat(internals.stringify(obj[key], key, generateArrayPrefix, strictNullHandling, skipNulls, encode, filter, sort));
373
+ keys = keys.concat(stringify(
374
+ obj[key],
375
+ key,
376
+ generateArrayPrefix,
377
+ strictNullHandling,
378
+ skipNulls,
379
+ encoder,
380
+ filter,
381
+ sort,
382
+ allowDots,
383
+ serializeDate,
384
+ formatter
385
+ ));
305
386
  }
306
387
 
307
388
  return keys.join(delimiter);
308
389
  };
309
390
 
310
- },{"./utils":4}],4:[function(require,module,exports){
391
+ },{"./formats":1,"./utils":5}],5:[function(require,module,exports){
311
392
  'use strict';
312
393
 
394
+ var has = Object.prototype.hasOwnProperty;
395
+
313
396
  var hexTable = (function () {
314
- var array = new Array(256);
397
+ var array = [];
315
398
  for (var i = 0; i < 256; ++i) {
316
- array[i] = '%' + ((i < 16 ? '0' : '') + i.toString(16)).toUpperCase();
399
+ array.push('%' + ((i < 16 ? '0' : '') + i.toString(16)).toUpperCase());
317
400
  }
318
401
 
319
402
  return array;
320
403
  }());
321
404
 
322
405
  exports.arrayToObject = function (source, options) {
323
- var obj = options.plainObjects ? Object.create(null) : {};
406
+ var obj = options && options.plainObjects ? Object.create(null) : {};
324
407
  for (var i = 0; i < source.length; ++i) {
325
408
  if (typeof source[i] !== 'undefined') {
326
409
  obj[i] = source[i];
@@ -356,7 +439,22 @@ exports.merge = function (target, source, options) {
356
439
  mergeTarget = exports.arrayToObject(target, options);
357
440
  }
358
441
 
359
- return Object.keys(source).reduce(function (acc, key) {
442
+ if (Array.isArray(target) && Array.isArray(source)) {
443
+ source.forEach(function (item, i) {
444
+ if (has.call(target, i)) {
445
+ if (target[i] && typeof target[i] === 'object') {
446
+ target[i] = exports.merge(target[i], item, options);
447
+ } else {
448
+ target.push(item);
449
+ }
450
+ } else {
451
+ target[i] = item;
452
+ }
453
+ });
454
+ return target;
455
+ }
456
+
457
+ return Object.keys(source).reduce(function (acc, key) {
360
458
  var value = source[key];
361
459
 
362
460
  if (Object.prototype.hasOwnProperty.call(acc, key)) {
@@ -364,7 +462,7 @@ exports.merge = function (target, source, options) {
364
462
  } else {
365
463
  acc[key] = value;
366
464
  }
367
- return acc;
465
+ return acc;
368
466
  }, mergeTarget);
369
467
  };
370
468
 
@@ -419,7 +517,7 @@ exports.encode = function (str) {
419
517
 
420
518
  i += 1;
421
519
  c = 0x10000 + (((c & 0x3FF) << 10) | (string.charCodeAt(i) & 0x3FF));
422
- out += (hexTable[0xF0 | (c >> 18)] + hexTable[0x80 | ((c >> 12) & 0x3F)] + hexTable[0x80 | ((c >> 6) & 0x3F)] + hexTable[0x80 | (c & 0x3F)]);
520
+ out += hexTable[0xF0 | (c >> 18)] + hexTable[0x80 | ((c >> 12) & 0x3F)] + hexTable[0x80 | ((c >> 6) & 0x3F)] + hexTable[0x80 | (c & 0x3F)];
423
521
  }
424
522
 
425
523
  return out;
@@ -442,7 +540,9 @@ exports.compact = function (obj, references) {
442
540
  var compacted = [];
443
541
 
444
542
  for (var i = 0; i < obj.length; ++i) {
445
- if (typeof obj[i] !== 'undefined') {
543
+ if (obj[i] && typeof obj[i] === 'object') {
544
+ compacted.push(exports.compact(obj[i], refs));
545
+ } else if (typeof obj[i] !== 'undefined') {
446
546
  compacted.push(obj[i]);
447
547
  }
448
548
  }
@@ -451,10 +551,9 @@ exports.compact = function (obj, references) {
451
551
  }
452
552
 
453
553
  var keys = Object.keys(obj);
454
- for (var j = 0; j < keys.length; ++j) {
455
- var key = keys[j];
554
+ keys.forEach(function (key) {
456
555
  obj[key] = exports.compact(obj[key], refs);
457
- }
556
+ });
458
557
 
459
558
  return obj;
460
559
  };
@@ -471,5 +570,5 @@ exports.isBuffer = function (obj) {
471
570
  return !!(obj.constructor && obj.constructor.isBuffer && obj.constructor.isBuffer(obj));
472
571
  };
473
572
 
474
- },{}]},{},[1])(1)
573
+ },{}]},{},[2])(2)
475
574
  });
@@ -0,0 +1,18 @@
1
+ 'use strict';
2
+
3
+ var replace = String.prototype.replace;
4
+ var percentTwenties = /%20/g;
5
+
6
+ module.exports = {
7
+ 'default': 'RFC3986',
8
+ formatters: {
9
+ RFC1738: function (value) {
10
+ return replace.call(value, percentTwenties, '+');
11
+ },
12
+ RFC3986: function (value) {
13
+ return value;
14
+ }
15
+ },
16
+ RFC1738: 'RFC1738',
17
+ RFC3986: 'RFC3986'
18
+ };