meteor-node-stubs 1.2.16 → 1.2.18

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.
Files changed (1268) hide show
  1. package/node_modules/@meteorjs/browserify-sign/LICENSE +13 -0
  2. package/node_modules/@meteorjs/browserify-sign/README.md +13 -0
  3. package/node_modules/@meteorjs/browserify-sign/algos.js +3 -0
  4. package/node_modules/@meteorjs/browserify-sign/browser/algorithms.json +152 -0
  5. package/node_modules/@meteorjs/browserify-sign/browser/curves.json +8 -0
  6. package/node_modules/@meteorjs/browserify-sign/browser/index.js +92 -0
  7. package/node_modules/@meteorjs/browserify-sign/browser/sign.js +150 -0
  8. package/node_modules/@meteorjs/browserify-sign/browser/verify.js +86 -0
  9. package/node_modules/@meteorjs/browserify-sign/index.js +9 -0
  10. package/node_modules/@meteorjs/browserify-sign/node_modules/readable-stream/.travis.yml +34 -0
  11. package/node_modules/@meteorjs/browserify-sign/node_modules/readable-stream/CONTRIBUTING.md +38 -0
  12. package/node_modules/@meteorjs/browserify-sign/node_modules/readable-stream/GOVERNANCE.md +136 -0
  13. package/node_modules/@meteorjs/browserify-sign/node_modules/readable-stream/LICENSE +47 -0
  14. package/node_modules/@meteorjs/browserify-sign/node_modules/readable-stream/README.md +58 -0
  15. package/node_modules/@meteorjs/browserify-sign/node_modules/readable-stream/doc/wg-meetings/2015-01-30.md +60 -0
  16. package/node_modules/@meteorjs/browserify-sign/node_modules/readable-stream/duplex-browser.js +1 -0
  17. package/node_modules/@meteorjs/browserify-sign/node_modules/readable-stream/duplex.js +1 -0
  18. package/node_modules/@meteorjs/browserify-sign/node_modules/readable-stream/lib/_stream_duplex.js +131 -0
  19. package/node_modules/@meteorjs/browserify-sign/node_modules/readable-stream/lib/_stream_passthrough.js +47 -0
  20. package/node_modules/@meteorjs/browserify-sign/node_modules/readable-stream/lib/_stream_readable.js +1019 -0
  21. package/node_modules/@meteorjs/browserify-sign/node_modules/readable-stream/lib/_stream_transform.js +214 -0
  22. package/node_modules/@meteorjs/browserify-sign/node_modules/readable-stream/lib/_stream_writable.js +685 -0
  23. package/node_modules/@meteorjs/browserify-sign/node_modules/readable-stream/lib/internal/streams/BufferList.js +78 -0
  24. package/node_modules/@meteorjs/browserify-sign/node_modules/readable-stream/lib/internal/streams/destroy.js +84 -0
  25. package/node_modules/@meteorjs/browserify-sign/node_modules/readable-stream/lib/internal/streams/stream-browser.js +1 -0
  26. package/node_modules/@meteorjs/browserify-sign/node_modules/readable-stream/lib/internal/streams/stream.js +1 -0
  27. package/node_modules/@meteorjs/browserify-sign/node_modules/readable-stream/node_modules/safe-buffer/LICENSE +21 -0
  28. package/node_modules/@meteorjs/browserify-sign/node_modules/readable-stream/node_modules/safe-buffer/README.md +584 -0
  29. package/node_modules/@meteorjs/browserify-sign/node_modules/readable-stream/node_modules/safe-buffer/index.d.ts +187 -0
  30. package/node_modules/@meteorjs/browserify-sign/node_modules/readable-stream/node_modules/safe-buffer/index.js +62 -0
  31. package/node_modules/@meteorjs/browserify-sign/node_modules/readable-stream/node_modules/safe-buffer/package.json +37 -0
  32. package/node_modules/@meteorjs/browserify-sign/node_modules/readable-stream/package.json +52 -0
  33. package/node_modules/@meteorjs/browserify-sign/node_modules/readable-stream/passthrough.js +1 -0
  34. package/node_modules/@meteorjs/browserify-sign/node_modules/readable-stream/readable-browser.js +7 -0
  35. package/node_modules/@meteorjs/browserify-sign/node_modules/readable-stream/readable.js +19 -0
  36. package/node_modules/@meteorjs/browserify-sign/node_modules/readable-stream/transform.js +1 -0
  37. package/node_modules/@meteorjs/browserify-sign/node_modules/readable-stream/writable-browser.js +1 -0
  38. package/node_modules/@meteorjs/browserify-sign/node_modules/readable-stream/writable.js +8 -0
  39. package/node_modules/@meteorjs/browserify-sign/node_modules/string_decoder/.travis.yml +50 -0
  40. package/node_modules/@meteorjs/browserify-sign/node_modules/string_decoder/LICENSE +48 -0
  41. package/node_modules/@meteorjs/browserify-sign/node_modules/string_decoder/README.md +47 -0
  42. package/node_modules/@meteorjs/browserify-sign/node_modules/string_decoder/lib/string_decoder.js +296 -0
  43. package/node_modules/@meteorjs/browserify-sign/node_modules/string_decoder/node_modules/safe-buffer/LICENSE +21 -0
  44. package/node_modules/@meteorjs/browserify-sign/node_modules/string_decoder/node_modules/safe-buffer/README.md +584 -0
  45. package/node_modules/@meteorjs/browserify-sign/node_modules/string_decoder/node_modules/safe-buffer/index.d.ts +187 -0
  46. package/node_modules/@meteorjs/browserify-sign/node_modules/string_decoder/node_modules/safe-buffer/index.js +62 -0
  47. package/node_modules/@meteorjs/browserify-sign/node_modules/string_decoder/node_modules/safe-buffer/package.json +37 -0
  48. package/node_modules/@meteorjs/browserify-sign/node_modules/string_decoder/package.json +31 -0
  49. package/node_modules/@meteorjs/browserify-sign/package.json +85 -0
  50. package/node_modules/@meteorjs/create-ecdh/.travis.yml +7 -0
  51. package/node_modules/@meteorjs/create-ecdh/LICENSE +21 -0
  52. package/node_modules/@meteorjs/create-ecdh/browser.js +124 -0
  53. package/node_modules/@meteorjs/create-ecdh/elliptic/README.md +238 -0
  54. package/node_modules/@meteorjs/create-ecdh/elliptic/benchmarks/deps/jodid.js +82 -0
  55. package/node_modules/@meteorjs/create-ecdh/elliptic/benchmarks/deps/secp256k1.js +41 -0
  56. package/node_modules/@meteorjs/create-ecdh/elliptic/benchmarks/index.js +153 -0
  57. package/node_modules/@meteorjs/create-ecdh/elliptic/benchmarks/package.json +21 -0
  58. package/node_modules/@meteorjs/create-ecdh/elliptic/dist/.gitkeep +0 -0
  59. package/node_modules/@meteorjs/create-ecdh/elliptic/dist/elliptic.js +8961 -0
  60. package/node_modules/@meteorjs/create-ecdh/elliptic/dist/elliptic.min.js +1 -0
  61. package/node_modules/@meteorjs/create-ecdh/elliptic/lib/elliptic/curve/base.js +381 -0
  62. package/node_modules/@meteorjs/create-ecdh/elliptic/lib/elliptic/curve/edwards.js +435 -0
  63. package/node_modules/@meteorjs/create-ecdh/elliptic/lib/elliptic/curve/index.js +8 -0
  64. package/node_modules/@meteorjs/create-ecdh/elliptic/lib/elliptic/curve/mont.js +178 -0
  65. package/node_modules/@meteorjs/create-ecdh/elliptic/lib/elliptic/curve/short.js +938 -0
  66. package/node_modules/@meteorjs/create-ecdh/elliptic/lib/elliptic/curves.js +206 -0
  67. package/node_modules/@meteorjs/create-ecdh/elliptic/lib/elliptic/ec/index.js +278 -0
  68. package/node_modules/@meteorjs/create-ecdh/elliptic/lib/elliptic/ec/key.js +121 -0
  69. package/node_modules/@meteorjs/create-ecdh/elliptic/lib/elliptic/ec/signature.js +176 -0
  70. package/node_modules/@meteorjs/create-ecdh/elliptic/lib/elliptic/eddsa/index.js +121 -0
  71. package/node_modules/@meteorjs/create-ecdh/elliptic/lib/elliptic/eddsa/key.js +95 -0
  72. package/node_modules/@meteorjs/create-ecdh/elliptic/lib/elliptic/eddsa/signature.js +66 -0
  73. package/node_modules/@meteorjs/create-ecdh/elliptic/lib/elliptic/precomputed/secp256k1.js +780 -0
  74. package/node_modules/@meteorjs/create-ecdh/elliptic/lib/elliptic/utils.js +122 -0
  75. package/node_modules/@meteorjs/create-ecdh/elliptic/lib/elliptic.js +13 -0
  76. package/node_modules/@meteorjs/create-ecdh/elliptic/test/api-test.js +20 -0
  77. package/node_modules/@meteorjs/create-ecdh/elliptic/test/curve-test.js +357 -0
  78. package/node_modules/@meteorjs/create-ecdh/elliptic/test/ecdh-test.js +43 -0
  79. package/node_modules/@meteorjs/create-ecdh/elliptic/test/ecdsa-test.js +547 -0
  80. package/node_modules/@meteorjs/create-ecdh/elliptic/test/ed25519-test.js +138 -0
  81. package/node_modules/@meteorjs/create-ecdh/elliptic/test/fixtures/derivation-fixtures.js +3842 -0
  82. package/node_modules/@meteorjs/create-ecdh/elliptic/test/fixtures/sign.input +1024 -0
  83. package/node_modules/@meteorjs/create-ecdh/elliptic/test/index.js +10 -0
  84. package/node_modules/@meteorjs/create-ecdh/elliptic/test/unittests.html +39 -0
  85. package/node_modules/@meteorjs/create-ecdh/index.js +3 -0
  86. package/node_modules/@meteorjs/create-ecdh/node_modules/bn.js/LICENSE +19 -0
  87. package/node_modules/@meteorjs/create-ecdh/node_modules/bn.js/README.md +200 -0
  88. package/node_modules/@meteorjs/create-ecdh/node_modules/bn.js/lib/bn.js +3447 -0
  89. package/node_modules/@meteorjs/create-ecdh/node_modules/bn.js/package.json +36 -0
  90. package/node_modules/@meteorjs/create-ecdh/node_modules/bn.js/util/genCombMulTo.js +65 -0
  91. package/node_modules/@meteorjs/create-ecdh/node_modules/bn.js/util/genCombMulTo10.js +65 -0
  92. package/node_modules/@meteorjs/create-ecdh/package.json +53 -0
  93. package/node_modules/@meteorjs/create-ecdh/readme.md +4 -0
  94. package/node_modules/@meteorjs/crypto-browserify/.eslintrc +24 -0
  95. package/node_modules/@meteorjs/crypto-browserify/.github/FUNDING.yml +12 -0
  96. package/node_modules/@meteorjs/crypto-browserify/.github/workflows/node-aught.yml +12 -0
  97. package/node_modules/@meteorjs/crypto-browserify/.github/workflows/node-pretest.yml +9 -0
  98. package/node_modules/@meteorjs/crypto-browserify/.github/workflows/node-tens.yml +11 -0
  99. package/node_modules/@meteorjs/crypto-browserify/.github/workflows/rebase.yml +9 -0
  100. package/node_modules/@meteorjs/crypto-browserify/.github/workflows/require-allow-edits.yml +12 -0
  101. package/node_modules/@meteorjs/crypto-browserify/.travis.yml +18 -0
  102. package/node_modules/@meteorjs/crypto-browserify/LICENSE +24 -0
  103. package/node_modules/@meteorjs/crypto-browserify/README.md +69 -0
  104. package/node_modules/@meteorjs/crypto-browserify/example/bundle.js +605 -0
  105. package/node_modules/@meteorjs/crypto-browserify/example/index.html +12 -0
  106. package/node_modules/@meteorjs/crypto-browserify/example/test.js +6 -0
  107. package/node_modules/@meteorjs/crypto-browserify/index.js +103 -0
  108. package/node_modules/@meteorjs/crypto-browserify/package.json +64 -0
  109. package/node_modules/@meteorjs/crypto-browserify/test/aes.js +53 -0
  110. package/node_modules/@meteorjs/crypto-browserify/test/create-hash.js +51 -0
  111. package/node_modules/@meteorjs/crypto-browserify/test/create-hmac.js +54 -0
  112. package/node_modules/@meteorjs/crypto-browserify/test/dh.js +60 -0
  113. package/node_modules/@meteorjs/crypto-browserify/test/ecdh.js +62 -0
  114. package/node_modules/@meteorjs/crypto-browserify/test/index.js +22 -0
  115. package/node_modules/@meteorjs/crypto-browserify/test/node/dh.js +69 -0
  116. package/node_modules/@meteorjs/crypto-browserify/test/pbkdf2.js +23 -0
  117. package/node_modules/@meteorjs/crypto-browserify/test/public-encrypt.js +39 -0
  118. package/node_modules/@meteorjs/crypto-browserify/test/random-bytes.js +65 -0
  119. package/node_modules/@meteorjs/crypto-browserify/test/random-fill.js +55 -0
  120. package/node_modules/@meteorjs/crypto-browserify/test/sign.js +61 -0
  121. package/node_modules/asn1.js/README.md +100 -0
  122. package/node_modules/asn1.js/lib/asn1/api.js +61 -0
  123. package/node_modules/asn1.js/lib/asn1/base/buffer.js +116 -0
  124. package/node_modules/asn1.js/lib/asn1/base/index.js +6 -0
  125. package/node_modules/asn1.js/lib/asn1/base/node.js +634 -0
  126. package/node_modules/asn1.js/lib/asn1/base/reporter.js +121 -0
  127. package/node_modules/asn1.js/lib/asn1/constants/der.js +42 -0
  128. package/node_modules/asn1.js/lib/asn1/constants/index.js +19 -0
  129. package/node_modules/asn1.js/lib/asn1/decoders/der.js +324 -0
  130. package/node_modules/asn1.js/lib/asn1/decoders/index.js +4 -0
  131. package/node_modules/asn1.js/lib/asn1/decoders/pem.js +49 -0
  132. package/node_modules/asn1.js/lib/asn1/encoders/der.js +295 -0
  133. package/node_modules/asn1.js/lib/asn1/encoders/index.js +4 -0
  134. package/node_modules/asn1.js/lib/asn1/encoders/pem.js +21 -0
  135. package/node_modules/asn1.js/lib/asn1.js +9 -0
  136. package/node_modules/asn1.js/node_modules/bn.js/LICENSE +19 -0
  137. package/node_modules/asn1.js/node_modules/bn.js/README.md +200 -0
  138. package/node_modules/asn1.js/node_modules/bn.js/lib/bn.js +3447 -0
  139. package/node_modules/asn1.js/node_modules/bn.js/package.json +36 -0
  140. package/node_modules/asn1.js/node_modules/bn.js/util/genCombMulTo.js +65 -0
  141. package/node_modules/asn1.js/node_modules/bn.js/util/genCombMulTo10.js +65 -0
  142. package/node_modules/asn1.js/package.json +31 -0
  143. package/node_modules/assert/LICENSE +18 -0
  144. package/node_modules/assert/README.md +75 -0
  145. package/node_modules/assert/build/assert.js +590 -0
  146. package/node_modules/assert/build/internal/assert/assertion_error.js +445 -0
  147. package/node_modules/assert/build/internal/errors.js +171 -0
  148. package/node_modules/assert/build/internal/util/comparisons.js +575 -0
  149. package/node_modules/assert/package.json +46 -0
  150. package/node_modules/available-typed-arrays/.eslintrc +5 -0
  151. package/node_modules/available-typed-arrays/.github/FUNDING.yml +12 -0
  152. package/node_modules/available-typed-arrays/.nycrc +9 -0
  153. package/node_modules/available-typed-arrays/CHANGELOG.md +100 -0
  154. package/node_modules/available-typed-arrays/LICENSE +21 -0
  155. package/node_modules/available-typed-arrays/README.md +55 -0
  156. package/node_modules/available-typed-arrays/index.d.ts +8 -0
  157. package/node_modules/available-typed-arrays/index.js +17 -0
  158. package/node_modules/available-typed-arrays/package.json +93 -0
  159. package/node_modules/available-typed-arrays/test/index.js +18 -0
  160. package/node_modules/available-typed-arrays/tsconfig.json +49 -0
  161. package/node_modules/base64-js/LICENSE +21 -0
  162. package/node_modules/base64-js/README.md +34 -0
  163. package/node_modules/base64-js/base64js.min.js +1 -0
  164. package/node_modules/base64-js/index.d.ts +3 -0
  165. package/node_modules/base64-js/index.js +150 -0
  166. package/node_modules/base64-js/package.json +47 -0
  167. package/node_modules/bn.js/LICENSE +19 -0
  168. package/node_modules/bn.js/README.md +214 -0
  169. package/node_modules/bn.js/lib/bn.js +3548 -0
  170. package/node_modules/bn.js/package.json +39 -0
  171. package/node_modules/brorand/.npmignore +2 -0
  172. package/node_modules/brorand/README.md +26 -0
  173. package/node_modules/brorand/index.js +65 -0
  174. package/node_modules/brorand/package.json +31 -0
  175. package/node_modules/brorand/test/api-test.js +8 -0
  176. package/node_modules/browserify-aes/.travis.yml +15 -0
  177. package/node_modules/browserify-aes/LICENSE +21 -0
  178. package/node_modules/browserify-aes/README.md +19 -0
  179. package/node_modules/browserify-aes/aes.js +228 -0
  180. package/node_modules/browserify-aes/authCipher.js +117 -0
  181. package/node_modules/browserify-aes/browser.js +13 -0
  182. package/node_modules/browserify-aes/decrypter.js +124 -0
  183. package/node_modules/browserify-aes/encrypter.js +114 -0
  184. package/node_modules/browserify-aes/ghash.js +89 -0
  185. package/node_modules/browserify-aes/incr32.js +15 -0
  186. package/node_modules/browserify-aes/index.js +7 -0
  187. package/node_modules/browserify-aes/modes/cbc.js +17 -0
  188. package/node_modules/browserify-aes/modes/cfb.js +33 -0
  189. package/node_modules/browserify-aes/modes/cfb1.js +42 -0
  190. package/node_modules/browserify-aes/modes/cfb8.js +25 -0
  191. package/node_modules/browserify-aes/modes/ctr.js +30 -0
  192. package/node_modules/browserify-aes/modes/ecb.js +7 -0
  193. package/node_modules/browserify-aes/modes/index.js +18 -0
  194. package/node_modules/browserify-aes/modes/list.json +191 -0
  195. package/node_modules/browserify-aes/modes/ofb.js +16 -0
  196. package/node_modules/browserify-aes/package.json +43 -0
  197. package/node_modules/browserify-aes/streamCipher.js +27 -0
  198. package/node_modules/browserify-cipher/.travis.yml +14 -0
  199. package/node_modules/browserify-cipher/LICENSE +21 -0
  200. package/node_modules/browserify-cipher/README.md +7 -0
  201. package/node_modules/browserify-cipher/browser.js +67 -0
  202. package/node_modules/browserify-cipher/index.js +7 -0
  203. package/node_modules/browserify-cipher/package.json +26 -0
  204. package/node_modules/browserify-cipher/test.js +55 -0
  205. package/node_modules/browserify-des/.travis.yml +8 -0
  206. package/node_modules/browserify-des/index.js +50 -0
  207. package/node_modules/browserify-des/license +21 -0
  208. package/node_modules/browserify-des/modes.js +24 -0
  209. package/node_modules/browserify-des/package.json +30 -0
  210. package/node_modules/browserify-des/readme.md +6 -0
  211. package/node_modules/browserify-des/test.js +81 -0
  212. package/node_modules/browserify-rsa/CHANGELOG.md +98 -0
  213. package/node_modules/browserify-rsa/LICENSE +21 -0
  214. package/node_modules/browserify-rsa/README.md +15 -0
  215. package/node_modules/browserify-rsa/index.js +38 -0
  216. package/node_modules/browserify-rsa/package.json +66 -0
  217. package/node_modules/browserify-zlib/.npmignore +7 -0
  218. package/node_modules/browserify-zlib/.travis.yml +16 -0
  219. package/node_modules/browserify-zlib/LICENSE +70 -0
  220. package/node_modules/browserify-zlib/README.md +24 -0
  221. package/node_modules/browserify-zlib/karma.conf.js +11 -0
  222. package/node_modules/browserify-zlib/lib/binding.js +409 -0
  223. package/node_modules/browserify-zlib/lib/index.js +609 -0
  224. package/node_modules/browserify-zlib/package.json +64 -0
  225. package/node_modules/browserify-zlib/src/binding.js +432 -0
  226. package/node_modules/browserify-zlib/src/index.js +650 -0
  227. package/node_modules/buffer/AUTHORS.md +70 -0
  228. package/node_modules/buffer/LICENSE +21 -0
  229. package/node_modules/buffer/README.md +410 -0
  230. package/node_modules/buffer/index.d.ts +186 -0
  231. package/node_modules/buffer/index.js +1817 -0
  232. package/node_modules/buffer/package.json +96 -0
  233. package/node_modules/buffer-xor/.npmignore +1 -0
  234. package/node_modules/buffer-xor/.travis.yml +9 -0
  235. package/node_modules/buffer-xor/LICENSE +21 -0
  236. package/node_modules/buffer-xor/README.md +41 -0
  237. package/node_modules/buffer-xor/index.js +10 -0
  238. package/node_modules/buffer-xor/inline.js +1 -0
  239. package/node_modules/buffer-xor/inplace.js +9 -0
  240. package/node_modules/buffer-xor/package.json +37 -0
  241. package/node_modules/buffer-xor/test/fixtures.json +23 -0
  242. package/node_modules/buffer-xor/test/index.js +38 -0
  243. package/node_modules/builtin-status-codes/browser.js +64 -0
  244. package/node_modules/builtin-status-codes/build.js +8 -0
  245. package/node_modules/builtin-status-codes/index.js +3 -0
  246. package/node_modules/builtin-status-codes/license +21 -0
  247. package/node_modules/builtin-status-codes/package.json +39 -0
  248. package/node_modules/builtin-status-codes/readme.md +31 -0
  249. package/node_modules/call-bind/.eslintignore +1 -0
  250. package/node_modules/call-bind/.eslintrc +16 -0
  251. package/node_modules/call-bind/.github/FUNDING.yml +12 -0
  252. package/node_modules/call-bind/.nycrc +9 -0
  253. package/node_modules/call-bind/CHANGELOG.md +106 -0
  254. package/node_modules/call-bind/LICENSE +21 -0
  255. package/node_modules/call-bind/README.md +64 -0
  256. package/node_modules/call-bind/callBound.js +15 -0
  257. package/node_modules/call-bind/index.js +24 -0
  258. package/node_modules/call-bind/package.json +93 -0
  259. package/node_modules/call-bind/test/callBound.js +54 -0
  260. package/node_modules/call-bind/test/index.js +74 -0
  261. package/node_modules/call-bind-apply-helpers/.eslintrc +17 -0
  262. package/node_modules/call-bind-apply-helpers/.github/FUNDING.yml +12 -0
  263. package/node_modules/call-bind-apply-helpers/.nycrc +9 -0
  264. package/node_modules/call-bind-apply-helpers/CHANGELOG.md +30 -0
  265. package/node_modules/call-bind-apply-helpers/LICENSE +21 -0
  266. package/node_modules/call-bind-apply-helpers/README.md +62 -0
  267. package/node_modules/call-bind-apply-helpers/actualApply.d.ts +1 -0
  268. package/node_modules/call-bind-apply-helpers/actualApply.js +10 -0
  269. package/node_modules/call-bind-apply-helpers/applyBind.d.ts +19 -0
  270. package/node_modules/call-bind-apply-helpers/applyBind.js +10 -0
  271. package/node_modules/call-bind-apply-helpers/functionApply.d.ts +1 -0
  272. package/node_modules/call-bind-apply-helpers/functionApply.js +4 -0
  273. package/node_modules/call-bind-apply-helpers/functionCall.d.ts +1 -0
  274. package/node_modules/call-bind-apply-helpers/functionCall.js +4 -0
  275. package/node_modules/call-bind-apply-helpers/index.d.ts +64 -0
  276. package/node_modules/call-bind-apply-helpers/index.js +15 -0
  277. package/node_modules/call-bind-apply-helpers/package.json +85 -0
  278. package/node_modules/call-bind-apply-helpers/reflectApply.d.ts +3 -0
  279. package/node_modules/call-bind-apply-helpers/reflectApply.js +4 -0
  280. package/node_modules/call-bind-apply-helpers/test/index.js +63 -0
  281. package/node_modules/call-bind-apply-helpers/tsconfig.json +9 -0
  282. package/node_modules/call-bound/.eslintrc +13 -0
  283. package/node_modules/call-bound/.github/FUNDING.yml +12 -0
  284. package/node_modules/call-bound/.nycrc +9 -0
  285. package/node_modules/call-bound/CHANGELOG.md +42 -0
  286. package/node_modules/call-bound/LICENSE +21 -0
  287. package/node_modules/call-bound/README.md +53 -0
  288. package/node_modules/call-bound/index.d.ts +94 -0
  289. package/node_modules/call-bound/index.js +19 -0
  290. package/node_modules/call-bound/package.json +99 -0
  291. package/node_modules/call-bound/test/index.js +61 -0
  292. package/node_modules/call-bound/tsconfig.json +10 -0
  293. package/node_modules/cipher-base/.eslintrc +26 -0
  294. package/node_modules/cipher-base/.github/FUNDING.yml +12 -0
  295. package/node_modules/cipher-base/CHANGELOG.md +66 -0
  296. package/node_modules/cipher-base/LICENSE +21 -0
  297. package/node_modules/cipher-base/README.md +17 -0
  298. package/node_modules/cipher-base/index.js +167 -0
  299. package/node_modules/cipher-base/package.json +62 -0
  300. package/node_modules/cipher-base/test/index.js +221 -0
  301. package/node_modules/console-browserify/.testem.json +14 -0
  302. package/node_modules/console-browserify/.travis.yml +11 -0
  303. package/node_modules/console-browserify/CHANGELOG.md +10 -0
  304. package/node_modules/console-browserify/LICENCE +19 -0
  305. package/node_modules/console-browserify/README.md +42 -0
  306. package/node_modules/console-browserify/index.js +87 -0
  307. package/node_modules/console-browserify/package.json +59 -0
  308. package/node_modules/console-browserify/test/index.js +67 -0
  309. package/node_modules/console-browserify/test/static/index.html +12 -0
  310. package/node_modules/console-browserify/test/static/test-adapter.js +53 -0
  311. package/node_modules/constants-browserify/README.md +54 -0
  312. package/node_modules/constants-browserify/build.sh +1 -0
  313. package/node_modules/constants-browserify/constants.json +209 -0
  314. package/node_modules/constants-browserify/package.json +34 -0
  315. package/node_modules/constants-browserify/test.js +18 -0
  316. package/node_modules/core-util-is/LICENSE +19 -0
  317. package/node_modules/core-util-is/README.md +3 -0
  318. package/node_modules/core-util-is/lib/util.js +107 -0
  319. package/node_modules/core-util-is/package.json +38 -0
  320. package/node_modules/create-hash/.travis.yml +17 -0
  321. package/node_modules/create-hash/LICENSE +21 -0
  322. package/node_modules/create-hash/README.md +19 -0
  323. package/node_modules/create-hash/browser.js +30 -0
  324. package/node_modules/create-hash/index.js +1 -0
  325. package/node_modules/create-hash/md5.js +5 -0
  326. package/node_modules/create-hash/package.json +39 -0
  327. package/node_modules/create-hash/test.js +41 -0
  328. package/node_modules/create-hmac/LICENSE +21 -0
  329. package/node_modules/create-hmac/README.md +20 -0
  330. package/node_modules/create-hmac/browser.js +62 -0
  331. package/node_modules/create-hmac/index.js +1 -0
  332. package/node_modules/create-hmac/legacy.js +46 -0
  333. package/node_modules/create-hmac/package.json +45 -0
  334. package/node_modules/define-data-property/.eslintrc +24 -0
  335. package/node_modules/define-data-property/.github/FUNDING.yml +12 -0
  336. package/node_modules/define-data-property/.nycrc +13 -0
  337. package/node_modules/define-data-property/CHANGELOG.md +70 -0
  338. package/node_modules/define-data-property/LICENSE +21 -0
  339. package/node_modules/define-data-property/README.md +67 -0
  340. package/node_modules/define-data-property/index.d.ts +12 -0
  341. package/node_modules/define-data-property/index.js +56 -0
  342. package/node_modules/define-data-property/package.json +106 -0
  343. package/node_modules/define-data-property/test/index.js +392 -0
  344. package/node_modules/define-data-property/tsconfig.json +59 -0
  345. package/node_modules/define-properties/.editorconfig +13 -0
  346. package/node_modules/define-properties/.eslintrc +19 -0
  347. package/node_modules/define-properties/.github/FUNDING.yml +12 -0
  348. package/node_modules/define-properties/.nycrc +9 -0
  349. package/node_modules/define-properties/CHANGELOG.md +91 -0
  350. package/node_modules/define-properties/LICENSE +21 -0
  351. package/node_modules/define-properties/README.md +84 -0
  352. package/node_modules/define-properties/index.js +47 -0
  353. package/node_modules/define-properties/package.json +88 -0
  354. package/node_modules/des.js/.jscsrc +46 -0
  355. package/node_modules/des.js/.jshintrc +89 -0
  356. package/node_modules/des.js/README.md +26 -0
  357. package/node_modules/des.js/lib/des/cbc.js +65 -0
  358. package/node_modules/des.js/lib/des/cipher.js +142 -0
  359. package/node_modules/des.js/lib/des/des.js +150 -0
  360. package/node_modules/des.js/lib/des/ede.js +54 -0
  361. package/node_modules/des.js/lib/des/utils.js +256 -0
  362. package/node_modules/des.js/lib/des.js +7 -0
  363. package/node_modules/des.js/package.json +33 -0
  364. package/node_modules/des.js/test/cbc-test.js +73 -0
  365. package/node_modules/des.js/test/des-test.js +139 -0
  366. package/node_modules/des.js/test/ede-test.js +106 -0
  367. package/node_modules/des.js/test/fixtures.js +5 -0
  368. package/node_modules/des.js/test/utils-test.js +169 -0
  369. package/node_modules/diffie-hellman/.travis.yml +10 -0
  370. package/node_modules/diffie-hellman/LICENSE +19 -0
  371. package/node_modules/diffie-hellman/browser.js +42 -0
  372. package/node_modules/diffie-hellman/index.js +10 -0
  373. package/node_modules/diffie-hellman/lib/dh.js +164 -0
  374. package/node_modules/diffie-hellman/lib/generatePrime.js +105 -0
  375. package/node_modules/diffie-hellman/lib/primes.json +34 -0
  376. package/node_modules/diffie-hellman/node_modules/bn.js/LICENSE +19 -0
  377. package/node_modules/diffie-hellman/node_modules/bn.js/README.md +200 -0
  378. package/node_modules/diffie-hellman/node_modules/bn.js/lib/bn.js +3447 -0
  379. package/node_modules/diffie-hellman/node_modules/bn.js/package.json +36 -0
  380. package/node_modules/diffie-hellman/node_modules/bn.js/util/genCombMulTo.js +65 -0
  381. package/node_modules/diffie-hellman/node_modules/bn.js/util/genCombMulTo10.js +65 -0
  382. package/node_modules/diffie-hellman/package.json +35 -0
  383. package/node_modules/diffie-hellman/readme.md +4 -0
  384. package/node_modules/domain-browser/.prettierignore +57 -0
  385. package/node_modules/domain-browser/LICENSE.md +101 -0
  386. package/node_modules/domain-browser/README.md +126 -0
  387. package/node_modules/domain-browser/package.json +135 -0
  388. package/node_modules/domain-browser/source/index.js +66 -0
  389. package/node_modules/dunder-proto/.eslintrc +5 -0
  390. package/node_modules/dunder-proto/.github/FUNDING.yml +12 -0
  391. package/node_modules/dunder-proto/.nycrc +13 -0
  392. package/node_modules/dunder-proto/CHANGELOG.md +24 -0
  393. package/node_modules/dunder-proto/LICENSE +21 -0
  394. package/node_modules/dunder-proto/README.md +54 -0
  395. package/node_modules/dunder-proto/get.d.ts +5 -0
  396. package/node_modules/dunder-proto/get.js +30 -0
  397. package/node_modules/dunder-proto/package.json +76 -0
  398. package/node_modules/dunder-proto/set.d.ts +5 -0
  399. package/node_modules/dunder-proto/set.js +35 -0
  400. package/node_modules/dunder-proto/test/get.js +34 -0
  401. package/node_modules/dunder-proto/test/index.js +4 -0
  402. package/node_modules/dunder-proto/test/set.js +50 -0
  403. package/node_modules/dunder-proto/tsconfig.json +9 -0
  404. package/node_modules/es-define-property/.eslintrc +13 -0
  405. package/node_modules/es-define-property/.github/FUNDING.yml +12 -0
  406. package/node_modules/es-define-property/.nycrc +9 -0
  407. package/node_modules/es-define-property/CHANGELOG.md +29 -0
  408. package/node_modules/es-define-property/LICENSE +21 -0
  409. package/node_modules/es-define-property/README.md +49 -0
  410. package/node_modules/es-define-property/index.d.ts +3 -0
  411. package/node_modules/es-define-property/index.js +14 -0
  412. package/node_modules/es-define-property/package.json +81 -0
  413. package/node_modules/es-define-property/test/index.js +56 -0
  414. package/node_modules/es-define-property/tsconfig.json +10 -0
  415. package/node_modules/es-errors/.eslintrc +5 -0
  416. package/node_modules/es-errors/.github/FUNDING.yml +12 -0
  417. package/node_modules/es-errors/CHANGELOG.md +40 -0
  418. package/node_modules/es-errors/LICENSE +21 -0
  419. package/node_modules/es-errors/README.md +55 -0
  420. package/node_modules/es-errors/eval.d.ts +3 -0
  421. package/node_modules/es-errors/eval.js +4 -0
  422. package/node_modules/es-errors/index.d.ts +3 -0
  423. package/node_modules/es-errors/index.js +4 -0
  424. package/node_modules/es-errors/package.json +80 -0
  425. package/node_modules/es-errors/range.d.ts +3 -0
  426. package/node_modules/es-errors/range.js +4 -0
  427. package/node_modules/es-errors/ref.d.ts +3 -0
  428. package/node_modules/es-errors/ref.js +4 -0
  429. package/node_modules/es-errors/syntax.d.ts +3 -0
  430. package/node_modules/es-errors/syntax.js +4 -0
  431. package/node_modules/es-errors/test/index.js +19 -0
  432. package/node_modules/es-errors/tsconfig.json +49 -0
  433. package/node_modules/es-errors/type.d.ts +3 -0
  434. package/node_modules/es-errors/type.js +4 -0
  435. package/node_modules/es-errors/uri.d.ts +3 -0
  436. package/node_modules/es-errors/uri.js +4 -0
  437. package/node_modules/es-object-atoms/.eslintrc +16 -0
  438. package/node_modules/es-object-atoms/.github/FUNDING.yml +12 -0
  439. package/node_modules/es-object-atoms/CHANGELOG.md +37 -0
  440. package/node_modules/es-object-atoms/LICENSE +21 -0
  441. package/node_modules/es-object-atoms/README.md +63 -0
  442. package/node_modules/es-object-atoms/RequireObjectCoercible.d.ts +3 -0
  443. package/node_modules/es-object-atoms/RequireObjectCoercible.js +11 -0
  444. package/node_modules/es-object-atoms/ToObject.d.ts +7 -0
  445. package/node_modules/es-object-atoms/ToObject.js +10 -0
  446. package/node_modules/es-object-atoms/index.d.ts +3 -0
  447. package/node_modules/es-object-atoms/index.js +4 -0
  448. package/node_modules/es-object-atoms/isObject.d.ts +3 -0
  449. package/node_modules/es-object-atoms/isObject.js +6 -0
  450. package/node_modules/es-object-atoms/package.json +80 -0
  451. package/node_modules/es-object-atoms/test/index.js +38 -0
  452. package/node_modules/es-object-atoms/tsconfig.json +6 -0
  453. package/node_modules/events/.airtap.yml +15 -0
  454. package/node_modules/events/.github/FUNDING.yml +12 -0
  455. package/node_modules/events/.travis.yml +18 -0
  456. package/node_modules/events/History.md +118 -0
  457. package/node_modules/events/LICENSE +22 -0
  458. package/node_modules/events/Readme.md +50 -0
  459. package/node_modules/events/events.js +497 -0
  460. package/node_modules/events/package.json +37 -0
  461. package/node_modules/events/security.md +10 -0
  462. package/node_modules/events/tests/add-listeners.js +111 -0
  463. package/node_modules/events/tests/check-listener-leaks.js +101 -0
  464. package/node_modules/events/tests/common.js +104 -0
  465. package/node_modules/events/tests/errors.js +13 -0
  466. package/node_modules/events/tests/events-list.js +28 -0
  467. package/node_modules/events/tests/events-once.js +234 -0
  468. package/node_modules/events/tests/index.js +64 -0
  469. package/node_modules/events/tests/legacy-compat.js +16 -0
  470. package/node_modules/events/tests/listener-count.js +37 -0
  471. package/node_modules/events/tests/listeners-side-effects.js +56 -0
  472. package/node_modules/events/tests/listeners.js +168 -0
  473. package/node_modules/events/tests/max-listeners.js +47 -0
  474. package/node_modules/events/tests/method-names.js +35 -0
  475. package/node_modules/events/tests/modify-in-emit.js +90 -0
  476. package/node_modules/events/tests/num-args.js +60 -0
  477. package/node_modules/events/tests/once.js +83 -0
  478. package/node_modules/events/tests/prepend.js +31 -0
  479. package/node_modules/events/tests/remove-all-listeners.js +133 -0
  480. package/node_modules/events/tests/remove-listeners.js +212 -0
  481. package/node_modules/events/tests/set-max-listeners-side-effects.js +31 -0
  482. package/node_modules/events/tests/special-event-names.js +45 -0
  483. package/node_modules/events/tests/subclass.js +66 -0
  484. package/node_modules/events/tests/symbols.js +25 -0
  485. package/node_modules/evp_bytestokey/LICENSE +21 -0
  486. package/node_modules/evp_bytestokey/README.md +51 -0
  487. package/node_modules/evp_bytestokey/index.js +45 -0
  488. package/node_modules/evp_bytestokey/package.json +45 -0
  489. package/node_modules/for-each/.editorconfig +20 -0
  490. package/node_modules/for-each/.eslintrc +30 -0
  491. package/node_modules/for-each/.github/FUNDING.yml +12 -0
  492. package/node_modules/for-each/.github/SECURITY.md +3 -0
  493. package/node_modules/for-each/.nycrc +8 -0
  494. package/node_modules/for-each/CHANGELOG.md +107 -0
  495. package/node_modules/for-each/LICENSE +22 -0
  496. package/node_modules/for-each/README.md +39 -0
  497. package/node_modules/for-each/index.d.ts +35 -0
  498. package/node_modules/for-each/index.js +69 -0
  499. package/node_modules/for-each/package.json +76 -0
  500. package/node_modules/for-each/test/test.js +224 -0
  501. package/node_modules/for-each/tsconfig.json +8 -0
  502. package/node_modules/function-bind/.eslintrc +21 -0
  503. package/node_modules/function-bind/.github/FUNDING.yml +12 -0
  504. package/node_modules/function-bind/.github/SECURITY.md +3 -0
  505. package/node_modules/function-bind/.nycrc +13 -0
  506. package/node_modules/function-bind/CHANGELOG.md +136 -0
  507. package/node_modules/function-bind/LICENSE +20 -0
  508. package/node_modules/function-bind/README.md +46 -0
  509. package/node_modules/function-bind/implementation.js +84 -0
  510. package/node_modules/function-bind/index.js +5 -0
  511. package/node_modules/function-bind/package.json +87 -0
  512. package/node_modules/function-bind/test/.eslintrc +9 -0
  513. package/node_modules/function-bind/test/index.js +252 -0
  514. package/node_modules/get-intrinsic/.eslintrc +42 -0
  515. package/node_modules/get-intrinsic/.github/FUNDING.yml +12 -0
  516. package/node_modules/get-intrinsic/.nycrc +9 -0
  517. package/node_modules/get-intrinsic/CHANGELOG.md +186 -0
  518. package/node_modules/get-intrinsic/LICENSE +21 -0
  519. package/node_modules/get-intrinsic/README.md +71 -0
  520. package/node_modules/get-intrinsic/index.js +378 -0
  521. package/node_modules/get-intrinsic/package.json +97 -0
  522. package/node_modules/get-intrinsic/test/GetIntrinsic.js +274 -0
  523. package/node_modules/get-proto/.eslintrc +10 -0
  524. package/node_modules/get-proto/.github/FUNDING.yml +12 -0
  525. package/node_modules/get-proto/.nycrc +9 -0
  526. package/node_modules/get-proto/CHANGELOG.md +21 -0
  527. package/node_modules/get-proto/LICENSE +21 -0
  528. package/node_modules/get-proto/Object.getPrototypeOf.d.ts +5 -0
  529. package/node_modules/get-proto/Object.getPrototypeOf.js +6 -0
  530. package/node_modules/get-proto/README.md +50 -0
  531. package/node_modules/get-proto/Reflect.getPrototypeOf.d.ts +3 -0
  532. package/node_modules/get-proto/Reflect.getPrototypeOf.js +4 -0
  533. package/node_modules/get-proto/index.d.ts +5 -0
  534. package/node_modules/get-proto/index.js +27 -0
  535. package/node_modules/get-proto/package.json +81 -0
  536. package/node_modules/get-proto/test/index.js +68 -0
  537. package/node_modules/get-proto/tsconfig.json +9 -0
  538. package/node_modules/gopd/.eslintrc +16 -0
  539. package/node_modules/gopd/.github/FUNDING.yml +12 -0
  540. package/node_modules/gopd/CHANGELOG.md +45 -0
  541. package/node_modules/gopd/LICENSE +21 -0
  542. package/node_modules/gopd/README.md +40 -0
  543. package/node_modules/gopd/gOPD.d.ts +1 -0
  544. package/node_modules/gopd/gOPD.js +4 -0
  545. package/node_modules/gopd/index.d.ts +5 -0
  546. package/node_modules/gopd/index.js +15 -0
  547. package/node_modules/gopd/package.json +77 -0
  548. package/node_modules/gopd/test/index.js +36 -0
  549. package/node_modules/gopd/tsconfig.json +9 -0
  550. package/node_modules/has-property-descriptors/.eslintrc +13 -0
  551. package/node_modules/has-property-descriptors/.github/FUNDING.yml +12 -0
  552. package/node_modules/has-property-descriptors/.nycrc +9 -0
  553. package/node_modules/has-property-descriptors/CHANGELOG.md +35 -0
  554. package/node_modules/has-property-descriptors/LICENSE +21 -0
  555. package/node_modules/has-property-descriptors/README.md +43 -0
  556. package/node_modules/has-property-descriptors/index.js +22 -0
  557. package/node_modules/has-property-descriptors/package.json +77 -0
  558. package/node_modules/has-property-descriptors/test/index.js +57 -0
  559. package/node_modules/has-symbols/.eslintrc +11 -0
  560. package/node_modules/has-symbols/.github/FUNDING.yml +12 -0
  561. package/node_modules/has-symbols/.nycrc +9 -0
  562. package/node_modules/has-symbols/CHANGELOG.md +91 -0
  563. package/node_modules/has-symbols/LICENSE +21 -0
  564. package/node_modules/has-symbols/README.md +46 -0
  565. package/node_modules/has-symbols/index.d.ts +3 -0
  566. package/node_modules/has-symbols/index.js +14 -0
  567. package/node_modules/has-symbols/package.json +111 -0
  568. package/node_modules/has-symbols/shams.d.ts +3 -0
  569. package/node_modules/has-symbols/shams.js +45 -0
  570. package/node_modules/has-symbols/test/index.js +22 -0
  571. package/node_modules/has-symbols/test/shams/core-js.js +29 -0
  572. package/node_modules/has-symbols/test/shams/get-own-property-symbols.js +29 -0
  573. package/node_modules/has-symbols/test/tests.js +58 -0
  574. package/node_modules/has-symbols/tsconfig.json +10 -0
  575. package/node_modules/has-tostringtag/.eslintrc +5 -0
  576. package/node_modules/has-tostringtag/.github/FUNDING.yml +12 -0
  577. package/node_modules/has-tostringtag/.nycrc +13 -0
  578. package/node_modules/has-tostringtag/CHANGELOG.md +42 -0
  579. package/node_modules/has-tostringtag/LICENSE +21 -0
  580. package/node_modules/has-tostringtag/README.md +46 -0
  581. package/node_modules/has-tostringtag/index.d.ts +3 -0
  582. package/node_modules/has-tostringtag/index.js +8 -0
  583. package/node_modules/has-tostringtag/package.json +108 -0
  584. package/node_modules/has-tostringtag/shams.d.ts +3 -0
  585. package/node_modules/has-tostringtag/shams.js +8 -0
  586. package/node_modules/has-tostringtag/test/index.js +21 -0
  587. package/node_modules/has-tostringtag/test/shams/core-js.js +31 -0
  588. package/node_modules/has-tostringtag/test/shams/get-own-property-symbols.js +30 -0
  589. package/node_modules/has-tostringtag/test/tests.js +15 -0
  590. package/node_modules/has-tostringtag/tsconfig.json +49 -0
  591. package/node_modules/hash-base/LICENSE +21 -0
  592. package/node_modules/hash-base/README.md +48 -0
  593. package/node_modules/hash-base/index.js +138 -0
  594. package/node_modules/hash-base/package.json +42 -0
  595. package/node_modules/hash.js/.eslintrc.js +41 -0
  596. package/node_modules/hash.js/.travis.yml +10 -0
  597. package/node_modules/hash.js/README.md +48 -0
  598. package/node_modules/hash.js/lib/hash/common.js +92 -0
  599. package/node_modules/hash.js/lib/hash/hmac.js +47 -0
  600. package/node_modules/hash.js/lib/hash/ripemd.js +146 -0
  601. package/node_modules/hash.js/lib/hash/sha/1.js +74 -0
  602. package/node_modules/hash.js/lib/hash/sha/224.js +30 -0
  603. package/node_modules/hash.js/lib/hash/sha/256.js +105 -0
  604. package/node_modules/hash.js/lib/hash/sha/384.js +35 -0
  605. package/node_modules/hash.js/lib/hash/sha/512.js +330 -0
  606. package/node_modules/hash.js/lib/hash/sha/common.js +49 -0
  607. package/node_modules/hash.js/lib/hash/sha.js +7 -0
  608. package/node_modules/hash.js/lib/hash/utils.js +278 -0
  609. package/node_modules/hash.js/lib/hash.d.ts +106 -0
  610. package/node_modules/hash.js/lib/hash.js +15 -0
  611. package/node_modules/hash.js/package.json +35 -0
  612. package/node_modules/hash.js/test/hash-test.js +140 -0
  613. package/node_modules/hash.js/test/hmac-test.js +62 -0
  614. package/node_modules/hasown/.eslintrc +5 -0
  615. package/node_modules/hasown/.github/FUNDING.yml +12 -0
  616. package/node_modules/hasown/.nycrc +13 -0
  617. package/node_modules/hasown/CHANGELOG.md +40 -0
  618. package/node_modules/hasown/LICENSE +21 -0
  619. package/node_modules/hasown/README.md +40 -0
  620. package/node_modules/hasown/index.d.ts +3 -0
  621. package/node_modules/hasown/index.js +8 -0
  622. package/node_modules/hasown/package.json +92 -0
  623. package/node_modules/hasown/tsconfig.json +6 -0
  624. package/node_modules/hmac-drbg/.npmignore +2 -0
  625. package/node_modules/hmac-drbg/.travis.yml +11 -0
  626. package/node_modules/hmac-drbg/README.md +48 -0
  627. package/node_modules/hmac-drbg/lib/hmac-drbg.js +113 -0
  628. package/node_modules/hmac-drbg/package.json +32 -0
  629. package/node_modules/hmac-drbg/test/drbg-test.js +91 -0
  630. package/node_modules/hmac-drbg/test/fixtures/hmac-drbg-nist.json +332 -0
  631. package/node_modules/https-browserify/LICENSE +20 -0
  632. package/node_modules/https-browserify/index.js +31 -0
  633. package/node_modules/https-browserify/package.json +28 -0
  634. package/node_modules/https-browserify/readme.markdown +22 -0
  635. package/node_modules/ieee754/LICENSE +11 -0
  636. package/node_modules/ieee754/README.md +51 -0
  637. package/node_modules/ieee754/index.d.ts +10 -0
  638. package/node_modules/ieee754/index.js +85 -0
  639. package/node_modules/ieee754/package.json +52 -0
  640. package/node_modules/inherits/LICENSE +16 -0
  641. package/node_modules/inherits/README.md +42 -0
  642. package/node_modules/inherits/inherits.js +9 -0
  643. package/node_modules/inherits/inherits_browser.js +27 -0
  644. package/node_modules/inherits/package.json +29 -0
  645. package/node_modules/is-arguments/.editorconfig +20 -0
  646. package/node_modules/is-arguments/.eslintrc +9 -0
  647. package/node_modules/is-arguments/.github/FUNDING.yml +12 -0
  648. package/node_modules/is-arguments/.nycrc +9 -0
  649. package/node_modules/is-arguments/CHANGELOG.md +201 -0
  650. package/node_modules/is-arguments/LICENSE +20 -0
  651. package/node_modules/is-arguments/README.md +47 -0
  652. package/node_modules/is-arguments/index.d.ts +6 -0
  653. package/node_modules/is-arguments/index.js +44 -0
  654. package/node_modules/is-arguments/package.json +105 -0
  655. package/node_modules/is-arguments/test/index.js +47 -0
  656. package/node_modules/is-arguments/tsconfig.json +9 -0
  657. package/node_modules/is-callable/.editorconfig +31 -0
  658. package/node_modules/is-callable/.eslintrc +10 -0
  659. package/node_modules/is-callable/.github/FUNDING.yml +12 -0
  660. package/node_modules/is-callable/.nycrc +9 -0
  661. package/node_modules/is-callable/CHANGELOG.md +158 -0
  662. package/node_modules/is-callable/LICENSE +22 -0
  663. package/node_modules/is-callable/README.md +83 -0
  664. package/node_modules/is-callable/index.js +101 -0
  665. package/node_modules/is-callable/package.json +106 -0
  666. package/node_modules/is-callable/test/index.js +244 -0
  667. package/node_modules/is-generator-function/.eslintrc +9 -0
  668. package/node_modules/is-generator-function/.nvmrc +1 -0
  669. package/node_modules/is-generator-function/.nycrc +9 -0
  670. package/node_modules/is-generator-function/CHANGELOG.md +237 -0
  671. package/node_modules/is-generator-function/LICENSE +20 -0
  672. package/node_modules/is-generator-function/README.md +40 -0
  673. package/node_modules/is-generator-function/index.d.ts +3 -0
  674. package/node_modules/is-generator-function/index.js +47 -0
  675. package/node_modules/is-generator-function/package.json +106 -0
  676. package/node_modules/is-generator-function/test/corejs.js +6 -0
  677. package/node_modules/is-generator-function/test/index.js +80 -0
  678. package/node_modules/is-generator-function/test/uglified.js +9 -0
  679. package/node_modules/is-generator-function/tsconfig.json +9 -0
  680. package/node_modules/is-nan/.eslintignore +1 -0
  681. package/node_modules/is-nan/.eslintrc +5 -0
  682. package/node_modules/is-nan/.github/FUNDING.yml +12 -0
  683. package/node_modules/is-nan/.nycrc +13 -0
  684. package/node_modules/is-nan/CHANGELOG.md +56 -0
  685. package/node_modules/is-nan/LICENSE +20 -0
  686. package/node_modules/is-nan/README.md +49 -0
  687. package/node_modules/is-nan/auto.js +3 -0
  688. package/node_modules/is-nan/implementation.js +7 -0
  689. package/node_modules/is-nan/index.js +20 -0
  690. package/node_modules/is-nan/package.json +77 -0
  691. package/node_modules/is-nan/polyfill.js +10 -0
  692. package/node_modules/is-nan/shim.js +16 -0
  693. package/node_modules/is-nan/test/index.js +11 -0
  694. package/node_modules/is-nan/test/shimmed.js +30 -0
  695. package/node_modules/is-nan/test/tests.js +40 -0
  696. package/node_modules/is-regex/.editorconfig +23 -0
  697. package/node_modules/is-regex/.eslintrc +10 -0
  698. package/node_modules/is-regex/.nycrc +10 -0
  699. package/node_modules/is-regex/CHANGELOG.md +233 -0
  700. package/node_modules/is-regex/LICENSE +20 -0
  701. package/node_modules/is-regex/README.md +52 -0
  702. package/node_modules/is-regex/index.d.ts +3 -0
  703. package/node_modules/is-regex/index.js +69 -0
  704. package/node_modules/is-regex/package.json +104 -0
  705. package/node_modules/is-regex/test/index.js +121 -0
  706. package/node_modules/is-regex/tsconfig.json +9 -0
  707. package/node_modules/is-typed-array/.editorconfig +20 -0
  708. package/node_modules/is-typed-array/.eslintrc +13 -0
  709. package/node_modules/is-typed-array/.github/FUNDING.yml +12 -0
  710. package/node_modules/is-typed-array/.nycrc +9 -0
  711. package/node_modules/is-typed-array/CHANGELOG.md +166 -0
  712. package/node_modules/is-typed-array/LICENSE +22 -0
  713. package/node_modules/is-typed-array/README.md +70 -0
  714. package/node_modules/is-typed-array/index.d.ts +9 -0
  715. package/node_modules/is-typed-array/index.js +8 -0
  716. package/node_modules/is-typed-array/package.json +129 -0
  717. package/node_modules/is-typed-array/test/index.js +111 -0
  718. package/node_modules/is-typed-array/tsconfig.json +6 -0
  719. package/node_modules/isarray/.npmignore +1 -0
  720. package/node_modules/isarray/.travis.yml +4 -0
  721. package/node_modules/isarray/Makefile +6 -0
  722. package/node_modules/isarray/README.md +60 -0
  723. package/node_modules/isarray/component.json +19 -0
  724. package/node_modules/isarray/index.js +5 -0
  725. package/node_modules/isarray/package.json +45 -0
  726. package/node_modules/isarray/test.js +20 -0
  727. package/node_modules/math-intrinsics/.eslintrc +16 -0
  728. package/node_modules/math-intrinsics/.github/FUNDING.yml +12 -0
  729. package/node_modules/math-intrinsics/CHANGELOG.md +24 -0
  730. package/node_modules/math-intrinsics/LICENSE +21 -0
  731. package/node_modules/math-intrinsics/README.md +50 -0
  732. package/node_modules/math-intrinsics/abs.d.ts +1 -0
  733. package/node_modules/math-intrinsics/abs.js +4 -0
  734. package/node_modules/math-intrinsics/constants/maxArrayLength.d.ts +3 -0
  735. package/node_modules/math-intrinsics/constants/maxArrayLength.js +4 -0
  736. package/node_modules/math-intrinsics/constants/maxSafeInteger.d.ts +3 -0
  737. package/node_modules/math-intrinsics/constants/maxSafeInteger.js +5 -0
  738. package/node_modules/math-intrinsics/constants/maxValue.d.ts +3 -0
  739. package/node_modules/math-intrinsics/constants/maxValue.js +5 -0
  740. package/node_modules/math-intrinsics/floor.d.ts +1 -0
  741. package/node_modules/math-intrinsics/floor.js +4 -0
  742. package/node_modules/math-intrinsics/isFinite.d.ts +3 -0
  743. package/node_modules/math-intrinsics/isFinite.js +12 -0
  744. package/node_modules/math-intrinsics/isInteger.d.ts +3 -0
  745. package/node_modules/math-intrinsics/isInteger.js +16 -0
  746. package/node_modules/math-intrinsics/isNaN.d.ts +1 -0
  747. package/node_modules/math-intrinsics/isNaN.js +6 -0
  748. package/node_modules/math-intrinsics/isNegativeZero.d.ts +3 -0
  749. package/node_modules/math-intrinsics/isNegativeZero.js +6 -0
  750. package/node_modules/math-intrinsics/max.d.ts +1 -0
  751. package/node_modules/math-intrinsics/max.js +4 -0
  752. package/node_modules/math-intrinsics/min.d.ts +1 -0
  753. package/node_modules/math-intrinsics/min.js +4 -0
  754. package/node_modules/math-intrinsics/mod.d.ts +3 -0
  755. package/node_modules/math-intrinsics/mod.js +9 -0
  756. package/node_modules/math-intrinsics/package.json +86 -0
  757. package/node_modules/math-intrinsics/pow.d.ts +1 -0
  758. package/node_modules/math-intrinsics/pow.js +4 -0
  759. package/node_modules/math-intrinsics/round.d.ts +1 -0
  760. package/node_modules/math-intrinsics/round.js +4 -0
  761. package/node_modules/math-intrinsics/sign.d.ts +3 -0
  762. package/node_modules/math-intrinsics/sign.js +11 -0
  763. package/node_modules/math-intrinsics/test/index.js +192 -0
  764. package/node_modules/math-intrinsics/tsconfig.json +3 -0
  765. package/node_modules/md5.js/LICENSE +21 -0
  766. package/node_modules/md5.js/README.md +29 -0
  767. package/node_modules/md5.js/index.js +146 -0
  768. package/node_modules/md5.js/package.json +38 -0
  769. package/node_modules/miller-rabin/.npmignore +2 -0
  770. package/node_modules/miller-rabin/1.js +7 -0
  771. package/node_modules/miller-rabin/README.md +26 -0
  772. package/node_modules/miller-rabin/bin/miller-rabin +29 -0
  773. package/node_modules/miller-rabin/lib/mr.js +115 -0
  774. package/node_modules/miller-rabin/node_modules/bn.js/LICENSE +19 -0
  775. package/node_modules/miller-rabin/node_modules/bn.js/README.md +200 -0
  776. package/node_modules/miller-rabin/node_modules/bn.js/lib/bn.js +3447 -0
  777. package/node_modules/miller-rabin/node_modules/bn.js/package.json +36 -0
  778. package/node_modules/miller-rabin/node_modules/bn.js/util/genCombMulTo.js +65 -0
  779. package/node_modules/miller-rabin/node_modules/bn.js/util/genCombMulTo10.js +65 -0
  780. package/node_modules/miller-rabin/package.json +32 -0
  781. package/node_modules/miller-rabin/test/api-test.js +18 -0
  782. package/node_modules/miller-rabin/test.js +25 -0
  783. package/node_modules/minimalistic-assert/LICENSE +13 -0
  784. package/node_modules/minimalistic-assert/index.js +11 -0
  785. package/node_modules/minimalistic-assert/package.json +19 -0
  786. package/node_modules/minimalistic-assert/readme.md +4 -0
  787. package/node_modules/minimalistic-crypto-utils/.npmignore +2 -0
  788. package/node_modules/minimalistic-crypto-utils/.travis.yml +11 -0
  789. package/node_modules/minimalistic-crypto-utils/README.md +47 -0
  790. package/node_modules/minimalistic-crypto-utils/lib/utils.js +58 -0
  791. package/node_modules/minimalistic-crypto-utils/package.json +27 -0
  792. package/node_modules/minimalistic-crypto-utils/test/utils-test.js +28 -0
  793. package/node_modules/object-inspect/.eslintrc +53 -0
  794. package/node_modules/object-inspect/.github/FUNDING.yml +12 -0
  795. package/node_modules/object-inspect/.nycrc +13 -0
  796. package/node_modules/object-inspect/CHANGELOG.md +424 -0
  797. package/node_modules/object-inspect/LICENSE +21 -0
  798. package/node_modules/object-inspect/example/all.js +23 -0
  799. package/node_modules/object-inspect/example/circular.js +6 -0
  800. package/node_modules/object-inspect/example/fn.js +5 -0
  801. package/node_modules/object-inspect/example/inspect.js +10 -0
  802. package/node_modules/object-inspect/index.js +544 -0
  803. package/node_modules/object-inspect/package-support.json +20 -0
  804. package/node_modules/object-inspect/package.json +105 -0
  805. package/node_modules/object-inspect/readme.markdown +84 -0
  806. package/node_modules/object-inspect/test/bigint.js +58 -0
  807. package/node_modules/object-inspect/test/browser/dom.js +15 -0
  808. package/node_modules/object-inspect/test/circular.js +16 -0
  809. package/node_modules/object-inspect/test/deep.js +12 -0
  810. package/node_modules/object-inspect/test/element.js +53 -0
  811. package/node_modules/object-inspect/test/err.js +48 -0
  812. package/node_modules/object-inspect/test/fakes.js +29 -0
  813. package/node_modules/object-inspect/test/fn.js +76 -0
  814. package/node_modules/object-inspect/test/global.js +17 -0
  815. package/node_modules/object-inspect/test/has.js +15 -0
  816. package/node_modules/object-inspect/test/holes.js +15 -0
  817. package/node_modules/object-inspect/test/indent-option.js +271 -0
  818. package/node_modules/object-inspect/test/inspect.js +139 -0
  819. package/node_modules/object-inspect/test/lowbyte.js +12 -0
  820. package/node_modules/object-inspect/test/number.js +58 -0
  821. package/node_modules/object-inspect/test/quoteStyle.js +26 -0
  822. package/node_modules/object-inspect/test/toStringTag.js +40 -0
  823. package/node_modules/object-inspect/test/undef.js +12 -0
  824. package/node_modules/object-inspect/test/values.js +261 -0
  825. package/node_modules/object-inspect/test-core-js.js +26 -0
  826. package/node_modules/object-inspect/util.inspect.js +1 -0
  827. package/node_modules/object-is/.eslintrc +5 -0
  828. package/node_modules/object-is/.nycrc +9 -0
  829. package/node_modules/object-is/CHANGELOG.md +175 -0
  830. package/node_modules/object-is/LICENSE +20 -0
  831. package/node_modules/object-is/README.md +60 -0
  832. package/node_modules/object-is/auto.js +3 -0
  833. package/node_modules/object-is/implementation.js +19 -0
  834. package/node_modules/object-is/index.js +18 -0
  835. package/node_modules/object-is/package.json +96 -0
  836. package/node_modules/object-is/polyfill.js +7 -0
  837. package/node_modules/object-is/shim.js +14 -0
  838. package/node_modules/object-is/test/implementation.js +12 -0
  839. package/node_modules/object-is/test/index.js +12 -0
  840. package/node_modules/object-is/test/shimmed.js +28 -0
  841. package/node_modules/object-is/test/tests.js +57 -0
  842. package/node_modules/object-keys/.editorconfig +13 -0
  843. package/node_modules/object-keys/.eslintrc +17 -0
  844. package/node_modules/object-keys/.travis.yml +277 -0
  845. package/node_modules/object-keys/CHANGELOG.md +232 -0
  846. package/node_modules/object-keys/LICENSE +21 -0
  847. package/node_modules/object-keys/README.md +76 -0
  848. package/node_modules/object-keys/implementation.js +122 -0
  849. package/node_modules/object-keys/index.js +32 -0
  850. package/node_modules/object-keys/isArguments.js +17 -0
  851. package/node_modules/object-keys/package.json +88 -0
  852. package/node_modules/object-keys/test/index.js +5 -0
  853. package/node_modules/object.assign/.editorconfig +20 -0
  854. package/node_modules/object.assign/.eslintrc +28 -0
  855. package/node_modules/object.assign/.github/FUNDING.yml +12 -0
  856. package/node_modules/object.assign/.nycrc +9 -0
  857. package/node_modules/object.assign/CHANGELOG.md +246 -0
  858. package/node_modules/object.assign/LICENSE +21 -0
  859. package/node_modules/object.assign/README.md +136 -0
  860. package/node_modules/object.assign/auto.js +3 -0
  861. package/node_modules/object.assign/dist/browser.js +1304 -0
  862. package/node_modules/object.assign/hasSymbols.js +43 -0
  863. package/node_modules/object.assign/implementation.js +46 -0
  864. package/node_modules/object.assign/index.js +22 -0
  865. package/node_modules/object.assign/package.json +96 -0
  866. package/node_modules/object.assign/polyfill.js +55 -0
  867. package/node_modules/object.assign/shim.js +14 -0
  868. package/node_modules/object.assign/test/implementation.js +19 -0
  869. package/node_modules/object.assign/test/index.js +17 -0
  870. package/node_modules/object.assign/test/native.js +49 -0
  871. package/node_modules/object.assign/test/ses-compat.js +12 -0
  872. package/node_modules/object.assign/test/shimmed.js +52 -0
  873. package/node_modules/object.assign/test/tests.js +232 -0
  874. package/node_modules/os-browserify/.npmignore +14 -0
  875. package/node_modules/os-browserify/LICENSE +21 -0
  876. package/node_modules/os-browserify/README.md +5 -0
  877. package/node_modules/os-browserify/browser.js +49 -0
  878. package/node_modules/os-browserify/main.js +1 -0
  879. package/node_modules/os-browserify/package.json +20 -0
  880. package/node_modules/pako/CHANGELOG.md +164 -0
  881. package/node_modules/pako/LICENSE +21 -0
  882. package/node_modules/pako/README.md +191 -0
  883. package/node_modules/pako/dist/pako.js +6818 -0
  884. package/node_modules/pako/dist/pako.min.js +1 -0
  885. package/node_modules/pako/dist/pako_deflate.js +3997 -0
  886. package/node_modules/pako/dist/pako_deflate.min.js +1 -0
  887. package/node_modules/pako/dist/pako_inflate.js +3300 -0
  888. package/node_modules/pako/dist/pako_inflate.min.js +1 -0
  889. package/node_modules/pako/index.js +14 -0
  890. package/node_modules/pako/lib/deflate.js +400 -0
  891. package/node_modules/pako/lib/inflate.js +423 -0
  892. package/node_modules/pako/lib/utils/common.js +105 -0
  893. package/node_modules/pako/lib/utils/strings.js +187 -0
  894. package/node_modules/pako/lib/zlib/README +59 -0
  895. package/node_modules/pako/lib/zlib/adler32.js +51 -0
  896. package/node_modules/pako/lib/zlib/constants.js +68 -0
  897. package/node_modules/pako/lib/zlib/crc32.js +59 -0
  898. package/node_modules/pako/lib/zlib/deflate.js +1874 -0
  899. package/node_modules/pako/lib/zlib/gzheader.js +58 -0
  900. package/node_modules/pako/lib/zlib/inffast.js +345 -0
  901. package/node_modules/pako/lib/zlib/inflate.js +1556 -0
  902. package/node_modules/pako/lib/zlib/inftrees.js +343 -0
  903. package/node_modules/pako/lib/zlib/messages.js +32 -0
  904. package/node_modules/pako/lib/zlib/trees.js +1222 -0
  905. package/node_modules/pako/lib/zlib/zstream.js +47 -0
  906. package/node_modules/pako/package.json +44 -0
  907. package/node_modules/parse-asn1/.eslintrc +34 -0
  908. package/node_modules/parse-asn1/.github/FUNDING.yml +12 -0
  909. package/node_modules/parse-asn1/CHANGELOG.md +188 -0
  910. package/node_modules/parse-asn1/LICENSE +13 -0
  911. package/node_modules/parse-asn1/README.md +8 -0
  912. package/node_modules/parse-asn1/aesid.json +13 -0
  913. package/node_modules/parse-asn1/asn1.js +123 -0
  914. package/node_modules/parse-asn1/certificate.js +89 -0
  915. package/node_modules/parse-asn1/fixProc.js +33 -0
  916. package/node_modules/parse-asn1/index.js +111 -0
  917. package/node_modules/parse-asn1/package.json +59 -0
  918. package/node_modules/path-browserify/.github/FUNDING.yml +12 -0
  919. package/node_modules/path-browserify/.travis.yml +16 -0
  920. package/node_modules/path-browserify/CHANGELOG.md +20 -0
  921. package/node_modules/path-browserify/LICENSE +20 -0
  922. package/node_modules/path-browserify/README.md +45 -0
  923. package/node_modules/path-browserify/index.js +529 -0
  924. package/node_modules/path-browserify/package.json +30 -0
  925. package/node_modules/path-browserify/security.md +10 -0
  926. package/node_modules/path-browserify/test/index.js +9 -0
  927. package/node_modules/path-browserify/test/test-path-basename.js +79 -0
  928. package/node_modules/path-browserify/test/test-path-dirname.js +58 -0
  929. package/node_modules/path-browserify/test/test-path-extname.js +96 -0
  930. package/node_modules/path-browserify/test/test-path-isabsolute.js +33 -0
  931. package/node_modules/path-browserify/test/test-path-join.js +126 -0
  932. package/node_modules/path-browserify/test/test-path-parse-format.js +235 -0
  933. package/node_modules/path-browserify/test/test-path-relative.js +66 -0
  934. package/node_modules/path-browserify/test/test-path-resolve.js +45 -0
  935. package/node_modules/path-browserify/test/test-path-zero-length-strings.js +53 -0
  936. package/node_modules/path-browserify/test/test-path.js +107 -0
  937. package/node_modules/pbkdf2/LICENSE +21 -0
  938. package/node_modules/pbkdf2/README.md +30 -0
  939. package/node_modules/pbkdf2/browser.js +2 -0
  940. package/node_modules/pbkdf2/index.js +38 -0
  941. package/node_modules/pbkdf2/lib/async.js +118 -0
  942. package/node_modules/pbkdf2/lib/default-encoding.js +12 -0
  943. package/node_modules/pbkdf2/lib/precondition.js +19 -0
  944. package/node_modules/pbkdf2/lib/sync-browser.js +105 -0
  945. package/node_modules/pbkdf2/lib/sync.js +52 -0
  946. package/node_modules/pbkdf2/lib/to-buffer.js +13 -0
  947. package/node_modules/pbkdf2/package.json +70 -0
  948. package/node_modules/possible-typed-array-names/.eslintrc +5 -0
  949. package/node_modules/possible-typed-array-names/.github/FUNDING.yml +12 -0
  950. package/node_modules/possible-typed-array-names/CHANGELOG.md +29 -0
  951. package/node_modules/possible-typed-array-names/LICENSE +21 -0
  952. package/node_modules/possible-typed-array-names/README.md +50 -0
  953. package/node_modules/possible-typed-array-names/index.d.ts +16 -0
  954. package/node_modules/possible-typed-array-names/index.js +17 -0
  955. package/node_modules/possible-typed-array-names/package.json +84 -0
  956. package/node_modules/possible-typed-array-names/test/index.js +19 -0
  957. package/node_modules/possible-typed-array-names/tsconfig.json +9 -0
  958. package/node_modules/process/.eslintrc +21 -0
  959. package/node_modules/process/LICENSE +22 -0
  960. package/node_modules/process/README.md +26 -0
  961. package/node_modules/process/browser.js +184 -0
  962. package/node_modules/process/index.js +2 -0
  963. package/node_modules/process/package.json +27 -0
  964. package/node_modules/process/test.js +199 -0
  965. package/node_modules/process-nextick-args/index.js +45 -0
  966. package/node_modules/process-nextick-args/license.md +19 -0
  967. package/node_modules/process-nextick-args/package.json +25 -0
  968. package/node_modules/process-nextick-args/readme.md +18 -0
  969. package/node_modules/public-encrypt/.travis.yml +6 -0
  970. package/node_modules/public-encrypt/LICENSE +19 -0
  971. package/node_modules/public-encrypt/browser.js +10 -0
  972. package/node_modules/public-encrypt/index.js +18 -0
  973. package/node_modules/public-encrypt/mgf.js +19 -0
  974. package/node_modules/public-encrypt/node_modules/bn.js/LICENSE +19 -0
  975. package/node_modules/public-encrypt/node_modules/bn.js/README.md +200 -0
  976. package/node_modules/public-encrypt/node_modules/bn.js/lib/bn.js +3447 -0
  977. package/node_modules/public-encrypt/node_modules/bn.js/package.json +36 -0
  978. package/node_modules/public-encrypt/node_modules/bn.js/util/genCombMulTo.js +65 -0
  979. package/node_modules/public-encrypt/node_modules/bn.js/util/genCombMulTo10.js +65 -0
  980. package/node_modules/public-encrypt/package.json +37 -0
  981. package/node_modules/public-encrypt/privateDecrypt.js +105 -0
  982. package/node_modules/public-encrypt/publicEncrypt.js +88 -0
  983. package/node_modules/public-encrypt/readme.md +8 -0
  984. package/node_modules/public-encrypt/test/1024.priv +16 -0
  985. package/node_modules/public-encrypt/test/1024.pub +6 -0
  986. package/node_modules/public-encrypt/test/ec.pass.priv +7 -0
  987. package/node_modules/public-encrypt/test/ec.priv +5 -0
  988. package/node_modules/public-encrypt/test/ec.pub +4 -0
  989. package/node_modules/public-encrypt/test/index.js +113 -0
  990. package/node_modules/public-encrypt/test/nodeTests.js +51 -0
  991. package/node_modules/public-encrypt/test/pass.1024.priv +18 -0
  992. package/node_modules/public-encrypt/test/pass.1024.pub +6 -0
  993. package/node_modules/public-encrypt/test/rsa.1024.priv +15 -0
  994. package/node_modules/public-encrypt/test/rsa.1024.pub +5 -0
  995. package/node_modules/public-encrypt/test/rsa.2028.priv +27 -0
  996. package/node_modules/public-encrypt/test/rsa.2028.pub +8 -0
  997. package/node_modules/public-encrypt/test/rsa.pass.priv +30 -0
  998. package/node_modules/public-encrypt/test/rsa.pass.pub +9 -0
  999. package/node_modules/public-encrypt/test/test_cert.pem +20 -0
  1000. package/node_modules/public-encrypt/test/test_key.pem +15 -0
  1001. package/node_modules/public-encrypt/test/test_rsa_privkey.pem +15 -0
  1002. package/node_modules/public-encrypt/test/test_rsa_privkey_encrypted.pem +18 -0
  1003. package/node_modules/public-encrypt/test/test_rsa_pubkey.pem +6 -0
  1004. package/node_modules/public-encrypt/withPublic.js +12 -0
  1005. package/node_modules/public-encrypt/xor.js +8 -0
  1006. package/node_modules/punycode/LICENSE-MIT.txt +20 -0
  1007. package/node_modules/punycode/README.md +176 -0
  1008. package/node_modules/punycode/package.json +60 -0
  1009. package/node_modules/punycode/punycode.js +533 -0
  1010. package/node_modules/qs/.editorconfig +46 -0
  1011. package/node_modules/qs/.eslintrc +39 -0
  1012. package/node_modules/qs/.github/FUNDING.yml +12 -0
  1013. package/node_modules/qs/.nycrc +13 -0
  1014. package/node_modules/qs/CHANGELOG.md +622 -0
  1015. package/node_modules/qs/LICENSE.md +29 -0
  1016. package/node_modules/qs/README.md +733 -0
  1017. package/node_modules/qs/dist/qs.js +141 -0
  1018. package/node_modules/qs/lib/formats.js +23 -0
  1019. package/node_modules/qs/lib/index.js +11 -0
  1020. package/node_modules/qs/lib/parse.js +328 -0
  1021. package/node_modules/qs/lib/stringify.js +356 -0
  1022. package/node_modules/qs/lib/utils.js +268 -0
  1023. package/node_modules/qs/package.json +93 -0
  1024. package/node_modules/qs/test/empty-keys-cases.js +267 -0
  1025. package/node_modules/qs/test/parse.js +1276 -0
  1026. package/node_modules/qs/test/stringify.js +1306 -0
  1027. package/node_modules/qs/test/utils.js +262 -0
  1028. package/node_modules/querystring-es3/.travis.yml +4 -0
  1029. package/node_modules/querystring-es3/History.md +20 -0
  1030. package/node_modules/querystring-es3/License.md +19 -0
  1031. package/node_modules/querystring-es3/Readme.md +15 -0
  1032. package/node_modules/querystring-es3/decode.js +84 -0
  1033. package/node_modules/querystring-es3/encode.js +85 -0
  1034. package/node_modules/querystring-es3/index.js +4 -0
  1035. package/node_modules/querystring-es3/package.json +65 -0
  1036. package/node_modules/querystring-es3/test/common-index.js +3 -0
  1037. package/node_modules/querystring-es3/test/index.js +210 -0
  1038. package/node_modules/querystring-es3/test/tap-index.js +3 -0
  1039. package/node_modules/randombytes/.travis.yml +15 -0
  1040. package/node_modules/randombytes/.zuul.yml +1 -0
  1041. package/node_modules/randombytes/LICENSE +21 -0
  1042. package/node_modules/randombytes/README.md +14 -0
  1043. package/node_modules/randombytes/browser.js +50 -0
  1044. package/node_modules/randombytes/index.js +1 -0
  1045. package/node_modules/randombytes/package.json +36 -0
  1046. package/node_modules/randombytes/test.js +81 -0
  1047. package/node_modules/randomfill/.travis.yml +15 -0
  1048. package/node_modules/randomfill/.zuul.yml +1 -0
  1049. package/node_modules/randomfill/LICENSE +21 -0
  1050. package/node_modules/randomfill/README.md +15 -0
  1051. package/node_modules/randomfill/browser.js +108 -0
  1052. package/node_modules/randomfill/index.js +7 -0
  1053. package/node_modules/randomfill/package.json +37 -0
  1054. package/node_modules/randomfill/test.js +28 -0
  1055. package/node_modules/readable-stream/CONTRIBUTING.md +38 -0
  1056. package/node_modules/readable-stream/GOVERNANCE.md +136 -0
  1057. package/node_modules/readable-stream/LICENSE +47 -0
  1058. package/node_modules/readable-stream/README.md +106 -0
  1059. package/node_modules/readable-stream/errors-browser.js +127 -0
  1060. package/node_modules/readable-stream/errors.js +116 -0
  1061. package/node_modules/readable-stream/experimentalWarning.js +17 -0
  1062. package/node_modules/readable-stream/lib/_stream_duplex.js +126 -0
  1063. package/node_modules/readable-stream/lib/_stream_passthrough.js +37 -0
  1064. package/node_modules/readable-stream/lib/_stream_readable.js +1027 -0
  1065. package/node_modules/readable-stream/lib/_stream_transform.js +190 -0
  1066. package/node_modules/readable-stream/lib/_stream_writable.js +641 -0
  1067. package/node_modules/readable-stream/lib/internal/streams/async_iterator.js +180 -0
  1068. package/node_modules/readable-stream/lib/internal/streams/buffer_list.js +183 -0
  1069. package/node_modules/readable-stream/lib/internal/streams/destroy.js +96 -0
  1070. package/node_modules/readable-stream/lib/internal/streams/end-of-stream.js +86 -0
  1071. package/node_modules/readable-stream/lib/internal/streams/from-browser.js +3 -0
  1072. package/node_modules/readable-stream/lib/internal/streams/from.js +52 -0
  1073. package/node_modules/readable-stream/lib/internal/streams/pipeline.js +86 -0
  1074. package/node_modules/readable-stream/lib/internal/streams/state.js +22 -0
  1075. package/node_modules/readable-stream/lib/internal/streams/stream-browser.js +1 -0
  1076. package/node_modules/readable-stream/lib/internal/streams/stream.js +1 -0
  1077. package/node_modules/readable-stream/package.json +68 -0
  1078. package/node_modules/readable-stream/readable-browser.js +9 -0
  1079. package/node_modules/readable-stream/readable.js +16 -0
  1080. package/node_modules/ripemd160/CHANGELOG.md +72 -0
  1081. package/node_modules/ripemd160/LICENSE +21 -0
  1082. package/node_modules/ripemd160/README.md +27 -0
  1083. package/node_modules/ripemd160/index.js +163 -0
  1084. package/node_modules/ripemd160/package.json +37 -0
  1085. package/node_modules/safe-buffer/LICENSE +21 -0
  1086. package/node_modules/safe-buffer/README.md +584 -0
  1087. package/node_modules/safe-buffer/index.d.ts +187 -0
  1088. package/node_modules/safe-buffer/index.js +65 -0
  1089. package/node_modules/safe-buffer/package.json +51 -0
  1090. package/node_modules/safe-regex-test/.eslintrc +9 -0
  1091. package/node_modules/safe-regex-test/.github/FUNDING.yml +12 -0
  1092. package/node_modules/safe-regex-test/.nycrc +13 -0
  1093. package/node_modules/safe-regex-test/CHANGELOG.md +55 -0
  1094. package/node_modules/safe-regex-test/LICENSE +21 -0
  1095. package/node_modules/safe-regex-test/README.md +46 -0
  1096. package/node_modules/safe-regex-test/index.d.ts +3 -0
  1097. package/node_modules/safe-regex-test/index.js +17 -0
  1098. package/node_modules/safe-regex-test/package.json +87 -0
  1099. package/node_modules/safe-regex-test/test/index.js +41 -0
  1100. package/node_modules/safe-regex-test/tsconfig.json +9 -0
  1101. package/node_modules/set-function-length/.eslintrc +27 -0
  1102. package/node_modules/set-function-length/.github/FUNDING.yml +12 -0
  1103. package/node_modules/set-function-length/.nycrc +13 -0
  1104. package/node_modules/set-function-length/CHANGELOG.md +70 -0
  1105. package/node_modules/set-function-length/LICENSE +21 -0
  1106. package/node_modules/set-function-length/README.md +56 -0
  1107. package/node_modules/set-function-length/env.d.ts +9 -0
  1108. package/node_modules/set-function-length/env.js +25 -0
  1109. package/node_modules/set-function-length/index.d.ts +7 -0
  1110. package/node_modules/set-function-length/index.js +42 -0
  1111. package/node_modules/set-function-length/package.json +102 -0
  1112. package/node_modules/set-function-length/tsconfig.json +9 -0
  1113. package/node_modules/setimmediate/LICENSE.txt +20 -0
  1114. package/node_modules/setimmediate/package.json +30 -0
  1115. package/node_modules/setimmediate/setImmediate.js +186 -0
  1116. package/node_modules/sha.js/.travis.yml +17 -0
  1117. package/node_modules/sha.js/LICENSE +49 -0
  1118. package/node_modules/sha.js/README.md +44 -0
  1119. package/node_modules/sha.js/bin.js +41 -0
  1120. package/node_modules/sha.js/hash.js +81 -0
  1121. package/node_modules/sha.js/index.js +15 -0
  1122. package/node_modules/sha.js/package.json +30 -0
  1123. package/node_modules/sha.js/sha.js +94 -0
  1124. package/node_modules/sha.js/sha1.js +99 -0
  1125. package/node_modules/sha.js/sha224.js +53 -0
  1126. package/node_modules/sha.js/sha256.js +135 -0
  1127. package/node_modules/sha.js/sha384.js +57 -0
  1128. package/node_modules/sha.js/sha512.js +260 -0
  1129. package/node_modules/sha.js/test/hash.js +75 -0
  1130. package/node_modules/sha.js/test/test.js +100 -0
  1131. package/node_modules/sha.js/test/vectors.js +72 -0
  1132. package/node_modules/side-channel/.editorconfig +9 -0
  1133. package/node_modules/side-channel/.eslintrc +12 -0
  1134. package/node_modules/side-channel/.github/FUNDING.yml +12 -0
  1135. package/node_modules/side-channel/.nycrc +13 -0
  1136. package/node_modules/side-channel/CHANGELOG.md +110 -0
  1137. package/node_modules/side-channel/LICENSE +21 -0
  1138. package/node_modules/side-channel/README.md +61 -0
  1139. package/node_modules/side-channel/index.d.ts +14 -0
  1140. package/node_modules/side-channel/index.js +43 -0
  1141. package/node_modules/side-channel/package.json +85 -0
  1142. package/node_modules/side-channel/test/index.js +104 -0
  1143. package/node_modules/side-channel/tsconfig.json +9 -0
  1144. package/node_modules/side-channel-list/.editorconfig +9 -0
  1145. package/node_modules/side-channel-list/.eslintrc +11 -0
  1146. package/node_modules/side-channel-list/.github/FUNDING.yml +12 -0
  1147. package/node_modules/side-channel-list/.nycrc +13 -0
  1148. package/node_modules/side-channel-list/CHANGELOG.md +15 -0
  1149. package/node_modules/side-channel-list/LICENSE +21 -0
  1150. package/node_modules/side-channel-list/README.md +62 -0
  1151. package/node_modules/side-channel-list/index.d.ts +13 -0
  1152. package/node_modules/side-channel-list/index.js +113 -0
  1153. package/node_modules/side-channel-list/list.d.ts +14 -0
  1154. package/node_modules/side-channel-list/package.json +77 -0
  1155. package/node_modules/side-channel-list/test/index.js +104 -0
  1156. package/node_modules/side-channel-list/tsconfig.json +9 -0
  1157. package/node_modules/side-channel-map/.editorconfig +9 -0
  1158. package/node_modules/side-channel-map/.eslintrc +11 -0
  1159. package/node_modules/side-channel-map/.github/FUNDING.yml +12 -0
  1160. package/node_modules/side-channel-map/.nycrc +13 -0
  1161. package/node_modules/side-channel-map/CHANGELOG.md +22 -0
  1162. package/node_modules/side-channel-map/LICENSE +21 -0
  1163. package/node_modules/side-channel-map/README.md +62 -0
  1164. package/node_modules/side-channel-map/index.d.ts +15 -0
  1165. package/node_modules/side-channel-map/index.js +68 -0
  1166. package/node_modules/side-channel-map/package.json +80 -0
  1167. package/node_modules/side-channel-map/test/index.js +114 -0
  1168. package/node_modules/side-channel-map/tsconfig.json +9 -0
  1169. package/node_modules/side-channel-weakmap/.editorconfig +9 -0
  1170. package/node_modules/side-channel-weakmap/.eslintrc +12 -0
  1171. package/node_modules/side-channel-weakmap/.github/FUNDING.yml +12 -0
  1172. package/node_modules/side-channel-weakmap/.nycrc +13 -0
  1173. package/node_modules/side-channel-weakmap/CHANGELOG.md +28 -0
  1174. package/node_modules/side-channel-weakmap/LICENSE +21 -0
  1175. package/node_modules/side-channel-weakmap/README.md +62 -0
  1176. package/node_modules/side-channel-weakmap/index.d.ts +15 -0
  1177. package/node_modules/side-channel-weakmap/index.js +84 -0
  1178. package/node_modules/side-channel-weakmap/package.json +87 -0
  1179. package/node_modules/side-channel-weakmap/test/index.js +114 -0
  1180. package/node_modules/side-channel-weakmap/tsconfig.json +9 -0
  1181. package/node_modules/stream-browserify/.airtap.yml +20 -0
  1182. package/node_modules/stream-browserify/.github/FUNDING.yml +12 -0
  1183. package/node_modules/stream-browserify/.travis.yml +24 -0
  1184. package/node_modules/stream-browserify/CHANGELOG.md +8 -0
  1185. package/node_modules/stream-browserify/LICENSE +20 -0
  1186. package/node_modules/stream-browserify/index.js +129 -0
  1187. package/node_modules/stream-browserify/package.json +54 -0
  1188. package/node_modules/stream-browserify/readme.markdown +32 -0
  1189. package/node_modules/stream-browserify/security.md +10 -0
  1190. package/node_modules/stream-browserify/test/buf.js +33 -0
  1191. package/node_modules/stream-browserify/test/index.js +2 -0
  1192. package/node_modules/stream-browserify/test/pipeline.js +38 -0
  1193. package/node_modules/stream-browserify/test/use-stream.js +4 -0
  1194. package/node_modules/stream-http/LICENSE +24 -0
  1195. package/node_modules/stream-http/README.md +134 -0
  1196. package/node_modules/stream-http/index.js +85 -0
  1197. package/node_modules/stream-http/lib/capability.js +59 -0
  1198. package/node_modules/stream-http/lib/request.js +352 -0
  1199. package/node_modules/stream-http/lib/response.js +211 -0
  1200. package/node_modules/stream-http/package.json +47 -0
  1201. package/node_modules/string_decoder/LICENSE +48 -0
  1202. package/node_modules/string_decoder/README.md +47 -0
  1203. package/node_modules/string_decoder/lib/string_decoder.js +296 -0
  1204. package/node_modules/string_decoder/package.json +34 -0
  1205. package/node_modules/timers-browserify/CHANGELOG.md +153 -0
  1206. package/node_modules/timers-browserify/LICENSE.md +46 -0
  1207. package/node_modules/timers-browserify/README.md +40 -0
  1208. package/node_modules/timers-browserify/main.js +63 -0
  1209. package/node_modules/timers-browserify/package.json +53 -0
  1210. package/node_modules/tty-browserify/LICENSE +18 -0
  1211. package/node_modules/tty-browserify/index.js +11 -0
  1212. package/node_modules/tty-browserify/package.json +29 -0
  1213. package/node_modules/tty-browserify/readme.markdown +1 -0
  1214. package/node_modules/url/.eslintignore +1 -0
  1215. package/node_modules/url/.eslintrc +38 -0
  1216. package/node_modules/url/.nycrc +9 -0
  1217. package/node_modules/url/LICENSE +21 -0
  1218. package/node_modules/url/README.md +108 -0
  1219. package/node_modules/url/package.json +42 -0
  1220. package/node_modules/url/test/index.js +2080 -0
  1221. package/node_modules/url/test/mocha.opts +2 -0
  1222. package/node_modules/url/url.js +776 -0
  1223. package/node_modules/util/LICENSE +18 -0
  1224. package/node_modules/util/README.md +48 -0
  1225. package/node_modules/util/package.json +50 -0
  1226. package/node_modules/util/support/isBuffer.js +3 -0
  1227. package/node_modules/util/support/isBufferBrowser.js +6 -0
  1228. package/node_modules/util/support/types.js +334 -0
  1229. package/node_modules/util/util.js +715 -0
  1230. package/node_modules/util-deprecate/History.md +16 -0
  1231. package/node_modules/util-deprecate/LICENSE +24 -0
  1232. package/node_modules/util-deprecate/README.md +53 -0
  1233. package/node_modules/util-deprecate/browser.js +67 -0
  1234. package/node_modules/util-deprecate/node.js +6 -0
  1235. package/node_modules/util-deprecate/package.json +27 -0
  1236. package/node_modules/vm-browserify/.github/FUNDING.yml +12 -0
  1237. package/node_modules/vm-browserify/.travis.yml +8 -0
  1238. package/node_modules/vm-browserify/CHANGELOG.md +23 -0
  1239. package/node_modules/vm-browserify/LICENSE +18 -0
  1240. package/node_modules/vm-browserify/example/run/bundle.js +160 -0
  1241. package/node_modules/vm-browserify/example/run/entry.js +6 -0
  1242. package/node_modules/vm-browserify/example/run/index.html +8 -0
  1243. package/node_modules/vm-browserify/example/run/server.js +6 -0
  1244. package/node_modules/vm-browserify/index.js +149 -0
  1245. package/node_modules/vm-browserify/package.json +30 -0
  1246. package/node_modules/vm-browserify/readme.markdown +66 -0
  1247. package/node_modules/vm-browserify/security.md +10 -0
  1248. package/node_modules/vm-browserify/test/vm.js +35 -0
  1249. package/node_modules/which-typed-array/.editorconfig +20 -0
  1250. package/node_modules/which-typed-array/.eslintrc +10 -0
  1251. package/node_modules/which-typed-array/.github/FUNDING.yml +12 -0
  1252. package/node_modules/which-typed-array/.nycrc +13 -0
  1253. package/node_modules/which-typed-array/CHANGELOG.md +261 -0
  1254. package/node_modules/which-typed-array/LICENSE +22 -0
  1255. package/node_modules/which-typed-array/README.md +70 -0
  1256. package/node_modules/which-typed-array/index.d.ts +62 -0
  1257. package/node_modules/which-typed-array/index.js +117 -0
  1258. package/node_modules/which-typed-array/package.json +130 -0
  1259. package/node_modules/which-typed-array/test/index.js +105 -0
  1260. package/node_modules/which-typed-array/tsconfig.json +9 -0
  1261. package/node_modules/xtend/.jshintrc +30 -0
  1262. package/node_modules/xtend/LICENSE +20 -0
  1263. package/node_modules/xtend/README.md +32 -0
  1264. package/node_modules/xtend/immutable.js +19 -0
  1265. package/node_modules/xtend/mutable.js +17 -0
  1266. package/node_modules/xtend/package.json +55 -0
  1267. package/node_modules/xtend/test.js +103 -0
  1268. package/package.json +3 -4
@@ -0,0 +1,2080 @@
1
+ 'use strict';
2
+
3
+ /*
4
+ * Copyright Joyent, Inc. and other Node contributors.
5
+ *
6
+ * Permission is hereby granted, free of charge, to any person obtaining a
7
+ * copy of this software and associated documentation files (the
8
+ * "Software"), to deal in the Software without restriction, including
9
+ * without limitation the rights to use, copy, modify, merge, publish,
10
+ * distribute, sublicense, and/or sell copies of the Software, and to permit
11
+ * persons to whom the Software is furnished to do so, subject to the
12
+ * following conditions:
13
+ *
14
+ * The above copyright notice and this permission notice shall be included
15
+ * in all copies or substantial portions of the Software.
16
+ *
17
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
18
+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
19
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
20
+ * NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
21
+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
22
+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
23
+ * USE OR OTHER DEALINGS IN THE SOFTWARE.
24
+ */
25
+
26
+ var test = require('mocha').test;
27
+ var assert = require('assert');
28
+ var nodeURL = require('url');
29
+
30
+ var url = require('../url');
31
+
32
+ /*
33
+ * URLs to parse, and expected data
34
+ * { url : parsed }
35
+ */
36
+ var parseTests = {
37
+ '//some_path': {
38
+ href: '//some_path',
39
+ pathname: '//some_path',
40
+ path: '//some_path'
41
+ },
42
+
43
+ 'http:\\\\evil-phisher\\foo.html#h\\a\\s\\h': {
44
+ protocol: 'http:',
45
+ slashes: true,
46
+ host: 'evil-phisher',
47
+ hostname: 'evil-phisher',
48
+ pathname: '/foo.html',
49
+ path: '/foo.html',
50
+ hash: '#h%5Ca%5Cs%5Ch',
51
+ href: 'http://evil-phisher/foo.html#h%5Ca%5Cs%5Ch'
52
+ },
53
+
54
+ 'http:\\\\evil-phisher\\foo.html?json="\\"foo\\""#h\\a\\s\\h': {
55
+ protocol: 'http:',
56
+ slashes: true,
57
+ host: 'evil-phisher',
58
+ hostname: 'evil-phisher',
59
+ pathname: '/foo.html',
60
+ search: '?json=%22%5C%22foo%5C%22%22',
61
+ query: 'json=%22%5C%22foo%5C%22%22',
62
+ path: '/foo.html?json=%22%5C%22foo%5C%22%22',
63
+ hash: '#h%5Ca%5Cs%5Ch',
64
+ href: 'http://evil-phisher/foo.html?json=%22%5C%22foo%5C%22%22#h%5Ca%5Cs%5Ch'
65
+ },
66
+
67
+ 'http:\\\\evil-phisher\\foo.html#h\\a\\s\\h?blarg': {
68
+ protocol: 'http:',
69
+ slashes: true,
70
+ host: 'evil-phisher',
71
+ hostname: 'evil-phisher',
72
+ pathname: '/foo.html',
73
+ path: '/foo.html',
74
+ hash: '#h%5Ca%5Cs%5Ch?blarg',
75
+ href: 'http://evil-phisher/foo.html#h%5Ca%5Cs%5Ch?blarg'
76
+ },
77
+
78
+ 'http:\\\\evil-phisher\\foo.html': {
79
+ protocol: 'http:',
80
+ slashes: true,
81
+ host: 'evil-phisher',
82
+ hostname: 'evil-phisher',
83
+ pathname: '/foo.html',
84
+ path: '/foo.html',
85
+ href: 'http://evil-phisher/foo.html'
86
+ },
87
+
88
+ 'HTTP://www.example.com/': {
89
+ href: 'http://www.example.com/',
90
+ protocol: 'http:',
91
+ slashes: true,
92
+ host: 'www.example.com',
93
+ hostname: 'www.example.com',
94
+ pathname: '/',
95
+ path: '/'
96
+ },
97
+
98
+ 'HTTP://www.example.com': {
99
+ href: 'http://www.example.com/',
100
+ protocol: 'http:',
101
+ slashes: true,
102
+ host: 'www.example.com',
103
+ hostname: 'www.example.com',
104
+ pathname: '/',
105
+ path: '/'
106
+ },
107
+
108
+ 'http://www.ExAmPlE.com/': {
109
+ href: 'http://www.example.com/',
110
+ protocol: 'http:',
111
+ slashes: true,
112
+ host: 'www.example.com',
113
+ hostname: 'www.example.com',
114
+ pathname: '/',
115
+ path: '/'
116
+ },
117
+
118
+ 'http://user:pw@www.ExAmPlE.com/': {
119
+ href: 'http://user:pw@www.example.com/',
120
+ protocol: 'http:',
121
+ slashes: true,
122
+ auth: 'user:pw',
123
+ host: 'www.example.com',
124
+ hostname: 'www.example.com',
125
+ pathname: '/',
126
+ path: '/'
127
+ },
128
+
129
+ 'http://USER:PW@www.ExAmPlE.com/': {
130
+ href: 'http://USER:PW@www.example.com/',
131
+ protocol: 'http:',
132
+ slashes: true,
133
+ auth: 'USER:PW',
134
+ host: 'www.example.com',
135
+ hostname: 'www.example.com',
136
+ pathname: '/',
137
+ path: '/'
138
+ },
139
+
140
+ 'http://user@www.example.com/': {
141
+ href: 'http://user@www.example.com/',
142
+ protocol: 'http:',
143
+ slashes: true,
144
+ auth: 'user',
145
+ host: 'www.example.com',
146
+ hostname: 'www.example.com',
147
+ pathname: '/',
148
+ path: '/'
149
+ },
150
+
151
+ 'http://user%3Apw@www.example.com/': {
152
+ href: 'http://user:pw@www.example.com/',
153
+ protocol: 'http:',
154
+ slashes: true,
155
+ auth: 'user:pw',
156
+ host: 'www.example.com',
157
+ hostname: 'www.example.com',
158
+ pathname: '/',
159
+ path: '/'
160
+ },
161
+
162
+ 'http://x.com/path?that\'s#all, folks': {
163
+ href: 'http://x.com/path?that%27s#all,%20folks',
164
+ protocol: 'http:',
165
+ slashes: true,
166
+ host: 'x.com',
167
+ hostname: 'x.com',
168
+ search: '?that%27s',
169
+ query: 'that%27s',
170
+ pathname: '/path',
171
+ hash: '#all,%20folks',
172
+ path: '/path?that%27s'
173
+ },
174
+
175
+ 'HTTP://X.COM/Y': {
176
+ href: 'http://x.com/Y',
177
+ protocol: 'http:',
178
+ slashes: true,
179
+ host: 'x.com',
180
+ hostname: 'x.com',
181
+ pathname: '/Y',
182
+ path: '/Y'
183
+ },
184
+
185
+ /*
186
+ * + not an invalid host character
187
+ * per https://url.spec.whatwg.org/#host-parsing
188
+ */
189
+ 'http://x.y.com+a/b/c': {
190
+ href: 'http://x.y.com+a/b/c',
191
+ protocol: 'http:',
192
+ slashes: true,
193
+ host: 'x.y.com+a',
194
+ hostname: 'x.y.com+a',
195
+ pathname: '/b/c',
196
+ path: '/b/c'
197
+ },
198
+
199
+ // an unexpected invalid char in the hostname.
200
+ 'HtTp://x.y.cOm;a/b/c?d=e#f g<h>i': {
201
+ href: 'http://x.y.com/;a/b/c?d=e#f%20g%3Ch%3Ei',
202
+ protocol: 'http:',
203
+ slashes: true,
204
+ host: 'x.y.com',
205
+ hostname: 'x.y.com',
206
+ pathname: ';a/b/c',
207
+ search: '?d=e',
208
+ query: 'd=e',
209
+ hash: '#f%20g%3Ch%3Ei',
210
+ path: ';a/b/c?d=e'
211
+ },
212
+
213
+ // make sure that we don't accidentally lcast the path parts.
214
+ 'HtTp://x.y.cOm;A/b/c?d=e#f g<h>i': {
215
+ href: 'http://x.y.com/;A/b/c?d=e#f%20g%3Ch%3Ei',
216
+ protocol: 'http:',
217
+ slashes: true,
218
+ host: 'x.y.com',
219
+ hostname: 'x.y.com',
220
+ pathname: ';A/b/c',
221
+ search: '?d=e',
222
+ query: 'd=e',
223
+ hash: '#f%20g%3Ch%3Ei',
224
+ path: ';A/b/c?d=e'
225
+ },
226
+
227
+ 'http://x...y...#p': {
228
+ href: 'http://x...y.../#p',
229
+ protocol: 'http:',
230
+ slashes: true,
231
+ host: 'x...y...',
232
+ hostname: 'x...y...',
233
+ hash: '#p',
234
+ pathname: '/',
235
+ path: '/'
236
+ },
237
+
238
+ 'http://x/p/"quoted"': {
239
+ href: 'http://x/p/%22quoted%22',
240
+ protocol: 'http:',
241
+ slashes: true,
242
+ host: 'x',
243
+ hostname: 'x',
244
+ pathname: '/p/%22quoted%22',
245
+ path: '/p/%22quoted%22'
246
+ },
247
+
248
+ '<http://goo.corn/bread> Is a URL!': {
249
+ href: '%3Chttp://goo.corn/bread%3E%20Is%20a%20URL!',
250
+ pathname: '%3Chttp://goo.corn/bread%3E%20Is%20a%20URL!',
251
+ path: '%3Chttp://goo.corn/bread%3E%20Is%20a%20URL!'
252
+ },
253
+
254
+ 'http://www.narwhaljs.org/blog/categories?id=news': {
255
+ href: 'http://www.narwhaljs.org/blog/categories?id=news',
256
+ protocol: 'http:',
257
+ slashes: true,
258
+ host: 'www.narwhaljs.org',
259
+ hostname: 'www.narwhaljs.org',
260
+ search: '?id=news',
261
+ query: 'id=news',
262
+ pathname: '/blog/categories',
263
+ path: '/blog/categories?id=news'
264
+ },
265
+
266
+ 'http://mt0.google.com/vt/lyrs=m@114&hl=en&src=api&x=2&y=2&z=3&s=': {
267
+ href: 'http://mt0.google.com/vt/lyrs=m@114&hl=en&src=api&x=2&y=2&z=3&s=',
268
+ protocol: 'http:',
269
+ slashes: true,
270
+ host: 'mt0.google.com',
271
+ hostname: 'mt0.google.com',
272
+ pathname: '/vt/lyrs=m@114&hl=en&src=api&x=2&y=2&z=3&s=',
273
+ path: '/vt/lyrs=m@114&hl=en&src=api&x=2&y=2&z=3&s='
274
+ },
275
+
276
+ 'http://mt0.google.com/vt/lyrs=m@114???&hl=en&src=api&x=2&y=2&z=3&s=': {
277
+ href: 'http://mt0.google.com/vt/lyrs=m@114???&hl=en&src=api&x=2&y=2&z=3&s=',
278
+ protocol: 'http:',
279
+ slashes: true,
280
+ host: 'mt0.google.com',
281
+ hostname: 'mt0.google.com',
282
+ search: '???&hl=en&src=api&x=2&y=2&z=3&s=',
283
+ query: '??&hl=en&src=api&x=2&y=2&z=3&s=',
284
+ pathname: '/vt/lyrs=m@114',
285
+ path: '/vt/lyrs=m@114???&hl=en&src=api&x=2&y=2&z=3&s='
286
+ },
287
+
288
+ 'http://user:pass@mt0.google.com/vt/lyrs=m@114???&hl=en&src=api&x=2&y=2&z=3&s=': {
289
+ href: 'http://user:pass@mt0.google.com/vt/lyrs=m@114???&hl=en&src=api&x=2&y=2&z=3&s=',
290
+ protocol: 'http:',
291
+ slashes: true,
292
+ host: 'mt0.google.com',
293
+ auth: 'user:pass',
294
+ hostname: 'mt0.google.com',
295
+ search: '???&hl=en&src=api&x=2&y=2&z=3&s=',
296
+ query: '??&hl=en&src=api&x=2&y=2&z=3&s=',
297
+ pathname: '/vt/lyrs=m@114',
298
+ path: '/vt/lyrs=m@114???&hl=en&src=api&x=2&y=2&z=3&s='
299
+ },
300
+
301
+ 'file:///etc/passwd': {
302
+ href: 'file:///etc/passwd',
303
+ slashes: true,
304
+ protocol: 'file:',
305
+ pathname: '/etc/passwd',
306
+ hostname: '',
307
+ host: '',
308
+ path: '/etc/passwd'
309
+ },
310
+
311
+ 'file://localhost/etc/passwd': {
312
+ href: 'file://localhost/etc/passwd',
313
+ protocol: 'file:',
314
+ slashes: true,
315
+ pathname: '/etc/passwd',
316
+ hostname: 'localhost',
317
+ host: 'localhost',
318
+ path: '/etc/passwd'
319
+ },
320
+
321
+ 'file://foo/etc/passwd': {
322
+ href: 'file://foo/etc/passwd',
323
+ protocol: 'file:',
324
+ slashes: true,
325
+ pathname: '/etc/passwd',
326
+ hostname: 'foo',
327
+ host: 'foo',
328
+ path: '/etc/passwd'
329
+ },
330
+
331
+ 'file:///etc/node/': {
332
+ href: 'file:///etc/node/',
333
+ slashes: true,
334
+ protocol: 'file:',
335
+ pathname: '/etc/node/',
336
+ hostname: '',
337
+ host: '',
338
+ path: '/etc/node/'
339
+ },
340
+
341
+ 'file://localhost/etc/node/': {
342
+ href: 'file://localhost/etc/node/',
343
+ protocol: 'file:',
344
+ slashes: true,
345
+ pathname: '/etc/node/',
346
+ hostname: 'localhost',
347
+ host: 'localhost',
348
+ path: '/etc/node/'
349
+ },
350
+
351
+ 'file://foo/etc/node/': {
352
+ href: 'file://foo/etc/node/',
353
+ protocol: 'file:',
354
+ slashes: true,
355
+ pathname: '/etc/node/',
356
+ hostname: 'foo',
357
+ host: 'foo',
358
+ path: '/etc/node/'
359
+ },
360
+
361
+ 'http:/baz/../foo/bar': {
362
+ href: 'http:/baz/../foo/bar',
363
+ protocol: 'http:',
364
+ pathname: '/baz/../foo/bar',
365
+ path: '/baz/../foo/bar'
366
+ },
367
+
368
+ 'http://user:pass@example.com:8000/foo/bar?baz=quux#frag': {
369
+ href: 'http://user:pass@example.com:8000/foo/bar?baz=quux#frag',
370
+ protocol: 'http:',
371
+ slashes: true,
372
+ host: 'example.com:8000',
373
+ auth: 'user:pass',
374
+ port: '8000',
375
+ hostname: 'example.com',
376
+ hash: '#frag',
377
+ search: '?baz=quux',
378
+ query: 'baz=quux',
379
+ pathname: '/foo/bar',
380
+ path: '/foo/bar?baz=quux'
381
+ },
382
+
383
+ '//user:pass@example.com:8000/foo/bar?baz=quux#frag': {
384
+ href: '//user:pass@example.com:8000/foo/bar?baz=quux#frag',
385
+ slashes: true,
386
+ host: 'example.com:8000',
387
+ auth: 'user:pass',
388
+ port: '8000',
389
+ hostname: 'example.com',
390
+ hash: '#frag',
391
+ search: '?baz=quux',
392
+ query: 'baz=quux',
393
+ pathname: '/foo/bar',
394
+ path: '/foo/bar?baz=quux'
395
+ },
396
+
397
+ '/foo/bar?baz=quux#frag': {
398
+ href: '/foo/bar?baz=quux#frag',
399
+ hash: '#frag',
400
+ search: '?baz=quux',
401
+ query: 'baz=quux',
402
+ pathname: '/foo/bar',
403
+ path: '/foo/bar?baz=quux'
404
+ },
405
+
406
+ 'http:/foo/bar?baz=quux#frag': {
407
+ href: 'http:/foo/bar?baz=quux#frag',
408
+ protocol: 'http:',
409
+ hash: '#frag',
410
+ search: '?baz=quux',
411
+ query: 'baz=quux',
412
+ pathname: '/foo/bar',
413
+ path: '/foo/bar?baz=quux'
414
+ },
415
+
416
+ 'mailto:foo@bar.com?subject=hello': {
417
+ href: 'mailto:foo@bar.com?subject=hello',
418
+ protocol: 'mailto:',
419
+ host: 'bar.com',
420
+ auth: 'foo',
421
+ hostname: 'bar.com',
422
+ search: '?subject=hello',
423
+ query: 'subject=hello',
424
+ path: '?subject=hello'
425
+ },
426
+
427
+ 'javascript:alert(\'hello\');': {
428
+ href: 'javascript:alert(\'hello\');',
429
+ protocol: 'javascript:',
430
+ pathname: 'alert(\'hello\');',
431
+ path: 'alert(\'hello\');'
432
+ },
433
+
434
+ 'xmpp:isaacschlueter@jabber.org': {
435
+ href: 'xmpp:isaacschlueter@jabber.org',
436
+ protocol: 'xmpp:',
437
+ host: 'jabber.org',
438
+ auth: 'isaacschlueter',
439
+ hostname: 'jabber.org'
440
+ },
441
+
442
+ 'http://atpass:foo%40bar@127.0.0.1:8080/path?search=foo#bar': {
443
+ href: 'http://atpass:foo%40bar@127.0.0.1:8080/path?search=foo#bar',
444
+ protocol: 'http:',
445
+ slashes: true,
446
+ host: '127.0.0.1:8080',
447
+ auth: 'atpass:foo@bar',
448
+ hostname: '127.0.0.1',
449
+ port: '8080',
450
+ pathname: '/path',
451
+ search: '?search=foo',
452
+ query: 'search=foo',
453
+ hash: '#bar',
454
+ path: '/path?search=foo'
455
+ },
456
+
457
+ 'svn+ssh://foo/bar': {
458
+ href: 'svn+ssh://foo/bar',
459
+ host: 'foo',
460
+ hostname: 'foo',
461
+ protocol: 'svn+ssh:',
462
+ pathname: '/bar',
463
+ path: '/bar',
464
+ slashes: true
465
+ },
466
+
467
+ 'dash-test://foo/bar': {
468
+ href: 'dash-test://foo/bar',
469
+ host: 'foo',
470
+ hostname: 'foo',
471
+ protocol: 'dash-test:',
472
+ pathname: '/bar',
473
+ path: '/bar',
474
+ slashes: true
475
+ },
476
+
477
+ 'dash-test:foo/bar': {
478
+ href: 'dash-test:foo/bar',
479
+ host: 'foo',
480
+ hostname: 'foo',
481
+ protocol: 'dash-test:',
482
+ pathname: '/bar',
483
+ path: '/bar'
484
+ },
485
+
486
+ 'dot.test://foo/bar': {
487
+ href: 'dot.test://foo/bar',
488
+ host: 'foo',
489
+ hostname: 'foo',
490
+ protocol: 'dot.test:',
491
+ pathname: '/bar',
492
+ path: '/bar',
493
+ slashes: true
494
+ },
495
+
496
+ 'dot.test:foo/bar': {
497
+ href: 'dot.test:foo/bar',
498
+ host: 'foo',
499
+ hostname: 'foo',
500
+ protocol: 'dot.test:',
501
+ pathname: '/bar',
502
+ path: '/bar'
503
+ },
504
+
505
+ // IDNA tests
506
+ 'http://www.日本語.com/': {
507
+ href: 'http://www.xn--wgv71a119e.com/',
508
+ protocol: 'http:',
509
+ slashes: true,
510
+ host: 'www.xn--wgv71a119e.com',
511
+ hostname: 'www.xn--wgv71a119e.com',
512
+ pathname: '/',
513
+ path: '/'
514
+ },
515
+
516
+ 'http://example.Bücher.com/': {
517
+ href: 'http://example.xn--bcher-kva.com/',
518
+ protocol: 'http:',
519
+ slashes: true,
520
+ host: 'example.xn--bcher-kva.com',
521
+ hostname: 'example.xn--bcher-kva.com',
522
+ pathname: '/',
523
+ path: '/'
524
+ },
525
+
526
+ 'http://www.Äffchen.com/': {
527
+ href: 'http://www.xn--ffchen-9ta.com/',
528
+ protocol: 'http:',
529
+ slashes: true,
530
+ host: 'www.xn--ffchen-9ta.com',
531
+ hostname: 'www.xn--ffchen-9ta.com',
532
+ pathname: '/',
533
+ path: '/'
534
+ },
535
+
536
+ 'http://www.Äffchen.cOm;A/b/c?d=e#f g<h>i': {
537
+ href: 'http://www.xn--ffchen-9ta.com/;A/b/c?d=e#f%20g%3Ch%3Ei',
538
+ protocol: 'http:',
539
+ slashes: true,
540
+ host: 'www.xn--ffchen-9ta.com',
541
+ hostname: 'www.xn--ffchen-9ta.com',
542
+ pathname: ';A/b/c',
543
+ search: '?d=e',
544
+ query: 'd=e',
545
+ hash: '#f%20g%3Ch%3Ei',
546
+ path: ';A/b/c?d=e'
547
+ },
548
+
549
+ 'http://SÉLIER.COM/': {
550
+ href: 'http://xn--slier-bsa.com/',
551
+ protocol: 'http:',
552
+ slashes: true,
553
+ host: 'xn--slier-bsa.com',
554
+ hostname: 'xn--slier-bsa.com',
555
+ pathname: '/',
556
+ path: '/'
557
+ },
558
+
559
+ 'http://ليهمابتكلموشعربي؟.ي؟/': {
560
+ href: 'http://xn--egbpdaj6bu4bxfgehfvwxn.xn--egb9f/',
561
+ protocol: 'http:',
562
+ slashes: true,
563
+ host: 'xn--egbpdaj6bu4bxfgehfvwxn.xn--egb9f',
564
+ hostname: 'xn--egbpdaj6bu4bxfgehfvwxn.xn--egb9f',
565
+ pathname: '/',
566
+ path: '/'
567
+ },
568
+
569
+ 'http://➡.ws/➡': {
570
+ href: 'http://xn--hgi.ws/➡',
571
+ protocol: 'http:',
572
+ slashes: true,
573
+ host: 'xn--hgi.ws',
574
+ hostname: 'xn--hgi.ws',
575
+ pathname: '/➡',
576
+ path: '/➡'
577
+ },
578
+
579
+ 'http://bucket_name.s3.amazonaws.com/image.jpg': {
580
+ protocol: 'http:',
581
+ slashes: true,
582
+ host: 'bucket_name.s3.amazonaws.com',
583
+ hostname: 'bucket_name.s3.amazonaws.com',
584
+ pathname: '/image.jpg',
585
+ href: 'http://bucket_name.s3.amazonaws.com/image.jpg',
586
+ path: '/image.jpg'
587
+ },
588
+
589
+ 'git+http://github.com/joyent/node.git': {
590
+ protocol: 'git+http:',
591
+ slashes: true,
592
+ host: 'github.com',
593
+ hostname: 'github.com',
594
+ pathname: '/joyent/node.git',
595
+ path: '/joyent/node.git',
596
+ href: 'git+http://github.com/joyent/node.git'
597
+ },
598
+
599
+ /*
600
+ * if local1@domain1 is uses as a relative URL it may
601
+ * be parse into auth@hostname, but here there is no
602
+ * way to make it work in url.parse, I add the test to be explicit
603
+ */
604
+ 'local1@domain1': {
605
+ pathname: 'local1@domain1',
606
+ path: 'local1@domain1',
607
+ href: 'local1@domain1'
608
+ },
609
+
610
+ /*
611
+ * While this may seem counter-intuitive, a browser will parse
612
+ * <a href='www.google.com'> as a path.
613
+ */
614
+ 'www.example.com': {
615
+ href: 'www.example.com',
616
+ pathname: 'www.example.com',
617
+ path: 'www.example.com'
618
+ },
619
+
620
+ // ipv6 support
621
+ '[fe80::1]': {
622
+ href: '[fe80::1]',
623
+ pathname: '[fe80::1]',
624
+ path: '[fe80::1]'
625
+ },
626
+
627
+ 'coap://[FEDC:BA98:7654:3210:FEDC:BA98:7654:3210]': {
628
+ protocol: 'coap:',
629
+ slashes: true,
630
+ host: '[fedc:ba98:7654:3210:fedc:ba98:7654:3210]',
631
+ hostname: 'fedc:ba98:7654:3210:fedc:ba98:7654:3210',
632
+ href: 'coap://[fedc:ba98:7654:3210:fedc:ba98:7654:3210]/',
633
+ pathname: '/',
634
+ path: '/'
635
+ },
636
+
637
+ 'coap://[1080:0:0:0:8:800:200C:417A]:61616/': {
638
+ protocol: 'coap:',
639
+ slashes: true,
640
+ host: '[1080:0:0:0:8:800:200c:417a]:61616',
641
+ port: '61616',
642
+ hostname: '1080:0:0:0:8:800:200c:417a',
643
+ href: 'coap://[1080:0:0:0:8:800:200c:417a]:61616/',
644
+ pathname: '/',
645
+ path: '/'
646
+ },
647
+
648
+ 'http://user:password@[3ffe:2a00:100:7031::1]:8080': {
649
+ protocol: 'http:',
650
+ slashes: true,
651
+ auth: 'user:password',
652
+ host: '[3ffe:2a00:100:7031::1]:8080',
653
+ port: '8080',
654
+ hostname: '3ffe:2a00:100:7031::1',
655
+ href: 'http://user:password@[3ffe:2a00:100:7031::1]:8080/',
656
+ pathname: '/',
657
+ path: '/'
658
+ },
659
+
660
+ 'coap://u:p@[::192.9.5.5]:61616/.well-known/r?n=Temperature': {
661
+ protocol: 'coap:',
662
+ slashes: true,
663
+ auth: 'u:p',
664
+ host: '[::192.9.5.5]:61616',
665
+ port: '61616',
666
+ hostname: '::192.9.5.5',
667
+ href: 'coap://u:p@[::192.9.5.5]:61616/.well-known/r?n=Temperature',
668
+ search: '?n=Temperature',
669
+ query: 'n=Temperature',
670
+ pathname: '/.well-known/r',
671
+ path: '/.well-known/r?n=Temperature'
672
+ },
673
+
674
+ // empty port
675
+ 'http://example.com:': {
676
+ protocol: 'http:',
677
+ slashes: true,
678
+ host: 'example.com',
679
+ hostname: 'example.com',
680
+ href: 'http://example.com/',
681
+ pathname: '/',
682
+ path: '/'
683
+ },
684
+
685
+ 'http://example.com:/a/b.html': {
686
+ protocol: 'http:',
687
+ slashes: true,
688
+ host: 'example.com',
689
+ hostname: 'example.com',
690
+ href: 'http://example.com/a/b.html',
691
+ pathname: '/a/b.html',
692
+ path: '/a/b.html'
693
+ },
694
+
695
+ 'http://example.com:?a=b': {
696
+ protocol: 'http:',
697
+ slashes: true,
698
+ host: 'example.com',
699
+ hostname: 'example.com',
700
+ href: 'http://example.com/?a=b',
701
+ search: '?a=b',
702
+ query: 'a=b',
703
+ pathname: '/',
704
+ path: '/?a=b'
705
+ },
706
+
707
+ 'http://example.com:#abc': {
708
+ protocol: 'http:',
709
+ slashes: true,
710
+ host: 'example.com',
711
+ hostname: 'example.com',
712
+ href: 'http://example.com/#abc',
713
+ hash: '#abc',
714
+ pathname: '/',
715
+ path: '/'
716
+ },
717
+
718
+ 'http://[fe80::1]:/a/b?a=b#abc': {
719
+ protocol: 'http:',
720
+ slashes: true,
721
+ host: '[fe80::1]',
722
+ hostname: 'fe80::1',
723
+ href: 'http://[fe80::1]/a/b?a=b#abc',
724
+ search: '?a=b',
725
+ query: 'a=b',
726
+ hash: '#abc',
727
+ pathname: '/a/b',
728
+ path: '/a/b?a=b'
729
+ },
730
+
731
+ 'http://-lovemonsterz.tumblr.com/rss': {
732
+ protocol: 'http:',
733
+ slashes: true,
734
+ host: '-lovemonsterz.tumblr.com',
735
+ hostname: '-lovemonsterz.tumblr.com',
736
+ href: 'http://-lovemonsterz.tumblr.com/rss',
737
+ pathname: '/rss',
738
+ path: '/rss'
739
+ },
740
+
741
+ 'http://-lovemonsterz.tumblr.com:80/rss': {
742
+ protocol: 'http:',
743
+ slashes: true,
744
+ port: '80',
745
+ host: '-lovemonsterz.tumblr.com:80',
746
+ hostname: '-lovemonsterz.tumblr.com',
747
+ href: 'http://-lovemonsterz.tumblr.com:80/rss',
748
+ pathname: '/rss',
749
+ path: '/rss'
750
+ },
751
+
752
+ 'http://user:pass@-lovemonsterz.tumblr.com/rss': {
753
+ protocol: 'http:',
754
+ slashes: true,
755
+ auth: 'user:pass',
756
+ host: '-lovemonsterz.tumblr.com',
757
+ hostname: '-lovemonsterz.tumblr.com',
758
+ href: 'http://user:pass@-lovemonsterz.tumblr.com/rss',
759
+ pathname: '/rss',
760
+ path: '/rss'
761
+ },
762
+
763
+ 'http://user:pass@-lovemonsterz.tumblr.com:80/rss': {
764
+ protocol: 'http:',
765
+ slashes: true,
766
+ auth: 'user:pass',
767
+ port: '80',
768
+ host: '-lovemonsterz.tumblr.com:80',
769
+ hostname: '-lovemonsterz.tumblr.com',
770
+ href: 'http://user:pass@-lovemonsterz.tumblr.com:80/rss',
771
+ pathname: '/rss',
772
+ path: '/rss'
773
+ },
774
+
775
+ 'http://_jabber._tcp.google.com/test': {
776
+ protocol: 'http:',
777
+ slashes: true,
778
+ host: '_jabber._tcp.google.com',
779
+ hostname: '_jabber._tcp.google.com',
780
+ href: 'http://_jabber._tcp.google.com/test',
781
+ pathname: '/test',
782
+ path: '/test'
783
+ },
784
+
785
+ 'http://user:pass@_jabber._tcp.google.com/test': {
786
+ protocol: 'http:',
787
+ slashes: true,
788
+ auth: 'user:pass',
789
+ host: '_jabber._tcp.google.com',
790
+ hostname: '_jabber._tcp.google.com',
791
+ href: 'http://user:pass@_jabber._tcp.google.com/test',
792
+ pathname: '/test',
793
+ path: '/test'
794
+ },
795
+
796
+ 'http://_jabber._tcp.google.com:80/test': {
797
+ protocol: 'http:',
798
+ slashes: true,
799
+ port: '80',
800
+ host: '_jabber._tcp.google.com:80',
801
+ hostname: '_jabber._tcp.google.com',
802
+ href: 'http://_jabber._tcp.google.com:80/test',
803
+ pathname: '/test',
804
+ path: '/test'
805
+ },
806
+
807
+ 'http://user:pass@_jabber._tcp.google.com:80/test': {
808
+ protocol: 'http:',
809
+ slashes: true,
810
+ auth: 'user:pass',
811
+ port: '80',
812
+ host: '_jabber._tcp.google.com:80',
813
+ hostname: '_jabber._tcp.google.com',
814
+ href: 'http://user:pass@_jabber._tcp.google.com:80/test',
815
+ pathname: '/test',
816
+ path: '/test'
817
+ },
818
+
819
+ 'http://x:1/\' <>"`/{}|\\^~`/': {
820
+ protocol: 'http:',
821
+ slashes: true,
822
+ host: 'x:1',
823
+ port: '1',
824
+ hostname: 'x',
825
+ pathname: '/%27%20%3C%3E%22%60/%7B%7D%7C/%5E~%60/',
826
+ path: '/%27%20%3C%3E%22%60/%7B%7D%7C/%5E~%60/',
827
+ href: 'http://x:1/%27%20%3C%3E%22%60/%7B%7D%7C/%5E~%60/'
828
+ },
829
+
830
+ 'http://a@b@c/': {
831
+ protocol: 'http:',
832
+ slashes: true,
833
+ auth: 'a@b',
834
+ host: 'c',
835
+ hostname: 'c',
836
+ href: 'http://a%40b@c/',
837
+ path: '/',
838
+ pathname: '/'
839
+ },
840
+
841
+ 'http://a@b?@c': {
842
+ protocol: 'http:',
843
+ slashes: true,
844
+ auth: 'a',
845
+ host: 'b',
846
+ hostname: 'b',
847
+ href: 'http://a@b/?@c',
848
+ path: '/?@c',
849
+ pathname: '/',
850
+ search: '?@c',
851
+ query: '@c'
852
+ },
853
+
854
+ 'http://a\r" \t\n<\'b:b@c\r\nd/e?f': {
855
+ protocol: 'http:',
856
+ slashes: true,
857
+ auth: 'a\r" \t\n<\'b:b',
858
+ host: 'c',
859
+ port: null,
860
+ hostname: 'c',
861
+ hash: null,
862
+ search: '?f',
863
+ query: 'f',
864
+ pathname: '%0D%0Ad/e',
865
+ path: '%0D%0Ad/e?f',
866
+ href: 'http://a%0D%22%20%09%0A%3C\'b:b@c/%0D%0Ad/e?f'
867
+ },
868
+
869
+ // git urls used by npm
870
+ 'git+ssh://git@github.com:npm/npm': {
871
+ protocol: 'git+ssh:',
872
+ slashes: true,
873
+ auth: 'git',
874
+ host: 'github.com',
875
+ port: null,
876
+ hostname: 'github.com',
877
+ hash: null,
878
+ search: null,
879
+ query: null,
880
+ pathname: '/:npm/npm',
881
+ path: '/:npm/npm',
882
+ href: 'git+ssh://git@github.com/:npm/npm'
883
+ }
884
+
885
+ };
886
+
887
+ Object.keys(parseTests).forEach(function (u) {
888
+ test('parse(' + u + ')', function () {
889
+ var actual = url.parse(u);
890
+ var spaced = url.parse(' \t ' + u + '\n\t');
891
+ var expected = parseTests[u];
892
+
893
+ Object.keys(actual).forEach(function (i) {
894
+ if (expected[i] === undefined && actual[i] === null) {
895
+ expected[i] = null;
896
+ }
897
+ });
898
+
899
+ assert.deepEqual(actual, expected);
900
+ assert.deepEqual(spaced, expected);
901
+
902
+ var expected = parseTests[u].href,
903
+ actual = url.format(parseTests[u]);
904
+
905
+ assert.equal(actual, expected, 'format(' + u + ') == ' + u + '\nactual:' + actual);
906
+ });
907
+ });
908
+
909
+ var parseTestsWithQueryString = {
910
+ '/foo/bar?baz=quux#frag': {
911
+ href: '/foo/bar?baz=quux#frag',
912
+ hash: '#frag',
913
+ search: '?baz=quux',
914
+ query: {
915
+ baz: 'quux'
916
+ },
917
+ pathname: '/foo/bar',
918
+ path: '/foo/bar?baz=quux'
919
+ },
920
+ 'http://example.com': {
921
+ href: 'http://example.com/',
922
+ protocol: 'http:',
923
+ slashes: true,
924
+ host: 'example.com',
925
+ hostname: 'example.com',
926
+ query: {},
927
+ search: '',
928
+ pathname: '/',
929
+ path: '/'
930
+ },
931
+ '/example': {
932
+ protocol: null,
933
+ slashes: null,
934
+ auth: null,
935
+ host: null,
936
+ port: null,
937
+ hostname: null,
938
+ hash: null,
939
+ search: '',
940
+ query: {},
941
+ pathname: '/example',
942
+ path: '/example',
943
+ href: '/example'
944
+ },
945
+ '/example?query=value': {
946
+ protocol: null,
947
+ slashes: null,
948
+ auth: null,
949
+ host: null,
950
+ port: null,
951
+ hostname: null,
952
+ hash: null,
953
+ search: '?query=value',
954
+ query: { query: 'value' },
955
+ pathname: '/example',
956
+ path: '/example?query=value',
957
+ href: '/example?query=value'
958
+ }
959
+ };
960
+
961
+ Object.keys(parseTestsWithQueryString).forEach(function (u) {
962
+ test('parse(' + u + ')', function () {
963
+ var actual = url.parse(u, true);
964
+ var expected = parseTestsWithQueryString[u];
965
+ for (var i in actual) {
966
+ if (actual[i] === null && expected[i] === undefined) {
967
+ expected[i] = null;
968
+ }
969
+ }
970
+
971
+ assert.deepEqual(actual, expected);
972
+ });
973
+ });
974
+
975
+ /*
976
+ * some extra formatting tests, just to verify
977
+ * that it'll format slightly wonky content to a valid url.
978
+ */
979
+ var formatTests = {
980
+ 'http://example.com?': {
981
+ href: 'http://example.com/?',
982
+ protocol: 'http:',
983
+ slashes: true,
984
+ host: 'example.com',
985
+ hostname: 'example.com',
986
+ search: '?',
987
+ query: {},
988
+ pathname: '/'
989
+ },
990
+ 'http://example.com?foo=bar#frag': {
991
+ href: 'http://example.com/?foo=bar#frag',
992
+ protocol: 'http:',
993
+ host: 'example.com',
994
+ hostname: 'example.com',
995
+ hash: '#frag',
996
+ search: '?foo=bar',
997
+ query: 'foo=bar',
998
+ pathname: '/'
999
+ },
1000
+ 'http://example.com?foo=@bar#frag': {
1001
+ href: 'http://example.com/?foo=@bar#frag',
1002
+ protocol: 'http:',
1003
+ host: 'example.com',
1004
+ hostname: 'example.com',
1005
+ hash: '#frag',
1006
+ search: '?foo=@bar',
1007
+ query: 'foo=@bar',
1008
+ pathname: '/'
1009
+ },
1010
+ 'http://example.com?foo=/bar/#frag': {
1011
+ href: 'http://example.com/?foo=/bar/#frag',
1012
+ protocol: 'http:',
1013
+ host: 'example.com',
1014
+ hostname: 'example.com',
1015
+ hash: '#frag',
1016
+ search: '?foo=/bar/',
1017
+ query: 'foo=/bar/',
1018
+ pathname: '/'
1019
+ },
1020
+ 'http://example.com?foo=?bar/#frag': {
1021
+ href: 'http://example.com/?foo=?bar/#frag',
1022
+ protocol: 'http:',
1023
+ host: 'example.com',
1024
+ hostname: 'example.com',
1025
+ hash: '#frag',
1026
+ search: '?foo=?bar/',
1027
+ query: 'foo=?bar/',
1028
+ pathname: '/'
1029
+ },
1030
+ 'http://example.com#frag=?bar/#frag': {
1031
+ href: 'http://example.com/#frag=?bar/#frag',
1032
+ protocol: 'http:',
1033
+ host: 'example.com',
1034
+ hostname: 'example.com',
1035
+ hash: '#frag=?bar/#frag',
1036
+ pathname: '/'
1037
+ },
1038
+ 'http://google.com" onload="alert(42)/': {
1039
+ href: 'http://google.com/%22%20onload=%22alert(42)/',
1040
+ protocol: 'http:',
1041
+ host: 'google.com',
1042
+ pathname: '/%22%20onload=%22alert(42)/'
1043
+ },
1044
+ 'http://a.com/a/b/c?s#h': {
1045
+ href: 'http://a.com/a/b/c?s#h',
1046
+ protocol: 'http',
1047
+ host: 'a.com',
1048
+ pathname: 'a/b/c',
1049
+ hash: 'h',
1050
+ search: 's'
1051
+ },
1052
+ 'xmpp:isaacschlueter@jabber.org': {
1053
+ href: 'xmpp:isaacschlueter@jabber.org',
1054
+ protocol: 'xmpp:',
1055
+ host: 'jabber.org',
1056
+ auth: 'isaacschlueter',
1057
+ hostname: 'jabber.org'
1058
+ },
1059
+ 'http://atpass:foo%40bar@127.0.0.1/': {
1060
+ href: 'http://atpass:foo%40bar@127.0.0.1/',
1061
+ auth: 'atpass:foo@bar',
1062
+ hostname: '127.0.0.1',
1063
+ protocol: 'http:',
1064
+ pathname: '/'
1065
+ },
1066
+ 'http://atslash%2F%40:%2F%40@foo/': {
1067
+ href: 'http://atslash%2F%40:%2F%40@foo/',
1068
+ auth: 'atslash/@:/@',
1069
+ hostname: 'foo',
1070
+ protocol: 'http:',
1071
+ pathname: '/'
1072
+ },
1073
+ 'svn+ssh://foo/bar': {
1074
+ href: 'svn+ssh://foo/bar',
1075
+ hostname: 'foo',
1076
+ protocol: 'svn+ssh:',
1077
+ pathname: '/bar',
1078
+ slashes: true
1079
+ },
1080
+ 'dash-test://foo/bar': {
1081
+ href: 'dash-test://foo/bar',
1082
+ hostname: 'foo',
1083
+ protocol: 'dash-test:',
1084
+ pathname: '/bar',
1085
+ slashes: true
1086
+ },
1087
+ 'dash-test:foo/bar': {
1088
+ href: 'dash-test:foo/bar',
1089
+ hostname: 'foo',
1090
+ protocol: 'dash-test:',
1091
+ pathname: '/bar'
1092
+ },
1093
+ 'dot.test://foo/bar': {
1094
+ href: 'dot.test://foo/bar',
1095
+ hostname: 'foo',
1096
+ protocol: 'dot.test:',
1097
+ pathname: '/bar',
1098
+ slashes: true
1099
+ },
1100
+ 'dot.test:foo/bar': {
1101
+ href: 'dot.test:foo/bar',
1102
+ hostname: 'foo',
1103
+ protocol: 'dot.test:',
1104
+ pathname: '/bar'
1105
+ },
1106
+ // ipv6 support
1107
+ 'coap:u:p@[::1]:61616/.well-known/r?n=Temperature': {
1108
+ href: 'coap:u:p@[::1]:61616/.well-known/r?n=Temperature',
1109
+ protocol: 'coap:',
1110
+ auth: 'u:p',
1111
+ hostname: '::1',
1112
+ port: '61616',
1113
+ pathname: '/.well-known/r',
1114
+ search: 'n=Temperature'
1115
+ },
1116
+ 'coap:[fedc:ba98:7654:3210:fedc:ba98:7654:3210]:61616/s/stopButton': {
1117
+ href: 'coap:[fedc:ba98:7654:3210:fedc:ba98:7654:3210]:61616/s/stopButton',
1118
+ protocol: 'coap',
1119
+ host: '[fedc:ba98:7654:3210:fedc:ba98:7654:3210]:61616',
1120
+ pathname: '/s/stopButton'
1121
+ },
1122
+
1123
+ /*
1124
+ * encode context-specific delimiters in path and query, but do not touch
1125
+ * other non-delimiter chars like `%`.
1126
+ * <https://github.com/joyent/node/issues/4082>
1127
+ */
1128
+
1129
+ // `#`,`?` in path
1130
+ '/path/to/%%23%3F+=&.txt?foo=theA1#bar': {
1131
+ href: '/path/to/%%23%3F+=&.txt?foo=theA1#bar',
1132
+ pathname: '/path/to/%#?+=&.txt',
1133
+ query: {
1134
+ foo: 'theA1'
1135
+ },
1136
+ hash: '#bar'
1137
+ },
1138
+
1139
+ // `#`,`?` in path + `#` in query
1140
+ '/path/to/%%23%3F+=&.txt?foo=the%231#bar': {
1141
+ href: '/path/to/%%23%3F+=&.txt?foo=the%231#bar',
1142
+ pathname: '/path/to/%#?+=&.txt',
1143
+ query: {
1144
+ foo: 'the#1'
1145
+ },
1146
+ hash: '#bar'
1147
+ },
1148
+
1149
+ // `?` and `#` in path and search
1150
+ 'http://ex.com/foo%3F100%m%23r?abc=the%231?&foo=bar#frag': {
1151
+ href: 'http://ex.com/foo%3F100%m%23r?abc=the%231?&foo=bar#frag',
1152
+ protocol: 'http:',
1153
+ hostname: 'ex.com',
1154
+ hash: '#frag',
1155
+ search: '?abc=the#1?&foo=bar',
1156
+ pathname: '/foo?100%m#r'
1157
+ },
1158
+
1159
+ // `?` and `#` in search only
1160
+ 'http://ex.com/fooA100%mBr?abc=the%231?&foo=bar#frag': {
1161
+ href: 'http://ex.com/fooA100%mBr?abc=the%231?&foo=bar#frag',
1162
+ protocol: 'http:',
1163
+ hostname: 'ex.com',
1164
+ hash: '#frag',
1165
+ search: '?abc=the#1?&foo=bar',
1166
+ pathname: '/fooA100%mBr'
1167
+ },
1168
+
1169
+ // colons in keys
1170
+ 'https://cdpn.io/test?custom%3Aid=12': {
1171
+ href: 'https://cdpn.io/test?custom%3Aid=12',
1172
+ protocol: 'https:',
1173
+ hostname: 'cdpn.io',
1174
+ hash: '',
1175
+ search: '?custom%3Aid=12',
1176
+ pathname: '/test',
1177
+ query: {
1178
+ 'custom:id': '12'
1179
+ }
1180
+ }
1181
+ };
1182
+
1183
+ Object.keys(formatTests).forEach(function (u) {
1184
+ test('format(' + u + ')', function () {
1185
+ var expect = formatTests[u].href;
1186
+ delete formatTests[u].href;
1187
+ var actual = url.format(u);
1188
+ var actualObj = url.format(formatTests[u]);
1189
+ assert.equal(actual, expect, 'wonky format(' + u + ') == ' + expect + '\nactual:' + actual);
1190
+ assert.equal(actualObj, expect, 'wonky format(' + JSON.stringify(formatTests[u]) + ') == ' + expect + '\nactual: ' + actualObj);
1191
+ });
1192
+ });
1193
+
1194
+ /*
1195
+ *[from, path, expected]
1196
+ */
1197
+ var relativeTests = [
1198
+ [
1199
+ '/foo/bar/baz', 'quux', '/foo/bar/quux'
1200
+ ],
1201
+ [
1202
+ '/foo/bar/baz', 'quux/asdf', '/foo/bar/quux/asdf'
1203
+ ],
1204
+ [
1205
+ '/foo/bar/baz', 'quux/baz', '/foo/bar/quux/baz'
1206
+ ],
1207
+ [
1208
+ '/foo/bar/baz', '../quux/baz', '/foo/quux/baz'
1209
+ ],
1210
+ [
1211
+ '/foo/bar/baz', '/bar', '/bar'
1212
+ ],
1213
+ [
1214
+ '/foo/bar/baz/', 'quux', '/foo/bar/baz/quux'
1215
+ ],
1216
+ [
1217
+ '/foo/bar/baz/', 'quux/baz', '/foo/bar/baz/quux/baz'
1218
+ ],
1219
+ [
1220
+ '/foo/bar/baz', '../../../../../../../../quux/baz', '/quux/baz'
1221
+ ],
1222
+ [
1223
+ '/foo/bar/baz', '../../../../../../../quux/baz', '/quux/baz'
1224
+ ],
1225
+ [
1226
+ '/foo', '.', '/'
1227
+ ],
1228
+ [
1229
+ '/foo', '..', '/'
1230
+ ],
1231
+ [
1232
+ '/foo/', '.', '/foo/'
1233
+ ],
1234
+ [
1235
+ '/foo/', '..', '/'
1236
+ ],
1237
+ [
1238
+ '/foo/bar', '.', '/foo/'
1239
+ ],
1240
+ [
1241
+ '/foo/bar', '..', '/'
1242
+ ],
1243
+ [
1244
+ '/foo/bar/', '.', '/foo/bar/'
1245
+ ],
1246
+ [
1247
+ '/foo/bar/', '..', '/foo/'
1248
+ ],
1249
+ [
1250
+ 'foo/bar', '../../../baz', '../../baz'
1251
+ ],
1252
+ [
1253
+ 'foo/bar/', '../../../baz', '../baz'
1254
+ ],
1255
+ [
1256
+ 'http://example.com/b//c//d;p?q#blarg', 'https:#hash2', 'https:///#hash2'
1257
+ ],
1258
+ [
1259
+ 'http://example.com/b//c//d;p?q#blarg',
1260
+ 'https:/p/a/t/h?s#hash2',
1261
+ 'https://p/a/t/h?s#hash2'
1262
+ ],
1263
+ [
1264
+ 'http://example.com/b//c//d;p?q#blarg',
1265
+ 'https://u:p@h.com/p/a/t/h?s#hash2',
1266
+ 'https://u:p@h.com/p/a/t/h?s#hash2'
1267
+ ],
1268
+ [
1269
+ 'http://example.com/b//c//d;p?q#blarg',
1270
+ 'https:/a/b/c/d',
1271
+ 'https://a/b/c/d'
1272
+ ],
1273
+ [
1274
+ 'http://example.com/b//c//d;p?q#blarg',
1275
+ 'http:#hash2',
1276
+ 'http://example.com/b//c//d;p?q#hash2'
1277
+ ],
1278
+ [
1279
+ 'http://example.com/b//c//d;p?q#blarg',
1280
+ 'http:/p/a/t/h?s#hash2',
1281
+ 'http://example.com/p/a/t/h?s#hash2'
1282
+ ],
1283
+ [
1284
+ 'http://example.com/b//c//d;p?q#blarg',
1285
+ 'http://u:p@h.com/p/a/t/h?s#hash2',
1286
+ 'http://u:p@h.com/p/a/t/h?s#hash2'
1287
+ ],
1288
+ [
1289
+ 'http://example.com/b//c//d;p?q#blarg',
1290
+ 'http:/a/b/c/d',
1291
+ 'http://example.com/a/b/c/d'
1292
+ ],
1293
+ [
1294
+ '/foo/bar/baz', '/../etc/passwd', '/etc/passwd'
1295
+ ]
1296
+ ];
1297
+
1298
+ relativeTests.forEach(function (relativeTest) {
1299
+ test('resolve(' + [relativeTest[0], relativeTest[1]] + ')', function () {
1300
+ var a = url.resolve(relativeTest[0], relativeTest[1]),
1301
+ e = relativeTest[2];
1302
+ assert.equal(a, e, 'resolve(' + [relativeTest[0], relativeTest[1]] + ') == ' + e + '\n actual=' + a);
1303
+ });
1304
+ });
1305
+
1306
+ // https://github.com/joyent/node/issues/568
1307
+ [
1308
+ undefined,
1309
+ null,
1310
+ true,
1311
+ false,
1312
+ 0.0,
1313
+ 0,
1314
+ [],
1315
+ {}
1316
+ ].forEach(function (val) {
1317
+ test('parse(' + val + ')', function () {
1318
+ assert['throws'](function () { url.parse(val); }, TypeError);
1319
+ });
1320
+ });
1321
+
1322
+ /*
1323
+ *
1324
+ * Tests below taken from Chiron
1325
+ * http://code.google.com/p/chironjs/source/browse/trunk/src/test/http/url.js
1326
+ *
1327
+ * Copyright (c) 2002-2008 Kris Kowal <http://cixar.com/~kris.kowal>
1328
+ * used with permission under MIT License
1329
+ *
1330
+ * Changes marked with @isaacs
1331
+ */
1332
+
1333
+ var bases = [
1334
+ 'http://a/b/c/d;p?q',
1335
+ 'http://a/b/c/d;p?q=1/2',
1336
+ 'http://a/b/c/d;p=1/2?q',
1337
+ 'fred:///s//a/b/c',
1338
+ 'http:///s//a/b/c'
1339
+ ];
1340
+
1341
+ // [to, from, result]
1342
+ var relativeTests2 = [
1343
+ // http://lists.w3.org/Archives/Public/uri/2004Feb/0114.html
1344
+ [
1345
+ '../c', 'foo:a/b', 'foo:c'
1346
+ ],
1347
+ [
1348
+ 'foo:.', 'foo:a', 'foo:'
1349
+ ],
1350
+ [
1351
+ '/foo/../../../bar', 'zz:abc', 'zz:/bar'
1352
+ ],
1353
+ [
1354
+ '/foo/../bar', 'zz:abc', 'zz:/bar'
1355
+ ],
1356
+ // @isaacs Disagree. Not how web browsers resolve this.
1357
+ [
1358
+ 'foo/../../../bar', 'zz:abc', 'zz:bar'
1359
+ ],
1360
+ // ['foo/../../../bar', 'zz:abc', 'zz:../../bar'], // @isaacs Added
1361
+ [
1362
+ 'foo/../bar', 'zz:abc', 'zz:bar'
1363
+ ],
1364
+ [
1365
+ 'zz:.', 'zz:abc', 'zz:'
1366
+ ],
1367
+ [
1368
+ '/.', bases[0], 'http://a/'
1369
+ ],
1370
+ [
1371
+ '/.foo', bases[0], 'http://a/.foo'
1372
+ ],
1373
+ [
1374
+ '.foo', bases[0], 'http://a/b/c/.foo'
1375
+ ],
1376
+
1377
+ /*
1378
+ * http://gbiv.com/protocols/uri/test/rel_examples1.html
1379
+ * examples from RFC 2396
1380
+ */
1381
+ [
1382
+ 'g:h', bases[0], 'g:h'
1383
+ ],
1384
+ [
1385
+ 'g', bases[0], 'http://a/b/c/g'
1386
+ ],
1387
+ [
1388
+ './g', bases[0], 'http://a/b/c/g'
1389
+ ],
1390
+ [
1391
+ 'g/', bases[0], 'http://a/b/c/g/'
1392
+ ],
1393
+ [
1394
+ '/g', bases[0], 'http://a/g'
1395
+ ],
1396
+ [
1397
+ '//g', bases[0], 'http://g/'
1398
+ ],
1399
+ /*
1400
+ * changed with RFC 2396bis
1401
+ * ('?y', bases[0], 'http://a/b/c/d;p?y'],
1402
+ */
1403
+ [
1404
+ '?y', bases[0], 'http://a/b/c/d;p?y'
1405
+ ],
1406
+ [
1407
+ 'g?y', bases[0], 'http://a/b/c/g?y'
1408
+ ],
1409
+ /*
1410
+ * changed with RFC 2396bis
1411
+ * ('#s', bases[0], CURRENT_DOC_URI + '#s'],
1412
+ */
1413
+ [
1414
+ '#s', bases[0], 'http://a/b/c/d;p?q#s'
1415
+ ],
1416
+ [
1417
+ 'g#s', bases[0], 'http://a/b/c/g#s'
1418
+ ],
1419
+ [
1420
+ 'g?y#s', bases[0], 'http://a/b/c/g?y#s'
1421
+ ],
1422
+ [
1423
+ ';x', bases[0], 'http://a/b/c/;x'
1424
+ ],
1425
+ [
1426
+ 'g;x', bases[0], 'http://a/b/c/g;x'
1427
+ ],
1428
+ [
1429
+ 'g;x?y#s', bases[0], 'http://a/b/c/g;x?y#s'
1430
+ ],
1431
+ /*
1432
+ * changed with RFC 2396bis
1433
+ * ('', bases[0], CURRENT_DOC_URI],
1434
+ */
1435
+ [
1436
+ '', bases[0], 'http://a/b/c/d;p?q'
1437
+ ],
1438
+ [
1439
+ '.', bases[0], 'http://a/b/c/'
1440
+ ],
1441
+ [
1442
+ './', bases[0], 'http://a/b/c/'
1443
+ ],
1444
+ [
1445
+ '..', bases[0], 'http://a/b/'
1446
+ ],
1447
+ [
1448
+ '../', bases[0], 'http://a/b/'
1449
+ ],
1450
+ [
1451
+ '../g', bases[0], 'http://a/b/g'
1452
+ ],
1453
+ [
1454
+ '../..', bases[0], 'http://a/'
1455
+ ],
1456
+ [
1457
+ '../../', bases[0], 'http://a/'
1458
+ ],
1459
+ [
1460
+ '../../g', bases[0], 'http://a/g'
1461
+ ],
1462
+ [
1463
+ '../../../g', bases[0], ('http://a/../g', 'http://a/g')
1464
+ ],
1465
+ [
1466
+ '../../../../g', bases[0], ('http://a/../../g', 'http://a/g')
1467
+ ],
1468
+ /*
1469
+ * changed with RFC 2396bis
1470
+ * ('/./g', bases[0], 'http://a/./g'],
1471
+ */
1472
+ [
1473
+ '/./g', bases[0], 'http://a/g'
1474
+ ],
1475
+ /*
1476
+ * changed with RFC 2396bis
1477
+ * ('/../g', bases[0], 'http://a/../g'],
1478
+ */
1479
+ [
1480
+ '/../g', bases[0], 'http://a/g'
1481
+ ],
1482
+ [
1483
+ 'g.', bases[0], 'http://a/b/c/g.'
1484
+ ],
1485
+ [
1486
+ '.g', bases[0], 'http://a/b/c/.g'
1487
+ ],
1488
+ [
1489
+ 'g..', bases[0], 'http://a/b/c/g..'
1490
+ ],
1491
+ [
1492
+ '..g', bases[0], 'http://a/b/c/..g'
1493
+ ],
1494
+ [
1495
+ './../g', bases[0], 'http://a/b/g'
1496
+ ],
1497
+ [
1498
+ './g/.', bases[0], 'http://a/b/c/g/'
1499
+ ],
1500
+ [
1501
+ 'g/./h', bases[0], 'http://a/b/c/g/h'
1502
+ ],
1503
+ [
1504
+ 'g/../h', bases[0], 'http://a/b/c/h'
1505
+ ],
1506
+ [
1507
+ 'g;x=1/./y', bases[0], 'http://a/b/c/g;x=1/y'
1508
+ ],
1509
+ [
1510
+ 'g;x=1/../y', bases[0], 'http://a/b/c/y'
1511
+ ],
1512
+ [
1513
+ 'g?y/./x', bases[0], 'http://a/b/c/g?y/./x'
1514
+ ],
1515
+ [
1516
+ 'g?y/../x', bases[0], 'http://a/b/c/g?y/../x'
1517
+ ],
1518
+ [
1519
+ 'g#s/./x', bases[0], 'http://a/b/c/g#s/./x'
1520
+ ],
1521
+ [
1522
+ 'g#s/../x', bases[0], 'http://a/b/c/g#s/../x'
1523
+ ],
1524
+ [
1525
+ 'http:g', bases[0], ('http:g', 'http://a/b/c/g')
1526
+ ],
1527
+ [
1528
+ 'http:', bases[0], ('http:', bases[0])
1529
+ ],
1530
+ // not sure where this one originated
1531
+ [
1532
+ '/a/b/c/./../../g', bases[0], 'http://a/a/g'
1533
+ ],
1534
+
1535
+ /*
1536
+ * http://gbiv.com/protocols/uri/test/rel_examples2.html
1537
+ * slashes in base URI's query args
1538
+ */
1539
+ [
1540
+ 'g', bases[1], 'http://a/b/c/g'
1541
+ ],
1542
+ [
1543
+ './g', bases[1], 'http://a/b/c/g'
1544
+ ],
1545
+ [
1546
+ 'g/', bases[1], 'http://a/b/c/g/'
1547
+ ],
1548
+ [
1549
+ '/g', bases[1], 'http://a/g'
1550
+ ],
1551
+ [
1552
+ '//g', bases[1], 'http://g/'
1553
+ ],
1554
+ /*
1555
+ * changed in RFC 2396bis
1556
+ * ('?y', bases[1], 'http://a/b/c/?y'],
1557
+ */
1558
+ [
1559
+ '?y', bases[1], 'http://a/b/c/d;p?y'
1560
+ ],
1561
+ [
1562
+ 'g?y', bases[1], 'http://a/b/c/g?y'
1563
+ ],
1564
+ [
1565
+ 'g?y/./x', bases[1], 'http://a/b/c/g?y/./x'
1566
+ ],
1567
+ [
1568
+ 'g?y/../x', bases[1], 'http://a/b/c/g?y/../x'
1569
+ ],
1570
+ [
1571
+ 'g#s', bases[1], 'http://a/b/c/g#s'
1572
+ ],
1573
+ [
1574
+ 'g#s/./x', bases[1], 'http://a/b/c/g#s/./x'
1575
+ ],
1576
+ [
1577
+ 'g#s/../x', bases[1], 'http://a/b/c/g#s/../x'
1578
+ ],
1579
+ [
1580
+ './', bases[1], 'http://a/b/c/'
1581
+ ],
1582
+ [
1583
+ '../', bases[1], 'http://a/b/'
1584
+ ],
1585
+ [
1586
+ '../g', bases[1], 'http://a/b/g'
1587
+ ],
1588
+ [
1589
+ '../../', bases[1], 'http://a/'
1590
+ ],
1591
+ [
1592
+ '../../g', bases[1], 'http://a/g'
1593
+ ],
1594
+
1595
+ /*
1596
+ * http://gbiv.com/protocols/uri/test/rel_examples3.html
1597
+ * slashes in path params
1598
+ * all of these changed in RFC 2396bis
1599
+ */
1600
+ [
1601
+ 'g', bases[2], 'http://a/b/c/d;p=1/g'
1602
+ ],
1603
+ [
1604
+ './g', bases[2], 'http://a/b/c/d;p=1/g'
1605
+ ],
1606
+ [
1607
+ 'g/', bases[2], 'http://a/b/c/d;p=1/g/'
1608
+ ],
1609
+ [
1610
+ 'g?y', bases[2], 'http://a/b/c/d;p=1/g?y'
1611
+ ],
1612
+ [
1613
+ ';x', bases[2], 'http://a/b/c/d;p=1/;x'
1614
+ ],
1615
+ [
1616
+ 'g;x', bases[2], 'http://a/b/c/d;p=1/g;x'
1617
+ ],
1618
+ [
1619
+ 'g;x=1/./y', bases[2], 'http://a/b/c/d;p=1/g;x=1/y'
1620
+ ],
1621
+ [
1622
+ 'g;x=1/../y', bases[2], 'http://a/b/c/d;p=1/y'
1623
+ ],
1624
+ [
1625
+ './', bases[2], 'http://a/b/c/d;p=1/'
1626
+ ],
1627
+ [
1628
+ '../', bases[2], 'http://a/b/c/'
1629
+ ],
1630
+ [
1631
+ '../g', bases[2], 'http://a/b/c/g'
1632
+ ],
1633
+ [
1634
+ '../../', bases[2], 'http://a/b/'
1635
+ ],
1636
+ [
1637
+ '../../g', bases[2], 'http://a/b/g'
1638
+ ],
1639
+
1640
+ /*
1641
+ * http://gbiv.com/protocols/uri/test/rel_examples4.html
1642
+ * double and triple slash, unknown scheme
1643
+ */
1644
+ [
1645
+ 'g:h', bases[3], 'g:h'
1646
+ ],
1647
+ [
1648
+ 'g', bases[3], 'fred:///s//a/b/g'
1649
+ ],
1650
+ [
1651
+ './g', bases[3], 'fred:///s//a/b/g'
1652
+ ],
1653
+ [
1654
+ 'g/', bases[3], 'fred:///s//a/b/g/'
1655
+ ],
1656
+ [
1657
+ '/g', bases[3], 'fred:///g'
1658
+ ], // may change to fred:///s//a/g
1659
+ [
1660
+ '//g', bases[3], 'fred://g'
1661
+ ], // may change to fred:///s//g
1662
+ [
1663
+ '//g/x', bases[3], 'fred://g/x'
1664
+ ], // may change to fred:///s//g/x
1665
+ [
1666
+ '///g', bases[3], 'fred:///g'
1667
+ ],
1668
+ [
1669
+ './', bases[3], 'fred:///s//a/b/'
1670
+ ],
1671
+ [
1672
+ '../', bases[3], 'fred:///s//a/'
1673
+ ],
1674
+ [
1675
+ '../g', bases[3], 'fred:///s//a/g'
1676
+ ],
1677
+
1678
+ [
1679
+ '../../', bases[3], 'fred:///s//'
1680
+ ],
1681
+ [
1682
+ '../../g', bases[3], 'fred:///s//g'
1683
+ ],
1684
+ [
1685
+ '../../../g', bases[3], 'fred:///s/g'
1686
+ ],
1687
+ // may change to fred:///s//a/../../../g
1688
+ [
1689
+ '../../../../g', bases[3], 'fred:///g'
1690
+ ],
1691
+
1692
+ /*
1693
+ * http://gbiv.com/protocols/uri/test/rel_examples5.html
1694
+ * double and triple slash, well-known scheme
1695
+ */
1696
+ [
1697
+ 'g:h', bases[4], 'g:h'
1698
+ ],
1699
+ [
1700
+ 'g', bases[4], 'http:///s//a/b/g'
1701
+ ],
1702
+ [
1703
+ './g', bases[4], 'http:///s//a/b/g'
1704
+ ],
1705
+ [
1706
+ 'g/', bases[4], 'http:///s//a/b/g/'
1707
+ ],
1708
+ [
1709
+ '/g', bases[4], 'http:///g'
1710
+ ], // may change to http:///s//a/g
1711
+ [
1712
+ '//g', bases[4], 'http://g/'
1713
+ ], // may change to http:///s//g
1714
+ [
1715
+ '//g/x', bases[4], 'http://g/x'
1716
+ ], // may change to http:///s//g/x
1717
+ [
1718
+ '///g', bases[4], 'http:///g'
1719
+ ],
1720
+ [
1721
+ './', bases[4], 'http:///s//a/b/'
1722
+ ],
1723
+ [
1724
+ '../', bases[4], 'http:///s//a/'
1725
+ ],
1726
+ [
1727
+ '../g', bases[4], 'http:///s//a/g'
1728
+ ],
1729
+ [
1730
+ '../../', bases[4], 'http:///s//'
1731
+ ],
1732
+ [
1733
+ '../../g', bases[4], 'http:///s//g'
1734
+ ],
1735
+ // may change to http:///s//a/../../g
1736
+ [
1737
+ '../../../g', bases[4], 'http:///s/g'
1738
+ ],
1739
+ // may change to http:///s//a/../../../g
1740
+ [
1741
+ '../../../../g', bases[4], 'http:///g'
1742
+ ],
1743
+
1744
+ // from Dan Connelly's tests in http://www.w3.org/2000/10/swap/uripath.py
1745
+ [
1746
+ 'bar:abc', 'foo:xyz', 'bar:abc'
1747
+ ],
1748
+ [
1749
+ '../abc', 'http://example/x/y/z', 'http://example/x/abc'
1750
+ ],
1751
+ [
1752
+ 'http://example/x/abc', 'http://example2/x/y/z', 'http://example/x/abc'
1753
+ ],
1754
+ [
1755
+ '../r', 'http://ex/x/y/z', 'http://ex/x/r'
1756
+ ],
1757
+ [
1758
+ 'q/r', 'http://ex/x/y', 'http://ex/x/q/r'
1759
+ ],
1760
+ [
1761
+ 'q/r#s', 'http://ex/x/y', 'http://ex/x/q/r#s'
1762
+ ],
1763
+ [
1764
+ 'q/r#s/t', 'http://ex/x/y', 'http://ex/x/q/r#s/t'
1765
+ ],
1766
+ [
1767
+ 'ftp://ex/x/q/r', 'http://ex/x/y', 'ftp://ex/x/q/r'
1768
+ ],
1769
+ [
1770
+ '', 'http://ex/x/y', 'http://ex/x/y'
1771
+ ],
1772
+ [
1773
+ '', 'http://ex/x/y/', 'http://ex/x/y/'
1774
+ ],
1775
+ [
1776
+ '', 'http://ex/x/y/pdq', 'http://ex/x/y/pdq'
1777
+ ],
1778
+ [
1779
+ 'z/', 'http://ex/x/y/', 'http://ex/x/y/z/'
1780
+ ],
1781
+ [
1782
+ '#Animal',
1783
+ 'file:/swap/test/animal.rdf',
1784
+ 'file:/swap/test/animal.rdf#Animal'
1785
+ ],
1786
+ [
1787
+ '../abc', 'file:/e/x/y/z', 'file:/e/x/abc'
1788
+ ],
1789
+ [
1790
+ '/example/x/abc', 'file:/example2/x/y/z', 'file:/example/x/abc'
1791
+ ],
1792
+ [
1793
+ '../r', 'file:/ex/x/y/z', 'file:/ex/x/r'
1794
+ ],
1795
+ [
1796
+ '/r', 'file:/ex/x/y/z', 'file:/r'
1797
+ ],
1798
+ [
1799
+ 'q/r', 'file:/ex/x/y', 'file:/ex/x/q/r'
1800
+ ],
1801
+ [
1802
+ 'q/r#s', 'file:/ex/x/y', 'file:/ex/x/q/r#s'
1803
+ ],
1804
+ [
1805
+ 'q/r#', 'file:/ex/x/y', 'file:/ex/x/q/r#'
1806
+ ],
1807
+ [
1808
+ 'q/r#s/t', 'file:/ex/x/y', 'file:/ex/x/q/r#s/t'
1809
+ ],
1810
+ [
1811
+ 'ftp://ex/x/q/r', 'file:/ex/x/y', 'ftp://ex/x/q/r'
1812
+ ],
1813
+ [
1814
+ '', 'file:/ex/x/y', 'file:/ex/x/y'
1815
+ ],
1816
+ [
1817
+ '', 'file:/ex/x/y/', 'file:/ex/x/y/'
1818
+ ],
1819
+ [
1820
+ '', 'file:/ex/x/y/pdq', 'file:/ex/x/y/pdq'
1821
+ ],
1822
+ [
1823
+ 'z/', 'file:/ex/x/y/', 'file:/ex/x/y/z/'
1824
+ ],
1825
+ [
1826
+ 'file://meetings.example.com/cal#m1',
1827
+ 'file:/devel/WWW/2000/10/swap/test/reluri-1.n3',
1828
+ 'file://meetings.example.com/cal#m1'
1829
+ ],
1830
+ [
1831
+ 'file://meetings.example.com/cal#m1',
1832
+ 'file:/home/connolly/w3ccvs/WWW/2000/10/swap/test/reluri-1.n3',
1833
+ 'file://meetings.example.com/cal#m1'
1834
+ ],
1835
+ [
1836
+ './#blort', 'file:/some/dir/foo', 'file:/some/dir/#blort'
1837
+ ],
1838
+ [
1839
+ './#', 'file:/some/dir/foo', 'file:/some/dir/#'
1840
+ ],
1841
+ // Ryan Lee
1842
+ [
1843
+ './', 'http://example/x/abc.efg', 'http://example/x/'
1844
+ ],
1845
+
1846
+ /*
1847
+ * Graham Klyne's tests
1848
+ * http://www.ninebynine.org/Software/HaskellUtils/Network/UriTest.xls
1849
+ * 01-31 are from Connelly's cases
1850
+ */
1851
+
1852
+ // 32-49
1853
+ [
1854
+ './q:r', 'http://ex/x/y', 'http://ex/x/q:r'
1855
+ ],
1856
+ [
1857
+ './p=q:r', 'http://ex/x/y', 'http://ex/x/p=q:r'
1858
+ ],
1859
+ [
1860
+ '?pp/rr', 'http://ex/x/y?pp/qq', 'http://ex/x/y?pp/rr'
1861
+ ],
1862
+ [
1863
+ 'y/z', 'http://ex/x/y?pp/qq', 'http://ex/x/y/z'
1864
+ ],
1865
+ [
1866
+ 'local/qual@domain.org#frag',
1867
+ 'mailto:local',
1868
+ 'mailto:local/qual@domain.org#frag'
1869
+ ],
1870
+ [
1871
+ 'more/qual2@domain2.org#frag',
1872
+ 'mailto:local/qual1@domain1.org',
1873
+ 'mailto:local/more/qual2@domain2.org#frag'
1874
+ ],
1875
+ [
1876
+ 'y?q', 'http://ex/x/y?q', 'http://ex/x/y?q'
1877
+ ],
1878
+ [
1879
+ '/x/y?q', 'http://ex?p', 'http://ex/x/y?q'
1880
+ ],
1881
+ [
1882
+ 'c/d', 'foo:a/b', 'foo:a/c/d'
1883
+ ],
1884
+ [
1885
+ '/c/d', 'foo:a/b', 'foo:/c/d'
1886
+ ],
1887
+ [
1888
+ '', 'foo:a/b?c#d', 'foo:a/b?c'
1889
+ ],
1890
+ [
1891
+ 'b/c', 'foo:a', 'foo:b/c'
1892
+ ],
1893
+ [
1894
+ '../b/c', 'foo:/a/y/z', 'foo:/a/b/c'
1895
+ ],
1896
+ [
1897
+ './b/c', 'foo:a', 'foo:b/c'
1898
+ ],
1899
+ [
1900
+ '/./b/c', 'foo:a', 'foo:/b/c'
1901
+ ],
1902
+ [
1903
+ '../../d', 'foo://a//b/c', 'foo://a/d'
1904
+ ],
1905
+ [
1906
+ '.', 'foo:a', 'foo:'
1907
+ ],
1908
+ [
1909
+ '..', 'foo:a', 'foo:'
1910
+ ],
1911
+
1912
+ /*
1913
+ * 50-57[cf. TimBL comments --
1914
+ * http://lists.w3.org/Archives/Public/uri/2003Feb/0028.html,
1915
+ * http://lists.w3.org/Archives/Public/uri/2003Jan/0008.html)
1916
+ */
1917
+ [
1918
+ 'abc', 'http://example/x/y%2Fz', 'http://example/x/abc'
1919
+ ],
1920
+ [
1921
+ '../../x%2Fabc', 'http://example/a/x/y/z', 'http://example/a/x%2Fabc'
1922
+ ],
1923
+ [
1924
+ '../x%2Fabc', 'http://example/a/x/y%2Fz', 'http://example/a/x%2Fabc'
1925
+ ],
1926
+ [
1927
+ 'abc', 'http://example/x%2Fy/z', 'http://example/x%2Fy/abc'
1928
+ ],
1929
+ [
1930
+ 'q%3Ar', 'http://ex/x/y', 'http://ex/x/q%3Ar'
1931
+ ],
1932
+ [
1933
+ '/x%2Fabc', 'http://example/x/y%2Fz', 'http://example/x%2Fabc'
1934
+ ],
1935
+ [
1936
+ '/x%2Fabc', 'http://example/x/y/z', 'http://example/x%2Fabc'
1937
+ ],
1938
+ [
1939
+ '/x%2Fabc', 'http://example/x/y%2Fz', 'http://example/x%2Fabc'
1940
+ ],
1941
+
1942
+ // 70-77
1943
+ [
1944
+ 'local2@domain2', 'mailto:local1@domain1?query1', 'mailto:local2@domain2'
1945
+ ],
1946
+ [
1947
+ 'local2@domain2?query2',
1948
+ 'mailto:local1@domain1',
1949
+ 'mailto:local2@domain2?query2'
1950
+ ],
1951
+ [
1952
+ 'local2@domain2?query2',
1953
+ 'mailto:local1@domain1?query1',
1954
+ 'mailto:local2@domain2?query2'
1955
+ ],
1956
+ [
1957
+ '?query2', 'mailto:local@domain?query1', 'mailto:local@domain?query2'
1958
+ ],
1959
+ [
1960
+ 'local@domain?query2', 'mailto:?query1', 'mailto:local@domain?query2'
1961
+ ],
1962
+ [
1963
+ '?query2', 'mailto:local@domain?query1', 'mailto:local@domain?query2'
1964
+ ],
1965
+ [
1966
+ 'http://example/a/b?c/../d', 'foo:bar', 'http://example/a/b?c/../d'
1967
+ ],
1968
+ [
1969
+ 'http://example/a/b#c/../d', 'foo:bar', 'http://example/a/b#c/../d'
1970
+ ],
1971
+
1972
+ /*
1973
+ * 82-88
1974
+ * @isaacs Disagree. Not how browsers do it.
1975
+ * ['http:this', 'http://example.org/base/uri', 'http:this'],
1976
+ * @isaacs Added
1977
+ */
1978
+ [
1979
+ 'http:this', 'http://example.org/base/uri', 'http://example.org/base/this'
1980
+ ],
1981
+ [
1982
+ 'http:this', 'http:base', 'http:this'
1983
+ ],
1984
+ [
1985
+ './/g', 'f:/a', 'f://g'
1986
+ ],
1987
+ [
1988
+ 'b/c//d/e', 'f://example.org/base/a', 'f://example.org/base/b/c//d/e'
1989
+ ],
1990
+ [
1991
+ 'm2@example.ord/c2@example.org',
1992
+ 'mid:m@example.ord/c@example.org',
1993
+ 'mid:m@example.ord/m2@example.ord/c2@example.org'
1994
+ ],
1995
+ [
1996
+ 'mini1.xml',
1997
+ 'file:///C:/DEV/Haskell/lib/HXmlToolbox-3.01/examples/',
1998
+ 'file:///C:/DEV/Haskell/lib/HXmlToolbox-3.01/examples/mini1.xml'
1999
+ ],
2000
+ [
2001
+ '../b/c', 'foo:a/y/z', 'foo:a/b/c'
2002
+ ],
2003
+
2004
+ // changeing auth
2005
+ [
2006
+ 'http://diff:auth@www.example.com',
2007
+ 'http://asdf:qwer@www.example.com',
2008
+ 'http://diff:auth@www.example.com/'
2009
+ ]
2010
+ ];
2011
+
2012
+ relativeTests2.forEach(function (relativeTest) {
2013
+ test('resolve(' + [relativeTest[1], relativeTest[0]] + ')', function () {
2014
+ var a = url.resolve(relativeTest[1], relativeTest[0]),
2015
+ e = relativeTest[2];
2016
+ assert.equal(a, e, 'resolve(' + [relativeTest[1], relativeTest[0]] + ') == ' + e + '\n actual=' + a);
2017
+ });
2018
+ });
2019
+
2020
+ /*
2021
+ * if format and parse are inverse operations then
2022
+ * resolveObject(parse(x), y) == parse(resolve(x, y))
2023
+ */
2024
+
2025
+ // host and hostname are special, in this case a '' value is important
2026
+ /* eslint no-unused-vars: 1 */
2027
+ var emptyIsImportant = { host: true, hostname: '' };
2028
+
2029
+ // format: [from, path, expected]
2030
+ relativeTests.forEach(function (relativeTest) {
2031
+ test('resolveObject(' + [relativeTest[0], relativeTest[1]] + ')', function () {
2032
+ var actual = url.resolveObject(url.parse(relativeTest[0]), relativeTest[1]);
2033
+ var expected = url.parse(relativeTest[2]);
2034
+
2035
+ assert.deepEqual(actual, expected);
2036
+
2037
+ expected = relativeTest[2];
2038
+ actual = url.format(actual);
2039
+
2040
+ assert.equal(actual, expected, 'format(' + actual + ') == ' + expected + '\nactual:' + actual);
2041
+ });
2042
+ });
2043
+
2044
+ test('format with querystring', function () {
2045
+ var obj = { protocol: 'https:', host: 'google.com', pathname: 'test', query: { message: ['value1', 'value2'], 'custom:id': 12 } };
2046
+
2047
+ var actual = url.format(obj);
2048
+ var expected = nodeURL.format(obj);
2049
+
2050
+ assert.equal(actual, expected, 'format(' + actual + ') == ' + expected + '\nactual:' + actual);
2051
+ });
2052
+
2053
+ /*
2054
+ * format: [to, from, result]
2055
+ * the test: ['.//g', 'f:/a', 'f://g'] is a fundamental problem
2056
+ * url.parse('f:/a') does not have a host
2057
+ * url.resolve('f:/a', './/g') does not have a host because you have moved
2058
+ * down to the g directory. i.e. f: //g, however when this url is parsed
2059
+ * f:// will indicate that the host is g which is not the case.
2060
+ * it is unclear to me how to keep this information from being lost
2061
+ * it may be that a pathname of ////g should collapse to /g but this seems
2062
+ * to be a lot of work for an edge case. Right now I remove the test
2063
+ */
2064
+ if (relativeTests2[181][0] === './/g' && relativeTests2[181][1] === 'f:/a' && relativeTests2[181][2] === 'f://g') {
2065
+ relativeTests2.splice(181, 1);
2066
+ }
2067
+
2068
+ relativeTests2.forEach(function (relativeTest) {
2069
+ test('resolveObject(' + [relativeTest[1], relativeTest[0]] + ')', function () {
2070
+ var actual = url.resolveObject(url.parse(relativeTest[1]), relativeTest[0]),
2071
+ expected = url.parse(relativeTest[2]);
2072
+
2073
+ assert.deepEqual(actual, expected);
2074
+
2075
+ var expected = relativeTest[2],
2076
+ actual = url.format(actual);
2077
+
2078
+ assert.equal(actual, expected, 'format(' + relativeTest[1] + ') == ' + expected + '\nactual:' + actual);
2079
+ });
2080
+ });