@weavecode/weave 0.1.5 → 0.1.7

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 (249) hide show
  1. package/node_modules/@modelcontextprotocol/sdk/node_modules/express/node_modules/encodeurl/README.md +14 -0
  2. package/node_modules/@modelcontextprotocol/sdk/node_modules/express/node_modules/encodeurl/index.js +5 -10
  3. package/node_modules/@modelcontextprotocol/sdk/node_modules/express/node_modules/encodeurl/package.json +10 -6
  4. package/node_modules/@modelcontextprotocol/sdk/node_modules/express/node_modules/qs/CHANGELOG.md +42 -0
  5. package/node_modules/@modelcontextprotocol/sdk/node_modules/express/node_modules/qs/README.md +38 -10
  6. package/node_modules/@modelcontextprotocol/sdk/node_modules/express/node_modules/qs/dist/qs.js +18 -18
  7. package/node_modules/@modelcontextprotocol/sdk/node_modules/express/node_modules/qs/lib/parse.js +16 -4
  8. package/node_modules/@modelcontextprotocol/sdk/node_modules/express/node_modules/qs/lib/utils.js +13 -2
  9. package/node_modules/@modelcontextprotocol/sdk/node_modules/express/node_modules/qs/package.json +1 -1
  10. package/node_modules/@modelcontextprotocol/sdk/node_modules/express-rate-limit/dist/index.cjs +6 -2
  11. package/node_modules/@modelcontextprotocol/sdk/node_modules/express-rate-limit/dist/index.mjs +6 -2
  12. package/node_modules/@modelcontextprotocol/sdk/node_modules/express-rate-limit/package.json +10 -10
  13. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jwt/decrypt.d.ts +3 -0
  14. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jwt/unsecured.d.ts +2 -0
  15. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jwt/verify.d.ts +3 -0
  16. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/types.d.ts +8 -0
  17. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/util/decode_jwt.d.ts +1 -0
  18. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jwks/remote.js +1 -1
  19. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/package.json +1 -1
  20. package/node_modules/@weavecode/cli/dist/cli.js +4 -4
  21. package/node_modules/@weavecode/cli/dist/commands/chpass.js +1 -1
  22. package/node_modules/@weavecode/cli/dist/commands/daemon-auth.js +1 -1
  23. package/node_modules/@weavecode/cli/dist/commands/daemon.d.ts +2 -0
  24. package/node_modules/@weavecode/cli/dist/commands/daemon.js +2 -2
  25. package/node_modules/@weavecode/cli/dist/commands/dashboard.js +2 -2
  26. package/node_modules/@weavecode/cli/dist/commands/doctor.js +1 -1
  27. package/node_modules/@weavecode/cli/dist/commands/init.js +1 -1
  28. package/node_modules/@weavecode/cli/dist/commands/msg.js +2 -2
  29. package/node_modules/@weavecode/cli/dist/commands/scan.js +1 -1
  30. package/node_modules/@weavecode/cli/dist/commands/status.js +2 -2
  31. package/node_modules/@weavecode/cli/dist/commands/uninstall.js +1 -1
  32. package/node_modules/@weavecode/cli/dist/i18n/dict/en.js +5 -5
  33. package/node_modules/@weavecode/cli/dist/i18n/dict/zh.d.ts +6 -1
  34. package/node_modules/@weavecode/cli/dist/i18n/dict/zh.js +5 -5
  35. package/node_modules/@weavecode/cli/dist/i18n/index.js +1 -1
  36. package/node_modules/@weavecode/cli/dist/i18n/t.js +1 -1
  37. package/node_modules/@weavecode/cli/dist/init/claudemd-gen.js +3 -3
  38. package/node_modules/@weavecode/cli/dist/init/executor.js +3 -3
  39. package/node_modules/@weavecode/cli/dist/init/git-commit.js +2 -2
  40. package/node_modules/@weavecode/cli/dist/init/harnesses/claude.js +7 -7
  41. package/node_modules/@weavecode/cli/dist/init/harnesses/codex.js +1 -1
  42. package/node_modules/@weavecode/cli/dist/init/instruction-link.js +1 -1
  43. package/node_modules/@weavecode/cli/dist/init/plugin-templates.js +1 -1
  44. package/node_modules/@weavecode/cli/dist/init/prompt.js +4 -4
  45. package/node_modules/@weavecode/cli/dist/init/provision.js +1 -1
  46. package/node_modules/@weavecode/cli/dist/init/uninstall.js +6 -6
  47. package/node_modules/@weavecode/cli/dist/init/wiring.js +1 -1
  48. package/node_modules/@weavecode/cli/dist/parser.js +1 -1
  49. package/node_modules/@weavecode/cli/dist/statusline/ansi.js +1 -1
  50. package/node_modules/@weavecode/cli/dist/statusline/mock-input.js +1 -1
  51. package/node_modules/@weavecode/cli/dist/statusline/preview.js +2 -2
  52. package/node_modules/@weavecode/cli/package.json +5 -5
  53. package/node_modules/@weavecode/core/dist/harness-checks.js +1 -1
  54. package/node_modules/@weavecode/core/dist/harness.d.ts +25 -0
  55. package/node_modules/@weavecode/core/dist/harness.js +1 -1
  56. package/node_modules/@weavecode/core/dist/index.d.ts +1 -1
  57. package/node_modules/@weavecode/core/dist/index.js +1 -1
  58. package/node_modules/@weavecode/core/dist/platform.js +1 -1
  59. package/node_modules/@weavecode/core/dist/types.js +1 -1
  60. package/node_modules/@weavecode/core/dist/utils/fs.js +1 -1
  61. package/node_modules/@weavecode/core/dist/utils/logger.js +1 -1
  62. package/node_modules/@weavecode/core/package.json +1 -1
  63. package/node_modules/@weavecode/harness/dist/claude/assets.js +4 -4
  64. package/node_modules/@weavecode/harness/dist/claude/capture.js +9 -9
  65. package/node_modules/@weavecode/harness/dist/claude/commands.d.ts +3 -0
  66. package/node_modules/@weavecode/harness/dist/claude/commands.js +2 -3
  67. package/node_modules/@weavecode/harness/dist/claude/config.js +2 -2
  68. package/node_modules/@weavecode/harness/dist/claude/detect.js +1 -1
  69. package/node_modules/@weavecode/harness/dist/claude/edits.js +1 -1
  70. package/node_modules/@weavecode/harness/dist/claude/event-source.js +1 -1
  71. package/node_modules/@weavecode/harness/dist/claude/images.js +2 -2
  72. package/node_modules/@weavecode/harness/dist/claude/index.d.ts +1 -0
  73. package/node_modules/@weavecode/harness/dist/claude/index.js +1 -1
  74. package/node_modules/@weavecode/harness/dist/claude/liveness.js +1 -1
  75. package/node_modules/@weavecode/harness/dist/claude/mcp-gen.js +1 -1
  76. package/node_modules/@weavecode/harness/dist/claude/messaging.js +2 -2
  77. package/node_modules/@weavecode/harness/dist/claude/model-aliases.js +1 -1
  78. package/node_modules/@weavecode/harness/dist/claude/narration.d.ts +0 -11
  79. package/node_modules/@weavecode/harness/dist/claude/narration.js +1 -1
  80. package/node_modules/@weavecode/harness/dist/claude/peers.js +1 -1
  81. package/node_modules/@weavecode/harness/dist/claude/plan.js +1 -1
  82. package/node_modules/@weavecode/harness/dist/claude/plugins.js +4 -4
  83. package/node_modules/@weavecode/harness/dist/claude/prompt-inbox.js +1 -1
  84. package/node_modules/@weavecode/harness/dist/claude/prompt.js +3 -3
  85. package/node_modules/@weavecode/harness/dist/claude/questions.js +2 -2
  86. package/node_modules/@weavecode/harness/dist/claude/resume.js +1 -1
  87. package/node_modules/@weavecode/harness/dist/claude/rewind.d.ts +8 -0
  88. package/node_modules/@weavecode/harness/dist/claude/rewind.js +1 -0
  89. package/node_modules/@weavecode/harness/dist/claude/settings-gen.js +1 -1
  90. package/node_modules/@weavecode/harness/dist/claude/side-question.js +2 -2
  91. package/node_modules/@weavecode/harness/dist/claude/statusline/generator.js +36 -15
  92. package/node_modules/@weavecode/harness/dist/claude/statusline/git-cache.js +1 -1
  93. package/node_modules/@weavecode/harness/dist/claude/statusline/surface.js +2 -2
  94. package/node_modules/@weavecode/harness/dist/claude/transcript-cursor.d.ts +26 -0
  95. package/node_modules/@weavecode/harness/dist/claude/transcript-cursor.js +2 -0
  96. package/node_modules/@weavecode/harness/dist/claude/transcript.js +7 -7
  97. package/node_modules/@weavecode/harness/dist/codex/assets.js +1 -1
  98. package/node_modules/@weavecode/harness/dist/codex/capture.js +2 -2
  99. package/node_modules/@weavecode/harness/dist/codex/commands.js +4 -4
  100. package/node_modules/@weavecode/harness/dist/codex/config.js +2 -2
  101. package/node_modules/@weavecode/harness/dist/codex/detect.js +1 -1
  102. package/node_modules/@weavecode/harness/dist/codex/event-source.js +2 -2
  103. package/node_modules/@weavecode/harness/dist/codex/images.js +1 -1
  104. package/node_modules/@weavecode/harness/dist/codex/index.js +1 -1
  105. package/node_modules/@weavecode/harness/dist/codex/liveness.js +1 -1
  106. package/node_modules/@weavecode/harness/dist/codex/mcp.js +1 -1
  107. package/node_modules/@weavecode/harness/dist/codex/messaging.js +2 -2
  108. package/node_modules/@weavecode/harness/dist/codex/narration.js +1 -1
  109. package/node_modules/@weavecode/harness/dist/codex/plugin-state.js +1 -1
  110. package/node_modules/@weavecode/harness/dist/codex/plugins.js +3 -3
  111. package/node_modules/@weavecode/harness/dist/codex/provision.js +1 -1
  112. package/node_modules/@weavecode/harness/dist/codex/questions.js +2 -2
  113. package/node_modules/@weavecode/harness/dist/codex/rollout.js +5 -5
  114. package/node_modules/@weavecode/harness/dist/codex/side-question.js +4 -4
  115. package/node_modules/@weavecode/harness/dist/codex/titles.js +4 -4
  116. package/node_modules/@weavecode/harness/dist/codex/toml.js +13 -13
  117. package/node_modules/@weavecode/harness/dist/codex/transcript.js +2 -2
  118. package/node_modules/@weavecode/harness/dist/driver.d.ts +56 -1
  119. package/node_modules/@weavecode/harness/dist/driver.js +1 -1
  120. package/node_modules/@weavecode/harness/dist/init/generated.js +2 -2
  121. package/node_modules/@weavecode/harness/dist/init/pipeline.js +1 -1
  122. package/node_modules/@weavecode/harness/dist/registry-wiring.js +1 -1
  123. package/node_modules/@weavecode/harness/dist/shared/install-link.js +1 -1
  124. package/node_modules/@weavecode/harness/dist/shared/json-cap.js +1 -1
  125. package/node_modules/@weavecode/harness/package.json +2 -2
  126. package/node_modules/@weavecode/server/dist/config/profiles.d.ts +19 -13
  127. package/node_modules/@weavecode/server/dist/config/profiles.js +2 -2
  128. package/node_modules/@weavecode/server/dist/daemon/config-routes.js +1 -1
  129. package/node_modules/@weavecode/server/dist/daemon/dev-entry.js +1 -1
  130. package/node_modules/@weavecode/server/dist/daemon/entry.js +7 -1
  131. package/node_modules/@weavecode/server/dist/daemon/hooks-routes.js +1 -1
  132. package/node_modules/@weavecode/server/dist/daemon/opener/launch.js +1 -1
  133. package/node_modules/@weavecode/server/dist/daemon/opener.d.ts +2 -0
  134. package/node_modules/@weavecode/server/dist/daemon/opener.js +1 -1
  135. package/node_modules/@weavecode/server/dist/daemon/routes/session-control.js +1 -1
  136. package/node_modules/@weavecode/server/dist/daemon/routes/session-insights.js +1 -1
  137. package/node_modules/@weavecode/server/dist/daemon/routes/uploads.js +1 -1
  138. package/node_modules/@weavecode/server/dist/daemon/routes/visualizations.d.ts +3 -0
  139. package/node_modules/@weavecode/server/dist/daemon/routes/visualizations.js +1 -0
  140. package/node_modules/@weavecode/server/dist/daemon/server.js +2 -2
  141. package/node_modules/@weavecode/server/dist/daemon/session-open.d.ts +17 -0
  142. package/node_modules/@weavecode/server/dist/daemon/session-open.js +1 -1
  143. package/node_modules/@weavecode/server/dist/daemon/session-probe.d.ts +5 -4
  144. package/node_modules/@weavecode/server/dist/daemon/start.js +1 -1
  145. package/node_modules/@weavecode/server/dist/db/db.js +6 -2
  146. package/node_modules/@weavecode/server/dist/hooks/bus.d.ts +3 -1
  147. package/node_modules/@weavecode/server/dist/hooks/delivery/ack-gate.d.ts +12 -6
  148. package/node_modules/@weavecode/server/dist/hooks/delivery/ack-gate.js +1 -1
  149. package/node_modules/@weavecode/server/dist/hooks/delivery/channels.d.ts +3 -3
  150. package/node_modules/@weavecode/server/dist/hooks/delivery/channels.js +1 -1
  151. package/node_modules/@weavecode/server/dist/hooks/delivery/keys.d.ts +19 -9
  152. package/node_modules/@weavecode/server/dist/hooks/delivery/keys.js +1 -1
  153. package/node_modules/@weavecode/server/dist/hooks/delivery/relay.d.ts +2 -2
  154. package/node_modules/@weavecode/server/dist/hooks/delivery/relay.js +1 -1
  155. package/node_modules/@weavecode/server/dist/hooks/delivery/views.d.ts +5 -1
  156. package/node_modules/@weavecode/server/dist/hooks/delivery/views.js +1 -1
  157. package/node_modules/@weavecode/server/dist/hooks/message-deliverer.d.ts +45 -38
  158. package/node_modules/@weavecode/server/dist/hooks/message-deliverer.js +5 -3
  159. package/node_modules/@weavecode/server/dist/repositories/hook-events.d.ts +1 -1
  160. package/node_modules/@weavecode/server/dist/repositories/hook-events.js +4 -4
  161. package/node_modules/@weavecode/server/dist/repositories/sessions.d.ts +11 -1
  162. package/node_modules/@weavecode/server/dist/repositories/sessions.js +4 -2
  163. package/node_modules/@weavecode/server/dist/repositories/uploads.d.ts +14 -4
  164. package/node_modules/@weavecode/server/dist/repositories/uploads.js +11 -11
  165. package/node_modules/@weavecode/server/dist/surfaces.d.ts +3 -1
  166. package/node_modules/@weavecode/server/dist/surfaces.js +1 -1
  167. package/node_modules/@weavecode/server/package.json +4 -4
  168. package/node_modules/@weavecode/server/web/dist/assets/{abnfDiagram-WEYOIA3C-C-f9WfD3.js → abnfDiagram-WEYOIA3C-DDeQkTf5.js} +1 -1
  169. package/node_modules/@weavecode/server/web/dist/assets/{arc-D62qulAD.js → arc-CRZTRyjb.js} +1 -1
  170. package/node_modules/@weavecode/server/web/dist/assets/{architectureDiagram-ZHVYKT53-B6ZJRpcL.js → architectureDiagram-ZHVYKT53-Dj54DE3O.js} +1 -1
  171. package/node_modules/@weavecode/server/web/dist/assets/{blockDiagram-RJAE7QA3-DOtDFeiT.js → blockDiagram-RJAE7QA3-BIH8mSIZ.js} +1 -1
  172. package/node_modules/@weavecode/server/web/dist/assets/{c4Diagram-XDPPPE54-DWn3ng8X.js → c4Diagram-XDPPPE54-5YoKWFOD.js} +1 -1
  173. package/node_modules/@weavecode/server/web/dist/assets/channel-5VM93AJ8.js +1 -0
  174. package/node_modules/@weavecode/server/web/dist/assets/{chunk-2E7WHVMD-B5IIc9cn.js → chunk-2E7WHVMD-B653kMXt.js} +1 -1
  175. package/node_modules/@weavecode/server/web/dist/assets/{chunk-2Q5K7J3B-BUU9Zvt8.js → chunk-2Q5K7J3B-f_A4_eDz.js} +1 -1
  176. package/node_modules/@weavecode/server/web/dist/assets/{chunk-4EMNKR2T-CqEGIghP.js → chunk-4EMNKR2T-v5j5qNGj.js} +1 -1
  177. package/node_modules/@weavecode/server/web/dist/assets/{chunk-55XCU76K-D36o_E2b.js → chunk-55XCU76K-CgEqeP7j.js} +1 -1
  178. package/node_modules/@weavecode/server/web/dist/assets/{chunk-5VM5RSS4-sxws8ERh.js → chunk-5VM5RSS4-BeROhLXN.js} +1 -1
  179. package/node_modules/@weavecode/server/web/dist/assets/{chunk-JWPE2WC7-CJo_rEEb.js → chunk-JWPE2WC7-D6dXb_jr.js} +1 -1
  180. package/node_modules/@weavecode/server/web/dist/assets/{chunk-VQ5W62QI-9UlLCpsb.js → chunk-VQ5W62QI-CnHdSEMi.js} +1 -1
  181. package/node_modules/@weavecode/server/web/dist/assets/{chunk-XXDRQBXY-CX9CPbWb.js → chunk-XXDRQBXY-BkG_e6PE.js} +1 -1
  182. package/node_modules/@weavecode/server/web/dist/assets/{chunk-ZCHMQSOR-DwEfdZcF.js → chunk-ZCHMQSOR-DxR-fxzs.js} +2 -2
  183. package/node_modules/@weavecode/server/web/dist/assets/{classDiagram-v2-4MYWR3UA-CFCmIyt8.js → classDiagram-v2-4MYWR3UA-DQe1b_k8.js} +1 -1
  184. package/node_modules/@weavecode/server/web/dist/assets/{cose-bilkent-JH36ORCC-qWXeXJTn.js → cose-bilkent-JH36ORCC-DThrA8S5.js} +1 -1
  185. package/node_modules/@weavecode/server/web/dist/assets/{cynefin-EF2NZ3EQ-CXabWQxz.js → cynefin-EF2NZ3EQ-OZotFKUu.js} +1 -1
  186. package/node_modules/@weavecode/server/web/dist/assets/{cynefinDiagram-WF24UDRP-Bzpj8Qbj.js → cynefinDiagram-WF24UDRP-DJjq2hfT.js} +1 -1
  187. package/node_modules/@weavecode/server/web/dist/assets/{dagre-NK4GIZVX-CXsL8t30.js → dagre-NK4GIZVX-C2vH93HT.js} +1 -1
  188. package/node_modules/@weavecode/server/web/dist/assets/{diagram-CBK3MWTC-xfR-zlAD.js → diagram-CBK3MWTC-DrF_ScM-.js} +1 -1
  189. package/node_modules/@weavecode/server/web/dist/assets/{diagram-I5XIIV2D-BjMqEsXr.js → diagram-I5XIIV2D-D1qoUJ4t.js} +1 -1
  190. package/node_modules/@weavecode/server/web/dist/assets/{diagram-ODIL2UCW-QZpf8KhT.js → diagram-ODIL2UCW-D9A6W8oB.js} +1 -1
  191. package/node_modules/@weavecode/server/web/dist/assets/{diagram-PFBEJUXE-Cw1ESWft.js → diagram-PFBEJUXE-PeI-eyu2.js} +1 -1
  192. package/node_modules/@weavecode/server/web/dist/assets/{diagram-RJA3I4VV-CAy2RYYZ.js → diagram-RJA3I4VV-DITY0Rd8.js} +1 -1
  193. package/node_modules/@weavecode/server/web/dist/assets/{diagram-TYUNFSNR-B09WciWt.js → diagram-TYUNFSNR-D5KieEw5.js} +1 -1
  194. package/node_modules/@weavecode/server/web/dist/assets/{ebnfDiagram-V4P3TTPT-DuLmHG0U.js → ebnfDiagram-V4P3TTPT-DDylK-gz.js} +1 -1
  195. package/node_modules/@weavecode/server/web/dist/assets/{elk-QONTBCTQ--zzx0EVP.js → elk-QONTBCTQ-D3xrVg0U.js} +1 -1
  196. package/node_modules/@weavecode/server/web/dist/assets/{erDiagram-KYQIGQAA-BPDjG5vB.js → erDiagram-KYQIGQAA-y_V1cor7.js} +1 -1
  197. package/node_modules/@weavecode/server/web/dist/assets/{flowDiagram-IUGLLWBU-DtE2M9a_.js → flowDiagram-IUGLLWBU-BJ8Z0MkF.js} +1 -1
  198. package/node_modules/@weavecode/server/web/dist/assets/{ganttDiagram-R7GPNTJY-B-4AaWVa.js → ganttDiagram-R7GPNTJY-C0q-CS1T.js} +1 -1
  199. package/node_modules/@weavecode/server/web/dist/assets/{gitGraphDiagram-PDYL7XHY-CYj5FGYx.js → gitGraphDiagram-PDYL7XHY-BYTComiB.js} +1 -1
  200. package/node_modules/@weavecode/server/web/dist/assets/index-BKxAxaVG.js +1091 -0
  201. package/node_modules/@weavecode/server/web/dist/assets/index-C0Sd4MH7.css +11 -0
  202. package/node_modules/@weavecode/server/web/dist/assets/{infoDiagram-MVDRKAX5-DHYSDj-3.js → infoDiagram-MVDRKAX5-DtixgjLP.js} +1 -1
  203. package/node_modules/@weavecode/server/web/dist/assets/{ishikawaDiagram-HPEHV2GE-CumAEBoU.js → ishikawaDiagram-HPEHV2GE-ChEnND76.js} +1 -1
  204. package/node_modules/@weavecode/server/web/dist/assets/{journeyDiagram-BOSHW7O7-ES3O3X05.js → journeyDiagram-BOSHW7O7-DHcNtpYF.js} +1 -1
  205. package/node_modules/@weavecode/server/web/dist/assets/{kanban-definition-FNSA4HC5-BMIrf0d9.js → kanban-definition-FNSA4HC5-Dft7qpW5.js} +1 -1
  206. package/node_modules/@weavecode/server/web/dist/assets/{linear-DEZ5FO1r.js → linear-DEo11t-X.js} +1 -1
  207. package/node_modules/@weavecode/server/web/dist/assets/{mermaid.core-D7gm2szA.js → mermaid.core-D_Dp_Kl2.js} +4 -4
  208. package/node_modules/@weavecode/server/web/dist/assets/{mindmap-definition-6OY57UG3-BBQP8lyN.js → mindmap-definition-6OY57UG3-CM6OAd_-.js} +1 -1
  209. package/node_modules/@weavecode/server/web/dist/assets/{pegDiagram-ECIUJNBX-DzkKsqmg.js → pegDiagram-ECIUJNBX-_QkY0h8Q.js} +1 -1
  210. package/node_modules/@weavecode/server/web/dist/assets/{pieDiagram-GNMPY74T-zR3q7Qs1.js → pieDiagram-GNMPY74T-ZGr5vtDj.js} +1 -1
  211. package/node_modules/@weavecode/server/web/dist/assets/{quadrantDiagram-D57K4MC3-B4xuIsMW.js → quadrantDiagram-D57K4MC3-D8pQ_PU2.js} +1 -1
  212. package/node_modules/@weavecode/server/web/dist/assets/{railroadDiagram-Y72NRBL7-D2I52m9D.js → railroadDiagram-Y72NRBL7-DUIo-WmA.js} +1 -1
  213. package/node_modules/@weavecode/server/web/dist/assets/{requirementDiagram-EQYSW5RA-aJ1KfKj2.js → requirementDiagram-EQYSW5RA-C90DU5Ny.js} +1 -1
  214. package/node_modules/@weavecode/server/web/dist/assets/{sankeyDiagram-SY24JHO5-CEq16Ecf.js → sankeyDiagram-SY24JHO5-B_poYGgJ.js} +1 -1
  215. package/node_modules/@weavecode/server/web/dist/assets/{sequenceDiagram-BLEHNHQU-Bc66KG9f.js → sequenceDiagram-BLEHNHQU-DDW7b2Dn.js} +1 -1
  216. package/node_modules/@weavecode/server/web/dist/assets/{sizeCapture-INFHLROL-Ddizw_UG.js → sizeCapture-INFHLROL-CmKoqX6K.js} +1 -1
  217. package/node_modules/@weavecode/server/web/dist/assets/{stateDiagram-v2-A6IESKWZ-C1eVtEX9.js → stateDiagram-v2-A6IESKWZ-CkVMAyxG.js} +1 -1
  218. package/node_modules/@weavecode/server/web/dist/assets/{swimlanes-B3ENRKFQ-CCd_KlpZ.js → swimlanes-B3ENRKFQ-Dm_Omzky.js} +1 -1
  219. package/node_modules/@weavecode/server/web/dist/assets/swimlanesDiagram-AYQRV4AK-Bjj8ZA4d.js +8 -0
  220. package/node_modules/@weavecode/server/web/dist/assets/{timeline-definition-JXYKGLGB-DqpBhIII.js → timeline-definition-JXYKGLGB-DnhkRGLb.js} +1 -1
  221. package/node_modules/@weavecode/server/web/dist/assets/{usecaseDiagram-WPOLBNNX-bX_jNjSt.js → usecaseDiagram-WPOLBNNX-_TdIjC6Z.js} +1 -1
  222. package/node_modules/@weavecode/server/web/dist/assets/{vennDiagram-Q3Y3IDCW-D07CUHl3.js → vennDiagram-Q3Y3IDCW-FzgsymXB.js} +1 -1
  223. package/node_modules/@weavecode/server/web/dist/assets/{wardleyDiagram-IVAIDKWA-CZ5ovcWa.js → wardleyDiagram-IVAIDKWA-BwqimStC.js} +1 -1
  224. package/node_modules/@weavecode/server/web/dist/assets/{xychartDiagram-4URNHDU4-CBTh52hU.js → xychartDiagram-4URNHDU4-CFjjVPIV.js} +1 -1
  225. package/node_modules/@weavecode/server/web/dist/icons/apple-touch-icon.png +0 -0
  226. package/node_modules/@weavecode/server/web/dist/icons/icon-192.png +0 -0
  227. package/node_modules/@weavecode/server/web/dist/icons/icon-512.png +0 -0
  228. package/node_modules/@weavecode/server/web/dist/icons/icon-maskable-512.png +0 -0
  229. package/node_modules/@weavecode/server/web/dist/index.html +11 -2
  230. package/node_modules/@weavecode/server/web/dist/manifest.webmanifest +16 -0
  231. package/node_modules/@weavecode/server/web/dist/sw.js +14 -12
  232. package/node_modules/@weavecode/templates/package.json +2 -2
  233. package/node_modules/selfsigned/node_modules/@peculiar/x509/node_modules/tslib/README.md +3 -8
  234. package/node_modules/selfsigned/node_modules/@peculiar/x509/node_modules/tslib/package.json +1 -1
  235. package/node_modules/selfsigned/node_modules/@peculiar/x509/node_modules/tslib/tslib.d.ts +4 -2
  236. package/node_modules/selfsigned/node_modules/@peculiar/x509/node_modules/tslib/tslib.es6.js +10 -1
  237. package/node_modules/selfsigned/node_modules/@peculiar/x509/node_modules/tslib/tslib.es6.mjs +10 -1
  238. package/node_modules/selfsigned/node_modules/@peculiar/x509/node_modules/tslib/tslib.js +10 -1
  239. package/node_modules/selfsigned/node_modules/pkijs/node_modules/tslib/README.md +3 -8
  240. package/node_modules/selfsigned/node_modules/pkijs/node_modules/tslib/package.json +1 -1
  241. package/node_modules/selfsigned/node_modules/pkijs/node_modules/tslib/tslib.d.ts +4 -2
  242. package/node_modules/selfsigned/node_modules/pkijs/node_modules/tslib/tslib.es6.js +10 -1
  243. package/node_modules/selfsigned/node_modules/pkijs/node_modules/tslib/tslib.es6.mjs +10 -1
  244. package/node_modules/selfsigned/node_modules/pkijs/node_modules/tslib/tslib.js +10 -1
  245. package/package.json +6 -6
  246. package/node_modules/@weavecode/server/web/dist/assets/channel-CjSr3Zfg.js +0 -1
  247. package/node_modules/@weavecode/server/web/dist/assets/index-BGdTLG4q.js +0 -1031
  248. package/node_modules/@weavecode/server/web/dist/assets/index-CEpJpR7P.css +0 -11
  249. package/node_modules/@weavecode/server/web/dist/assets/swimlanesDiagram-AYQRV4AK-yIifcHaR.js +0 -8
@@ -1,5 +1,10 @@
1
1
  # Encode URL
2
2
 
3
+ [![NPM Version][npm-image]][npm-url]
4
+ [![NPM Downloads][downloads-image]][downloads-url]
5
+ [![Build Status][ci-image]][ci-url]
6
+ [![Test Coverage][coveralls-image]][coveralls-url]
7
+
3
8
  Encode a URL to a percent-encoded form, excluding already-encoded sequences.
4
9
 
5
10
  ## Installation
@@ -107,3 +112,12 @@ $ npm run lint
107
112
  ## License
108
113
 
109
114
  [MIT](LICENSE)
115
+
116
+ [npm-image]: https://img.shields.io/npm/v/encodeurl
117
+ [npm-url]: https://npmjs.org/package/encodeurl
118
+ [downloads-image]: https://img.shields.io/npm/dm/encodeurl
119
+ [downloads-url]: https://npmcharts.com/compare/encodeurl?minimal=true
120
+ [ci-image]: https://img.shields.io/github/actions/workflow/status/pillarjs/encodeurl/ci.yml?branch=master
121
+ [ci-url]: https://github.com/pillarjs/encodeurl/actions/workflows/ci.yml
122
+ [coveralls-image]: https://img.shields.io/coverallsCoverage/github/pillarjs/encodeurl?branch=master
123
+ [coveralls-url]: https://coveralls.io/r/pillarjs/encodeurl?branch=master
@@ -22,18 +22,11 @@ module.exports = encodeUrl
22
22
  var ENCODE_CHARS_REGEXP = /(?:[^\x21\x23-\x3B\x3D\x3F-\x5F\x61-\x7A\x7C\x7E]|%(?:[^0-9A-Fa-f]|[0-9A-Fa-f][^0-9A-Fa-f]|$))+/g
23
23
 
24
24
  /**
25
- * RegExp to match unmatched surrogate pair.
25
+ * RegExp to match surrogate pairs and unpaired surrogates.
26
26
  * @private
27
27
  */
28
28
 
29
- var UNMATCHED_SURROGATE_PAIR_REGEXP = /(^|[^\uD800-\uDBFF])[\uDC00-\uDFFF]|[\uD800-\uDBFF]([^\uDC00-\uDFFF]|$)/g
30
-
31
- /**
32
- * String to replace unmatched surrogate pair with.
33
- * @private
34
- */
35
-
36
- var UNMATCHED_SURROGATE_PAIR_REPLACE = '$1\uFFFD$2'
29
+ var SURROGATE_REGEXP = /([\uD800-\uDBFF][\uDC00-\uDFFF])|[\uD800-\uDFFF]/g
37
30
 
38
31
  /**
39
32
  * Encode a URL to a percent-encoded form, excluding already-encoded sequences.
@@ -55,6 +48,8 @@ var UNMATCHED_SURROGATE_PAIR_REPLACE = '$1\uFFFD$2'
55
48
 
56
49
  function encodeUrl (url) {
57
50
  return String(url)
58
- .replace(UNMATCHED_SURROGATE_PAIR_REGEXP, UNMATCHED_SURROGATE_PAIR_REPLACE)
51
+ .replace(SURROGATE_REGEXP, function (_, pair) {
52
+ return pair || '\uFFFD'
53
+ })
59
54
  .replace(ENCODE_CHARS_REGEXP, encodeURI)
60
55
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "encodeurl",
3
3
  "description": "Encode a URL to a percent-encoded form, excluding already-encoded sequences",
4
- "version": "2.0.0",
4
+ "version": "2.0.1",
5
5
  "contributors": [
6
6
  "Douglas Christopher Wilson <doug@somethingdoug.com>"
7
7
  ],
@@ -12,6 +12,10 @@
12
12
  "url"
13
13
  ],
14
14
  "repository": "pillarjs/encodeurl",
15
+ "funding": {
16
+ "type": "opencollective",
17
+ "url": "https://opencollective.com/express"
18
+ },
15
19
  "devDependencies": {
16
20
  "eslint": "5.11.1",
17
21
  "eslint-config-standard": "12.0.0",
@@ -19,8 +23,8 @@
19
23
  "eslint-plugin-node": "7.0.1",
20
24
  "eslint-plugin-promise": "4.0.1",
21
25
  "eslint-plugin-standard": "4.0.0",
22
- "istanbul": "0.4.5",
23
- "mocha": "2.5.3"
26
+ "mocha": "~11.7.0",
27
+ "nyc": "~17.1.0"
24
28
  },
25
29
  "files": [
26
30
  "LICENSE",
@@ -33,8 +37,8 @@
33
37
  },
34
38
  "scripts": {
35
39
  "lint": "eslint .",
36
- "test": "mocha --reporter spec --bail --check-leaks test/",
37
- "test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --reporter dot --check-leaks test/",
38
- "test-travis": "istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --reporter spec --check-leaks test/"
40
+ "test": "mocha --check-leaks --reporter spec",
41
+ "test-ci": "nyc --reporter=lcov --reporter=text npm test",
42
+ "test-cov": "nyc --reporter=html --reporter=text npm test"
39
43
  }
40
44
  }
@@ -1,3 +1,12 @@
1
+ ## **6.17.1**
2
+ - [Fix] `parse`: `interpretNumericEntities`: decode code points above U+FFFF as surrogate pairs (#640)
3
+ - [Fix] `parse`: respect `plainObjects` for `[]` with `parseArrays: false` (#639)
4
+ - [Fix] `utils`: `merge`: count the elements of a sparse array against `arrayLimit`, not its holes
5
+ - [Fix] `parse`: guard bracket-wrapped prototype keys at depth 0 (#638)
6
+ - [Refactor] `parse`: extract wrapping-bracket stripping helper
7
+ - [readme] document that `depth: 0` and `depth: false` keep keys flat
8
+ - [Tests] `parse`: pin depth-0 bracket stripping and prototype keys kept by `allowPrototypes`/`plainObjects`
9
+
1
10
  ## **6.17.0**
2
11
  - [New] `stringify`: add `WHATWG` format (#623)
3
12
  - [Fix] `stringify`: do not sort the caller's `filter` array in place (#637)
@@ -21,6 +30,12 @@
21
30
  - [Tests] `parse`: pin the behavior of a zero or negative `arrayLimit`
22
31
  - [Tests] `utils`/`stringify`: pin `~`, `*`, and parens encoding in RFC3986 and RFC1738
23
32
 
33
+ ## **6.16.2**
34
+ - [Fix] `stringify`: encode keys when `allowEmptyArrays` is set (#561)
35
+ - [meta] use double quotes for better OS support
36
+ - [Dev Deps] update `evalmd`, `npmignore`
37
+ - [Tests] `stringify`: pin `allowEmptyArrays` output for keys that need no encoding
38
+
24
39
  ## **6.16.1**
25
40
  - [Fix] `parse`: do not mutate an object input
26
41
  - [Fix] `stringify`: stop re-encoding structural separator dots when `encodeDotInKeys` is set (#564)
@@ -60,6 +75,12 @@
60
75
  - [Dev Deps] update `@ljharb/eslint-config`, `eslint`
61
76
  - [Dev Deps] update `eslint`, `evalmd`
62
77
 
78
+ ## **6.15.4**
79
+ - [Fix] `stringify`: encode keys when `allowEmptyArrays` is set (#561)
80
+ - [meta] use double quotes for better OS support
81
+ - [Dev Deps] update `@ljharb/eslint-config`, `evalmd`, `npmignore`, `tape`
82
+ - [Tests] `stringify`: pin `allowEmptyArrays` output for keys that need no encoding
83
+
63
84
  ## **6.15.3**
64
85
  - [Fix] `parse`: enforce `throwOnLimitExceeded` for cumulative array growth via `combine`/`merge`
65
86
  - [Fix] `utils`: respect encoding of surrogate pairs across chunks (#559)
@@ -91,6 +112,13 @@
91
112
  - [New] `parse`: add `strictMerge` option to wrap object/primitive conflicts in an array (#425, #122)
92
113
  - [Fix] `duplicates` option should not apply to bracket notation keys (#514)
93
114
 
115
+ ## **6.14.3**
116
+ - [Fix] `stringify`: encode keys when `allowEmptyArrays` is set (#561)
117
+ - [meta] use double quotes for better OS support
118
+ - [Deps] update `side-channel`
119
+ - [Dev Deps] update `@ljharb/eslint-config`, `es-value-fixtures`, `eslint`, `evalmd`, `mock-property`, `npmignore`, `tape`
120
+ - [Tests] `stringify`: pin `allowEmptyArrays` output for keys that need no encoding
121
+
94
122
  ## **6.14.2**
95
123
  - [Fix] `parse`: mark overflow objects for indexed notation exceeding `arrayLimit` (#546)
96
124
  - [Fix] `arrayLimit` means max count, not max index, in `combine`/`merge`/`parseArrayValue`
@@ -123,6 +151,13 @@
123
151
  - [Dev Deps] update `es-value-fixtures`, `has-bigints`, `has-proto`, `has-symbols`
124
152
  - [Tests] increase coverage
125
153
 
154
+ ## **6.13.4**
155
+ - [Fix] `stringify`: encode keys when `allowEmptyArrays` is set (#561)
156
+ - [meta] use double quotes for better OS support
157
+ - [Deps] update `side-channel`
158
+ - [Dev Deps] update `@ljharb/eslint-config`, `es-value-fixtures`, `eslint`, `evalmd`, `for-each`, `has-symbols`, `mock-property`, `npmignore`, `object-inspect`, `tape`
159
+ - [Tests] `stringify`: pin `allowEmptyArrays` output for keys that need no encoding
160
+
126
161
  ## **6.13.3**
127
162
  [Fix] fix regressions from robustness refactor
128
163
  [actions] update reusable workflows
@@ -150,6 +185,13 @@
150
185
  - [New] `parse`: add `strictDepth` option (#511)
151
186
  - [Tests] use `npm audit` instead of `aud`
152
187
 
188
+ ## **6.12.6**
189
+ - [Fix] `stringify`: encode keys when `allowEmptyArrays` is set (#561)
190
+ - [meta] use `npm audit` instead of `aud`
191
+ - [Deps] update `side-channel`
192
+ - [Dev Deps] update `@ljharb/eslint-config`, `es-value-fixtures`, `eslint`, `evalmd`, `for-each`, `has-symbols`, `mock-property`, `npmignore`, `object-inspect`, `tape`
193
+ - [Tests] `stringify`: pin `allowEmptyArrays` output for keys that need no encoding
194
+
153
195
  ## **6.12.5**
154
196
  - [Fix] fix regressions from robustness refactor
155
197
  - [actions] update reusable workflows
@@ -85,7 +85,9 @@ assert.deepEqual(qs.parse('foo[bar][baz]=foobarbaz'), {
85
85
  });
86
86
  ```
87
87
 
88
- Since v6.14.1 and v6.15.2, `parse` interprets nested bracket groups more consistently. Query strings with unbalanced `[`/`]` can produce different results than in 6.15.1; see [#558](https://github.com/ljharb/qs/issues/558).
88
+ Since v6.14.1 and v6.15.2, `parse` interprets nested bracket groups more consistently.
89
+ Query strings with unbalanced `[`/`]` can produce different results than in 6.15.1;
90
+ see [#558](https://github.com/ljharb/qs/issues/558).
89
91
 
90
92
  Because of that bracket grammar,
91
93
  **qs** does not agree with `URLSearchParams`,
@@ -132,6 +134,15 @@ var deep = qs.parse('a[b][c][d][e][f][g][h][i]=j', { depth: 1 });
132
134
  assert.deepEqual(deep, { a: { b: { '[c][d][e][f][g][h][i]': 'j' } } });
133
135
  ```
134
136
 
137
+ Setting `depth` to `0` or `false` turns off nesting,
138
+ so keys are never split into nested objects or arrays,
139
+ whether or not their brackets are percent-encoded:
140
+
141
+ ```javascript
142
+ assert.deepEqual(qs.parse('a[b][c]=d', { depth: 0 }), { 'a[b][c]': 'd' });
143
+ assert.deepEqual(qs.parse('a%5Bb%5D=c', { depth: false }), { 'a[b]': 'c' });
144
+ ```
145
+
135
146
  You can configure **qs** to throw an error when parsing nested input beyond this depth using the `strictDepth` option (defaulted to false):
136
147
 
137
148
  ```javascript
@@ -143,16 +154,22 @@ try {
143
154
  }
144
155
  ```
145
156
 
146
- The depth limit helps mitigate abuse when **qs** is used to parse user input, and it is recommended to keep it a reasonably small number. The strictDepth option adds a layer of protection by throwing an error when the limit is exceeded, allowing you to catch and handle such cases.
157
+ The depth limit helps mitigate abuse when **qs** is used to parse user input,
158
+ and it is recommended to keep it a reasonably small number.
159
+ The strictDepth option adds a layer of protection by throwing an error when the limit is exceeded,
160
+ allowing you to catch and handle such cases.
147
161
 
148
- For similar reasons, by default **qs** will only parse up to 1000 parameters. This can be overridden by passing a `parameterLimit` option:
162
+ For similar reasons, by default **qs** will only parse up to 1000 parameters.
163
+ This can be overridden by passing a `parameterLimit` option:
149
164
 
150
165
  ```javascript
151
166
  var limited = qs.parse('a=b&c=d', { parameterLimit: 1 });
152
167
  assert.deepEqual(limited, { a: 'b' });
153
168
  ```
154
169
 
155
- If you want an error to be thrown whenever a limit is exceeded (eg, `parameterLimit`, `arrayLimit`), set the `throwOnLimitExceeded` option to `true`. This option will generate a descriptive error if the query string exceeds a configured limit.
170
+ If you want an error to be thrown whenever a limit is exceeded (eg, `parameterLimit`, `arrayLimit`),
171
+ set the `throwOnLimitExceeded` option to `true`.
172
+ This option will generate a descriptive error if the query string exceeds a configured limit.
156
173
  ```javascript
157
174
  try {
158
175
  qs.parse('a=1&b=2&c=3&d=4', { parameterLimit: 3, throwOnLimitExceeded: true });
@@ -164,7 +181,10 @@ try {
164
181
 
165
182
  When `throwOnLimitExceeded` is set to `false` (default), **qs** will parse up to the specified `parameterLimit` and ignore the rest without throwing an error.
166
183
 
167
- Note that `parameterLimit` only bounds the number of `&`-delimited parameters; it does not limit how many values a single parameter expands into. In particular, when `comma: true` is enabled, a single parameter's value is split on commas into arbitrarily many elements, which `parameterLimit` does not constrain. Setting `throwOnLimitExceeded: true` (see `arrayLimit` below) makes **qs** reject a query string with more than `parameterLimit` parameters, one that uses an array index of `arrayLimit` or greater, or one that would produce any array longer than `arrayLimit`, including an array produced by comma splitting. `arrayLimit` applies to each array separately, including each parameter's comma-split value, so the total number of values across all parameters can still reach `parameterLimit` times `arrayLimit`, which is 20,000 at the default limits; always bound the input size at the transport layer as well (e.g. an HTTP body-size limit).
184
+ Note that `parameterLimit` only bounds the number of `&`-delimited parameters; it does not limit how many values a single parameter expands into.
185
+ In particular, when `comma: true` is enabled, a single parameter's value is split on commas into arbitrarily many elements, which `parameterLimit` does not constrain.
186
+ Setting `throwOnLimitExceeded: true` (see `arrayLimit` below) makes **qs** reject a query string with more than `parameterLimit` parameters, one that uses an array index of `arrayLimit` or greater, or one that would produce any array longer than `arrayLimit`, including an array produced by comma splitting.
187
+ `arrayLimit` applies to each array separately, including each parameter's comma-split value, so the total number of values across all parameters can still reach `parameterLimit` times `arrayLimit`, which is 20,000 at the default limits; always bound the input size at the transport layer as well (e.g. an HTTP body-size limit).
168
188
 
169
189
  To bypass the leading question mark, use `ignoreQueryPrefix`:
170
190
 
@@ -324,7 +344,8 @@ var withArrayLimit = qs.parse('a[1]=b', { arrayLimit: 0 });
324
344
  assert.deepEqual(withArrayLimit, { a: { '1': 'b' } });
325
345
  ```
326
346
 
327
- If you want to throw an error whenever the array limit is exceeded, set the `throwOnLimitExceeded` option to `true`. This option will generate a descriptive error if the query string exceeds a configured limit.
347
+ If you want to throw an error whenever the array limit is exceeded, set the `throwOnLimitExceeded` option to `true`.
348
+ This option will generate a descriptive error if the query string exceeds a configured limit.
328
349
  ```javascript
329
350
  try {
330
351
  qs.parse('a[1]=b', { arrayLimit: 0, throwOnLimitExceeded: true });
@@ -336,7 +357,11 @@ try {
336
357
 
337
358
  When `throwOnLimitExceeded` is set to `false` (default), **qs** will parse up to the specified `arrayLimit` and if the limit is exceeded, the array will instead be converted to an object with the index as the key.
338
359
 
339
- Note that `arrayLimit` is a *representation* threshold that controls when a numerically-indexed collection switches from an array to an object; it is **not** a hard cap on the total number of elements parsed. With the default `throwOnLimitExceeded: false`, exceeding `arrayLimit` never rejects or truncates input; it only changes the container type, and the resulting object still holds every element (so its size stays proportional to the input). This conversion is itself a safeguard: it avoids allocating a huge sparse array for input like `a[999999999]`. If you need a hard limit that rejects oversized arrays in untrusted query strings, set `throwOnLimitExceeded: true`. `throwOnLimitExceeded` still limits each array separately, not the total: with `comma: true`, each comma-separated group under `a[]=` counts as one element of the outer array, and can itself hold up to `arrayLimit` elements.
360
+ Note that `arrayLimit` is a *representation* threshold that controls when a numerically-indexed collection switches from an array to an object; it is **not** a hard cap on the total number of elements parsed.
361
+ With the default `throwOnLimitExceeded: false`, exceeding `arrayLimit` never rejects or truncates input; it only changes the container type, and the resulting object still holds every element (so its size stays proportional to the input).
362
+ This conversion is itself a safeguard: it avoids allocating a huge sparse array for input like `a[999999999]`.
363
+ If you need a hard limit that rejects oversized arrays in untrusted query strings, set `throwOnLimitExceeded: true`.
364
+ `throwOnLimitExceeded` still limits each array separately, not the total: with `comma: true`, each comma-separated group under `a[]=` counts as one element of the outer array, and can itself hold up to `arrayLimit` elements.
340
365
 
341
366
  To prevent array syntax (`a[]`, `a[0]`) from being parsed as arrays, set `parseArrays` to `false`.
342
367
  Note that duplicate keys (e.g. `a=b&a=c`) may still produce arrays when `duplicates` is `'combine'` (the default).
@@ -408,7 +433,8 @@ If you wish to auto-convert values which look like numbers, booleans, and other
408
433
  qs.stringify(object, [options]);
409
434
  ```
410
435
 
411
- When stringifying, **qs** by default URI encodes output. Objects are stringified as you would expect:
436
+ When stringifying, **qs** by default URI encodes output.
437
+ Objects are stringified as you would expect:
412
438
 
413
439
  ```javascript
414
440
  assert.equal(qs.stringify({ a: 'b' }), 'a=b');
@@ -704,7 +730,8 @@ var equalsInsensitive = qs.parse('a&b=');
704
730
  assert.deepEqual(equalsInsensitive, { a: '', b: '' });
705
731
  ```
706
732
 
707
- To distinguish between `null` values and empty strings use the `strictNullHandling` flag. In the result string the `null`
733
+ To distinguish between `null` values and empty strings use the `strictNullHandling` flag.
734
+ In the result string the `null`
708
735
  values have no `=` sign:
709
736
 
710
737
  ```javascript
@@ -792,7 +819,8 @@ It only affects encoding; how `null`, dates, arrays, and objects are serialized
792
819
  assert.equal(qs.stringify({ a: 'b c~*()' }, { format: 'WHATWG' }), 'a=b+c%7E*%28%29');
793
820
  ```
794
821
 
795
- _(Note: the `WHATWG` format matches `URLSearchParams` encoding only with the default `utf-8` charset, and only when keys are encoded too, so not with `encodeValuesOnly`. With `charset: 'iso-8859-1'`, every format uses the same `escape`-based encoding, which leaves characters like `@` and `/` unencoded; only the space handling differs)_
822
+ _(Note: the `WHATWG` format matches `URLSearchParams` encoding only with the default `utf-8` charset, and only when keys are encoded too, so not with `encodeValuesOnly`.
823
+ With `charset: 'iso-8859-1'`, every format uses the same `escape`-based encoding, which leaves characters like `@` and `/` unencoded; only the space handling differs)_
796
824
 
797
825
  ## Security
798
826
 
@@ -8,10 +8,10 @@
8
8
  "use strict";var getSideChannel=require(46),utils=require(5),formats=require(1),has=Object.prototype.hasOwnProperty,arrayPrefixGenerators={brackets:function brackets(e){return e+"[]"},comma:"comma",indices:function indices(e,r){return e+"["+r+"]"},repeat:function repeat(e){return e}},isArray=Array.isArray,push=Array.prototype.push,pushToArray=function(e,r){push.apply(e,isArray(r)?r:[r])},toISO=Date.prototype.toISOString,defaultFormat=formats.default,defaults={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:"indices",charset:"utf-8",charsetSentinel:!1,commaRoundTrip:!1,delimiter:"&",depth:1/0,encode:!0,encodeDotInKeys:!1,encoder:utils.encode,encodeValuesOnly:!1,filter:void 0,format:defaultFormat,formatter:formats.formatters[defaultFormat],indices:!1,serializeDate:function serializeDate(e){return toISO.call(e)},skipNulls:!1,strictNullHandling:!1},isNonNullishPrimitive=function isNonNullishPrimitive(e){return"string"==typeof e||"number"==typeof e||"boolean"==typeof e||"symbol"==typeof e||"bigint"==typeof e},sentinel={},stringify=function stringify(e,r,t,o,n,a,i,l,s,f,u,d,c,y,p,m,h,v,g,b){var w=e;if(b>g)throw new RangeError("Input depth exceeded depth option of "+g);for(var D=v,A=0,S=!1;void 0!==(D=D.get(sentinel))&&!S;){var E=D.get(e);if(A+=1,void 0!==E){if(E===A)throw new RangeError("Cyclic object value");S=!0}void 0===D.get(sentinel)&&(A=0)}if((w="function"==typeof f?f(r,w):w)instanceof Date?w=c(w):"comma"===t&&isArray(w)&&(w=utils.maybeMap(w,function(e){return e instanceof Date?c(e):e})),null===w){if(a)return p(s&&!m?s(r,defaults.encoder,h,"key",y):r);w=""}if(isNonNullishPrimitive(w)||utils.isBuffer(w))return s?[p(m?r:s(r,defaults.encoder,h,"key",y))+"="+p(s(w,defaults.encoder,h,"value",y))]:[p(r)+"="+p(String(w))];var N,O=[];if(void 0===w)return O;if("comma"===t&&isArray(w))m&&s&&(w=utils.maybeMap(w,function(e){return null==e?e:s(e,defaults.encoder,h,"value",y)})),N=[{value:w.length>0?utils.toCoercible(w).join(",")||null:void 0}];else if(isArray(f))N=f;else{var T=Object.keys(w);N=u?T.sort(u):T}var k=String(r),I=o&&isArray(w)&&1===w.length?k+"[]":k;if(n&&isArray(w)&&0===w.length&&0===Object.keys(w).length)return p(s&&!m?s(I,defaults.encoder,h,"key",y):I)+"[]";for(var P=0;P<N.length;++P){var x=N[P],K="object"==typeof x&&x&&void 0!==x.value?x.value:w[x];if(!i||null!==K){var z=d&&l?String(x).replace(/\./g,"%2E"):String(x),j=isArray(w)?"function"==typeof t?t(I,z):I:I+(d?"."+z:"["+z+"]");v.set(e,A);var F=getSideChannel();F.set(sentinel,v),pushToArray(O,stringify(K,j,t,o,n,a,i,l,"comma"===t&&m&&isArray(w)?null:s,f,u,d,c,y,p,m,h,F,g,b+1))}}return O},normalizeStringifyOptions=function normalizeStringifyOptions(e){if(!e)return defaults;if(void 0!==e.allowEmptyArrays&&"boolean"!=typeof e.allowEmptyArrays)throw new TypeError("`allowEmptyArrays` option can only be `true` or `false`, when provided");if(void 0!==e.encodeDotInKeys&&"boolean"!=typeof e.encodeDotInKeys)throw new TypeError("`encodeDotInKeys` option can only be `true` or `false`, when provided");if(null!==e.encoder&&void 0!==e.encoder&&"function"!=typeof e.encoder)throw new TypeError("Encoder has to be a function.");var r=e.charset||defaults.charset;if(void 0!==e.charset&&"utf-8"!==e.charset&&"iso-8859-1"!==e.charset)throw new TypeError("The charset option must be either utf-8, iso-8859-1, or undefined");var t=formats.default;if(void 0!==e.format){if(!has.call(formats.formatters,e.format))throw new TypeError("Unknown format option provided.");t=e.format}var o,n=formats.formatters[t],a=defaults.filter;if(("function"==typeof e.filter||isArray(e.filter))&&(a=e.filter),o=has.call(arrayPrefixGenerators,e.arrayFormat)?e.arrayFormat:"indices"in e?e.indices?"indices":"repeat":defaults.arrayFormat,"commaRoundTrip"in e&&"boolean"!=typeof e.commaRoundTrip)throw new TypeError("`commaRoundTrip` must be a boolean, or absent");var i=void 0===e.allowDots?!0===e.encodeDotInKeys||defaults.allowDots:!!e.allowDots;return{addQueryPrefix:"boolean"==typeof e.addQueryPrefix?e.addQueryPrefix:defaults.addQueryPrefix,allowDots:i,allowEmptyArrays:"boolean"==typeof e.allowEmptyArrays?!!e.allowEmptyArrays:defaults.allowEmptyArrays,arrayFormat:o,charset:r,charsetSentinel:"boolean"==typeof e.charsetSentinel?e.charsetSentinel:defaults.charsetSentinel,commaRoundTrip:!!e.commaRoundTrip,delimiter:void 0===e.delimiter?defaults.delimiter:e.delimiter,depth:"number"==typeof e.depth?e.depth:defaults.depth,encode:"boolean"==typeof e.encode?e.encode:defaults.encode,encodeDotInKeys:"boolean"==typeof e.encodeDotInKeys?e.encodeDotInKeys:defaults.encodeDotInKeys,encoder:"function"==typeof e.encoder?e.encoder:defaults.encoder,encodeValuesOnly:"boolean"==typeof e.encodeValuesOnly?e.encodeValuesOnly:defaults.encodeValuesOnly,filter:a,format:t,formatter:n,serializeDate:"function"==typeof e.serializeDate?e.serializeDate:defaults.serializeDate,skipNulls:"boolean"==typeof e.skipNulls?e.skipNulls:defaults.skipNulls,sort:"function"==typeof e.sort?e.sort:null,strictNullHandling:"boolean"==typeof e.strictNullHandling?e.strictNullHandling:defaults.strictNullHandling}};module.exports=function(e,r){var t,o,n=e,a=normalizeStringifyOptions(r);"function"==typeof a.filter?n=(o=a.filter)("",n):isArray(a.filter)&&(t=o=a.filter.slice());var i=[];if("object"!=typeof n||null===n)return"";var l=arrayPrefixGenerators[a.arrayFormat],s="comma"===l&&a.commaRoundTrip;t||(t=Object.keys(n)),a.sort&&t.sort(a.sort);for(var f=getSideChannel(),u=0;u<t.length;++u){var d=t[u];if(null!=d){var c=n[d];if(!a.skipNulls||null!==c){var y=a.encodeDotInKeys?String(d).replace(/\./g,"%2E"):String(d);pushToArray(i,stringify(c,y,l,s,a.allowEmptyArrays,a.strictNullHandling,a.skipNulls,a.encodeDotInKeys,a.encode?a.encoder:null,o,a.sort,a.allowDots,a.serializeDate,a.format,a.formatter,a.encodeValuesOnly,a.charset,f,a.depth,0))}}}var p=i.join(a.delimiter),m=!0===a.addQueryPrefix?"?":"";return a.charsetSentinel&&("iso-8859-1"===a.charset?m+="utf8=%26%2310003%3B"+a.delimiter:m+="utf8=%E2%9C%93"+a.delimiter),p.length>0?m+p:""};
9
9
 
10
10
  },{"1":1,"46":46,"5":5}],3:[function(require,module,exports){
11
- "use strict";var getSideChannel=require(46),utils=require(5),has=Object.prototype.hasOwnProperty,isArray=Array.isArray,getPrototypeOf=Object.getPrototypeOf,isPlainContainer=function isPlainContainer(e){if(!e||"object"!=typeof e)return!1;if(isArray(e))return!0;var t=getPrototypeOf(e);return t===Object.prototype||null===t},emptyCopyOf=function emptyCopyOf(e){if(isArray(e)){var t=[];return t.length=e.length,t}return null===getPrototypeOf(e)?{__proto__:null}:{}},copyInput=function copyInput(e){for(var t=getSideChannel(),r={},i=[{source:e,target:r}],a=0;a<i.length;++a)for(var o=i[a].source,n=i[a].target,l=Object.keys(o),s=0;s<l.length;++s){var c=o[l[s]];if(isPlainContainer(c)){if(!t.has(c)){var p=emptyCopyOf(c);t.set(c,p),i[i.length]={source:c,target:p}}utils.setProperty(n,l[s],t.get(c))}else utils.setProperty(n,l[s],c)}return r},defaults={allowDots:!1,allowEmptyArrays:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decodeDotInKeys:!1,decoder:utils.decode,delimiter:"&",depth:5,duplicates:"combine",ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictDepth:!1,strictMerge:!0,strictNullHandling:!1,throwOnLimitExceeded:!1},interpretNumericEntities=function(e){return e.replace(/&#(\d+);/g,function(e,t){return String.fromCharCode(parseInt(t,10))})},parseArrayValue=function(e,t,r){if(e&&"string"==typeof e&&t.comma&&e.indexOf(",")>-1){if(t.throwOnLimitExceeded)for(var i=0,a=e.indexOf(",");a>-1;){if((i+=1)>=t.arrayLimit)throw new RangeError("Array limit exceeded. Only "+t.arrayLimit+" element"+(1===t.arrayLimit?"":"s")+" allowed in an array.");a=e.indexOf(",",a+1)}return e.split(",")}if(t.throwOnLimitExceeded&&r>=t.arrayLimit&&r>0)throw new RangeError("Array limit exceeded. Only "+t.arrayLimit+" element"+(1===t.arrayLimit?"":"s")+" allowed in an array.");return e},isoSentinel="utf8=%26%2310003%3B",charsetSentinel="utf8=%E2%9C%93",parseValues=function parseQueryStringValues(e,t){var r={__proto__:null},i=t.ignoreQueryPrefix?e.replace(/^\?/,""):e;i=i.replace(/%5B/gi,"[").replace(/%5D/gi,"]");var a=t.parameterLimit===1/0?void 0:t.parameterLimit,o=i.split(t.delimiter,t.throwOnLimitExceeded&&void 0!==a?a+1:a);if(t.throwOnLimitExceeded&&void 0!==a&&o.length>a)throw new RangeError("Parameter limit exceeded. Only "+a+" parameter"+(1===a?"":"s")+" allowed.");var n,l=-1,s=t.charset;if(t.charsetSentinel)for(n=0;n<o.length;++n)0===o[n].indexOf("utf8=")&&(o[n]===charsetSentinel?s="utf-8":o[n]===isoSentinel&&(s="iso-8859-1"),l=n,n=o.length);for(n=0;n<o.length;++n)if(n!==l){var c,p,d=o[n],u=d.indexOf("]="),y=-1===u?d.indexOf("="):u+1,f=y>1&&"[]"===d.slice(y-2,y);if(-1===y?(c=t.decoder(d,defaults.decoder,s,"key"),p=t.strictNullHandling?null:""):null!==(c=t.decoder(d.slice(0,y),defaults.decoder,s,"key"))&&(p=utils.maybeMap(parseArrayValue(d.slice(y+1),t,isArray(r[c])&&("combine"===t.duplicates||f)?r[c].length:0),function(e){return t.decoder(e,defaults.decoder,s,"value")})),p&&t.interpretNumericEntities&&"iso-8859-1"===s&&(p=utils.maybeMap(p,function(e){return e?interpretNumericEntities(String(e)):e})),f&&(p=isArray(p)?[p]:p),t.comma&&isArray(p)&&p.length>t.arrayLimit&&(p=utils.combine([],p,t.arrayLimit,t.plainObjects,t.throwOnLimitExceeded)),null!==c){var m=has.call(r,c);m&&("combine"===t.duplicates||f)?r[c]=utils.combine(r[c],p,t.arrayLimit,t.plainObjects,t.throwOnLimitExceeded):m&&"last"!==t.duplicates||(r[c]=p)}}return r},parseObject=function(e,t,r,i){var a=0;if(e.length>0&&"[]"===e[e.length-1]){var o=e.slice(0,-1).join("");a=Array.isArray(t)&&t[o]?t[o].length:0}for(var n=i?t:parseArrayValue(t,r,a),l=e.length-1;l>=0;--l){var s,c=e[l];if("[]"===c&&r.parseArrays)s=utils.isOverflow(n)?n:r.allowEmptyArrays&&(""===n||r.strictNullHandling&&null===n)?[]:utils.combine([],n,r.arrayLimit,r.plainObjects,r.throwOnLimitExceeded);else{s=r.plainObjects?{__proto__:null}:{};var p="["===c.charAt(0)&&"]"===c.charAt(c.length-1)?c.slice(1,-1):c,d=r.decodeDotInKeys?p.replace(/%2E/gi,"."):p,u=parseInt(d,10),y=!isNaN(u)&&c!==d&&String(u)===d&&u>=0&&r.parseArrays;if(r.parseArrays||""!==d)if(y&&u<r.arrayLimit)(s=[])[u]=n;else{if(y&&r.throwOnLimitExceeded)throw new RangeError("Array limit exceeded. Only "+r.arrayLimit+" element"+(1===r.arrayLimit?"":"s")+" allowed in an array.");y?(s[u]=n,utils.markOverflow(s,u)):"__proto__"!==d&&(s[d]=n)}else s={0:n}}n=s}return n},topLevelDotsToBrackets=function topLevelDotsToBrackets(e){for(var t="",r=0,i=0;i<e.length;i+=1){var a=e.charCodeAt(i);if(91===a)r+=1,t+="[";else if(93===a)r>0&&(r-=1),t+="]";else if(46===a&&0===r&&i+1<e.length&&46!==e.charCodeAt(i+1)&&91!==e.charCodeAt(i+1)){for(var o=i+1,n=o;n<e.length&&46!==e.charCodeAt(n)&&91!==e.charCodeAt(n);)n+=1;t+="["+e.slice(o,n)+"]",i=n-1}else t+=e.charAt(i)}return t},splitKeyIntoSegments=function splitKeyIntoSegments(e,t){var r=t.allowDots?topLevelDotsToBrackets(e):e;if(t.depth<=0){if(!t.plainObjects&&has.call(Object.prototype,r)&&!t.allowPrototypes)return;return[r]}var i=[],a=r.indexOf("["),o=a>=0?r.slice(0,a):r;if(o){if(!t.plainObjects&&has.call(Object.prototype,o)&&!t.allowPrototypes)return;i[i.length]=o}for(var n=r.length,l=a,s=0;l>=0&&s<t.depth;){for(var c=1,p=l+1,d=-1;p<n&&d<0;){var u=r.charCodeAt(p);91===u?c+=1:93===u&&0==(c-=1)&&(d=p),p+=1}if(d<0)return i[i.length]="["+r.slice(l)+"]",i;var y=r.slice(l,d+1),f=y.slice(1,-1);if(!t.plainObjects&&has.call(Object.prototype,f)&&!t.allowPrototypes)return;i[i.length]=y,s+=1,l=r.indexOf("[",d+1)}if(l>=0){if(!0===t.strictDepth)throw new RangeError("Input depth exceeded depth option of "+t.depth+" and strictDepth is true");i[i.length]="["+r.slice(l)+"]"}return i},parseKeys=function parseQueryStringKeys(e,t,r,i){if(e){var a=splitKeyIntoSegments(e,r);if(a)return parseObject(a,t,r,i)}},normalizeParseOptions=function normalizeParseOptions(e){if(!e)return defaults;if(void 0!==e.allowEmptyArrays&&"boolean"!=typeof e.allowEmptyArrays)throw new TypeError("`allowEmptyArrays` option can only be `true` or `false`, when provided");if(void 0!==e.decodeDotInKeys&&"boolean"!=typeof e.decodeDotInKeys)throw new TypeError("`decodeDotInKeys` option can only be `true` or `false`, when provided");if(null!==e.decoder&&void 0!==e.decoder&&"function"!=typeof e.decoder)throw new TypeError("Decoder has to be a function.");if(void 0!==e.charset&&"utf-8"!==e.charset&&"iso-8859-1"!==e.charset)throw new TypeError("The charset option must be either utf-8, iso-8859-1, or undefined");if(void 0!==e.throwOnLimitExceeded&&"boolean"!=typeof e.throwOnLimitExceeded)throw new TypeError("`throwOnLimitExceeded` option must be a boolean");var t=void 0===e.charset?defaults.charset:e.charset,r=void 0===e.duplicates?defaults.duplicates:e.duplicates;if("combine"!==r&&"first"!==r&&"last"!==r)throw new TypeError("The duplicates option must be either combine, first, or last");return{allowDots:void 0===e.allowDots?!0===e.decodeDotInKeys||defaults.allowDots:!!e.allowDots,allowEmptyArrays:"boolean"==typeof e.allowEmptyArrays?!!e.allowEmptyArrays:defaults.allowEmptyArrays,allowPrototypes:"boolean"==typeof e.allowPrototypes?e.allowPrototypes:defaults.allowPrototypes,allowSparse:"boolean"==typeof e.allowSparse?e.allowSparse:defaults.allowSparse,arrayLimit:"number"==typeof e.arrayLimit?e.arrayLimit:defaults.arrayLimit,charset:t,charsetSentinel:"boolean"==typeof e.charsetSentinel?e.charsetSentinel:defaults.charsetSentinel,comma:"boolean"==typeof e.comma?e.comma:defaults.comma,decodeDotInKeys:"boolean"==typeof e.decodeDotInKeys?e.decodeDotInKeys:defaults.decodeDotInKeys,decoder:"function"==typeof e.decoder?e.decoder:defaults.decoder,delimiter:"string"==typeof e.delimiter||utils.isRegExp(e.delimiter)?e.delimiter:defaults.delimiter,depth:"number"==typeof e.depth||!1===e.depth?+e.depth:defaults.depth,duplicates:r,ignoreQueryPrefix:!0===e.ignoreQueryPrefix,interpretNumericEntities:"boolean"==typeof e.interpretNumericEntities?e.interpretNumericEntities:defaults.interpretNumericEntities,parameterLimit:"number"==typeof e.parameterLimit?e.parameterLimit:defaults.parameterLimit,parseArrays:!1!==e.parseArrays,plainObjects:"boolean"==typeof e.plainObjects?e.plainObjects:defaults.plainObjects,strictDepth:"boolean"==typeof e.strictDepth?!!e.strictDepth:defaults.strictDepth,strictMerge:"boolean"==typeof e.strictMerge?!!e.strictMerge:defaults.strictMerge,strictNullHandling:"boolean"==typeof e.strictNullHandling?e.strictNullHandling:defaults.strictNullHandling,throwOnLimitExceeded:"boolean"==typeof e.throwOnLimitExceeded&&e.throwOnLimitExceeded}};module.exports=function(e,t){var r=normalizeParseOptions(t);if(""===e||null==e)return r.plainObjects?{__proto__:null}:{};for(var i="string"==typeof e?parseValues(e,r):copyInput(e),a=r.plainObjects?{__proto__:null}:{},o=Object.keys(i),n=0;n<o.length;++n){var l=o[n],s=parseKeys(l,i[l],r,"string"==typeof e);a=utils.merge(a,s,r)}return!0===r.allowSparse?a:utils.compact(a)};
11
+ "use strict";var getSideChannel=require(46),utils=require(5),has=Object.prototype.hasOwnProperty,isArray=Array.isArray,getPrototypeOf=Object.getPrototypeOf,fromCharCode=String.fromCharCode,isPlainContainer=function isPlainContainer(e){if(!e||"object"!=typeof e)return!1;if(isArray(e))return!0;var t=getPrototypeOf(e);return t===Object.prototype||null===t},emptyCopyOf=function emptyCopyOf(e){if(isArray(e)){var t=[];return t.length=e.length,t}return null===getPrototypeOf(e)?{__proto__:null}:{}},copyInput=function copyInput(e){for(var t=getSideChannel(),r={},i=[{source:e,target:r}],a=0;a<i.length;++a)for(var o=i[a].source,n=i[a].target,l=Object.keys(o),s=0;s<l.length;++s){var c=o[l[s]];if(isPlainContainer(c)){if(!t.has(c)){var p=emptyCopyOf(c);t.set(c,p),i[i.length]={source:c,target:p}}utils.setProperty(n,l[s],t.get(c))}else utils.setProperty(n,l[s],c)}return r},defaults={allowDots:!1,allowEmptyArrays:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decodeDotInKeys:!1,decoder:utils.decode,delimiter:"&",depth:5,duplicates:"combine",ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictDepth:!1,strictMerge:!0,strictNullHandling:!1,throwOnLimitExceeded:!1},interpretNumericEntities=function(e){return e.replace(/&#(\d+);/g,function(e,t){var r=parseInt(t,10);return r>65535&&r<=1114111?fromCharCode(55296|(r-=65536)>>10,56320|1023&r):fromCharCode(r)})},parseArrayValue=function(e,t,r){if(e&&"string"==typeof e&&t.comma&&e.indexOf(",")>-1){if(t.throwOnLimitExceeded)for(var i=0,a=e.indexOf(",");a>-1;){if((i+=1)>=t.arrayLimit)throw new RangeError("Array limit exceeded. Only "+t.arrayLimit+" element"+(1===t.arrayLimit?"":"s")+" allowed in an array.");a=e.indexOf(",",a+1)}return e.split(",")}if(t.throwOnLimitExceeded&&r>=t.arrayLimit&&r>0)throw new RangeError("Array limit exceeded. Only "+t.arrayLimit+" element"+(1===t.arrayLimit?"":"s")+" allowed in an array.");return e},isoSentinel="utf8=%26%2310003%3B",charsetSentinel="utf8=%E2%9C%93",parseValues=function parseQueryStringValues(e,t){var r={__proto__:null},i=t.ignoreQueryPrefix?e.replace(/^\?/,""):e;i=i.replace(/%5B/gi,"[").replace(/%5D/gi,"]");var a=t.parameterLimit===1/0?void 0:t.parameterLimit,o=i.split(t.delimiter,t.throwOnLimitExceeded&&void 0!==a?a+1:a);if(t.throwOnLimitExceeded&&void 0!==a&&o.length>a)throw new RangeError("Parameter limit exceeded. Only "+a+" parameter"+(1===a?"":"s")+" allowed.");var n,l=-1,s=t.charset;if(t.charsetSentinel)for(n=0;n<o.length;++n)0===o[n].indexOf("utf8=")&&(o[n]===charsetSentinel?s="utf-8":o[n]===isoSentinel&&(s="iso-8859-1"),l=n,n=o.length);for(n=0;n<o.length;++n)if(n!==l){var c,p,d=o[n],u=d.indexOf("]="),f=-1===u?d.indexOf("="):u+1,y=f>1&&"[]"===d.slice(f-2,f);if(-1===f?(c=t.decoder(d,defaults.decoder,s,"key"),p=t.strictNullHandling?null:""):null!==(c=t.decoder(d.slice(0,f),defaults.decoder,s,"key"))&&(p=utils.maybeMap(parseArrayValue(d.slice(f+1),t,isArray(r[c])&&("combine"===t.duplicates||y)?r[c].length:0),function(e){return t.decoder(e,defaults.decoder,s,"value")})),p&&t.interpretNumericEntities&&"iso-8859-1"===s&&(p=utils.maybeMap(p,function(e){return e?interpretNumericEntities(String(e)):e})),y&&(p=isArray(p)?[p]:p),t.comma&&isArray(p)&&p.length>t.arrayLimit&&(p=utils.combine([],p,t.arrayLimit,t.plainObjects,t.throwOnLimitExceeded)),null!==c){var m=has.call(r,c);m&&("combine"===t.duplicates||y)?r[c]=utils.combine(r[c],p,t.arrayLimit,t.plainObjects,t.throwOnLimitExceeded):m&&"last"!==t.duplicates||(r[c]=p)}}return r},stripWrappingBrackets=function stripWrappingBrackets(e){return"["===e.charAt(0)&&"]"===e.charAt(e.length-1)?e.slice(1,-1):e},parseObject=function(e,t,r,i){var a=0;if(e.length>0&&"[]"===e[e.length-1]){var o=e.slice(0,-1).join("");a=Array.isArray(t)&&t[o]?t[o].length:0}for(var n=i?t:parseArrayValue(t,r,a),l=e.length-1;l>=0;--l){var s,c=e[l];if("[]"===c&&r.parseArrays)s=utils.isOverflow(n)?n:r.allowEmptyArrays&&(""===n||r.strictNullHandling&&null===n)?[]:utils.combine([],n,r.arrayLimit,r.plainObjects,r.throwOnLimitExceeded);else{s=r.plainObjects?{__proto__:null}:{};var p=stripWrappingBrackets(c),d=r.decodeDotInKeys?p.replace(/%2E/gi,"."):p,u=parseInt(d,10),f=!isNaN(u)&&c!==d&&String(u)===d&&u>=0&&r.parseArrays;if(r.parseArrays||""!==d)if(f&&u<r.arrayLimit)(s=[])[u]=n;else{if(f&&r.throwOnLimitExceeded)throw new RangeError("Array limit exceeded. Only "+r.arrayLimit+" element"+(1===r.arrayLimit?"":"s")+" allowed in an array.");f?(s[u]=n,utils.markOverflow(s,u)):"__proto__"!==d&&(s[d]=n)}else s[0]=n}n=s}return n},topLevelDotsToBrackets=function topLevelDotsToBrackets(e){for(var t="",r=0,i=0;i<e.length;i+=1){var a=e.charCodeAt(i);if(91===a)r+=1,t+="[";else if(93===a)r>0&&(r-=1),t+="]";else if(46===a&&0===r&&i+1<e.length&&46!==e.charCodeAt(i+1)&&91!==e.charCodeAt(i+1)){for(var o=i+1,n=o;n<e.length&&46!==e.charCodeAt(n)&&91!==e.charCodeAt(n);)n+=1;t+="["+e.slice(o,n)+"]",i=n-1}else t+=e.charAt(i)}return t},splitKeyIntoSegments=function splitKeyIntoSegments(e,t){var r=t.allowDots?topLevelDotsToBrackets(e):e;if(t.depth<=0){if(!t.plainObjects&&has.call(Object.prototype,stripWrappingBrackets(r))&&!t.allowPrototypes)return;return[r]}var i=[],a=r.indexOf("["),o=a>=0?r.slice(0,a):r;if(o){if(!t.plainObjects&&has.call(Object.prototype,o)&&!t.allowPrototypes)return;i[i.length]=o}for(var n=r.length,l=a,s=0;l>=0&&s<t.depth;){for(var c=1,p=l+1,d=-1;p<n&&d<0;){var u=r.charCodeAt(p);91===u?c+=1:93===u&&0==(c-=1)&&(d=p),p+=1}if(d<0)return i[i.length]="["+r.slice(l)+"]",i;var f=r.slice(l,d+1),y=f.slice(1,-1);if(!t.plainObjects&&has.call(Object.prototype,y)&&!t.allowPrototypes)return;i[i.length]=f,s+=1,l=r.indexOf("[",d+1)}if(l>=0){if(!0===t.strictDepth)throw new RangeError("Input depth exceeded depth option of "+t.depth+" and strictDepth is true");i[i.length]="["+r.slice(l)+"]"}return i},parseKeys=function parseQueryStringKeys(e,t,r,i){if(e){var a=splitKeyIntoSegments(e,r);if(a)return parseObject(a,t,r,i)}},normalizeParseOptions=function normalizeParseOptions(e){if(!e)return defaults;if(void 0!==e.allowEmptyArrays&&"boolean"!=typeof e.allowEmptyArrays)throw new TypeError("`allowEmptyArrays` option can only be `true` or `false`, when provided");if(void 0!==e.decodeDotInKeys&&"boolean"!=typeof e.decodeDotInKeys)throw new TypeError("`decodeDotInKeys` option can only be `true` or `false`, when provided");if(null!==e.decoder&&void 0!==e.decoder&&"function"!=typeof e.decoder)throw new TypeError("Decoder has to be a function.");if(void 0!==e.charset&&"utf-8"!==e.charset&&"iso-8859-1"!==e.charset)throw new TypeError("The charset option must be either utf-8, iso-8859-1, or undefined");if(void 0!==e.throwOnLimitExceeded&&"boolean"!=typeof e.throwOnLimitExceeded)throw new TypeError("`throwOnLimitExceeded` option must be a boolean");var t=void 0===e.charset?defaults.charset:e.charset,r=void 0===e.duplicates?defaults.duplicates:e.duplicates;if("combine"!==r&&"first"!==r&&"last"!==r)throw new TypeError("The duplicates option must be either combine, first, or last");return{allowDots:void 0===e.allowDots?!0===e.decodeDotInKeys||defaults.allowDots:!!e.allowDots,allowEmptyArrays:"boolean"==typeof e.allowEmptyArrays?!!e.allowEmptyArrays:defaults.allowEmptyArrays,allowPrototypes:"boolean"==typeof e.allowPrototypes?e.allowPrototypes:defaults.allowPrototypes,allowSparse:"boolean"==typeof e.allowSparse?e.allowSparse:defaults.allowSparse,arrayLimit:"number"==typeof e.arrayLimit?e.arrayLimit:defaults.arrayLimit,charset:t,charsetSentinel:"boolean"==typeof e.charsetSentinel?e.charsetSentinel:defaults.charsetSentinel,comma:"boolean"==typeof e.comma?e.comma:defaults.comma,decodeDotInKeys:"boolean"==typeof e.decodeDotInKeys?e.decodeDotInKeys:defaults.decodeDotInKeys,decoder:"function"==typeof e.decoder?e.decoder:defaults.decoder,delimiter:"string"==typeof e.delimiter||utils.isRegExp(e.delimiter)?e.delimiter:defaults.delimiter,depth:"number"==typeof e.depth||!1===e.depth?+e.depth:defaults.depth,duplicates:r,ignoreQueryPrefix:!0===e.ignoreQueryPrefix,interpretNumericEntities:"boolean"==typeof e.interpretNumericEntities?e.interpretNumericEntities:defaults.interpretNumericEntities,parameterLimit:"number"==typeof e.parameterLimit?e.parameterLimit:defaults.parameterLimit,parseArrays:!1!==e.parseArrays,plainObjects:"boolean"==typeof e.plainObjects?e.plainObjects:defaults.plainObjects,strictDepth:"boolean"==typeof e.strictDepth?!!e.strictDepth:defaults.strictDepth,strictMerge:"boolean"==typeof e.strictMerge?!!e.strictMerge:defaults.strictMerge,strictNullHandling:"boolean"==typeof e.strictNullHandling?e.strictNullHandling:defaults.strictNullHandling,throwOnLimitExceeded:"boolean"==typeof e.throwOnLimitExceeded&&e.throwOnLimitExceeded}};module.exports=function(e,t){var r=normalizeParseOptions(t);if(""===e||null==e)return r.plainObjects?{__proto__:null}:{};for(var i="string"==typeof e?parseValues(e,r):copyInput(e),a=r.plainObjects?{__proto__:null}:{},o=Object.keys(i),n=0;n<o.length;++n){var l=o[n],s=parseKeys(l,i[l],r,"string"==typeof e);a=utils.merge(a,s,r)}return!0===r.allowSparse?a:utils.compact(a)};
12
12
 
13
13
  },{"46":46,"5":5}],5:[function(require,module,exports){
14
- "use strict";var formats=require(1),getSideChannel=require(46),defineProperty=require(14),has=Object.prototype.hasOwnProperty,isArray=Array.isArray,overflowChannel=getSideChannel(),markOverflow=function markOverflow(e,r){return overflowChannel.set(e,r),e},isOverflow=function isOverflow(e){return overflowChannel.has(e)},getMaxIndex=function getMaxIndex(e){return overflowChannel.get(e)},setMaxIndex=function setMaxIndex(e,r){overflowChannel.set(e,r)},conflictChannel=getSideChannel(),markConflict=function markConflict(e,r){return conflictChannel.set(e,r),e},isConflict=function isConflict(e){return conflictChannel.has(e)},getConflictIndex=function getConflictIndex(e){return conflictChannel.get(e)},hexTable=function(){for(var e=[],r=0;r<256;++r)e[e.length]="%"+((r<16?"0":"")+r.toString(16)).toUpperCase();return e}(),compactQueue=function compactQueue(e){for(;e.length>1;){var r=e.pop(),t=r.obj[r.prop];if(isArray(t)){for(var n=[],i=0;i<t.length;++i)void 0!==t[i]&&(n[n.length]=t[i]);r.obj[r.prop]=n}}},arrayToObject=function arrayToObject(e,r){for(var t=r&&r.plainObjects?{__proto__:null}:{},n=0;n<e.length;++n)void 0!==e[n]&&(t[n]=e[n]);return t},setProperty=function setProperty(e,r,t){"__proto__"===r&&defineProperty?defineProperty(e,r,{configurable:!0,enumerable:!0,value:t,writable:!0}):e[r]=t},maxNumericIndex=function maxNumericIndex(e,r){for(var t=r,n=Object.keys(e),i=0;i<n.length;++i){var o=parseInt(n[i],10);String(o)===n[i]&&o>t&&(t=o)}return t},limitedPair=function limitedPair(e,r,t){var n=[e,r];if(t&&"number"==typeof t.arrayLimit&&n.length>t.arrayLimit){if(t.throwOnLimitExceeded)throw new RangeError("Array limit exceeded. Only "+t.arrayLimit+" element"+(1===t.arrayLimit?"":"s")+" allowed in an array.");return markOverflow(arrayToObject(n,t),1)}return n},merge=function merge(e,r,t){if(!r)return e;if("object"!=typeof r&&"function"!=typeof r){if(isArray(e)){var n=e.length;if(t&&"number"==typeof t.arrayLimit&&n>=t.arrayLimit){if(t.throwOnLimitExceeded)throw new RangeError("Array limit exceeded. Only "+t.arrayLimit+" element"+(1===t.arrayLimit?"":"s")+" allowed in an array.");return markOverflow(arrayToObject(e.concat(r),t),n)}e[n]=r}else{if(!e||"object"!=typeof e)return limitedPair(e,r,t);if(isOverflow(e)){var i=getMaxIndex(e)+1;e[i]=r,setMaxIndex(e,i)}else if(t&&t.strictMerge&&isConflict(e)){var o=getConflictIndex(e)+1;if(t.throwOnLimitExceeded&&"number"==typeof t.arrayLimit&&o>=t.arrayLimit)throw new RangeError("Array limit exceeded. Only "+t.arrayLimit+" element"+(1===t.arrayLimit?"":"s")+" allowed in an array.");e[o]=r,markConflict(e,o)}else{if(t&&t.strictMerge){var a=limitedPair(e,r,t);return isArray(a)?markConflict(a,1):a}(t&&(t.plainObjects||t.allowPrototypes)||!has.call(Object.prototype,r))&&(e[r]=!0)}}return e}if(!e||"object"!=typeof e){if(isOverflow(r)){for(var l=Object.keys(r),f=t&&t.plainObjects?{__proto__:null,0:e}:{0:e},c=0;c<l.length;c++)f[parseInt(l[c],10)+1]=r[l[c]];return markOverflow(f,getMaxIndex(r)+1)}var y=[e].concat(r);if(t&&"number"==typeof t.arrayLimit&&y.length>t.arrayLimit){if(t.throwOnLimitExceeded)throw new RangeError("Array limit exceeded. Only "+t.arrayLimit+" element"+(1===t.arrayLimit?"":"s")+" allowed in an array.");return markOverflow(arrayToObject(y,t),y.length-1)}return y}var s=e;if(isArray(e)&&!isArray(r)&&(s=arrayToObject(e,t),isConflict(e)&&markConflict(s,e.length-1)),isArray(e)&&isArray(r)){if(r.forEach(function(r,n){if(has.call(e,n)){var i=e[n];i&&"object"==typeof i&&r&&"object"==typeof r?e[n]=merge(i,r,t):e[e.length]=r}else e[n]=r}),t&&"number"==typeof t.arrayLimit&&e.length>t.arrayLimit){if(t.throwOnLimitExceeded)throw new RangeError("Array limit exceeded. Only "+t.arrayLimit+" element"+(1===t.arrayLimit?"":"s")+" allowed in an array.");return markOverflow(arrayToObject(e,t),e.length-1)}return e}return Object.keys(r).reduce(function(e,n){var i=r[n];if(has.call(e,n)?setProperty(e,n,merge(e[n],i,t)):setProperty(e,n,i),isOverflow(r)&&!isOverflow(e)&&markOverflow(e,maxNumericIndex(e,getMaxIndex(r))),isOverflow(e)){var o=parseInt(n,10);String(o)===n&&o>=0&&o>getMaxIndex(e)&&setMaxIndex(e,o)}if(isConflict(e)){var a=parseInt(n,10);String(a)===n&&a>getConflictIndex(e)&&markConflict(e,a)}return e},s)},assign=function assignSingleSource(e,r){return Object.keys(r).reduce(function(e,t){return setProperty(e,t,r[t]),e},e)},decode=function(e,r,t){if("string"==typeof e&&-1===e.indexOf("%"))return-1===e.indexOf("+")?e:e.replace(/\+/g," ");var n=e.replace(/\+/g," ");if("iso-8859-1"===t)return n.replace(/%[0-9a-f]{2}/gi,unescape);try{return decodeURIComponent(n)}catch(e){return n}},hasToPrimitive="function"==typeof Symbol&&"symbol"==typeof Symbol.toPrimitive,arrayJoin=Array.prototype.join,arrayToString=Array.prototype.toString,objectToString=Object.prototype.toString,toCoercible=function toCoercible(e,r){if(!e||"object"!=typeof e&&"function"!=typeof e)return e;if(hasToPrimitive&&null!=e[Symbol.toPrimitive])return e;if(isArray(e)&&e.toString===arrayToString&&e.join===arrayJoin){var t,n=r||getSideChannel();if(n.has(e))return"";n.set(e,!0);for(var i=0;i<e.length;i+=1){var o=e[i],a=toCoercible(o,n);if(!t&&a!==o){t=[];for(var l=0;l<i;l+=1)t[l]=e[l]}t&&(t[i]=a)}return n.delete(e),t||e}if("function"==typeof e.toString)return e;var f=e.valueOf;if("function"==typeof f){var c=f.call(e);if(!c||"object"!=typeof c&&"function"!=typeof c)return String(c)}return objectToString.call(e)},limit=1024,encode=function encode(e,r,t,n,i){if(0===e.length)return e;var o=e;if("symbol"==typeof e?o=Symbol.prototype.toString.call(e):"string"!=typeof e&&(o=String(toCoercible(e))),"iso-8859-1"===t)return escape(o).replace(/%u[0-9a-f]{4}/gi,function(e){return"%26%23"+parseInt(e.slice(2),16)+"%3B"}).replace(/\+/g,"%2B");for(var a="",l=0;l<o.length;l+=limit){var f=o.length>=limit?o.slice(l,l+limit):o;if(l+limit<o.length){var c=f.charCodeAt(f.length-1);c>=55296&&c<=56319&&(f=f.slice(0,-1),l-=1)}for(var y=[],s=0;s<f.length;++s){var u=f.charCodeAt(s);if(45===u||46===u||95===u||126===u&&i!==formats.WHATWG||u>=48&&u<=57||u>=65&&u<=90||u>=97&&u<=122||i===formats.RFC1738&&(40===u||41===u)||i===formats.WHATWG&&42===u)y[y.length]=f.charAt(s);else if(u<128)y[y.length]=hexTable[u];else if(u<2048)y[y.length]=hexTable[192|u>>6]+hexTable[128|63&u];else if(u<55296||u>=57344)y[y.length]=hexTable[224|u>>12]+hexTable[128|u>>6&63]+hexTable[128|63&u];else{var m=f.charCodeAt(s+1);u<=56319&&m>=56320&&m<=57343?(s+=1,u=65536+((1023&u)<<10|1023&m),y[y.length]=hexTable[240|u>>18]+hexTable[128|u>>12&63]+hexTable[128|u>>6&63]+hexTable[128|63&u]):y[y.length]="%EF%BF%BD"}}a+=y.join("")}return a},compact=function compact(e){for(var r=[{obj:{o:e},prop:"o"}],t=getSideChannel(),n=0;n<r.length;++n)for(var i=r[n],o=i.obj[i.prop],a=Object.keys(o),l=0;l<a.length;++l){var f=a[l],c=o[f];"object"!=typeof c||null===c||t.has(c)||(r[r.length]={obj:o,prop:f},t.set(c,!0))}return compactQueue(r),e},isRegExp=function isRegExp(e){return"[object RegExp]"===Object.prototype.toString.call(e)},isBuffer=function isBuffer(e){return!(!e||"object"!=typeof e||!e.constructor||"function"!=typeof e.constructor.isBuffer||!e.constructor.isBuffer(e))},combine=function combine(e,r,t,n,i){if(isOverflow(e)){if(i)throw new RangeError("Array limit exceeded. Only "+t+" element"+(1===t?"":"s")+" allowed in an array.");for(var o=isArray(r)?r:[r],a=getMaxIndex(e),l=0;l<o.length;++l)e[a+=1]=o[l];return setMaxIndex(e,a),e}var f=[].concat(e,r);if(f.length>t){if(i)throw new RangeError("Array limit exceeded. Only "+t+" element"+(1===t?"":"s")+" allowed in an array.");return markOverflow(arrayToObject(f,{plainObjects:n}),f.length-1)}return f},maybeMap=function maybeMap(e,r){if(isArray(e)){for(var t=[],n=0;n<e.length;n+=1)t[t.length]=r(e[n]);return t}return r(e)};module.exports={/* common-shake removed: arrayToObject:arrayToObject *//* common-shake removed: assign:assign */combine:combine,compact:compact,decode:decode,encode:encode,isBuffer:isBuffer,isOverflow:isOverflow,isRegExp:isRegExp,markOverflow:markOverflow,maybeMap:maybeMap,merge:merge,setProperty:setProperty,toCoercible:toCoercible};
14
+ "use strict";var formats=require(1),getSideChannel=require(46),defineProperty=require(14),has=Object.prototype.hasOwnProperty,isArray=Array.isArray,overflowChannel=getSideChannel(),markOverflow=function markOverflow(e,r){return overflowChannel.set(e,r),e},isOverflow=function isOverflow(e){return overflowChannel.has(e)},getMaxIndex=function getMaxIndex(e){return overflowChannel.get(e)},setMaxIndex=function setMaxIndex(e,r){overflowChannel.set(e,r)},conflictChannel=getSideChannel(),markConflict=function markConflict(e,r){return conflictChannel.set(e,r),e},isConflict=function isConflict(e){return conflictChannel.has(e)},getConflictIndex=function getConflictIndex(e){return conflictChannel.get(e)},hexTable=function(){for(var e=[],r=0;r<256;++r)e[e.length]="%"+((r<16?"0":"")+r.toString(16)).toUpperCase();return e}(),compactQueue=function compactQueue(e){for(;e.length>1;){var r=e.pop(),t=r.obj[r.prop];if(isArray(t)){for(var n=[],i=0;i<t.length;++i)void 0!==t[i]&&(n[n.length]=t[i]);r.obj[r.prop]=n}}},arrayToObject=function arrayToObject(e,r){for(var t=r&&r.plainObjects?{__proto__:null}:{},n=0;n<e.length;++n)void 0!==e[n]&&(t[n]=e[n]);return t},setProperty=function setProperty(e,r,t){"__proto__"===r&&defineProperty?defineProperty(e,r,{configurable:!0,enumerable:!0,value:t,writable:!0}):e[r]=t},maxNumericIndex=function maxNumericIndex(e,r){for(var t=r,n=Object.keys(e),i=0;i<n.length;++i){var o=parseInt(n[i],10);String(o)===n[i]&&o>t&&(t=o)}return t},countElements=function countElements(e){for(var r=0,t=0;t<e.length;++t)has.call(e,t)&&(r+=1);return r},limitedPair=function limitedPair(e,r,t){var n=[e,r];if(t&&"number"==typeof t.arrayLimit&&n.length>t.arrayLimit){if(t.throwOnLimitExceeded)throw new RangeError("Array limit exceeded. Only "+t.arrayLimit+" element"+(1===t.arrayLimit?"":"s")+" allowed in an array.");return markOverflow(arrayToObject(n,t),1)}return n},merge=function merge(e,r,t){if(!r)return e;if("object"!=typeof r&&"function"!=typeof r){if(isArray(e)){var n=e.length;if(t&&"number"==typeof t.arrayLimit&&countElements(e)>=t.arrayLimit){if(t.throwOnLimitExceeded)throw new RangeError("Array limit exceeded. Only "+t.arrayLimit+" element"+(1===t.arrayLimit?"":"s")+" allowed in an array.");return markOverflow(arrayToObject(e.concat(r),t),n)}e[n]=r}else{if(!e||"object"!=typeof e)return limitedPair(e,r,t);if(isOverflow(e)){var i=getMaxIndex(e)+1;e[i]=r,setMaxIndex(e,i)}else if(t&&t.strictMerge&&isConflict(e)){var o=getConflictIndex(e)+1;if(t.throwOnLimitExceeded&&"number"==typeof t.arrayLimit&&o>=t.arrayLimit)throw new RangeError("Array limit exceeded. Only "+t.arrayLimit+" element"+(1===t.arrayLimit?"":"s")+" allowed in an array.");e[o]=r,markConflict(e,o)}else{if(t&&t.strictMerge){var a=limitedPair(e,r,t);return isArray(a)?markConflict(a,1):a}(t&&(t.plainObjects||t.allowPrototypes)||!has.call(Object.prototype,r))&&(e[r]=!0)}}return e}if(!e||"object"!=typeof e){if(isOverflow(r)){for(var l=Object.keys(r),f=t&&t.plainObjects?{__proto__:null,0:e}:{0:e},c=0;c<l.length;c++)f[parseInt(l[c],10)+1]=r[l[c]];return markOverflow(f,getMaxIndex(r)+1)}var s=[e].concat(r);if(t&&"number"==typeof t.arrayLimit&&s.length>t.arrayLimit){if(t.throwOnLimitExceeded)throw new RangeError("Array limit exceeded. Only "+t.arrayLimit+" element"+(1===t.arrayLimit?"":"s")+" allowed in an array.");return markOverflow(arrayToObject(s,t),s.length-1)}return s}var y=e;if(isArray(e)&&!isArray(r)&&(y=arrayToObject(e,t),isConflict(e)&&markConflict(y,e.length-1)),isArray(e)&&isArray(r)){if(r.forEach(function(r,n){if(has.call(e,n)){var i=e[n];i&&"object"==typeof i&&r&&"object"==typeof r?e[n]=merge(i,r,t):e[e.length]=r}else e[n]=r}),t&&"number"==typeof t.arrayLimit&&countElements(e)>t.arrayLimit){if(t.throwOnLimitExceeded)throw new RangeError("Array limit exceeded. Only "+t.arrayLimit+" element"+(1===t.arrayLimit?"":"s")+" allowed in an array.");return markOverflow(arrayToObject(e,t),e.length-1)}return e}return Object.keys(r).reduce(function(e,n){var i=r[n];if(has.call(e,n)?setProperty(e,n,merge(e[n],i,t)):setProperty(e,n,i),isOverflow(r)&&!isOverflow(e)&&markOverflow(e,maxNumericIndex(e,getMaxIndex(r))),isOverflow(e)){var o=parseInt(n,10);String(o)===n&&o>=0&&o>getMaxIndex(e)&&setMaxIndex(e,o)}if(isConflict(e)){var a=parseInt(n,10);String(a)===n&&a>getConflictIndex(e)&&markConflict(e,a)}return e},y)},assign=function assignSingleSource(e,r){return Object.keys(r).reduce(function(e,t){return setProperty(e,t,r[t]),e},e)},decode=function(e,r,t){if("string"==typeof e&&-1===e.indexOf("%"))return-1===e.indexOf("+")?e:e.replace(/\+/g," ");var n=e.replace(/\+/g," ");if("iso-8859-1"===t)return n.replace(/%[0-9a-f]{2}/gi,unescape);try{return decodeURIComponent(n)}catch(e){return n}},hasToPrimitive="function"==typeof Symbol&&"symbol"==typeof Symbol.toPrimitive,arrayJoin=Array.prototype.join,arrayToString=Array.prototype.toString,objectToString=Object.prototype.toString,toCoercible=function toCoercible(e,r){if(!e||"object"!=typeof e&&"function"!=typeof e)return e;if(hasToPrimitive&&null!=e[Symbol.toPrimitive])return e;if(isArray(e)&&e.toString===arrayToString&&e.join===arrayJoin){var t,n=r||getSideChannel();if(n.has(e))return"";n.set(e,!0);for(var i=0;i<e.length;i+=1){var o=e[i],a=toCoercible(o,n);if(!t&&a!==o){t=[];for(var l=0;l<i;l+=1)t[l]=e[l]}t&&(t[i]=a)}return n.delete(e),t||e}if("function"==typeof e.toString)return e;var f=e.valueOf;if("function"==typeof f){var c=f.call(e);if(!c||"object"!=typeof c&&"function"!=typeof c)return String(c)}return objectToString.call(e)},limit=1024,encode=function encode(e,r,t,n,i){if(0===e.length)return e;var o=e;if("symbol"==typeof e?o=Symbol.prototype.toString.call(e):"string"!=typeof e&&(o=String(toCoercible(e))),"iso-8859-1"===t)return escape(o).replace(/%u[0-9a-f]{4}/gi,function(e){return"%26%23"+parseInt(e.slice(2),16)+"%3B"}).replace(/\+/g,"%2B");for(var a="",l=0;l<o.length;l+=limit){var f=o.length>=limit?o.slice(l,l+limit):o;if(l+limit<o.length){var c=f.charCodeAt(f.length-1);c>=55296&&c<=56319&&(f=f.slice(0,-1),l-=1)}for(var s=[],y=0;y<f.length;++y){var u=f.charCodeAt(y);if(45===u||46===u||95===u||126===u&&i!==formats.WHATWG||u>=48&&u<=57||u>=65&&u<=90||u>=97&&u<=122||i===formats.RFC1738&&(40===u||41===u)||i===formats.WHATWG&&42===u)s[s.length]=f.charAt(y);else if(u<128)s[s.length]=hexTable[u];else if(u<2048)s[s.length]=hexTable[192|u>>6]+hexTable[128|63&u];else if(u<55296||u>=57344)s[s.length]=hexTable[224|u>>12]+hexTable[128|u>>6&63]+hexTable[128|63&u];else{var m=f.charCodeAt(y+1);u<=56319&&m>=56320&&m<=57343?(y+=1,u=65536+((1023&u)<<10|1023&m),s[s.length]=hexTable[240|u>>18]+hexTable[128|u>>12&63]+hexTable[128|u>>6&63]+hexTable[128|63&u]):s[s.length]="%EF%BF%BD"}}a+=s.join("")}return a},compact=function compact(e){for(var r=[{obj:{o:e},prop:"o"}],t=getSideChannel(),n=0;n<r.length;++n)for(var i=r[n],o=i.obj[i.prop],a=Object.keys(o),l=0;l<a.length;++l){var f=a[l],c=o[f];"object"!=typeof c||null===c||t.has(c)||(r[r.length]={obj:o,prop:f},t.set(c,!0))}return compactQueue(r),e},isRegExp=function isRegExp(e){return"[object RegExp]"===Object.prototype.toString.call(e)},isBuffer=function isBuffer(e){return!(!e||"object"!=typeof e||!e.constructor||"function"!=typeof e.constructor.isBuffer||!e.constructor.isBuffer(e))},combine=function combine(e,r,t,n,i){if(isOverflow(e)){if(i)throw new RangeError("Array limit exceeded. Only "+t+" element"+(1===t?"":"s")+" allowed in an array.");for(var o=isArray(r)?r:[r],a=getMaxIndex(e),l=0;l<o.length;++l)e[a+=1]=o[l];return setMaxIndex(e,a),e}var f=[].concat(e,r);if(f.length>t){if(i)throw new RangeError("Array limit exceeded. Only "+t+" element"+(1===t?"":"s")+" allowed in an array.");return markOverflow(arrayToObject(f,{plainObjects:n}),f.length-1)}return f},maybeMap=function maybeMap(e,r){if(isArray(e)){for(var t=[],n=0;n<e.length;n+=1)t[t.length]=r(e[n]);return t}return r(e)};module.exports={/* common-shake removed: arrayToObject:arrayToObject *//* common-shake removed: assign:assign */combine:combine,compact:compact,decode:decode,encode:encode,isBuffer:isBuffer,isOverflow:isOverflow,isRegExp:isRegExp,markOverflow:markOverflow,maybeMap:maybeMap,merge:merge,setProperty:setProperty,toCoercible:toCoercible};
15
15
 
16
16
  },{"1":1,"14":14,"46":46}],46:[function(require,module,exports){
17
17
  "use strict";var $TypeError=require(20),inspect=require(42),getSideChannelList=require(43),getSideChannelMap=require(44),getSideChannelWeakMap=require(45),makeChannel=getSideChannelWeakMap||getSideChannelMap||getSideChannelList;module.exports=function getSideChannel(){var e,n={assert:function(e){if(!n.has(e)){var t=e&&Object(e)===e?"the given object key":inspect(e);throw new $TypeError("Side channel does not contain "+t)}},delete:function(n){return!!e&&e.delete(n)},get:function(n){return e&&e.get(n)},has:function(n){return!!e&&e.has(n)},set:function(n,t){e||(e=makeChannel()),e.set(n,t)}};return n};
@@ -30,13 +30,13 @@
30
30
  },{}],9:[function(require,module,exports){
31
31
  "use strict";module.exports=Function.prototype.call;
32
32
 
33
- },{}],11:[function(require,module,exports){
34
- "use strict";module.exports="undefined"!=typeof Reflect&&Reflect&&Reflect.apply;
35
-
36
33
  },{}],24:[function(require,module,exports){
37
34
  "use strict";var implementation=require(23);module.exports=Function.prototype.bind||implementation;
38
35
 
39
- },{"23":23}],10:[function(require,module,exports){
36
+ },{"23":23}],11:[function(require,module,exports){
37
+ "use strict";module.exports="undefined"!=typeof Reflect&&Reflect&&Reflect.apply;
38
+
39
+ },{}],10:[function(require,module,exports){
40
40
  "use strict";var bind=require(24),$TypeError=require(20),$call=require(9),$actualApply=require(7);module.exports=function callBindBasic(r){if(r.length<1||"function"!=typeof r[0])throw new $TypeError("a function is required");return $actualApply(bind,$call,r)};
41
41
 
42
42
  },{"20":20,"24":24,"7":7,"9":9}],20:[function(require,module,exports){
@@ -78,20 +78,20 @@
78
78
  },{}],23:[function(require,module,exports){
79
79
  "use strict";var ERROR_MESSAGE="Function.prototype.bind called on incompatible ",toStr=Object.prototype.toString,max=Math.max,funcType="[object Function]",concatty=function concatty(t,n){for(var r=[],o=0;o<t.length;o+=1)r[o]=t[o];for(var e=0;e<n.length;e+=1)r[e+t.length]=n[e];return r},slicy=function slicy(t,n){for(var r=[],o=n||0,e=0;o<t.length;o+=1,e+=1)r[e]=t[o];return r},joiny=function(t,n){for(var r="",o=0;o<t.length;o+=1)r+=t[o],o+1<t.length&&(r+=n);return r};module.exports=function bind(t){var n=this;if("function"!=typeof n||toStr.apply(n)!==funcType)throw new TypeError(ERROR_MESSAGE+n);for(var r,o=slicy(arguments,1),e=max(0,n.length-o.length),i=[],c=0;c<e;c++)i[c]="$"+c;if(r=Function("binder","return function ("+joiny(i,",")+"){ return binder.apply(this,arguments); }")(function(){if(this instanceof r){var e=n.apply(this,concatty(o,arguments));return Object(e)===e?e:this}return n.apply(t,concatty(o,arguments))}),n.prototype){var p=function Empty(){};p.prototype=n.prototype,r.prototype=new p,p.prototype=null}return r};
80
80
 
81
- },{}],37:[function(require,module,exports){
82
- "use strict";module.exports=Math.max;
83
-
84
81
  },{}],35:[function(require,module,exports){
85
82
  "use strict";module.exports=Math.floor;
86
83
 
87
- },{}],40:[function(require,module,exports){
88
- "use strict";module.exports=Math.round;
84
+ },{}],37:[function(require,module,exports){
85
+ "use strict";module.exports=Math.max;
86
+
87
+ },{}],38:[function(require,module,exports){
88
+ "use strict";module.exports=Math.min;
89
89
 
90
90
  },{}],34:[function(require,module,exports){
91
91
  "use strict";module.exports=Math.abs;
92
92
 
93
- },{}],38:[function(require,module,exports){
94
- "use strict";module.exports=Math.min;
93
+ },{}],40:[function(require,module,exports){
94
+ "use strict";module.exports=Math.round;
95
95
 
96
96
  },{}],39:[function(require,module,exports){
97
97
  "use strict";module.exports=Math.pow;
@@ -105,13 +105,13 @@
105
105
  },{"22":22}],41:[function(require,module,exports){
106
106
  "use strict";var $isNaN=require(36);module.exports=function sign(i){return $isNaN(i)||0===i?i:i<0?-1:1};
107
107
 
108
- },{"36":36}],33:[function(require,module,exports){
109
- "use strict";var call=Function.prototype.call,$hasOwn=Object.prototype.hasOwnProperty,bind=require(24);module.exports=bind.call(call,$hasOwn);
110
-
111
- },{"24":24}],31:[function(require,module,exports){
108
+ },{"36":36}],31:[function(require,module,exports){
112
109
  "use strict";var origSymbol="undefined"!=typeof Symbol&&Symbol,hasSymbolSham=require(32);module.exports=function hasNativeSymbols(){return"function"==typeof origSymbol&&"function"==typeof Symbol&&"symbol"==typeof origSymbol("foo")&&"symbol"==typeof Symbol("bar")&&hasSymbolSham()};
113
110
 
114
- },{"32":32}],28:[function(require,module,exports){
111
+ },{"32":32}],33:[function(require,module,exports){
112
+ "use strict";var call=Function.prototype.call,$hasOwn=Object.prototype.hasOwnProperty,bind=require(24);module.exports=bind.call(call,$hasOwn);
113
+
114
+ },{"24":24}],28:[function(require,module,exports){
115
115
  "use strict";var reflectGetProto=require(27),originalGetProto=require(26),getDunderProto=require(13);module.exports=reflectGetProto?function getProto(t){return reflectGetProto(t)}:originalGetProto?function getProto(t){if(!t||"object"!=typeof t&&"function"!=typeof t)throw new TypeError("getProto: not an object");return originalGetProto(t)}:getDunderProto?function getProto(t){return getDunderProto(t)}:null;
116
116
 
117
117
  },{"13":13,"26":26,"27":27}],29:[function(require,module,exports){
@@ -6,6 +6,7 @@ var utils = require('./utils');
6
6
  var has = Object.prototype.hasOwnProperty;
7
7
  var isArray = Array.isArray;
8
8
  var getPrototypeOf = Object.getPrototypeOf;
9
+ var fromCharCode = String.fromCharCode;
9
10
 
10
11
  var isPlainContainer = function isPlainContainer(value) {
11
12
  if (!value || typeof value !== 'object') {
@@ -83,7 +84,13 @@ var defaults = {
83
84
 
84
85
  var interpretNumericEntities = function (str) {
85
86
  return str.replace(/&#(\d+);/g, function ($0, numberStr) {
86
- return String.fromCharCode(parseInt(numberStr, 10));
87
+ var c = parseInt(numberStr, 10);
88
+ if (c > 0xFFFF && c <= 0x10FFFF) {
89
+ // `String.fromCodePoint` is not available in every supported engine, so build the surrogate pair by hand
90
+ c -= 0x10000;
91
+ return fromCharCode(0xD800 | (c >> 10), 0xDC00 | (c & 0x3FF));
92
+ }
93
+ return fromCharCode(c);
87
94
  });
88
95
  };
89
96
 
@@ -225,6 +232,10 @@ var parseValues = function parseQueryStringValues(str, options) {
225
232
  return obj;
226
233
  };
227
234
 
235
+ var stripWrappingBrackets = function stripWrappingBrackets(key) {
236
+ return key.charAt(0) === '[' && key.charAt(key.length - 1) === ']' ? key.slice(1, -1) : key;
237
+ };
238
+
228
239
  var parseObject = function (chain, val, options, valuesParsed) {
229
240
  var currentArrayLength = 0;
230
241
  if (chain.length > 0 && chain[chain.length - 1] === '[]') {
@@ -255,7 +266,7 @@ var parseObject = function (chain, val, options, valuesParsed) {
255
266
  }
256
267
  } else {
257
268
  obj = options.plainObjects ? { __proto__: null } : {};
258
- var cleanRoot = root.charAt(0) === '[' && root.charAt(root.length - 1) === ']' ? root.slice(1, -1) : root;
269
+ var cleanRoot = stripWrappingBrackets(root);
259
270
  var decodedRoot = options.decodeDotInKeys ? cleanRoot.replace(/%2E/gi, '.') : cleanRoot;
260
271
  var index = parseInt(decodedRoot, 10);
261
272
  var isValidArrayIndex = !isNaN(index)
@@ -264,7 +275,7 @@ var parseObject = function (chain, val, options, valuesParsed) {
264
275
  && index >= 0
265
276
  && options.parseArrays;
266
277
  if (!options.parseArrays && decodedRoot === '') {
267
- obj = { 0: leaf };
278
+ obj[0] = leaf;
268
279
  } else if (isValidArrayIndex && index < options.arrayLimit) {
269
280
  obj = [];
270
281
  obj[index] = leaf;
@@ -328,7 +339,8 @@ var splitKeyIntoSegments = function splitKeyIntoSegments(originalKey, options) {
328
339
 
329
340
  // depth <= 0 keeps the whole key as one segment
330
341
  if (options.depth <= 0) {
331
- if (!options.plainObjects && has.call(Object.prototype, key)) {
342
+ // `parseObject` strips one wrapping bracket pair, so guard the key it will store ("[toString]" -> "toString")
343
+ if (!options.plainObjects && has.call(Object.prototype, stripWrappingBrackets(key))) {
332
344
  if (!options.allowPrototypes) {
333
345
  return;
334
346
  }
@@ -110,6 +110,17 @@ var maxNumericIndex = function maxNumericIndex(obj, min) {
110
110
  return max;
111
111
  };
112
112
 
113
+ // parsed arrays stay sparse until `compact`, so `length` would count the holes left by indices like `a[19]`
114
+ var countElements = function countElements(arr) {
115
+ var count = 0;
116
+ for (var i = 0; i < arr.length; ++i) {
117
+ if (has.call(arr, i)) {
118
+ count += 1;
119
+ }
120
+ }
121
+ return count;
122
+ };
123
+
113
124
  var limitedPair = function limitedPair(first, second, options) {
114
125
  var pair = [first, second];
115
126
  if (options && typeof options.arrayLimit === 'number' && pair.length > options.arrayLimit) {
@@ -130,7 +141,7 @@ var merge = function merge(target, source, options) {
130
141
  if (typeof source !== 'object' && typeof source !== 'function') {
131
142
  if (isArray(target)) {
132
143
  var nextIndex = target.length;
133
- if (options && typeof options.arrayLimit === 'number' && nextIndex >= options.arrayLimit) {
144
+ if (options && typeof options.arrayLimit === 'number' && countElements(target) >= options.arrayLimit) {
134
145
  if (options.throwOnLimitExceeded) {
135
146
  throw new RangeError('Array limit exceeded. Only ' + options.arrayLimit + ' element' + (options.arrayLimit === 1 ? '' : 's') + ' allowed in an array.');
136
147
  }
@@ -215,7 +226,7 @@ var merge = function merge(target, source, options) {
215
226
  target[i] = item;
216
227
  }
217
228
  });
218
- if (options && typeof options.arrayLimit === 'number' && target.length > options.arrayLimit) {
229
+ if (options && typeof options.arrayLimit === 'number' && countElements(target) > options.arrayLimit) {
219
230
  if (options.throwOnLimitExceeded) {
220
231
  throw new RangeError('Array limit exceeded. Only ' + options.arrayLimit + ' element' + (options.arrayLimit === 1 ? '' : 's') + ' allowed in an array.');
221
232
  }
@@ -2,7 +2,7 @@
2
2
  "name": "qs",
3
3
  "description": "A querystring parser that supports nesting and arrays, with a depth limit",
4
4
  "homepage": "https://github.com/ljharb/qs",
5
- "version": "6.17.0",
5
+ "version": "6.17.1",
6
6
  "repository": {
7
7
  "type": "git",
8
8
  "url": "https://github.com/ljharb/qs.git"
@@ -182,7 +182,7 @@ var MemoryStore = class {
182
182
  */
183
183
  resetClient(client, now = Date.now()) {
184
184
  client.totalHits = 0;
185
- client.resetTime.setTime(now + this.windowMs);
185
+ client.resetTime = new Date(now + this.windowMs);
186
186
  return client;
187
187
  }
188
188
  /**
@@ -931,7 +931,11 @@ var rateLimit = (passedOptions) => {
931
931
  try {
932
932
  const incrementResult = await config.store.increment(key);
933
933
  totalHits = incrementResult.totalHits;
934
- resetTime = incrementResult.resetTime;
934
+ if (incrementResult.resetTime && (config.skipFailedRequests || config.skipSuccessfulRequests)) {
935
+ resetTime = new Date(incrementResult.resetTime.getTime());
936
+ } else {
937
+ resetTime = incrementResult.resetTime;
938
+ }
935
939
  } catch (error) {
936
940
  if (config.passOnStoreError) {
937
941
  config.logger.error(