renovate-log-parser 0.1.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 (325) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +402 -0
  3. package/dist/cli.d.ts +2 -0
  4. package/dist/cli.js +30 -0
  5. package/dist/cli.js.map +1 -0
  6. package/dist/commands/analyze.d.ts +24 -0
  7. package/dist/commands/analyze.js +114 -0
  8. package/dist/commands/analyze.js.map +1 -0
  9. package/dist/commands/detect-errors.d.ts +17 -0
  10. package/dist/commands/detect-errors.js +119 -0
  11. package/dist/commands/detect-errors.js.map +1 -0
  12. package/dist/commands/install-analyze-skill.d.ts +27 -0
  13. package/dist/commands/install-analyze-skill.js +181 -0
  14. package/dist/commands/install-analyze-skill.js.map +1 -0
  15. package/dist/commands/web.d.ts +12 -0
  16. package/dist/commands/web.js +103 -0
  17. package/dist/commands/web.js.map +1 -0
  18. package/dist/core/analyzer.d.ts +89 -0
  19. package/dist/core/analyzer.js +179 -0
  20. package/dist/core/analyzer.js.map +1 -0
  21. package/dist/core/error-detector.d.ts +56 -0
  22. package/dist/core/error-detector.js +236 -0
  23. package/dist/core/error-detector.js.map +1 -0
  24. package/dist/core/filters.d.ts +136 -0
  25. package/dist/core/filters.js +95 -0
  26. package/dist/core/filters.js.map +1 -0
  27. package/dist/core/ignore-file.d.ts +52 -0
  28. package/dist/core/ignore-file.js +104 -0
  29. package/dist/core/ignore-file.js.map +1 -0
  30. package/dist/core/levels.d.ts +33 -0
  31. package/dist/core/levels.js +35 -0
  32. package/dist/core/levels.js.map +1 -0
  33. package/dist/core/parser.d.ts +57 -0
  34. package/dist/core/parser.js +201 -0
  35. package/dist/core/parser.js.map +1 -0
  36. package/dist/core/query-builder.d.ts +47 -0
  37. package/dist/core/query-builder.js +155 -0
  38. package/dist/core/query-builder.js.map +1 -0
  39. package/dist/core/skill-template.d.ts +34 -0
  40. package/dist/core/skill-template.js +259 -0
  41. package/dist/core/skill-template.js.map +1 -0
  42. package/package.json +68 -0
  43. package/web/.output/nitro.json +15 -0
  44. package/web/.output/public/_fonts/57NSSoFy1VLVs2gqly8Ls9awBnZMFyXGrefpmqvdqmc-zJfbBtpgM4cDmcXBsqZNW79_kFnlpPd62b48glgdydA.woff2 +0 -0
  45. package/web/.output/public/_fonts/8VR2wSMN-3U4NbWAVYXlkRV6hA0jFBXP-0RtL3X7fko-x2gYI4qfmkRdxyQQUPaBZdZdgl1TeVrquF_TxHeM4lM.woff2 +0 -0
  46. package/web/.output/public/_fonts/GsKUclqeNLJ96g5AU593ug6yanivOiwjW_7zESNPChw-jHA4tBeM1bjF7LATGUpfBuSTyomIFrWBTzjF7txVYfg.woff2 +0 -0
  47. package/web/.output/public/_fonts/Ld1FnTo3yTIwDyGfTQ5-Fws9AWsCbKfMvgxduXr7JcY-W25bL8NF1fjpLRSOgJb7RoZPHqGQNwMTM7S9tHVoxx8.woff2 +0 -0
  48. package/web/.output/public/_fonts/NdzqRASp2bovDUhQT1IRE_EMqKJ2KYQdTCfFcBvL8yw-KhwZiS86o3fErOe5GGMExHUemmI_dBfaEFxjISZrBd0.woff2 +0 -0
  49. package/web/.output/public/_fonts/iTkrULNFJJkTvihIg1Vqi5IODRH_9btXCioVF5l98I8-AndUyau2HR2felA_ra8V2mutQgschhasE5FD1dXGJX8.woff2 +0 -0
  50. package/web/.output/public/_nuxt/BWja8e3M.js +37 -0
  51. package/web/.output/public/_nuxt/BgApMHS1.js +1 -0
  52. package/web/.output/public/_nuxt/CGPWRqbc.js +1 -0
  53. package/web/.output/public/_nuxt/DlAUqK2U.js +1 -0
  54. package/web/.output/public/_nuxt/Sgtec1U0.js +1 -0
  55. package/web/.output/public/_nuxt/builds/latest.json +1 -0
  56. package/web/.output/public/_nuxt/builds/meta/c4723e49-0623-47af-ae79-9ab6428bdcc1.json +1 -0
  57. package/web/.output/public/_nuxt/entry.9mB-pyEY.css +1 -0
  58. package/web/.output/public/_nuxt/error-404.B_PvSG-P.css +1 -0
  59. package/web/.output/public/_nuxt/error-500.CghkKCEr.css +1 -0
  60. package/web/.output/public/_nuxt/index.BlvAG7F6.css +1 -0
  61. package/web/.output/public/favicon.ico +0 -0
  62. package/web/.output/server/chunks/_/error-500.mjs +19 -0
  63. package/web/.output/server/chunks/_/error-500.mjs.map +1 -0
  64. package/web/.output/server/chunks/_/icons.mjs +6153 -0
  65. package/web/.output/server/chunks/_/icons.mjs.map +1 -0
  66. package/web/.output/server/chunks/_/icons2.mjs +11494 -0
  67. package/web/.output/server/chunks/_/icons2.mjs.map +1 -0
  68. package/web/.output/server/chunks/build/_plugin-vue_export-helper-1tPrXgE0.mjs +10 -0
  69. package/web/.output/server/chunks/build/_plugin-vue_export-helper-1tPrXgE0.mjs.map +1 -0
  70. package/web/.output/server/chunks/build/client.precomputed.mjs +4 -0
  71. package/web/.output/server/chunks/build/client.precomputed.mjs.map +1 -0
  72. package/web/.output/server/chunks/build/error-404-DyaaQUIS.mjs +106 -0
  73. package/web/.output/server/chunks/build/error-404-DyaaQUIS.mjs.map +1 -0
  74. package/web/.output/server/chunks/build/error-404-styles.9cNA4arh.mjs +8 -0
  75. package/web/.output/server/chunks/build/error-404-styles.9cNA4arh.mjs.map +1 -0
  76. package/web/.output/server/chunks/build/error-500-CVSP-p02.mjs +89 -0
  77. package/web/.output/server/chunks/build/error-500-CVSP-p02.mjs.map +1 -0
  78. package/web/.output/server/chunks/build/error-500-styles.BX54ZlkH.mjs +8 -0
  79. package/web/.output/server/chunks/build/error-500-styles.BX54ZlkH.mjs.map +1 -0
  80. package/web/.output/server/chunks/build/index-88dXYOxO.mjs +19675 -0
  81. package/web/.output/server/chunks/build/index-88dXYOxO.mjs.map +1 -0
  82. package/web/.output/server/chunks/build/index-styles.V2iua2bE.mjs +8 -0
  83. package/web/.output/server/chunks/build/index-styles.V2iua2bE.mjs.map +1 -0
  84. package/web/.output/server/chunks/build/server.mjs +7910 -0
  85. package/web/.output/server/chunks/build/server.mjs.map +1 -0
  86. package/web/.output/server/chunks/build/styles.mjs +10 -0
  87. package/web/.output/server/chunks/build/styles.mjs.map +1 -0
  88. package/web/.output/server/chunks/nitro/nitro.mjs +6944 -0
  89. package/web/.output/server/chunks/nitro/nitro.mjs.map +1 -0
  90. package/web/.output/server/chunks/routes/api/fields.get.mjs +27 -0
  91. package/web/.output/server/chunks/routes/api/fields.get.mjs.map +1 -0
  92. package/web/.output/server/chunks/routes/api/findings.get.mjs +30 -0
  93. package/web/.output/server/chunks/routes/api/findings.get.mjs.map +1 -0
  94. package/web/.output/server/chunks/routes/api/log/contents.post.mjs +29 -0
  95. package/web/.output/server/chunks/routes/api/log/contents.post.mjs.map +1 -0
  96. package/web/.output/server/chunks/routes/api/log/path.post.mjs +30 -0
  97. package/web/.output/server/chunks/routes/api/log/path.post.mjs.map +1 -0
  98. package/web/.output/server/chunks/routes/api/repositories.get.mjs +27 -0
  99. package/web/.output/server/chunks/routes/api/repositories.get.mjs.map +1 -0
  100. package/web/.output/server/chunks/routes/api/rows.get.mjs +48 -0
  101. package/web/.output/server/chunks/routes/api/rows.get.mjs.map +1 -0
  102. package/web/.output/server/chunks/routes/renderer.mjs +451 -0
  103. package/web/.output/server/chunks/routes/renderer.mjs.map +1 -0
  104. package/web/.output/server/chunks/virtual/_virtual_spa-template.mjs +4 -0
  105. package/web/.output/server/chunks/virtual/_virtual_spa-template.mjs.map +1 -0
  106. package/web/.output/server/index.mjs +16 -0
  107. package/web/.output/server/index.mjs.map +1 -0
  108. package/web/.output/server/node_modules/.nitro/hookable@5.5.3/dist/index.mjs +290 -0
  109. package/web/.output/server/node_modules/.nitro/hookable@5.5.3/package.json +49 -0
  110. package/web/.output/server/node_modules/.nitro/hookable@6.1.1/dist/index.mjs +257 -0
  111. package/web/.output/server/node_modules/.nitro/hookable@6.1.1/package.json +53 -0
  112. package/web/.output/server/node_modules/@babel/parser/lib/index.js +14599 -0
  113. package/web/.output/server/node_modules/@babel/parser/package.json +50 -0
  114. package/web/.output/server/node_modules/@floating-ui/core/dist/floating-ui.core.mjs +1038 -0
  115. package/web/.output/server/node_modules/@floating-ui/core/package.json +63 -0
  116. package/web/.output/server/node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs +789 -0
  117. package/web/.output/server/node_modules/@floating-ui/dom/package.json +72 -0
  118. package/web/.output/server/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs +165 -0
  119. package/web/.output/server/node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs +136 -0
  120. package/web/.output/server/node_modules/@floating-ui/utils/package.json +70 -0
  121. package/web/.output/server/node_modules/@floating-ui/vue/dist/floating-ui.vue.mjs +190 -0
  122. package/web/.output/server/node_modules/@floating-ui/vue/package.json +71 -0
  123. package/web/.output/server/node_modules/@iconify/utils/lib/colors/index.js +295 -0
  124. package/web/.output/server/node_modules/@iconify/utils/lib/colors/keywords.js +701 -0
  125. package/web/.output/server/node_modules/@iconify/utils/lib/css/common.js +75 -0
  126. package/web/.output/server/node_modules/@iconify/utils/lib/css/format.js +39 -0
  127. package/web/.output/server/node_modules/@iconify/utils/lib/css/icon.js +47 -0
  128. package/web/.output/server/node_modules/@iconify/utils/lib/css/icons.js +128 -0
  129. package/web/.output/server/node_modules/@iconify/utils/lib/customisations/bool.js +19 -0
  130. package/web/.output/server/node_modules/@iconify/utils/lib/customisations/defaults.js +13 -0
  131. package/web/.output/server/node_modules/@iconify/utils/lib/customisations/flip.js +17 -0
  132. package/web/.output/server/node_modules/@iconify/utils/lib/customisations/merge.js +16 -0
  133. package/web/.output/server/node_modules/@iconify/utils/lib/customisations/rotate.js +30 -0
  134. package/web/.output/server/node_modules/@iconify/utils/lib/emoji/cleanup.js +78 -0
  135. package/web/.output/server/node_modules/@iconify/utils/lib/emoji/convert.js +100 -0
  136. package/web/.output/server/node_modules/@iconify/utils/lib/emoji/data.js +28 -0
  137. package/web/.output/server/node_modules/@iconify/utils/lib/emoji/format.js +58 -0
  138. package/web/.output/server/node_modules/@iconify/utils/lib/emoji/parse.js +48 -0
  139. package/web/.output/server/node_modules/@iconify/utils/lib/emoji/regex/base.js +203 -0
  140. package/web/.output/server/node_modules/@iconify/utils/lib/emoji/regex/create.js +33 -0
  141. package/web/.output/server/node_modules/@iconify/utils/lib/emoji/regex/numbers.js +132 -0
  142. package/web/.output/server/node_modules/@iconify/utils/lib/emoji/regex/similar.js +165 -0
  143. package/web/.output/server/node_modules/@iconify/utils/lib/emoji/regex/tree.js +79 -0
  144. package/web/.output/server/node_modules/@iconify/utils/lib/emoji/replace/find.js +92 -0
  145. package/web/.output/server/node_modules/@iconify/utils/lib/emoji/replace/replace.js +26 -0
  146. package/web/.output/server/node_modules/@iconify/utils/lib/emoji/test/components.js +76 -0
  147. package/web/.output/server/node_modules/@iconify/utils/lib/emoji/test/missing.js +66 -0
  148. package/web/.output/server/node_modules/@iconify/utils/lib/emoji/test/name.js +45 -0
  149. package/web/.output/server/node_modules/@iconify/utils/lib/emoji/test/parse.js +103 -0
  150. package/web/.output/server/node_modules/@iconify/utils/lib/emoji/test/similar.js +36 -0
  151. package/web/.output/server/node_modules/@iconify/utils/lib/emoji/test/tree.js +92 -0
  152. package/web/.output/server/node_modules/@iconify/utils/lib/emoji/test/variations.js +62 -0
  153. package/web/.output/server/node_modules/@iconify/utils/lib/icon/defaults.js +25 -0
  154. package/web/.output/server/node_modules/@iconify/utils/lib/icon/merge.js +16 -0
  155. package/web/.output/server/node_modules/@iconify/utils/lib/icon/name.js +57 -0
  156. package/web/.output/server/node_modules/@iconify/utils/lib/icon/square.js +33 -0
  157. package/web/.output/server/node_modules/@iconify/utils/lib/icon/transformations.js +12 -0
  158. package/web/.output/server/node_modules/@iconify/utils/lib/icon-set/convert-info.js +125 -0
  159. package/web/.output/server/node_modules/@iconify/utils/lib/icon-set/expand.js +19 -0
  160. package/web/.output/server/node_modules/@iconify/utils/lib/icon-set/get-icon.js +25 -0
  161. package/web/.output/server/node_modules/@iconify/utils/lib/icon-set/get-icons.js +36 -0
  162. package/web/.output/server/node_modules/@iconify/utils/lib/icon-set/minify.js +91 -0
  163. package/web/.output/server/node_modules/@iconify/utils/lib/icon-set/parse.js +46 -0
  164. package/web/.output/server/node_modules/@iconify/utils/lib/icon-set/tree.js +23 -0
  165. package/web/.output/server/node_modules/@iconify/utils/lib/icon-set/validate-basic.js +42 -0
  166. package/web/.output/server/node_modules/@iconify/utils/lib/icon-set/validate.js +123 -0
  167. package/web/.output/server/node_modules/@iconify/utils/lib/index.js +52 -0
  168. package/web/.output/server/node_modules/@iconify/utils/lib/loader/custom.js +30 -0
  169. package/web/.output/server/node_modules/@iconify/utils/lib/loader/loader.js +26 -0
  170. package/web/.output/server/node_modules/@iconify/utils/lib/loader/modern.js +27 -0
  171. package/web/.output/server/node_modules/@iconify/utils/lib/loader/utils.js +105 -0
  172. package/web/.output/server/node_modules/@iconify/utils/lib/misc/objects.js +26 -0
  173. package/web/.output/server/node_modules/@iconify/utils/lib/misc/strings.js +26 -0
  174. package/web/.output/server/node_modules/@iconify/utils/lib/misc/title.js +9 -0
  175. package/web/.output/server/node_modules/@iconify/utils/lib/svg/build.js +113 -0
  176. package/web/.output/server/node_modules/@iconify/utils/lib/svg/defs.js +31 -0
  177. package/web/.output/server/node_modules/@iconify/utils/lib/svg/encode-svg-for-css.js +13 -0
  178. package/web/.output/server/node_modules/@iconify/utils/lib/svg/html.js +9 -0
  179. package/web/.output/server/node_modules/@iconify/utils/lib/svg/id.js +41 -0
  180. package/web/.output/server/node_modules/@iconify/utils/lib/svg/inner-html.js +22 -0
  181. package/web/.output/server/node_modules/@iconify/utils/lib/svg/parse.js +67 -0
  182. package/web/.output/server/node_modules/@iconify/utils/lib/svg/pretty.js +54 -0
  183. package/web/.output/server/node_modules/@iconify/utils/lib/svg/size.js +27 -0
  184. package/web/.output/server/node_modules/@iconify/utils/lib/svg/trim.js +7 -0
  185. package/web/.output/server/node_modules/@iconify/utils/lib/svg/url.js +22 -0
  186. package/web/.output/server/node_modules/@iconify/utils/lib/svg/viewbox.js +8 -0
  187. package/web/.output/server/node_modules/@iconify/utils/package.json +119 -0
  188. package/web/.output/server/node_modules/@iconify/vue/dist/iconify.mjs +1896 -0
  189. package/web/.output/server/node_modules/@iconify/vue/package.json +62 -0
  190. package/web/.output/server/node_modules/@tanstack/virtual-core/dist/esm/index.js +1268 -0
  191. package/web/.output/server/node_modules/@tanstack/virtual-core/dist/esm/lazy-measurements.js +34 -0
  192. package/web/.output/server/node_modules/@tanstack/virtual-core/dist/esm/utils.js +74 -0
  193. package/web/.output/server/node_modules/@tanstack/virtual-core/package.json +56 -0
  194. package/web/.output/server/node_modules/@tanstack/vue-virtual/dist/esm/index.js +66 -0
  195. package/web/.output/server/node_modules/@tanstack/vue-virtual/package.json +68 -0
  196. package/web/.output/server/node_modules/@vue/compiler-core/dist/compiler-core.cjs.prod.js +6759 -0
  197. package/web/.output/server/node_modules/@vue/compiler-core/package.json +58 -0
  198. package/web/.output/server/node_modules/@vue/compiler-dom/dist/compiler-dom.cjs.prod.js +689 -0
  199. package/web/.output/server/node_modules/@vue/compiler-dom/package.json +57 -0
  200. package/web/.output/server/node_modules/@vue/compiler-ssr/dist/compiler-ssr.cjs.js +1413 -0
  201. package/web/.output/server/node_modules/@vue/compiler-ssr/package.json +34 -0
  202. package/web/.output/server/node_modules/@vue/devtools-api/dist/index.js +2 -0
  203. package/web/.output/server/node_modules/@vue/devtools-api/package.json +34 -0
  204. package/web/.output/server/node_modules/@vue/devtools-kit/dist/index.js +5670 -0
  205. package/web/.output/server/node_modules/@vue/devtools-kit/node_modules/hookable/dist/index.mjs +290 -0
  206. package/web/.output/server/node_modules/@vue/devtools-kit/node_modules/hookable/package.json +49 -0
  207. package/web/.output/server/node_modules/@vue/devtools-kit/package.json +44 -0
  208. package/web/.output/server/node_modules/@vue/devtools-shared/dist/index.js +239 -0
  209. package/web/.output/server/node_modules/@vue/devtools-shared/package.json +33 -0
  210. package/web/.output/server/node_modules/@vue/reactivity/dist/reactivity.cjs.prod.js +1899 -0
  211. package/web/.output/server/node_modules/@vue/reactivity/package.json +55 -0
  212. package/web/.output/server/node_modules/@vue/runtime-core/dist/runtime-core.cjs.prod.js +6940 -0
  213. package/web/.output/server/node_modules/@vue/runtime-core/package.json +52 -0
  214. package/web/.output/server/node_modules/@vue/runtime-dom/dist/runtime-dom.cjs.prod.js +1822 -0
  215. package/web/.output/server/node_modules/@vue/runtime-dom/package.json +60 -0
  216. package/web/.output/server/node_modules/@vue/server-renderer/dist/server-renderer.cjs.prod.js +896 -0
  217. package/web/.output/server/node_modules/@vue/server-renderer/package.json +55 -0
  218. package/web/.output/server/node_modules/@vue/shared/dist/shared.cjs.prod.js +604 -0
  219. package/web/.output/server/node_modules/@vue/shared/package.json +47 -0
  220. package/web/.output/server/node_modules/@vueuse/core/dist/index.js +8464 -0
  221. package/web/.output/server/node_modules/@vueuse/core/package.json +49 -0
  222. package/web/.output/server/node_modules/@vueuse/shared/dist/index.js +2013 -0
  223. package/web/.output/server/node_modules/@vueuse/shared/package.json +42 -0
  224. package/web/.output/server/node_modules/aria-hidden/dist/es5/index.js +174 -0
  225. package/web/.output/server/node_modules/aria-hidden/package.json +71 -0
  226. package/web/.output/server/node_modules/birpc/dist/index.mjs +291 -0
  227. package/web/.output/server/node_modules/birpc/package.json +57 -0
  228. package/web/.output/server/node_modules/consola/dist/chunks/prompt.mjs +280 -0
  229. package/web/.output/server/node_modules/consola/dist/core.mjs +512 -0
  230. package/web/.output/server/node_modules/consola/dist/index.mjs +651 -0
  231. package/web/.output/server/node_modules/consola/dist/shared/consola.DRwqZj3T.mjs +72 -0
  232. package/web/.output/server/node_modules/consola/dist/shared/consola.DXBYu-KD.mjs +288 -0
  233. package/web/.output/server/node_modules/consola/package.json +136 -0
  234. package/web/.output/server/node_modules/devalue/index.js +4 -0
  235. package/web/.output/server/node_modules/devalue/package.json +40 -0
  236. package/web/.output/server/node_modules/devalue/src/base64.js +60 -0
  237. package/web/.output/server/node_modules/devalue/src/constants.js +12 -0
  238. package/web/.output/server/node_modules/devalue/src/parse.js +283 -0
  239. package/web/.output/server/node_modules/devalue/src/stringify.js +401 -0
  240. package/web/.output/server/node_modules/devalue/src/uneval.js +552 -0
  241. package/web/.output/server/node_modules/devalue/src/utils.js +160 -0
  242. package/web/.output/server/node_modules/entities/dist/commonjs/decode-codepoint.js +77 -0
  243. package/web/.output/server/node_modules/entities/dist/commonjs/decode.js +568 -0
  244. package/web/.output/server/node_modules/entities/dist/commonjs/generated/decode-data-html.js +7 -0
  245. package/web/.output/server/node_modules/entities/dist/commonjs/generated/decode-data-xml.js +7 -0
  246. package/web/.output/server/node_modules/entities/dist/commonjs/internal/bin-trie-flags.js +21 -0
  247. package/web/.output/server/node_modules/entities/dist/commonjs/internal/decode-shared.js +31 -0
  248. package/web/.output/server/node_modules/entities/dist/commonjs/package.json +3 -0
  249. package/web/.output/server/node_modules/entities/package.json +120 -0
  250. package/web/.output/server/node_modules/estree-walker/dist/umd/estree-walker.js +344 -0
  251. package/web/.output/server/node_modules/estree-walker/package.json +37 -0
  252. package/web/.output/server/node_modules/hookable/dist/index.mjs +257 -0
  253. package/web/.output/server/node_modules/hookable/package.json +53 -0
  254. package/web/.output/server/node_modules/nostics/dist/index.mjs +179 -0
  255. package/web/.output/server/node_modules/nostics/package.json +124 -0
  256. package/web/.output/server/node_modules/perfect-debounce/dist/index.mjs +89 -0
  257. package/web/.output/server/node_modules/perfect-debounce/package.json +41 -0
  258. package/web/.output/server/node_modules/rou3/dist/index.mjs +501 -0
  259. package/web/.output/server/node_modules/rou3/package.json +48 -0
  260. package/web/.output/server/node_modules/source-map-js/lib/array-set.js +121 -0
  261. package/web/.output/server/node_modules/source-map-js/lib/base64-vlq.js +140 -0
  262. package/web/.output/server/node_modules/source-map-js/lib/base64.js +67 -0
  263. package/web/.output/server/node_modules/source-map-js/lib/binary-search.js +111 -0
  264. package/web/.output/server/node_modules/source-map-js/lib/mapping-list.js +79 -0
  265. package/web/.output/server/node_modules/source-map-js/lib/quick-sort.js +132 -0
  266. package/web/.output/server/node_modules/source-map-js/lib/source-map-consumer.js +1188 -0
  267. package/web/.output/server/node_modules/source-map-js/lib/source-map-generator.js +444 -0
  268. package/web/.output/server/node_modules/source-map-js/lib/source-node.js +413 -0
  269. package/web/.output/server/node_modules/source-map-js/lib/util.js +594 -0
  270. package/web/.output/server/node_modules/source-map-js/package.json +71 -0
  271. package/web/.output/server/node_modules/source-map-js/source-map.js +8 -0
  272. package/web/.output/server/node_modules/srvx/dist/_chunks/_body-limit.mjs +39 -0
  273. package/web/.output/server/node_modules/srvx/dist/_chunks/_plugins.mjs +56 -0
  274. package/web/.output/server/node_modules/srvx/dist/_chunks/_trust-proxy.mjs +58 -0
  275. package/web/.output/server/node_modules/srvx/dist/_chunks/_url.mjs +134 -0
  276. package/web/.output/server/node_modules/srvx/dist/_chunks/_utils.mjs +15 -0
  277. package/web/.output/server/node_modules/srvx/dist/_chunks/_utils2.mjs +75 -0
  278. package/web/.output/server/node_modules/srvx/dist/adapters/node.mjs +976 -0
  279. package/web/.output/server/node_modules/srvx/package.json +102 -0
  280. package/web/.output/server/node_modules/tailwind-merge/dist/bundle-mjs.mjs +3365 -0
  281. package/web/.output/server/node_modules/tailwind-merge/package.json +93 -0
  282. package/web/.output/server/node_modules/tailwind-variants/dist/chunk-LQJYWU4O.js +112 -0
  283. package/web/.output/server/node_modules/tailwind-variants/dist/chunk-RZF76H2U.js +269 -0
  284. package/web/.output/server/node_modules/tailwind-variants/dist/index.js +38 -0
  285. package/web/.output/server/node_modules/tailwind-variants/package.json +122 -0
  286. package/web/.output/server/node_modules/tailwindcss/dist/chunk-X4GG3EDV.mjs +1 -0
  287. package/web/.output/server/node_modules/tailwindcss/dist/colors.mjs +1 -0
  288. package/web/.output/server/node_modules/tailwindcss/package.json +89 -0
  289. package/web/.output/server/node_modules/ufo/dist/index.mjs +645 -0
  290. package/web/.output/server/node_modules/ufo/package.json +48 -0
  291. package/web/.output/server/node_modules/unhead/dist/index.mjs +9 -0
  292. package/web/.output/server/node_modules/unhead/dist/parser.mjs +508 -0
  293. package/web/.output/server/node_modules/unhead/dist/plugins.mjs +101 -0
  294. package/web/.output/server/node_modules/unhead/dist/scripts.mjs +30 -0
  295. package/web/.output/server/node_modules/unhead/dist/server.mjs +180 -0
  296. package/web/.output/server/node_modules/unhead/dist/shared/unhead.B3VbJo7Y.mjs +207 -0
  297. package/web/.output/server/node_modules/unhead/dist/shared/unhead.BYvz9V1x.mjs +43 -0
  298. package/web/.output/server/node_modules/unhead/dist/shared/unhead.BnoAbrHA.mjs +269 -0
  299. package/web/.output/server/node_modules/unhead/dist/shared/unhead.CaI5ZD4O.mjs +182 -0
  300. package/web/.output/server/node_modules/unhead/dist/shared/unhead.CbpEuj3y.mjs +71 -0
  301. package/web/.output/server/node_modules/unhead/dist/shared/unhead.D4vSFytZ.mjs +236 -0
  302. package/web/.output/server/node_modules/unhead/dist/shared/unhead.DQc16pHI.mjs +196 -0
  303. package/web/.output/server/node_modules/unhead/dist/shared/unhead.Dh1cQCTe.mjs +44 -0
  304. package/web/.output/server/node_modules/unhead/dist/shared/unhead.TxTMM7cM.mjs +166 -0
  305. package/web/.output/server/node_modules/unhead/dist/shared/unhead.yem5I2v_.mjs +38 -0
  306. package/web/.output/server/node_modules/unhead/dist/utils.mjs +5 -0
  307. package/web/.output/server/node_modules/unhead/node_modules/hookable/dist/index.mjs +257 -0
  308. package/web/.output/server/node_modules/unhead/node_modules/hookable/package.json +53 -0
  309. package/web/.output/server/node_modules/unhead/package.json +105 -0
  310. package/web/.output/server/node_modules/vue/dist/vue.cjs.js +80 -0
  311. package/web/.output/server/node_modules/vue/dist/vue.cjs.prod.js +66 -0
  312. package/web/.output/server/node_modules/vue/index.js +7 -0
  313. package/web/.output/server/node_modules/vue/index.mjs +1 -0
  314. package/web/.output/server/node_modules/vue/package.json +112 -0
  315. package/web/.output/server/node_modules/vue/server-renderer/index.mjs +1 -0
  316. package/web/.output/server/node_modules/vue-bundle-renderer/dist/runtime.mjs +249 -0
  317. package/web/.output/server/node_modules/vue-bundle-renderer/package.json +57 -0
  318. package/web/.output/server/node_modules/vue-demi/lib/index.mjs +34 -0
  319. package/web/.output/server/node_modules/vue-demi/package.json +47 -0
  320. package/web/.output/server/node_modules/vue-router/dist/devtools-Bpr7ZAVB.js +1056 -0
  321. package/web/.output/server/node_modules/vue-router/dist/useApi-CROJJdhE.js +436 -0
  322. package/web/.output/server/node_modules/vue-router/dist/vue-router.js +1543 -0
  323. package/web/.output/server/node_modules/vue-router/package.json +214 -0
  324. package/web/.output/server/node_modules/vue-router/vue-router.node.mjs +2 -0
  325. package/web/.output/server/package.json +51 -0
@@ -0,0 +1,552 @@
1
+ import {
2
+ DevalueError,
3
+ enumerable_symbols,
4
+ escaped,
5
+ get_type,
6
+ is_plain_object,
7
+ is_primitive,
8
+ stringify_key,
9
+ stringify_string,
10
+ valid_array_indices
11
+ } from './utils.js';
12
+
13
+ const chars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_$';
14
+ const unsafe_chars = /[<\b\f\n\r\t\0\u2028\u2029]/g;
15
+ const reserved =
16
+ /^(?:do|if|in|for|int|let|new|try|var|byte|case|char|else|enum|goto|long|this|void|with|await|break|catch|class|const|final|float|short|super|throw|while|yield|delete|double|export|import|native|return|switch|throws|typeof|boolean|default|extends|finally|package|private|abstract|continue|debugger|function|volatile|interface|protected|transient|implements|instanceof|synchronized)$/;
17
+
18
+ /**
19
+ * Turn a value into the JavaScript that creates an equivalent value
20
+ * @param {any} value
21
+ * @param {(value: any, uneval: (value: any) => string) => string | void} [replacer]
22
+ */
23
+ export function uneval(value, replacer) {
24
+ const counts = new Map();
25
+
26
+ /** @type {string[]} */
27
+ const keys = [];
28
+
29
+ const custom = new Map();
30
+
31
+ /** @param {any} thing */
32
+ function walk(thing) {
33
+ if (!is_primitive(thing)) {
34
+ if (counts.has(thing)) {
35
+ counts.set(thing, counts.get(thing) + 1);
36
+ return;
37
+ }
38
+
39
+ counts.set(thing, 1);
40
+
41
+ if (replacer) {
42
+ const str = replacer(thing, (value) => uneval(value, replacer));
43
+
44
+ if (typeof str === 'string') {
45
+ custom.set(thing, str);
46
+ return;
47
+ }
48
+ }
49
+
50
+ if (typeof thing === 'function') {
51
+ throw new DevalueError(`Cannot stringify a function`, keys, thing, value);
52
+ }
53
+
54
+ const type = get_type(thing);
55
+
56
+ switch (type) {
57
+ case 'Number':
58
+ case 'BigInt':
59
+ case 'String':
60
+ case 'Boolean':
61
+ case 'Date':
62
+ case 'RegExp':
63
+ case 'URL':
64
+ case 'URLSearchParams':
65
+ return;
66
+
67
+ case 'Array':
68
+ /** @type {any[]} */ (thing).forEach((value, i) => {
69
+ keys.push(`[${i}]`);
70
+ walk(value);
71
+ keys.pop();
72
+ });
73
+ break;
74
+
75
+ case 'Set':
76
+ Array.from(thing).forEach(walk);
77
+ break;
78
+
79
+ case 'Map':
80
+ for (const [key, value] of thing) {
81
+ keys.push(`.get(${is_primitive(key) ? stringify_primitive(key) : '...'})`);
82
+ walk(value);
83
+ keys.pop();
84
+ }
85
+ break;
86
+
87
+ case 'Int8Array':
88
+ case 'Uint8Array':
89
+ case 'Uint8ClampedArray':
90
+ case 'Int16Array':
91
+ case 'Uint16Array':
92
+ case 'Float16Array':
93
+ case 'Int32Array':
94
+ case 'Uint32Array':
95
+ case 'Float32Array':
96
+ case 'Float64Array':
97
+ case 'BigInt64Array':
98
+ case 'BigUint64Array':
99
+ case 'DataView':
100
+ walk(thing.buffer);
101
+ return;
102
+
103
+ case 'ArrayBuffer':
104
+ return;
105
+
106
+ case 'Temporal.Duration':
107
+ case 'Temporal.Instant':
108
+ case 'Temporal.PlainDate':
109
+ case 'Temporal.PlainTime':
110
+ case 'Temporal.PlainDateTime':
111
+ case 'Temporal.PlainMonthDay':
112
+ case 'Temporal.PlainYearMonth':
113
+ case 'Temporal.ZonedDateTime':
114
+ return;
115
+
116
+ default:
117
+ if (!is_plain_object(thing)) {
118
+ throw new DevalueError(`Cannot stringify arbitrary non-POJOs`, keys, thing, value);
119
+ }
120
+
121
+ if (enumerable_symbols(thing).length > 0) {
122
+ throw new DevalueError(`Cannot stringify POJOs with symbolic keys`, keys, thing, value);
123
+ }
124
+
125
+ for (const key of Object.keys(thing)) {
126
+ if (key === '__proto__') {
127
+ throw new DevalueError(
128
+ `Cannot stringify objects with __proto__ keys`,
129
+ keys,
130
+ thing,
131
+ value
132
+ );
133
+ }
134
+
135
+ keys.push(stringify_key(key));
136
+ walk(thing[key]);
137
+ keys.pop();
138
+ }
139
+ }
140
+ } else if (typeof thing === 'symbol') {
141
+ throw new DevalueError(`Cannot stringify a Symbol primitive`, keys, thing, value);
142
+ }
143
+ }
144
+
145
+ walk(value);
146
+
147
+ const names = new Map();
148
+
149
+ Array.from(counts)
150
+ .filter((entry) => entry[1] > 1)
151
+ .sort((a, b) => b[1] - a[1])
152
+ .forEach((entry, i) => {
153
+ names.set(entry[0], get_name(i));
154
+ });
155
+
156
+ /**
157
+ * @param {any} thing
158
+ * @returns {string}
159
+ */
160
+ function stringify(thing) {
161
+ if (names.has(thing)) {
162
+ return names.get(thing);
163
+ }
164
+
165
+ if (is_primitive(thing)) {
166
+ return stringify_primitive(thing);
167
+ }
168
+
169
+ if (custom.has(thing)) {
170
+ return custom.get(thing);
171
+ }
172
+
173
+ const type = get_type(thing);
174
+
175
+ switch (type) {
176
+ case 'Number':
177
+ case 'String':
178
+ case 'Boolean':
179
+ case 'BigInt':
180
+ return `Object(${stringify(thing.valueOf())})`;
181
+
182
+ case 'RegExp':
183
+ const { source, flags } = thing;
184
+ return flags
185
+ ? `new RegExp(${stringify_string(source)},"${flags}")`
186
+ : `new RegExp(${stringify_string(source)})`;
187
+
188
+ case 'Date':
189
+ return `new Date(${thing.getTime()})`;
190
+
191
+ case 'URL':
192
+ return `new URL(${stringify_string(thing.toString())})`;
193
+
194
+ case 'URLSearchParams':
195
+ return `new URLSearchParams(${stringify_string(thing.toString())})`;
196
+
197
+ case 'Array': {
198
+ // For dense arrays (no holes), we iterate normally.
199
+ // When we encounter the first hole, we call Object.keys
200
+ // to determine the sparseness, then decide between:
201
+ // - Array literal with holes: [,"a",,] (default)
202
+ // - Object.assign: Object.assign(Array(n),{...}) (for very sparse arrays)
203
+ // Only the Object.assign path avoids iterating every slot, which
204
+ // is what protects against the DoS of e.g. `arr[1000000] = 1`.
205
+ let has_holes = false;
206
+
207
+ let result = '[';
208
+
209
+ for (let i = 0; i < thing.length; i += 1) {
210
+ if (i > 0) result += ',';
211
+
212
+ if (Object.hasOwn(thing, i)) {
213
+ result += stringify(thing[i]);
214
+ } else if (!has_holes) {
215
+ // Decide between array literal and Object.assign.
216
+ //
217
+ // Array literal: holes are consecutive commas.
218
+ // For example, [, "a", ,] is written as [,"a",,].
219
+ // Each hole costs 1 char (a comma).
220
+ //
221
+ // Object.assign: populated indices are listed explicitly.
222
+ // For example, [, "a", ,] would be written as
223
+ // Object.assign(Array(3),{1:"a"}). This avoids paying
224
+ // per-hole, but has a large fixed overhead for the
225
+ // "Object.assign(Array(n),{...})" wrapper, and each
226
+ // element costs extra chars for its index and colon.
227
+ //
228
+ // The serialized values are the same size either way, so
229
+ // the choice comes down to the structural overhead:
230
+ //
231
+ // Array literal overhead:
232
+ // 1 char per element or hole (comma separators)
233
+ // + 2 chars for "[" and "]"
234
+ // = L + 2
235
+ //
236
+ // Object.assign overhead:
237
+ // "Object.assign(Array(" — 20 chars
238
+ // + length — d chars
239
+ // + "),{" — 3 chars
240
+ // + for each populated element:
241
+ // index + ":" + "," — (d + 2) chars
242
+ // + "})" — 2 chars
243
+ // = (25 + d) + P * (d + 2)
244
+ //
245
+ // where L is the array length, P is the number of
246
+ // populated elements, and d is the number of digits
247
+ // in L (an upper bound on the digits in any index).
248
+ //
249
+ // Object.assign is cheaper when:
250
+ // (25 + d) + P * (d + 2) < L + 2
251
+ const populated_keys = valid_array_indices(/** @type {any[]} */ (thing));
252
+ const population = populated_keys.length;
253
+ const d = String(thing.length).length;
254
+
255
+ const hole_cost = thing.length + 2;
256
+ const sparse_cost = 25 + d + population * (d + 2);
257
+
258
+ if (hole_cost > sparse_cost) {
259
+ const entries = populated_keys.map((k) => `${k}:${stringify(thing[k])}`).join(',');
260
+ return `Object.assign(Array(${thing.length}),{${entries}})`;
261
+ }
262
+
263
+ // Re-process this index as a hole in the array literal
264
+ has_holes = true;
265
+ i -= 1;
266
+ }
267
+ // else: already decided on array literal, hole is just an empty slot
268
+ // (the comma separator is all we need — no content for this position)
269
+ }
270
+
271
+ const tail = thing.length === 0 || thing.length - 1 in thing ? '' : ',';
272
+ return result + tail + ']';
273
+ }
274
+
275
+ case 'Set':
276
+ case 'Map':
277
+ return `new ${type}([${Array.from(thing).map(stringify).join(',')}])`;
278
+
279
+ case 'Int8Array':
280
+ case 'Uint8Array':
281
+ case 'Uint8ClampedArray':
282
+ case 'Int16Array':
283
+ case 'Uint16Array':
284
+ case 'Float16Array':
285
+ case 'Int32Array':
286
+ case 'Uint32Array':
287
+ case 'Float32Array':
288
+ case 'Float64Array':
289
+ case 'BigInt64Array':
290
+ case 'BigUint64Array': {
291
+ let str = `new ${type}`;
292
+
293
+ if (!names.has(thing.buffer)) {
294
+ const array = new thing.constructor(thing.buffer);
295
+ str += `([${array}])`;
296
+ } else {
297
+ str += `(${stringify(thing.buffer)})`;
298
+ }
299
+
300
+ // handle subarrays
301
+ if (thing.byteLength !== thing.buffer.byteLength) {
302
+ const start = thing.byteOffset / thing.BYTES_PER_ELEMENT;
303
+ const end = start + thing.length;
304
+ str += `.subarray(${start},${end})`;
305
+ }
306
+
307
+ return str;
308
+ }
309
+
310
+ case 'DataView': {
311
+ let str = `new DataView`;
312
+
313
+ if (!names.has(thing.buffer)) {
314
+ str += `(new Uint8Array([${new Uint8Array(thing.buffer)}]).buffer`;
315
+ } else {
316
+ str += `(${stringify(thing.buffer)}`;
317
+ }
318
+
319
+ // handle subviews
320
+ if (thing.byteLength !== thing.buffer.byteLength) {
321
+ str += `,${thing.startOffset},${thing.byteLength}`;
322
+ }
323
+
324
+ return str + ')';
325
+ }
326
+
327
+ case 'ArrayBuffer': {
328
+ const ui8 = new Uint8Array(thing);
329
+ return `new Uint8Array([${ui8.toString()}]).buffer`;
330
+ }
331
+
332
+ case 'Temporal.Duration':
333
+ case 'Temporal.Instant':
334
+ case 'Temporal.PlainDate':
335
+ case 'Temporal.PlainTime':
336
+ case 'Temporal.PlainDateTime':
337
+ case 'Temporal.PlainMonthDay':
338
+ case 'Temporal.PlainYearMonth':
339
+ case 'Temporal.ZonedDateTime':
340
+ return `${type}.from(${stringify_string(thing.toString())})`;
341
+
342
+ default:
343
+ const keys = Object.keys(thing);
344
+ const obj = keys.map((key) => `${safe_key(key)}:${stringify(thing[key])}`).join(',');
345
+ const proto = Object.getPrototypeOf(thing);
346
+ if (proto === null) {
347
+ return keys.length > 0 ? `{${obj},__proto__:null}` : `{__proto__:null}`;
348
+ }
349
+
350
+ return `{${obj}}`;
351
+ }
352
+ }
353
+
354
+ const str = stringify(value);
355
+
356
+ if (names.size) {
357
+ /** @type {string[]} */
358
+ const params = [];
359
+
360
+ /** @type {string[]} */
361
+ const statements = [];
362
+
363
+ /** @type {string[]} */
364
+ const values = [];
365
+
366
+ names.forEach((name, thing) => {
367
+ params.push(name);
368
+
369
+ if (custom.has(thing)) {
370
+ values.push(/** @type {string} */ (custom.get(thing)));
371
+ return;
372
+ }
373
+
374
+ if (is_primitive(thing)) {
375
+ values.push(stringify_primitive(thing));
376
+ return;
377
+ }
378
+
379
+ const type = get_type(thing);
380
+
381
+ switch (type) {
382
+ case 'Number':
383
+ case 'String':
384
+ case 'Boolean':
385
+ case 'BigInt':
386
+ values.push(`Object(${stringify(thing.valueOf())})`);
387
+ break;
388
+
389
+ case 'RegExp':
390
+ const { source, flags } = thing;
391
+ const regexp = flags
392
+ ? `new RegExp(${stringify_string(source)},"${flags}")`
393
+ : `new RegExp(${stringify_string(source)})`
394
+ values.push(regexp);
395
+ break;
396
+
397
+ case 'Date':
398
+ values.push(`new Date(${thing.getTime()})`);
399
+ break;
400
+
401
+ case 'URL':
402
+ values.push(`new URL(${stringify_string(thing.toString())})`);
403
+ break;
404
+
405
+ case 'URLSearchParams':
406
+ values.push(`new URLSearchParams(${stringify_string(thing.toString())})`);
407
+ break;
408
+
409
+ case 'Array':
410
+ values.push(`Array(${thing.length})`);
411
+ /** @type {any[]} */ (thing).forEach((v, i) => {
412
+ statements.push(`${name}[${i}]=${stringify(v)}`);
413
+ });
414
+ break;
415
+
416
+ case 'Set':
417
+ values.push(`new Set`);
418
+ statements.push(
419
+ `${name}.${Array.from(thing)
420
+ .map((v) => `add(${stringify(v)})`)
421
+ .join('.')}`
422
+ );
423
+ break;
424
+
425
+ case 'Map':
426
+ values.push(`new Map`);
427
+ statements.push(
428
+ `${name}.${Array.from(thing)
429
+ .map(([k, v]) => `set(${stringify(k)}, ${stringify(v)})`)
430
+ .join('.')}`
431
+ );
432
+ break;
433
+
434
+ case 'Int8Array':
435
+ case 'Uint8Array':
436
+ case 'Uint8ClampedArray':
437
+ case 'Int16Array':
438
+ case 'Uint16Array':
439
+ case 'Float16Array':
440
+ case 'Int32Array':
441
+ case 'Uint32Array':
442
+ case 'Float32Array':
443
+ case 'Float64Array':
444
+ case 'BigInt64Array':
445
+ case 'BigUint64Array': {
446
+ let str = `new ${type}`;
447
+
448
+ if (!names.has(thing.buffer)) {
449
+ const array = new thing.constructor(thing.buffer);
450
+ str += `([${array}])`;
451
+ } else {
452
+ str += `(${stringify(thing.buffer)})`;
453
+ }
454
+
455
+ // handle subarrays
456
+ if (thing.byteLength !== thing.buffer.byteLength) {
457
+ const start = thing.byteOffset / thing.BYTES_PER_ELEMENT;
458
+ const end = start + thing.length;
459
+ str += `.subarray(${start},${end})`;
460
+ }
461
+
462
+ values.push(`{}`);
463
+ statements.push(`${name}=${str}`);
464
+ break;
465
+ }
466
+
467
+ case 'DataView': {
468
+ let str = `new DataView`;
469
+
470
+ if (!names.has(thing.buffer)) {
471
+ str += `(new Uint8Array([${new Uint8Array(thing.buffer)}]).buffer`;
472
+ } else {
473
+ str += `(${stringify(thing.buffer)}`;
474
+ }
475
+
476
+ // handle subviews
477
+ if (thing.byteLength !== thing.buffer.byteLength) {
478
+ str += `,${thing.byteOffset},${thing.byteLength}`;
479
+ }
480
+
481
+ str += ')';
482
+
483
+ values.push(`{}`);
484
+ statements.push(`${name}=${str}`);
485
+ break;
486
+ }
487
+
488
+ case 'ArrayBuffer':
489
+ values.push(`new Uint8Array([${new Uint8Array(thing)}]).buffer`);
490
+ break;
491
+
492
+ default:
493
+ values.push(Object.getPrototypeOf(thing) === null ? 'Object.create(null)' : '{}');
494
+ Object.keys(thing).forEach((key) => {
495
+ statements.push(`${name}${safe_prop(key)}=${stringify(thing[key])}`);
496
+ });
497
+ }
498
+ });
499
+
500
+ statements.push(`return ${str}`);
501
+
502
+ return `(function(${params.join(',')}){${statements.join(';')}}(${values.join(',')}))`;
503
+ } else {
504
+ return str;
505
+ }
506
+ }
507
+
508
+ /** @param {number} num */
509
+ function get_name(num) {
510
+ let name = '';
511
+
512
+ do {
513
+ name = chars[num % chars.length] + name;
514
+ num = ~~(num / chars.length) - 1;
515
+ } while (num >= 0);
516
+
517
+ return reserved.test(name) ? `${name}0` : name;
518
+ }
519
+
520
+ /** @param {string} c */
521
+ function escape_unsafe_char(c) {
522
+ return escaped[c] || c;
523
+ }
524
+
525
+ /** @param {string} str */
526
+ function escape_unsafe_chars(str) {
527
+ return str.replace(unsafe_chars, escape_unsafe_char);
528
+ }
529
+
530
+ /** @param {string} key */
531
+ function safe_key(key) {
532
+ return /^[_$a-zA-Z][_$a-zA-Z0-9]*$/.test(key) ? key : escape_unsafe_chars(JSON.stringify(key));
533
+ }
534
+
535
+ /** @param {string} key */
536
+ function safe_prop(key) {
537
+ return /^[_$a-zA-Z][_$a-zA-Z0-9]*$/.test(key)
538
+ ? `.${key}`
539
+ : `[${escape_unsafe_chars(JSON.stringify(key))}]`;
540
+ }
541
+
542
+ /** @param {any} thing */
543
+ function stringify_primitive(thing) {
544
+ const type = typeof thing;
545
+ if (type === 'string') return stringify_string(thing);
546
+ if (thing === void 0) return 'void 0';
547
+ if (thing === 0 && 1 / thing < 0) return '-0';
548
+ const str = String(thing);
549
+ if (type === 'number') return str.replace(/^(-)?0\./, '$1.');
550
+ if (type === 'bigint') return thing + 'n';
551
+ return str;
552
+ }
@@ -0,0 +1,160 @@
1
+ import { MAX_ARRAY_INDEX, MAX_ARRAY_LEN } from './constants.js';
2
+
3
+ /** @type {Record<string, string>} */
4
+ export const escaped = {
5
+ '<': '\\u003C',
6
+ '\\': '\\\\',
7
+ '\b': '\\b',
8
+ '\f': '\\f',
9
+ '\n': '\\n',
10
+ '\r': '\\r',
11
+ '\t': '\\t',
12
+ '\u2028': '\\u2028',
13
+ '\u2029': '\\u2029'
14
+ };
15
+
16
+ export class DevalueError extends Error {
17
+ /**
18
+ * @param {string} message
19
+ * @param {string[]} keys
20
+ * @param {any} [value] - The value that failed to be serialized
21
+ * @param {any} [root] - The root value being serialized
22
+ */
23
+ constructor(message, keys, value, root) {
24
+ super(message);
25
+ this.name = 'DevalueError';
26
+ this.path = keys.join('');
27
+ this.value = value;
28
+ this.root = root;
29
+ }
30
+ }
31
+
32
+ /** @param {any} thing */
33
+ export function is_primitive(thing) {
34
+ return thing === null || (typeof thing !== 'object' && typeof thing !== 'function');
35
+ }
36
+
37
+ const object_proto_names = /* @__PURE__ */ Object.getOwnPropertyNames(Object.prototype)
38
+ .sort()
39
+ .join('\0');
40
+
41
+ /** @param {any} thing */
42
+ export function is_plain_object(thing) {
43
+ const proto = Object.getPrototypeOf(thing);
44
+
45
+ return (
46
+ proto === Object.prototype ||
47
+ proto === null ||
48
+ Object.getPrototypeOf(proto) === null ||
49
+ Object.getOwnPropertyNames(proto).sort().join('\0') === object_proto_names
50
+ );
51
+ }
52
+
53
+ /** @param {any} thing */
54
+ export function get_type(thing) {
55
+ return Object.prototype.toString.call(thing).slice(8, -1);
56
+ }
57
+
58
+ /** @param {string} char */
59
+ function get_escaped_char(char) {
60
+ switch (char) {
61
+ case '"':
62
+ return '\\"';
63
+ case '<':
64
+ return '\\u003C';
65
+ case '\\':
66
+ return '\\\\';
67
+ case '\n':
68
+ return '\\n';
69
+ case '\r':
70
+ return '\\r';
71
+ case '\t':
72
+ return '\\t';
73
+ case '\b':
74
+ return '\\b';
75
+ case '\f':
76
+ return '\\f';
77
+ case '\u2028':
78
+ return '\\u2028';
79
+ case '\u2029':
80
+ return '\\u2029';
81
+ default:
82
+ return char < ' ' ? `\\u${char.charCodeAt(0).toString(16).padStart(4, '0')}` : '';
83
+ }
84
+ }
85
+
86
+ /** @param {string} str */
87
+ export function stringify_string(str) {
88
+ let result = '';
89
+ let last_pos = 0;
90
+ const len = str.length;
91
+
92
+ for (let i = 0; i < len; i += 1) {
93
+ const char = str[i];
94
+ const replacement = get_escaped_char(char);
95
+ if (replacement) {
96
+ result += str.slice(last_pos, i) + replacement;
97
+ last_pos = i + 1;
98
+ }
99
+ }
100
+
101
+ return `"${last_pos === 0 ? str : result + str.slice(last_pos)}"`;
102
+ }
103
+
104
+ /** @param {Record<string | symbol, any>} object */
105
+ export function enumerable_symbols(object) {
106
+ return Object.getOwnPropertySymbols(object).filter(
107
+ (symbol) => Object.getOwnPropertyDescriptor(object, symbol).enumerable
108
+ );
109
+ }
110
+
111
+ const is_identifier = /^[a-zA-Z_$][a-zA-Z_$0-9]*$/;
112
+
113
+ /** @param {string} key */
114
+ export function stringify_key(key) {
115
+ return is_identifier.test(key) ? '.' + key : '[' + JSON.stringify(key) + ']';
116
+ }
117
+
118
+ /** @param {number} n */
119
+ export function is_valid_array_index(n) {
120
+ if (!Number.isInteger(n)) return false;
121
+ if (n < 0) return false;
122
+ if (n > MAX_ARRAY_INDEX) return false;
123
+ return true;
124
+ }
125
+
126
+ /** @param {number} n */
127
+ export function is_valid_array_len(n) {
128
+ if (!Number.isInteger(n)) return false;
129
+ if (n < 0) return false;
130
+ if (n > MAX_ARRAY_LEN) return false;
131
+ return true;
132
+ }
133
+
134
+ /** @param {string} s */
135
+ function is_valid_array_index_string(s) {
136
+ if (s.length === 0) return false;
137
+ if (s.length > 1 && s.charCodeAt(0) === 48) return false; // leading zero
138
+ for (let i = 0; i < s.length; i++) {
139
+ const c = s.charCodeAt(i);
140
+ if (c < 48 || c > 57) return false;
141
+ }
142
+ // by this point we know it's a string of digits, but it has to be within
143
+ // the range of valid array indices
144
+ return is_valid_array_index(+s);
145
+ }
146
+
147
+ /**
148
+ * Finds the populated indices of an array.
149
+ * @param {unknown[]} array
150
+ */
151
+ export function valid_array_indices(array) {
152
+ const keys = Object.keys(array);
153
+ for (var i = keys.length - 1; i >= 0; i--) {
154
+ if (is_valid_array_index_string(keys[i])) {
155
+ break;
156
+ }
157
+ }
158
+ keys.length = i + 1;
159
+ return keys;
160
+ }