step-node-agent 3.25.4 → 3.26.0

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 (289) hide show
  1. package/AgentConf.yaml +13 -0
  2. package/api/controllers/controller.js +4 -0
  3. package/api/routes/routes.js +1 -0
  4. package/node_modules/aws4/aws4.js +1 -1
  5. package/node_modules/aws4/package.json +2 -2
  6. package/node_modules/body-parser/HISTORY.md +7 -0
  7. package/node_modules/body-parser/README.md +11 -0
  8. package/node_modules/body-parser/lib/types/urlencoded.js +30 -7
  9. package/node_modules/body-parser/package.json +2 -2
  10. package/node_modules/encodeurl/README.md +19 -38
  11. package/node_modules/encodeurl/index.js +1 -1
  12. package/node_modules/encodeurl/package.json +7 -7
  13. package/node_modules/express/History.md +27 -0
  14. package/node_modules/express/Readme.md +100 -6
  15. package/node_modules/express/lib/response.js +11 -10
  16. package/node_modules/express/package.json +11 -11
  17. package/node_modules/finalhandler/HISTORY.md +15 -0
  18. package/node_modules/finalhandler/README.md +2 -2
  19. package/node_modules/finalhandler/index.js +7 -2
  20. package/node_modules/finalhandler/package.json +8 -7
  21. package/node_modules/get-fqdn/LICENSE +21 -0
  22. package/node_modules/get-fqdn/README.md +83 -0
  23. package/node_modules/get-fqdn/index.js +17 -0
  24. package/node_modules/get-fqdn/package.json +73 -0
  25. package/node_modules/is-core-module/CHANGELOG.md +10 -0
  26. package/node_modules/is-core-module/core.json +2 -2
  27. package/node_modules/is-core-module/package.json +4 -4
  28. package/node_modules/is-core-module/test/index.js +17 -1
  29. package/node_modules/merge-descriptors/README.md +4 -3
  30. package/node_modules/merge-descriptors/index.js +3 -3
  31. package/node_modules/merge-descriptors/package.json +14 -7
  32. package/node_modules/path-to-regexp/index.js +57 -40
  33. package/node_modules/path-to-regexp/package.json +2 -2
  34. package/node_modules/qs/.editorconfig +3 -0
  35. package/node_modules/qs/.eslintrc +2 -2
  36. package/node_modules/qs/CHANGELOG.md +59 -5
  37. package/node_modules/qs/README.md +133 -49
  38. package/node_modules/qs/dist/qs.js +56 -2020
  39. package/node_modules/qs/lib/parse.js +46 -13
  40. package/node_modules/qs/lib/stringify.js +53 -28
  41. package/node_modules/qs/lib/utils.js +47 -34
  42. package/node_modules/qs/package.json +26 -12
  43. package/node_modules/qs/test/empty-keys-cases.js +267 -0
  44. package/node_modules/qs/test/parse.js +347 -32
  45. package/node_modules/qs/test/stringify.js +436 -47
  46. package/node_modules/send/HISTORY.md +5 -0
  47. package/node_modules/send/index.js +1 -2
  48. package/node_modules/send/node_modules/encodeurl/LICENSE +22 -0
  49. package/node_modules/send/node_modules/encodeurl/README.md +128 -0
  50. package/node_modules/send/node_modules/encodeurl/index.js +60 -0
  51. package/node_modules/send/node_modules/encodeurl/package.json +40 -0
  52. package/node_modules/send/package.json +1 -1
  53. package/node_modules/serve-static/HISTORY.md +16 -0
  54. package/node_modules/serve-static/index.js +1 -2
  55. package/node_modules/serve-static/package.json +3 -3
  56. package/node_modules/yaml/LICENSE +13 -0
  57. package/node_modules/yaml/README.md +155 -0
  58. package/node_modules/yaml/bin.mjs +11 -0
  59. package/node_modules/yaml/browser/dist/compose/compose-collection.js +88 -0
  60. package/node_modules/yaml/browser/dist/compose/compose-doc.js +42 -0
  61. package/node_modules/yaml/browser/dist/compose/compose-node.js +92 -0
  62. package/node_modules/yaml/browser/dist/compose/compose-scalar.js +80 -0
  63. package/node_modules/yaml/browser/dist/compose/composer.js +217 -0
  64. package/node_modules/yaml/browser/dist/compose/resolve-block-map.js +113 -0
  65. package/node_modules/yaml/browser/dist/compose/resolve-block-scalar.js +198 -0
  66. package/node_modules/yaml/browser/dist/compose/resolve-block-seq.js +47 -0
  67. package/node_modules/yaml/browser/dist/compose/resolve-end.js +37 -0
  68. package/node_modules/yaml/browser/dist/compose/resolve-flow-collection.js +203 -0
  69. package/node_modules/yaml/browser/dist/compose/resolve-flow-scalar.js +223 -0
  70. package/node_modules/yaml/browser/dist/compose/resolve-props.js +148 -0
  71. package/node_modules/yaml/browser/dist/compose/util-contains-newline.js +34 -0
  72. package/node_modules/yaml/browser/dist/compose/util-empty-scalar-position.js +27 -0
  73. package/node_modules/yaml/browser/dist/compose/util-flow-indent-check.js +15 -0
  74. package/node_modules/yaml/browser/dist/compose/util-map-includes.js +17 -0
  75. package/node_modules/yaml/browser/dist/doc/Document.js +334 -0
  76. package/node_modules/yaml/browser/dist/doc/anchors.js +72 -0
  77. package/node_modules/yaml/browser/dist/doc/applyReviver.js +55 -0
  78. package/node_modules/yaml/browser/dist/doc/createNode.js +89 -0
  79. package/node_modules/yaml/browser/dist/doc/directives.js +176 -0
  80. package/node_modules/yaml/browser/dist/errors.js +57 -0
  81. package/node_modules/yaml/browser/dist/index.js +17 -0
  82. package/node_modules/yaml/browser/dist/log.js +14 -0
  83. package/node_modules/yaml/browser/dist/nodes/Alias.js +101 -0
  84. package/node_modules/yaml/browser/dist/nodes/Collection.js +147 -0
  85. package/node_modules/yaml/browser/dist/nodes/Node.js +38 -0
  86. package/node_modules/yaml/browser/dist/nodes/Pair.js +36 -0
  87. package/node_modules/yaml/browser/dist/nodes/Scalar.js +24 -0
  88. package/node_modules/yaml/browser/dist/nodes/YAMLMap.js +144 -0
  89. package/node_modules/yaml/browser/dist/nodes/YAMLSeq.js +113 -0
  90. package/node_modules/yaml/browser/dist/nodes/addPairToJSMap.js +104 -0
  91. package/node_modules/yaml/browser/dist/nodes/identity.js +36 -0
  92. package/node_modules/yaml/browser/dist/nodes/toJS.js +37 -0
  93. package/node_modules/yaml/browser/dist/parse/cst-scalar.js +214 -0
  94. package/node_modules/yaml/browser/dist/parse/cst-stringify.js +61 -0
  95. package/node_modules/yaml/browser/dist/parse/cst-visit.js +97 -0
  96. package/node_modules/yaml/browser/dist/parse/cst.js +98 -0
  97. package/node_modules/yaml/browser/dist/parse/lexer.js +717 -0
  98. package/node_modules/yaml/browser/dist/parse/line-counter.js +39 -0
  99. package/node_modules/yaml/browser/dist/parse/parser.js +954 -0
  100. package/node_modules/yaml/browser/dist/public-api.js +99 -0
  101. package/node_modules/yaml/browser/dist/schema/Schema.js +38 -0
  102. package/node_modules/yaml/browser/dist/schema/common/map.js +17 -0
  103. package/node_modules/yaml/browser/dist/schema/common/null.js +15 -0
  104. package/node_modules/yaml/browser/dist/schema/common/seq.js +17 -0
  105. package/node_modules/yaml/browser/dist/schema/common/string.js +14 -0
  106. package/node_modules/yaml/browser/dist/schema/core/bool.js +19 -0
  107. package/node_modules/yaml/browser/dist/schema/core/float.js +43 -0
  108. package/node_modules/yaml/browser/dist/schema/core/int.js +38 -0
  109. package/node_modules/yaml/browser/dist/schema/core/schema.js +23 -0
  110. package/node_modules/yaml/browser/dist/schema/json/schema.js +62 -0
  111. package/node_modules/yaml/browser/dist/schema/tags.js +83 -0
  112. package/node_modules/yaml/browser/dist/schema/yaml-1.1/binary.js +66 -0
  113. package/node_modules/yaml/browser/dist/schema/yaml-1.1/bool.js +26 -0
  114. package/node_modules/yaml/browser/dist/schema/yaml-1.1/float.js +46 -0
  115. package/node_modules/yaml/browser/dist/schema/yaml-1.1/int.js +71 -0
  116. package/node_modules/yaml/browser/dist/schema/yaml-1.1/omap.js +74 -0
  117. package/node_modules/yaml/browser/dist/schema/yaml-1.1/pairs.js +78 -0
  118. package/node_modules/yaml/browser/dist/schema/yaml-1.1/schema.js +37 -0
  119. package/node_modules/yaml/browser/dist/schema/yaml-1.1/set.js +93 -0
  120. package/node_modules/yaml/browser/dist/schema/yaml-1.1/timestamp.js +101 -0
  121. package/node_modules/yaml/browser/dist/stringify/foldFlowLines.js +146 -0
  122. package/node_modules/yaml/browser/dist/stringify/stringify.js +124 -0
  123. package/node_modules/yaml/browser/dist/stringify/stringifyCollection.js +143 -0
  124. package/node_modules/yaml/browser/dist/stringify/stringifyComment.js +20 -0
  125. package/node_modules/yaml/browser/dist/stringify/stringifyDocument.js +85 -0
  126. package/node_modules/yaml/browser/dist/stringify/stringifyNumber.js +24 -0
  127. package/node_modules/yaml/browser/dist/stringify/stringifyPair.js +150 -0
  128. package/node_modules/yaml/browser/dist/stringify/stringifyString.js +328 -0
  129. package/node_modules/yaml/browser/dist/util.js +11 -0
  130. package/node_modules/yaml/browser/dist/visit.js +233 -0
  131. package/node_modules/yaml/browser/index.js +5 -0
  132. package/node_modules/yaml/browser/package.json +3 -0
  133. package/node_modules/yaml/dist/cli.d.ts +8 -0
  134. package/node_modules/yaml/dist/cli.mjs +199 -0
  135. package/node_modules/yaml/dist/compose/compose-collection.d.ts +11 -0
  136. package/node_modules/yaml/dist/compose/compose-collection.js +90 -0
  137. package/node_modules/yaml/dist/compose/compose-doc.d.ts +7 -0
  138. package/node_modules/yaml/dist/compose/compose-doc.js +44 -0
  139. package/node_modules/yaml/dist/compose/compose-node.d.ts +28 -0
  140. package/node_modules/yaml/dist/compose/compose-node.js +95 -0
  141. package/node_modules/yaml/dist/compose/compose-scalar.d.ts +5 -0
  142. package/node_modules/yaml/dist/compose/compose-scalar.js +82 -0
  143. package/node_modules/yaml/dist/compose/composer.d.ts +62 -0
  144. package/node_modules/yaml/dist/compose/composer.js +221 -0
  145. package/node_modules/yaml/dist/compose/resolve-block-map.d.ts +6 -0
  146. package/node_modules/yaml/dist/compose/resolve-block-map.js +115 -0
  147. package/node_modules/yaml/dist/compose/resolve-block-scalar.d.ts +11 -0
  148. package/node_modules/yaml/dist/compose/resolve-block-scalar.js +200 -0
  149. package/node_modules/yaml/dist/compose/resolve-block-seq.d.ts +6 -0
  150. package/node_modules/yaml/dist/compose/resolve-block-seq.js +49 -0
  151. package/node_modules/yaml/dist/compose/resolve-end.d.ts +6 -0
  152. package/node_modules/yaml/dist/compose/resolve-end.js +39 -0
  153. package/node_modules/yaml/dist/compose/resolve-flow-collection.d.ts +7 -0
  154. package/node_modules/yaml/dist/compose/resolve-flow-collection.js +205 -0
  155. package/node_modules/yaml/dist/compose/resolve-flow-scalar.d.ts +10 -0
  156. package/node_modules/yaml/dist/compose/resolve-flow-scalar.js +225 -0
  157. package/node_modules/yaml/dist/compose/resolve-props.d.ts +23 -0
  158. package/node_modules/yaml/dist/compose/resolve-props.js +150 -0
  159. package/node_modules/yaml/dist/compose/util-contains-newline.d.ts +2 -0
  160. package/node_modules/yaml/dist/compose/util-contains-newline.js +36 -0
  161. package/node_modules/yaml/dist/compose/util-empty-scalar-position.d.ts +2 -0
  162. package/node_modules/yaml/dist/compose/util-empty-scalar-position.js +29 -0
  163. package/node_modules/yaml/dist/compose/util-flow-indent-check.d.ts +3 -0
  164. package/node_modules/yaml/dist/compose/util-flow-indent-check.js +17 -0
  165. package/node_modules/yaml/dist/compose/util-map-includes.d.ts +4 -0
  166. package/node_modules/yaml/dist/compose/util-map-includes.js +19 -0
  167. package/node_modules/yaml/dist/doc/Document.d.ts +141 -0
  168. package/node_modules/yaml/dist/doc/Document.js +336 -0
  169. package/node_modules/yaml/dist/doc/anchors.d.ts +24 -0
  170. package/node_modules/yaml/dist/doc/anchors.js +77 -0
  171. package/node_modules/yaml/dist/doc/applyReviver.d.ts +9 -0
  172. package/node_modules/yaml/dist/doc/applyReviver.js +57 -0
  173. package/node_modules/yaml/dist/doc/createNode.d.ts +17 -0
  174. package/node_modules/yaml/dist/doc/createNode.js +91 -0
  175. package/node_modules/yaml/dist/doc/directives.d.ts +49 -0
  176. package/node_modules/yaml/dist/doc/directives.js +178 -0
  177. package/node_modules/yaml/dist/errors.d.ts +21 -0
  178. package/node_modules/yaml/dist/errors.js +62 -0
  179. package/node_modules/yaml/dist/index.d.ts +22 -0
  180. package/node_modules/yaml/dist/index.js +50 -0
  181. package/node_modules/yaml/dist/log.d.ts +3 -0
  182. package/node_modules/yaml/dist/log.js +17 -0
  183. package/node_modules/yaml/dist/nodes/Alias.d.ts +28 -0
  184. package/node_modules/yaml/dist/nodes/Alias.js +103 -0
  185. package/node_modules/yaml/dist/nodes/Collection.d.ts +73 -0
  186. package/node_modules/yaml/dist/nodes/Collection.js +151 -0
  187. package/node_modules/yaml/dist/nodes/Node.d.ts +47 -0
  188. package/node_modules/yaml/dist/nodes/Node.js +40 -0
  189. package/node_modules/yaml/dist/nodes/Pair.d.ts +21 -0
  190. package/node_modules/yaml/dist/nodes/Pair.js +39 -0
  191. package/node_modules/yaml/dist/nodes/Scalar.d.ts +42 -0
  192. package/node_modules/yaml/dist/nodes/Scalar.js +27 -0
  193. package/node_modules/yaml/dist/nodes/YAMLMap.d.ts +53 -0
  194. package/node_modules/yaml/dist/nodes/YAMLMap.js +147 -0
  195. package/node_modules/yaml/dist/nodes/YAMLSeq.d.ts +60 -0
  196. package/node_modules/yaml/dist/nodes/YAMLSeq.js +115 -0
  197. package/node_modules/yaml/dist/nodes/addPairToJSMap.d.ts +4 -0
  198. package/node_modules/yaml/dist/nodes/addPairToJSMap.js +106 -0
  199. package/node_modules/yaml/dist/nodes/identity.d.ts +23 -0
  200. package/node_modules/yaml/dist/nodes/identity.js +53 -0
  201. package/node_modules/yaml/dist/nodes/toJS.d.ts +27 -0
  202. package/node_modules/yaml/dist/nodes/toJS.js +39 -0
  203. package/node_modules/yaml/dist/options.d.ts +338 -0
  204. package/node_modules/yaml/dist/parse/cst-scalar.d.ts +64 -0
  205. package/node_modules/yaml/dist/parse/cst-scalar.js +218 -0
  206. package/node_modules/yaml/dist/parse/cst-stringify.d.ts +8 -0
  207. package/node_modules/yaml/dist/parse/cst-stringify.js +63 -0
  208. package/node_modules/yaml/dist/parse/cst-visit.d.ts +39 -0
  209. package/node_modules/yaml/dist/parse/cst-visit.js +99 -0
  210. package/node_modules/yaml/dist/parse/cst.d.ts +108 -0
  211. package/node_modules/yaml/dist/parse/cst.js +112 -0
  212. package/node_modules/yaml/dist/parse/lexer.d.ts +87 -0
  213. package/node_modules/yaml/dist/parse/lexer.js +719 -0
  214. package/node_modules/yaml/dist/parse/line-counter.d.ts +22 -0
  215. package/node_modules/yaml/dist/parse/line-counter.js +41 -0
  216. package/node_modules/yaml/dist/parse/parser.d.ts +84 -0
  217. package/node_modules/yaml/dist/parse/parser.js +958 -0
  218. package/node_modules/yaml/dist/public-api.d.ts +43 -0
  219. package/node_modules/yaml/dist/public-api.js +104 -0
  220. package/node_modules/yaml/dist/schema/Schema.d.ts +18 -0
  221. package/node_modules/yaml/dist/schema/Schema.js +40 -0
  222. package/node_modules/yaml/dist/schema/common/map.d.ts +2 -0
  223. package/node_modules/yaml/dist/schema/common/map.js +19 -0
  224. package/node_modules/yaml/dist/schema/common/null.d.ts +4 -0
  225. package/node_modules/yaml/dist/schema/common/null.js +17 -0
  226. package/node_modules/yaml/dist/schema/common/seq.d.ts +2 -0
  227. package/node_modules/yaml/dist/schema/common/seq.js +19 -0
  228. package/node_modules/yaml/dist/schema/common/string.d.ts +2 -0
  229. package/node_modules/yaml/dist/schema/common/string.js +16 -0
  230. package/node_modules/yaml/dist/schema/core/bool.d.ts +4 -0
  231. package/node_modules/yaml/dist/schema/core/bool.js +21 -0
  232. package/node_modules/yaml/dist/schema/core/float.d.ts +4 -0
  233. package/node_modules/yaml/dist/schema/core/float.js +47 -0
  234. package/node_modules/yaml/dist/schema/core/int.d.ts +4 -0
  235. package/node_modules/yaml/dist/schema/core/int.js +42 -0
  236. package/node_modules/yaml/dist/schema/core/schema.d.ts +1 -0
  237. package/node_modules/yaml/dist/schema/core/schema.js +25 -0
  238. package/node_modules/yaml/dist/schema/json/schema.d.ts +2 -0
  239. package/node_modules/yaml/dist/schema/json/schema.js +64 -0
  240. package/node_modules/yaml/dist/schema/json-schema.d.ts +69 -0
  241. package/node_modules/yaml/dist/schema/tags.d.ts +40 -0
  242. package/node_modules/yaml/dist/schema/tags.js +86 -0
  243. package/node_modules/yaml/dist/schema/types.d.ts +90 -0
  244. package/node_modules/yaml/dist/schema/yaml-1.1/binary.d.ts +2 -0
  245. package/node_modules/yaml/dist/schema/yaml-1.1/binary.js +68 -0
  246. package/node_modules/yaml/dist/schema/yaml-1.1/bool.d.ts +7 -0
  247. package/node_modules/yaml/dist/schema/yaml-1.1/bool.js +29 -0
  248. package/node_modules/yaml/dist/schema/yaml-1.1/float.d.ts +4 -0
  249. package/node_modules/yaml/dist/schema/yaml-1.1/float.js +50 -0
  250. package/node_modules/yaml/dist/schema/yaml-1.1/int.d.ts +5 -0
  251. package/node_modules/yaml/dist/schema/yaml-1.1/int.js +76 -0
  252. package/node_modules/yaml/dist/schema/yaml-1.1/omap.d.ts +28 -0
  253. package/node_modules/yaml/dist/schema/yaml-1.1/omap.js +77 -0
  254. package/node_modules/yaml/dist/schema/yaml-1.1/pairs.d.ts +10 -0
  255. package/node_modules/yaml/dist/schema/yaml-1.1/pairs.js +82 -0
  256. package/node_modules/yaml/dist/schema/yaml-1.1/schema.d.ts +1 -0
  257. package/node_modules/yaml/dist/schema/yaml-1.1/schema.js +39 -0
  258. package/node_modules/yaml/dist/schema/yaml-1.1/set.d.ts +28 -0
  259. package/node_modules/yaml/dist/schema/yaml-1.1/set.js +96 -0
  260. package/node_modules/yaml/dist/schema/yaml-1.1/timestamp.d.ts +6 -0
  261. package/node_modules/yaml/dist/schema/yaml-1.1/timestamp.js +105 -0
  262. package/node_modules/yaml/dist/stringify/foldFlowLines.d.ts +34 -0
  263. package/node_modules/yaml/dist/stringify/foldFlowLines.js +151 -0
  264. package/node_modules/yaml/dist/stringify/stringify.d.ts +21 -0
  265. package/node_modules/yaml/dist/stringify/stringify.js +127 -0
  266. package/node_modules/yaml/dist/stringify/stringifyCollection.d.ts +17 -0
  267. package/node_modules/yaml/dist/stringify/stringifyCollection.js +145 -0
  268. package/node_modules/yaml/dist/stringify/stringifyComment.d.ts +10 -0
  269. package/node_modules/yaml/dist/stringify/stringifyComment.js +24 -0
  270. package/node_modules/yaml/dist/stringify/stringifyDocument.d.ts +4 -0
  271. package/node_modules/yaml/dist/stringify/stringifyDocument.js +87 -0
  272. package/node_modules/yaml/dist/stringify/stringifyNumber.d.ts +2 -0
  273. package/node_modules/yaml/dist/stringify/stringifyNumber.js +26 -0
  274. package/node_modules/yaml/dist/stringify/stringifyPair.d.ts +3 -0
  275. package/node_modules/yaml/dist/stringify/stringifyPair.js +152 -0
  276. package/node_modules/yaml/dist/stringify/stringifyString.d.ts +9 -0
  277. package/node_modules/yaml/dist/stringify/stringifyString.js +330 -0
  278. package/node_modules/yaml/dist/test-events.d.ts +4 -0
  279. package/node_modules/yaml/dist/test-events.js +134 -0
  280. package/node_modules/yaml/dist/util.d.ts +12 -0
  281. package/node_modules/yaml/dist/util.js +28 -0
  282. package/node_modules/yaml/dist/visit.d.ts +102 -0
  283. package/node_modules/yaml/dist/visit.js +236 -0
  284. package/node_modules/yaml/package.json +96 -0
  285. package/node_modules/yaml/util.js +2 -0
  286. package/package.json +7 -3
  287. package/server.js +50 -23
  288. package/node_modules/path-to-regexp/History.md +0 -36
  289. /package/node_modules/{encodeurl → send/node_modules/encodeurl}/HISTORY.md +0 -0
@@ -7,20 +7,24 @@ var isArray = Array.isArray;
7
7
 
8
8
  var defaults = {
9
9
  allowDots: false,
10
+ allowEmptyArrays: false,
10
11
  allowPrototypes: false,
11
12
  allowSparse: false,
12
13
  arrayLimit: 20,
13
14
  charset: 'utf-8',
14
15
  charsetSentinel: false,
15
16
  comma: false,
17
+ decodeDotInKeys: false,
16
18
  decoder: utils.decode,
17
19
  delimiter: '&',
18
20
  depth: 5,
21
+ duplicates: 'combine',
19
22
  ignoreQueryPrefix: false,
20
23
  interpretNumericEntities: false,
21
24
  parameterLimit: 1000,
22
25
  parseArrays: true,
23
26
  plainObjects: false,
27
+ strictDepth: false,
24
28
  strictNullHandling: false
25
29
  };
26
30
 
@@ -49,8 +53,10 @@ var isoSentinel = 'utf8=%26%2310003%3B'; // encodeURIComponent('✓')
49
53
  var charsetSentinel = 'utf8=%E2%9C%93'; // encodeURIComponent('✓')
50
54
 
51
55
  var parseValues = function parseQueryStringValues(str, options) {
52
- var obj = {};
56
+ var obj = { __proto__: null };
57
+
53
58
  var cleanStr = options.ignoreQueryPrefix ? str.replace(/^\?/, '') : str;
59
+ cleanStr = cleanStr.replace(/%5B/gi, '[').replace(/%5D/gi, ']');
54
60
  var limit = options.parameterLimit === Infinity ? undefined : options.parameterLimit;
55
61
  var parts = cleanStr.split(options.delimiter, limit);
56
62
  var skipIndex = -1; // Keep track of where the utf8 sentinel was found
@@ -102,9 +108,10 @@ var parseValues = function parseQueryStringValues(str, options) {
102
108
  val = isArray(val) ? [val] : val;
103
109
  }
104
110
 
105
- if (has.call(obj, key)) {
111
+ var existing = has.call(obj, key);
112
+ if (existing && options.duplicates === 'combine') {
106
113
  obj[key] = utils.combine(obj[key], val);
107
- } else {
114
+ } else if (!existing || options.duplicates === 'last') {
108
115
  obj[key] = val;
109
116
  }
110
117
  }
@@ -120,24 +127,27 @@ var parseObject = function (chain, val, options, valuesParsed) {
120
127
  var root = chain[i];
121
128
 
122
129
  if (root === '[]' && options.parseArrays) {
123
- obj = [].concat(leaf);
130
+ obj = options.allowEmptyArrays && (leaf === '' || (options.strictNullHandling && leaf === null))
131
+ ? []
132
+ : [].concat(leaf);
124
133
  } else {
125
134
  obj = options.plainObjects ? Object.create(null) : {};
126
135
  var cleanRoot = root.charAt(0) === '[' && root.charAt(root.length - 1) === ']' ? root.slice(1, -1) : root;
127
- var index = parseInt(cleanRoot, 10);
128
- if (!options.parseArrays && cleanRoot === '') {
136
+ var decodedRoot = options.decodeDotInKeys ? cleanRoot.replace(/%2E/g, '.') : cleanRoot;
137
+ var index = parseInt(decodedRoot, 10);
138
+ if (!options.parseArrays && decodedRoot === '') {
129
139
  obj = { 0: leaf };
130
140
  } else if (
131
141
  !isNaN(index)
132
- && root !== cleanRoot
133
- && String(index) === cleanRoot
142
+ && root !== decodedRoot
143
+ && String(index) === decodedRoot
134
144
  && index >= 0
135
145
  && (options.parseArrays && index <= options.arrayLimit)
136
146
  ) {
137
147
  obj = [];
138
148
  obj[index] = leaf;
139
- } else if (cleanRoot !== '__proto__') {
140
- obj[cleanRoot] = leaf;
149
+ } else if (decodedRoot !== '__proto__') {
150
+ obj[decodedRoot] = leaf;
141
151
  }
142
152
  }
143
153
 
@@ -192,9 +202,12 @@ var parseKeys = function parseQueryStringKeys(givenKey, val, options, valuesPars
192
202
  keys.push(segment[1]);
193
203
  }
194
204
 
195
- // If there's a remainder, just add whatever is left
205
+ // If there's a remainder, check strictDepth option for throw, else just add whatever is left
196
206
 
197
207
  if (segment) {
208
+ if (options.strictDepth === true) {
209
+ throw new RangeError('Input depth exceeded depth option of ' + options.depth + ' and strictDepth is true');
210
+ }
198
211
  keys.push('[' + key.slice(segment.index) + ']');
199
212
  }
200
213
 
@@ -206,7 +219,15 @@ var normalizeParseOptions = function normalizeParseOptions(opts) {
206
219
  return defaults;
207
220
  }
208
221
 
209
- if (opts.decoder !== null && opts.decoder !== undefined && typeof opts.decoder !== 'function') {
222
+ if (typeof opts.allowEmptyArrays !== 'undefined' && typeof opts.allowEmptyArrays !== 'boolean') {
223
+ throw new TypeError('`allowEmptyArrays` option can only be `true` or `false`, when provided');
224
+ }
225
+
226
+ if (typeof opts.decodeDotInKeys !== 'undefined' && typeof opts.decodeDotInKeys !== 'boolean') {
227
+ throw new TypeError('`decodeDotInKeys` option can only be `true` or `false`, when provided');
228
+ }
229
+
230
+ if (opts.decoder !== null && typeof opts.decoder !== 'undefined' && typeof opts.decoder !== 'function') {
210
231
  throw new TypeError('Decoder has to be a function.');
211
232
  }
212
233
 
@@ -215,23 +236,35 @@ var normalizeParseOptions = function normalizeParseOptions(opts) {
215
236
  }
216
237
  var charset = typeof opts.charset === 'undefined' ? defaults.charset : opts.charset;
217
238
 
239
+ var duplicates = typeof opts.duplicates === 'undefined' ? defaults.duplicates : opts.duplicates;
240
+
241
+ if (duplicates !== 'combine' && duplicates !== 'first' && duplicates !== 'last') {
242
+ throw new TypeError('The duplicates option must be either combine, first, or last');
243
+ }
244
+
245
+ var allowDots = typeof opts.allowDots === 'undefined' ? opts.decodeDotInKeys === true ? true : defaults.allowDots : !!opts.allowDots;
246
+
218
247
  return {
219
- allowDots: typeof opts.allowDots === 'undefined' ? defaults.allowDots : !!opts.allowDots,
248
+ allowDots: allowDots,
249
+ allowEmptyArrays: typeof opts.allowEmptyArrays === 'boolean' ? !!opts.allowEmptyArrays : defaults.allowEmptyArrays,
220
250
  allowPrototypes: typeof opts.allowPrototypes === 'boolean' ? opts.allowPrototypes : defaults.allowPrototypes,
221
251
  allowSparse: typeof opts.allowSparse === 'boolean' ? opts.allowSparse : defaults.allowSparse,
222
252
  arrayLimit: typeof opts.arrayLimit === 'number' ? opts.arrayLimit : defaults.arrayLimit,
223
253
  charset: charset,
224
254
  charsetSentinel: typeof opts.charsetSentinel === 'boolean' ? opts.charsetSentinel : defaults.charsetSentinel,
225
255
  comma: typeof opts.comma === 'boolean' ? opts.comma : defaults.comma,
256
+ decodeDotInKeys: typeof opts.decodeDotInKeys === 'boolean' ? opts.decodeDotInKeys : defaults.decodeDotInKeys,
226
257
  decoder: typeof opts.decoder === 'function' ? opts.decoder : defaults.decoder,
227
258
  delimiter: typeof opts.delimiter === 'string' || utils.isRegExp(opts.delimiter) ? opts.delimiter : defaults.delimiter,
228
259
  // eslint-disable-next-line no-implicit-coercion, no-extra-parens
229
260
  depth: (typeof opts.depth === 'number' || opts.depth === false) ? +opts.depth : defaults.depth,
261
+ duplicates: duplicates,
230
262
  ignoreQueryPrefix: opts.ignoreQueryPrefix === true,
231
263
  interpretNumericEntities: typeof opts.interpretNumericEntities === 'boolean' ? opts.interpretNumericEntities : defaults.interpretNumericEntities,
232
264
  parameterLimit: typeof opts.parameterLimit === 'number' ? opts.parameterLimit : defaults.parameterLimit,
233
265
  parseArrays: opts.parseArrays !== false,
234
266
  plainObjects: typeof opts.plainObjects === 'boolean' ? opts.plainObjects : defaults.plainObjects,
267
+ strictDepth: typeof opts.strictDepth === 'boolean' ? !!opts.strictDepth : defaults.strictDepth,
235
268
  strictNullHandling: typeof opts.strictNullHandling === 'boolean' ? opts.strictNullHandling : defaults.strictNullHandling
236
269
  };
237
270
  };
@@ -19,7 +19,6 @@ var arrayPrefixGenerators = {
19
19
  };
20
20
 
21
21
  var isArray = Array.isArray;
22
- var split = String.prototype.split;
23
22
  var push = Array.prototype.push;
24
23
  var pushToArray = function (arr, valueOrArray) {
25
24
  push.apply(arr, isArray(valueOrArray) ? valueOrArray : [valueOrArray]);
@@ -31,10 +30,13 @@ var defaultFormat = formats['default'];
31
30
  var defaults = {
32
31
  addQueryPrefix: false,
33
32
  allowDots: false,
33
+ allowEmptyArrays: false,
34
+ arrayFormat: 'indices',
34
35
  charset: 'utf-8',
35
36
  charsetSentinel: false,
36
37
  delimiter: '&',
37
38
  encode: true,
39
+ encodeDotInKeys: false,
38
40
  encoder: utils.encode,
39
41
  encodeValuesOnly: false,
40
42
  format: defaultFormat,
@@ -63,8 +65,10 @@ var stringify = function stringify(
63
65
  prefix,
64
66
  generateArrayPrefix,
65
67
  commaRoundTrip,
68
+ allowEmptyArrays,
66
69
  strictNullHandling,
67
70
  skipNulls,
71
+ encodeDotInKeys,
68
72
  encoder,
69
73
  filter,
70
74
  sort,
@@ -121,14 +125,6 @@ var stringify = function stringify(
121
125
  if (isNonNullishPrimitive(obj) || utils.isBuffer(obj)) {
122
126
  if (encoder) {
123
127
  var keyValue = encodeValuesOnly ? prefix : encoder(prefix, defaults.encoder, charset, 'key', format);
124
- if (generateArrayPrefix === 'comma' && encodeValuesOnly) {
125
- var valuesArray = split.call(String(obj), ',');
126
- var valuesJoined = '';
127
- for (var i = 0; i < valuesArray.length; ++i) {
128
- valuesJoined += (i === 0 ? '' : ',') + formatter(encoder(valuesArray[i], defaults.encoder, charset, 'value', format));
129
- }
130
- return [formatter(keyValue) + (commaRoundTrip && isArray(obj) && valuesArray.length === 1 ? '[]' : '') + '=' + valuesJoined];
131
- }
132
128
  return [formatter(keyValue) + '=' + formatter(encoder(obj, defaults.encoder, charset, 'value', format))];
133
129
  }
134
130
  return [formatter(prefix) + '=' + formatter(String(obj))];
@@ -143,6 +139,9 @@ var stringify = function stringify(
143
139
  var objKeys;
144
140
  if (generateArrayPrefix === 'comma' && isArray(obj)) {
145
141
  // we need to join elements in
142
+ if (encodeValuesOnly && encoder) {
143
+ obj = utils.maybeMap(obj, encoder);
144
+ }
146
145
  objKeys = [{ value: obj.length > 0 ? obj.join(',') || null : void undefined }];
147
146
  } else if (isArray(filter)) {
148
147
  objKeys = filter;
@@ -151,7 +150,13 @@ var stringify = function stringify(
151
150
  objKeys = sort ? keys.sort(sort) : keys;
152
151
  }
153
152
 
154
- var adjustedPrefix = commaRoundTrip && isArray(obj) && obj.length === 1 ? prefix + '[]' : prefix;
153
+ var encodedPrefix = encodeDotInKeys ? prefix.replace(/\./g, '%2E') : prefix;
154
+
155
+ var adjustedPrefix = commaRoundTrip && isArray(obj) && obj.length === 1 ? encodedPrefix + '[]' : encodedPrefix;
156
+
157
+ if (allowEmptyArrays && isArray(obj) && obj.length === 0) {
158
+ return adjustedPrefix + '[]';
159
+ }
155
160
 
156
161
  for (var j = 0; j < objKeys.length; ++j) {
157
162
  var key = objKeys[j];
@@ -161,9 +166,10 @@ var stringify = function stringify(
161
166
  continue;
162
167
  }
163
168
 
169
+ var encodedKey = allowDots && encodeDotInKeys ? key.replace(/\./g, '%2E') : key;
164
170
  var keyPrefix = isArray(obj)
165
- ? typeof generateArrayPrefix === 'function' ? generateArrayPrefix(adjustedPrefix, key) : adjustedPrefix
166
- : adjustedPrefix + (allowDots ? '.' + key : '[' + key + ']');
171
+ ? typeof generateArrayPrefix === 'function' ? generateArrayPrefix(adjustedPrefix, encodedKey) : adjustedPrefix
172
+ : adjustedPrefix + (allowDots ? '.' + encodedKey : '[' + encodedKey + ']');
167
173
 
168
174
  sideChannel.set(object, step);
169
175
  var valueSideChannel = getSideChannel();
@@ -173,9 +179,11 @@ var stringify = function stringify(
173
179
  keyPrefix,
174
180
  generateArrayPrefix,
175
181
  commaRoundTrip,
182
+ allowEmptyArrays,
176
183
  strictNullHandling,
177
184
  skipNulls,
178
- encoder,
185
+ encodeDotInKeys,
186
+ generateArrayPrefix === 'comma' && encodeValuesOnly && isArray(obj) ? null : encoder,
179
187
  filter,
180
188
  sort,
181
189
  allowDots,
@@ -196,6 +204,14 @@ var normalizeStringifyOptions = function normalizeStringifyOptions(opts) {
196
204
  return defaults;
197
205
  }
198
206
 
207
+ if (typeof opts.allowEmptyArrays !== 'undefined' && typeof opts.allowEmptyArrays !== 'boolean') {
208
+ throw new TypeError('`allowEmptyArrays` option can only be `true` or `false`, when provided');
209
+ }
210
+
211
+ if (typeof opts.encodeDotInKeys !== 'undefined' && typeof opts.encodeDotInKeys !== 'boolean') {
212
+ throw new TypeError('`encodeDotInKeys` option can only be `true` or `false`, when provided');
213
+ }
214
+
199
215
  if (opts.encoder !== null && typeof opts.encoder !== 'undefined' && typeof opts.encoder !== 'function') {
200
216
  throw new TypeError('Encoder has to be a function.');
201
217
  }
@@ -219,13 +235,32 @@ var normalizeStringifyOptions = function normalizeStringifyOptions(opts) {
219
235
  filter = opts.filter;
220
236
  }
221
237
 
238
+ var arrayFormat;
239
+ if (opts.arrayFormat in arrayPrefixGenerators) {
240
+ arrayFormat = opts.arrayFormat;
241
+ } else if ('indices' in opts) {
242
+ arrayFormat = opts.indices ? 'indices' : 'repeat';
243
+ } else {
244
+ arrayFormat = defaults.arrayFormat;
245
+ }
246
+
247
+ if ('commaRoundTrip' in opts && typeof opts.commaRoundTrip !== 'boolean') {
248
+ throw new TypeError('`commaRoundTrip` must be a boolean, or absent');
249
+ }
250
+
251
+ var allowDots = typeof opts.allowDots === 'undefined' ? opts.encodeDotInKeys === true ? true : defaults.allowDots : !!opts.allowDots;
252
+
222
253
  return {
223
254
  addQueryPrefix: typeof opts.addQueryPrefix === 'boolean' ? opts.addQueryPrefix : defaults.addQueryPrefix,
224
- allowDots: typeof opts.allowDots === 'undefined' ? defaults.allowDots : !!opts.allowDots,
255
+ allowDots: allowDots,
256
+ allowEmptyArrays: typeof opts.allowEmptyArrays === 'boolean' ? !!opts.allowEmptyArrays : defaults.allowEmptyArrays,
257
+ arrayFormat: arrayFormat,
225
258
  charset: charset,
226
259
  charsetSentinel: typeof opts.charsetSentinel === 'boolean' ? opts.charsetSentinel : defaults.charsetSentinel,
260
+ commaRoundTrip: opts.commaRoundTrip,
227
261
  delimiter: typeof opts.delimiter === 'undefined' ? defaults.delimiter : opts.delimiter,
228
262
  encode: typeof opts.encode === 'boolean' ? opts.encode : defaults.encode,
263
+ encodeDotInKeys: typeof opts.encodeDotInKeys === 'boolean' ? opts.encodeDotInKeys : defaults.encodeDotInKeys,
229
264
  encoder: typeof opts.encoder === 'function' ? opts.encoder : defaults.encoder,
230
265
  encodeValuesOnly: typeof opts.encodeValuesOnly === 'boolean' ? opts.encodeValuesOnly : defaults.encodeValuesOnly,
231
266
  filter: filter,
@@ -259,20 +294,8 @@ module.exports = function (object, opts) {
259
294
  return '';
260
295
  }
261
296
 
262
- var arrayFormat;
263
- if (opts && opts.arrayFormat in arrayPrefixGenerators) {
264
- arrayFormat = opts.arrayFormat;
265
- } else if (opts && 'indices' in opts) {
266
- arrayFormat = opts.indices ? 'indices' : 'repeat';
267
- } else {
268
- arrayFormat = 'indices';
269
- }
270
-
271
- var generateArrayPrefix = arrayPrefixGenerators[arrayFormat];
272
- if (opts && 'commaRoundTrip' in opts && typeof opts.commaRoundTrip !== 'boolean') {
273
- throw new TypeError('`commaRoundTrip` must be a boolean, or absent');
274
- }
275
- var commaRoundTrip = generateArrayPrefix === 'comma' && opts && opts.commaRoundTrip;
297
+ var generateArrayPrefix = arrayPrefixGenerators[options.arrayFormat];
298
+ var commaRoundTrip = generateArrayPrefix === 'comma' && options.commaRoundTrip;
276
299
 
277
300
  if (!objKeys) {
278
301
  objKeys = Object.keys(obj);
@@ -294,8 +317,10 @@ module.exports = function (object, opts) {
294
317
  key,
295
318
  generateArrayPrefix,
296
319
  commaRoundTrip,
320
+ options.allowEmptyArrays,
297
321
  options.strictNullHandling,
298
322
  options.skipNulls,
323
+ options.encodeDotInKeys,
299
324
  options.encode ? options.encoder : null,
300
325
  options.filter,
301
326
  options.sort,
@@ -122,6 +122,10 @@ var decode = function (str, decoder, charset) {
122
122
  }
123
123
  };
124
124
 
125
+ var limit = 1024;
126
+
127
+ /* eslint operator-linebreak: [2, "before"] */
128
+
125
129
  var encode = function encode(str, defaultEncoder, charset, kind, format) {
126
130
  // This code was originally written by Brian White (mscdex) for the io.js core querystring library.
127
131
  // It has been adapted here for stricter adherence to RFC 3986
@@ -143,45 +147,54 @@ var encode = function encode(str, defaultEncoder, charset, kind, format) {
143
147
  }
144
148
 
145
149
  var out = '';
146
- for (var i = 0; i < string.length; ++i) {
147
- var c = string.charCodeAt(i);
148
-
149
- if (
150
- c === 0x2D // -
151
- || c === 0x2E // .
152
- || c === 0x5F // _
153
- || c === 0x7E // ~
154
- || (c >= 0x30 && c <= 0x39) // 0-9
155
- || (c >= 0x41 && c <= 0x5A) // a-z
156
- || (c >= 0x61 && c <= 0x7A) // A-Z
157
- || (format === formats.RFC1738 && (c === 0x28 || c === 0x29)) // ( )
158
- ) {
159
- out += string.charAt(i);
160
- continue;
161
- }
150
+ for (var j = 0; j < string.length; j += limit) {
151
+ var segment = string.length >= limit ? string.slice(j, j + limit) : string;
152
+ var arr = [];
153
+
154
+ for (var i = 0; i < segment.length; ++i) {
155
+ var c = segment.charCodeAt(i);
156
+ if (
157
+ c === 0x2D // -
158
+ || c === 0x2E // .
159
+ || c === 0x5F // _
160
+ || c === 0x7E // ~
161
+ || (c >= 0x30 && c <= 0x39) // 0-9
162
+ || (c >= 0x41 && c <= 0x5A) // a-z
163
+ || (c >= 0x61 && c <= 0x7A) // A-Z
164
+ || (format === formats.RFC1738 && (c === 0x28 || c === 0x29)) // ( )
165
+ ) {
166
+ arr[arr.length] = segment.charAt(i);
167
+ continue;
168
+ }
162
169
 
163
- if (c < 0x80) {
164
- out = out + hexTable[c];
165
- continue;
166
- }
170
+ if (c < 0x80) {
171
+ arr[arr.length] = hexTable[c];
172
+ continue;
173
+ }
167
174
 
168
- if (c < 0x800) {
169
- out = out + (hexTable[0xC0 | (c >> 6)] + hexTable[0x80 | (c & 0x3F)]);
170
- continue;
171
- }
175
+ if (c < 0x800) {
176
+ arr[arr.length] = hexTable[0xC0 | (c >> 6)]
177
+ + hexTable[0x80 | (c & 0x3F)];
178
+ continue;
179
+ }
180
+
181
+ if (c < 0xD800 || c >= 0xE000) {
182
+ arr[arr.length] = hexTable[0xE0 | (c >> 12)]
183
+ + hexTable[0x80 | ((c >> 6) & 0x3F)]
184
+ + hexTable[0x80 | (c & 0x3F)];
185
+ continue;
186
+ }
187
+
188
+ i += 1;
189
+ c = 0x10000 + (((c & 0x3FF) << 10) | (segment.charCodeAt(i) & 0x3FF));
172
190
 
173
- if (c < 0xD800 || c >= 0xE000) {
174
- out = out + (hexTable[0xE0 | (c >> 12)] + hexTable[0x80 | ((c >> 6) & 0x3F)] + hexTable[0x80 | (c & 0x3F)]);
175
- continue;
191
+ arr[arr.length] = hexTable[0xF0 | (c >> 18)]
192
+ + hexTable[0x80 | ((c >> 12) & 0x3F)]
193
+ + hexTable[0x80 | ((c >> 6) & 0x3F)]
194
+ + hexTable[0x80 | (c & 0x3F)];
176
195
  }
177
196
 
178
- i += 1;
179
- c = 0x10000 + (((c & 0x3FF) << 10) | (string.charCodeAt(i) & 0x3FF));
180
- /* eslint operator-linebreak: [2, "before"] */
181
- out += hexTable[0xF0 | (c >> 18)]
182
- + hexTable[0x80 | ((c >> 12) & 0x3F)]
183
- + hexTable[0x80 | ((c >> 6) & 0x3F)]
184
- + hexTable[0x80 | (c & 0x3F)];
197
+ out += arr.join('');
185
198
  }
186
199
 
187
200
  return out;
@@ -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.11.0",
5
+ "version": "6.13.0",
6
6
  "repository": {
7
7
  "type": "git",
8
8
  "url": "https://github.com/ljharb/qs.git"
@@ -11,6 +11,7 @@
11
11
  "url": "https://github.com/sponsors/ljharb"
12
12
  },
13
13
  "main": "lib/index.js",
14
+ "sideEffects": false,
14
15
  "contributors": [
15
16
  {
16
17
  "name": "Jordan Harband",
@@ -30,40 +31,51 @@
30
31
  "node": ">=0.6"
31
32
  },
32
33
  "dependencies": {
33
- "side-channel": "^1.0.4"
34
+ "side-channel": "^1.0.6"
34
35
  },
35
36
  "devDependencies": {
36
- "@ljharb/eslint-config": "^21.0.0",
37
- "aud": "^2.0.0",
37
+ "@browserify/envify": "^6.0.0",
38
+ "@browserify/uglifyify": "^6.0.0",
39
+ "@ljharb/eslint-config": "^21.1.1",
38
40
  "browserify": "^16.5.2",
41
+ "bundle-collapser": "^1.4.0",
42
+ "common-shakeify": "~1.0.0",
39
43
  "eclint": "^2.8.1",
44
+ "es-value-fixtures": "^1.4.2",
40
45
  "eslint": "=8.8.0",
41
46
  "evalmd": "^0.0.19",
42
47
  "for-each": "^0.3.3",
48
+ "glob": "=10.3.7",
49
+ "has-override-mistake": "^1.0.1",
50
+ "has-property-descriptors": "^1.0.2",
43
51
  "has-symbols": "^1.0.3",
44
52
  "iconv-lite": "^0.5.1",
45
53
  "in-publish": "^2.0.1",
54
+ "jackspeak": "=2.1.1",
46
55
  "mkdirp": "^0.5.5",
47
- "npmignore": "^0.3.0",
56
+ "mock-property": "^1.0.3",
57
+ "module-deps": "^6.2.3",
58
+ "npmignore": "^0.3.1",
48
59
  "nyc": "^10.3.2",
49
- "object-inspect": "^1.12.2",
60
+ "object-inspect": "^1.13.2",
50
61
  "qs-iconv": "^1.0.4",
51
62
  "safe-publish-latest": "^2.0.0",
52
63
  "safer-buffer": "^2.1.2",
53
- "tape": "^5.5.3"
64
+ "tape": "^5.8.1",
65
+ "unassertify": "^3.0.1"
54
66
  },
55
67
  "scripts": {
56
- "prepack": "npmignore --auto --commentLines=autogenerated",
57
- "prepublishOnly": "safe-publish-latest && npm run dist",
68
+ "prepack": "npmignore --auto --commentLines=autogenerated && npm run dist",
69
+ "prepublishOnly": "safe-publish-latest",
58
70
  "prepublish": "not-in-publish || npm run prepublishOnly",
59
71
  "pretest": "npm run --silent readme && npm run --silent lint",
60
72
  "test": "npm run tests-only",
61
73
  "tests-only": "nyc tape 'test/**/*.js'",
62
- "posttest": "aud --production",
74
+ "posttest": "npx npm@'>=10.2' audit --production",
63
75
  "readme": "evalmd README.md",
64
76
  "postlint": "eclint check $(git ls-files | xargs find 2> /dev/null | grep -vE 'node_modules|\\.git' | grep -v dist/)",
65
77
  "lint": "eslint --ext=js,mjs .",
66
- "dist": "mkdirp dist && browserify --standalone Qs lib/index.js > dist/qs.js"
78
+ "dist": "mkdirp dist && browserify --standalone Qs -g unassertify -g @browserify/envify -g [@browserify/uglifyify --mangle.keep_fnames --compress.keep_fnames --format.indent_level=1 --compress.arrows=false --compress.passes=4 --compress.typeofs=false] -p common-shakeify -p bundle-collapser/plugin lib/index.js > dist/qs.js"
67
79
  },
68
80
  "license": "BSD-3-Clause",
69
81
  "publishConfig": {
@@ -71,7 +83,9 @@
71
83
  "!dist/*",
72
84
  "bower.json",
73
85
  "component.json",
74
- ".github/workflows"
86
+ ".github/workflows",
87
+ "logos",
88
+ "tea.yaml"
75
89
  ]
76
90
  }
77
91
  }