@etus/bhono-app 0.1.1

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 (688) hide show
  1. package/dist/cli.d.ts +13 -0
  2. package/dist/cli.js +46 -0
  3. package/dist/cli.js.map +1 -0
  4. package/dist/cli.test.d.ts +1 -0
  5. package/dist/cli.test.js +26 -0
  6. package/dist/cli.test.js.map +1 -0
  7. package/dist/generator.d.ts +14 -0
  8. package/dist/generator.js +142 -0
  9. package/dist/generator.js.map +1 -0
  10. package/dist/generator.test.d.ts +1 -0
  11. package/dist/generator.test.js +127 -0
  12. package/dist/generator.test.js.map +1 -0
  13. package/dist/index.d.ts +2 -0
  14. package/dist/index.js +97 -0
  15. package/dist/index.js.map +1 -0
  16. package/dist/prompts.d.ts +25 -0
  17. package/dist/prompts.js +83 -0
  18. package/dist/prompts.js.map +1 -0
  19. package/dist/prompts.test.d.ts +1 -0
  20. package/dist/prompts.test.js +24 -0
  21. package/dist/prompts.test.js.map +1 -0
  22. package/dist/providers/cloudflare.d.ts +37 -0
  23. package/dist/providers/cloudflare.js +61 -0
  24. package/dist/providers/cloudflare.js.map +1 -0
  25. package/dist/providers/cloudflare.test.d.ts +1 -0
  26. package/dist/providers/cloudflare.test.js +29 -0
  27. package/dist/providers/cloudflare.test.js.map +1 -0
  28. package/dist/providers/github.d.ts +16 -0
  29. package/dist/providers/github.js +57 -0
  30. package/dist/providers/github.js.map +1 -0
  31. package/dist/providers/github.test.d.ts +1 -0
  32. package/dist/providers/github.test.js +16 -0
  33. package/dist/providers/github.test.js.map +1 -0
  34. package/dist/templates.d.ts +8 -0
  35. package/dist/templates.js +88 -0
  36. package/dist/templates.js.map +1 -0
  37. package/dist/templates.test.d.ts +1 -0
  38. package/dist/templates.test.js +26 -0
  39. package/dist/templates.test.js.map +1 -0
  40. package/package.json +36 -0
  41. package/templates/base/.claude/agents/architect-review.md +160 -0
  42. package/templates/base/.claude/agents/backend-architect.md +308 -0
  43. package/templates/base/.claude/agents/code-reviewer.md +170 -0
  44. package/templates/base/.claude/agents/performance-engineer.md +166 -0
  45. package/templates/base/.claude/agents/test-automator.md +219 -0
  46. package/templates/base/.claude/commands/check-skill-rules.md +53 -0
  47. package/templates/base/.claude/commands/claude-md.md +250 -0
  48. package/templates/base/.claude/commands/code-prompt.md +212 -0
  49. package/templates/base/.claude/commands/explain-code.md +194 -0
  50. package/templates/base/.claude/commands/init-projec.md +89 -0
  51. package/templates/base/.claude/commands/linear/README.md +297 -0
  52. package/templates/base/.claude/commands/linear/create-issue.md +190 -0
  53. package/templates/base/.claude/commands/linear/implement-issue.md +248 -0
  54. package/templates/base/.claude/commands/linear/process-triage.md +399 -0
  55. package/templates/base/.claude/commands/linear/setup.md +180 -0
  56. package/templates/base/.claude/commands/prime.md +9 -0
  57. package/templates/base/.claude/commands/review-gap.md +10 -0
  58. package/templates/base/.claude/commands/setup-aa.md +311 -0
  59. package/templates/base/.claude/commands/ship.md +262 -0
  60. package/templates/base/.claude/commands/tools.md +3 -0
  61. package/templates/base/.claude/docs/claude-progress.txt +107 -0
  62. package/templates/base/.claude/hooks/package-lock.json +556 -0
  63. package/templates/base/.claude/hooks/package.json +16 -0
  64. package/templates/base/.claude/hooks/skill-activation-prompt.sh +7 -0
  65. package/templates/base/.claude/hooks/skill-activation-prompt.ts +142 -0
  66. package/templates/base/.claude/hooks/tsconfig.json +19 -0
  67. package/templates/base/.claude/scripts/check-updates.sh +85 -0
  68. package/templates/base/.claude/scripts/install_pkgs.sh +66 -0
  69. package/templates/base/.claude/scripts/setup-project.sh +177 -0
  70. package/templates/base/.claude/scripts/validate-skill-rules.sh +94 -0
  71. package/templates/base/.claude/settings.json +113 -0
  72. package/templates/base/.claude/settings.local.json +11 -0
  73. package/templates/base/.claude/skills/architecture-analyzer/SKILL.md +531 -0
  74. package/templates/base/.claude/skills/architecture-analyzer/assets/report-template.md +215 -0
  75. package/templates/base/.claude/skills/architecture-analyzer/references/c4-templates.md +234 -0
  76. package/templates/base/.claude/skills/architecture-analyzer/references/confidence-levels.md +203 -0
  77. package/templates/base/.claude/skills/architecture-analyzer/scripts/analyze_structure.py +266 -0
  78. package/templates/base/.claude/skills/architecture-analyzer/scripts/analyze_tech_debt.py +776 -0
  79. package/templates/base/.claude/skills/architecture-analyzer/scripts/extract_apis.py +338 -0
  80. package/templates/base/.claude/skills/architecture-analyzer/scripts/generate_c4.py +283 -0
  81. package/templates/base/.claude/skills/architecture-analyzer/scripts/generate_erd.py +935 -0
  82. package/templates/base/.claude/skills/architecture-analyzer/scripts/map_dependencies.py +555 -0
  83. package/templates/base/.claude/skills/dev-browser/SKILL.md +318 -0
  84. package/templates/base/.claude/skills/dev-browser/bun.lock +443 -0
  85. package/templates/base/.claude/skills/dev-browser/package-lock.json +2927 -0
  86. package/templates/base/.claude/skills/dev-browser/package.json +27 -0
  87. package/templates/base/.claude/skills/dev-browser/scripts/start-server.ts +117 -0
  88. package/templates/base/.claude/skills/dev-browser/server.sh +24 -0
  89. package/templates/base/.claude/skills/dev-browser/src/client.ts +403 -0
  90. package/templates/base/.claude/skills/dev-browser/src/index.ts +281 -0
  91. package/templates/base/.claude/skills/dev-browser/src/snapshot/__tests__/snapshot.test.ts +223 -0
  92. package/templates/base/.claude/skills/dev-browser/src/snapshot/browser-script.ts +877 -0
  93. package/templates/base/.claude/skills/dev-browser/src/snapshot/index.ts +14 -0
  94. package/templates/base/.claude/skills/dev-browser/src/snapshot/inject.ts +13 -0
  95. package/templates/base/.claude/skills/dev-browser/src/types.ts +27 -0
  96. package/templates/base/.claude/skills/dev-browser/tsconfig.json +36 -0
  97. package/templates/base/.claude/skills/dev-browser/vitest.config.ts +12 -0
  98. package/templates/base/.claude/skills/linear/SKILL.md +440 -0
  99. package/templates/base/.claude/skills/linear/examples.md +262 -0
  100. package/templates/base/.claude/skills/linear/lib/client.ts +51 -0
  101. package/templates/base/.claude/skills/linear/lib/config.ts +106 -0
  102. package/templates/base/.claude/skills/linear/lib/output.ts +34 -0
  103. package/templates/base/.claude/skills/linear/package-lock.json +698 -0
  104. package/templates/base/.claude/skills/linear/package.json +27 -0
  105. package/templates/base/.claude/skills/linear/reference.md +263 -0
  106. package/templates/base/.claude/skills/linear/scripts/comments/create.ts +47 -0
  107. package/templates/base/.claude/skills/linear/scripts/comments/list.ts +47 -0
  108. package/templates/base/.claude/skills/linear/scripts/issues/archive.ts +30 -0
  109. package/templates/base/.claude/skills/linear/scripts/issues/create.ts +279 -0
  110. package/templates/base/.claude/skills/linear/scripts/issues/get.ts +68 -0
  111. package/templates/base/.claude/skills/linear/scripts/issues/list.ts +67 -0
  112. package/templates/base/.claude/skills/linear/scripts/issues/update.ts +281 -0
  113. package/templates/base/.claude/skills/linear/scripts/labels/add-to-issue.ts +63 -0
  114. package/templates/base/.claude/skills/linear/scripts/labels/create.ts +45 -0
  115. package/templates/base/.claude/skills/linear/scripts/labels/list.ts +30 -0
  116. package/templates/base/.claude/skills/linear/scripts/list-teams.ts +52 -0
  117. package/templates/base/.claude/skills/linear/scripts/setup/setup-credentials.ts +96 -0
  118. package/templates/base/.claude/skills/linear/scripts/status/list.ts +31 -0
  119. package/templates/base/.claude/skills/linear/scripts/status/set-by-name.ts +78 -0
  120. package/templates/base/.claude/skills/linear/scripts/status/update.ts +44 -0
  121. package/templates/base/.claude/skills/linear/scripts/users/list.ts +59 -0
  122. package/templates/base/.claude/skills/linear/scripts/users/me.ts +20 -0
  123. package/templates/base/.claude/skills/linear/templates/README.md +203 -0
  124. package/templates/base/.claude/skills/linear/templates/api-reference.md +258 -0
  125. package/templates/base/.claude/skills/linear/templates/bug-report.md +99 -0
  126. package/templates/base/.claude/skills/linear/templates/feature-request.md +118 -0
  127. package/templates/base/.claude/skills/linear/templates/security-issue.md +162 -0
  128. package/templates/base/.claude/skills/linear/templates/sprint-task.md +175 -0
  129. package/templates/base/.claude/skills/linear/templates/tech-debt.md +137 -0
  130. package/templates/base/.claude/skills/linear/tsconfig.json +17 -0
  131. package/templates/base/.claude/skills/linear/workflows/issue-lifecycle.md +317 -0
  132. package/templates/base/.claude/skills/playwright-e2e-testing/SKILL.md +113 -0
  133. package/templates/base/.claude/skills/playwright-e2e-testing/assets/global-setup.template.js +97 -0
  134. package/templates/base/.claude/skills/playwright-e2e-testing/assets/playwright.config.template.js +171 -0
  135. package/templates/base/.claude/skills/playwright-e2e-testing/assets/test-template.spec.js +163 -0
  136. package/templates/base/.claude/skills/playwright-e2e-testing/examples/README.md +26 -0
  137. package/templates/base/.claude/skills/playwright-e2e-testing/examples/ads.email-deeplink.spec.ts +12 -0
  138. package/templates/base/.claude/skills/playwright-e2e-testing/examples/mobile.realism.spec.ts +16 -0
  139. package/templates/base/.claude/skills/playwright-e2e-testing/examples/smoke.home.spec.ts +6 -0
  140. package/templates/base/.claude/skills/playwright-e2e-testing/references/architecture.md +578 -0
  141. package/templates/base/.claude/skills/playwright-e2e-testing/references/best-practices.md +260 -0
  142. package/templates/base/.claude/skills/playwright-e2e-testing/references/ci-reporting.md +86 -0
  143. package/templates/base/.claude/skills/playwright-e2e-testing/references/debugging.md +629 -0
  144. package/templates/base/.claude/skills/playwright-e2e-testing/references/mobile-realism.md +50 -0
  145. package/templates/base/.claude/skills/playwright-e2e-testing/references/optimization.md +488 -0
  146. package/templates/base/.claude/skills/playwright-e2e-testing/references/patterns.md +513 -0
  147. package/templates/base/.claude/skills/playwright-e2e-testing/references/resources.md +44 -0
  148. package/templates/base/.claude/skills/playwright-e2e-testing/references/visual-a11y.md +66 -0
  149. package/templates/base/.claude/skills/playwright-e2e-testing/scripts/auth-setup.js +202 -0
  150. package/templates/base/.claude/skills/playwright-e2e-testing/scripts/performance-analyzer.js +240 -0
  151. package/templates/base/.claude/skills/playwright-e2e-testing/scripts/trace-url.js +132 -0
  152. package/templates/base/.claude/skills/playwright-e2e-testing/templates/ci/github-actions.playwright.yml +78 -0
  153. package/templates/base/.claude/skills/playwright-e2e-testing/templates/fixtures.ts +44 -0
  154. package/templates/base/.claude/skills/playwright-e2e-testing/templates/global-setup.template.js +97 -0
  155. package/templates/base/.claude/skills/playwright-e2e-testing/templates/global.setup.ts +35 -0
  156. package/templates/base/.claude/skills/playwright-e2e-testing/templates/helpers/ad-gpt-observer.ts +80 -0
  157. package/templates/base/.claude/skills/playwright-e2e-testing/templates/helpers/chromium-mobile-profile.ts +93 -0
  158. package/templates/base/.claude/skills/playwright-e2e-testing/templates/playwright.config.template.js +171 -0
  159. package/templates/base/.claude/skills/playwright-e2e-testing/templates/playwright.config.ts +126 -0
  160. package/templates/base/.claude/skills/playwright-e2e-testing/templates/test-template.spec.js +163 -0
  161. package/templates/base/.claude/skills/playwright-e2e-testing/templates/tests/email-deeplink.ads.spec.ts +44 -0
  162. package/templates/base/.claude/skills/skill-rules.json +184 -0
  163. package/templates/base/.claude/skills/wrangler/SKILL.md +209 -0
  164. package/templates/base/.claude/skills/wrangler/resources/api.md +494 -0
  165. package/templates/base/.claude/skills/wrangler/resources/bundling.md +83 -0
  166. package/templates/base/.claude/skills/wrangler/resources/commands/cert.md +64 -0
  167. package/templates/base/.claude/skills/wrangler/resources/commands/check.md +66 -0
  168. package/templates/base/.claude/skills/wrangler/resources/commands/containers.md +157 -0
  169. package/templates/base/.claude/skills/wrangler/resources/commands/d1.md +843 -0
  170. package/templates/base/.claude/skills/wrangler/resources/commands/delete.md +27 -0
  171. package/templates/base/.claude/skills/wrangler/resources/commands/deploy.md +139 -0
  172. package/templates/base/.claude/skills/wrangler/resources/commands/deployments.md +56 -0
  173. package/templates/base/.claude/skills/wrangler/resources/commands/dev.md +157 -0
  174. package/templates/base/.claude/skills/wrangler/resources/commands/dispatch-namespace.md +69 -0
  175. package/templates/base/.claude/skills/wrangler/resources/commands/docs.md +61 -0
  176. package/templates/base/.claude/skills/wrangler/resources/commands/how-to-run.md +62 -0
  177. package/templates/base/.claude/skills/wrangler/resources/commands/hyperdrive.md +425 -0
  178. package/templates/base/.claude/skills/wrangler/resources/commands/init.md +31 -0
  179. package/templates/base/.claude/skills/wrangler/resources/commands/kv-bulk.md +265 -0
  180. package/templates/base/.claude/skills/wrangler/resources/commands/kv-key.md +353 -0
  181. package/templates/base/.claude/skills/wrangler/resources/commands/kv-namespace.md +265 -0
  182. package/templates/base/.claude/skills/wrangler/resources/commands/login.md +23 -0
  183. package/templates/base/.claude/skills/wrangler/resources/commands/logout.md +19 -0
  184. package/templates/base/.claude/skills/wrangler/resources/commands/mtls-certificate.md +69 -0
  185. package/templates/base/.claude/skills/wrangler/resources/commands/pages.md +175 -0
  186. package/templates/base/.claude/skills/wrangler/resources/commands/pipelines.md +76 -0
  187. package/templates/base/.claude/skills/wrangler/resources/commands/queues.md +132 -0
  188. package/templates/base/.claude/skills/wrangler/resources/commands/r2-bucket.md +342 -0
  189. package/templates/base/.claude/skills/wrangler/resources/commands/r2-object.md +267 -0
  190. package/templates/base/.claude/skills/wrangler/resources/commands/r2-sql.md +65 -0
  191. package/templates/base/.claude/skills/wrangler/resources/commands/rollback.md +40 -0
  192. package/templates/base/.claude/skills/wrangler/resources/commands/secret.md +308 -0
  193. package/templates/base/.claude/skills/wrangler/resources/commands/secrets-store-secret.md +100 -0
  194. package/templates/base/.claude/skills/wrangler/resources/commands/secrets-store-store.md +60 -0
  195. package/templates/base/.claude/skills/wrangler/resources/commands/setup.md +67 -0
  196. package/templates/base/.claude/skills/wrangler/resources/commands/tail.md +37 -0
  197. package/templates/base/.claude/skills/wrangler/resources/commands/telemetry.md +64 -0
  198. package/templates/base/.claude/skills/wrangler/resources/commands/triggers.md +39 -0
  199. package/templates/base/.claude/skills/wrangler/resources/commands/types.md +73 -0
  200. package/templates/base/.claude/skills/wrangler/resources/commands/vectorize.md +941 -0
  201. package/templates/base/.claude/skills/wrangler/resources/commands/versions.md +95 -0
  202. package/templates/base/.claude/skills/wrangler/resources/commands/whoami.md +49 -0
  203. package/templates/base/.claude/skills/wrangler/resources/commands/workflows.md +117 -0
  204. package/templates/base/.claude/skills/wrangler/resources/commands.md +138 -0
  205. package/templates/base/.claude/skills/wrangler/resources/configuration.md +2176 -0
  206. package/templates/base/.claude/skills/wrangler/resources/custom-builds.md +55 -0
  207. package/templates/base/.claude/skills/wrangler/resources/deprecations.md +279 -0
  208. package/templates/base/.claude/skills/wrangler/resources/enviroments.md +416 -0
  209. package/templates/base/.claude/skills/wrangler/resources/extract_sections.py +119 -0
  210. package/templates/base/.claude/skills/wrangler/resources/process_content.py +94 -0
  211. package/templates/base/.claude/skills/wrangler/resources/system-enviroments-variables.md +120 -0
  212. package/templates/base/.dev.vars.example +15 -0
  213. package/templates/base/.env.example +29 -0
  214. package/templates/base/.github/workflows/test.yml +127 -0
  215. package/templates/base/.nycrc.json +16 -0
  216. package/templates/base/CLAUDE.md +218 -0
  217. package/templates/base/README.md +670 -0
  218. package/templates/base/auth-setup-error.png +0 -0
  219. package/templates/base/config/drizzle.config.ts +10 -0
  220. package/templates/base/config/eslint.config.js +364 -0
  221. package/templates/base/config/wrangler.json +76 -0
  222. package/templates/base/docs/app_spec.txt +879 -0
  223. package/templates/base/docs/app_spec_template.md +681 -0
  224. package/templates/base/docs/architecture/README.md +8 -0
  225. package/templates/base/docs/architecture/data-requirements.md +109 -0
  226. package/templates/base/docs/architecture/erd.md +91 -0
  227. package/templates/base/docs/features/feature_list.json +3128 -0
  228. package/templates/base/docs/hono-boilerplate-plan.md +1774 -0
  229. package/templates/base/docs/test-coverage-gap-analysis.md +242 -0
  230. package/templates/base/docs/testing.md +188 -0
  231. package/templates/base/index.html +16 -0
  232. package/templates/base/package.json +115 -0
  233. package/templates/base/playwright.config.ts +158 -0
  234. package/templates/base/pnpm-lock.yaml +8175 -0
  235. package/templates/base/scripts/capture-prod-session.ts +250 -0
  236. package/templates/base/scripts/generate-openapi.ts +23 -0
  237. package/templates/base/scripts/init.sh +121 -0
  238. package/templates/base/src/client/__tests__/button.test.tsx +30 -0
  239. package/templates/base/src/client/__tests__/routes/__screenshots__/dashboard.test.tsx/Dashboard-Page-when-authenticated-should-display-dashboard-stats-cards-1.png +0 -0
  240. package/templates/base/src/client/__tests__/routes/__screenshots__/dashboard.test.tsx/Dashboard-Page-when-authenticated-should-display-quick-action-cards-1.png +0 -0
  241. package/templates/base/src/client/__tests__/routes/__screenshots__/dashboard.test.tsx/Dashboard-Page-when-authenticated-should-display-recent-activity-section-1.png +0 -0
  242. package/templates/base/src/client/__tests__/routes/__screenshots__/dashboard.test.tsx/Dashboard-Page-when-authenticated-should-display-user-first-name-in-welcome-message-1.png +0 -0
  243. package/templates/base/src/client/__tests__/routes/__screenshots__/dashboard.test.tsx/Dashboard-Page-when-authenticated-should-display-user-information-in-sidebar-1.png +0 -0
  244. package/templates/base/src/client/__tests__/routes/__screenshots__/dashboard.test.tsx/Dashboard-Page-when-authenticated-should-render-dashboard-when-authenticated-1.png +0 -0
  245. package/templates/base/src/client/__tests__/routes/__screenshots__/dashboard.test.tsx/Dashboard-Page-when-authenticated-should-show-navigation-sidebar-1.png +0 -0
  246. package/templates/base/src/client/__tests__/routes/__screenshots__/dashboard.test.tsx/Dashboard-Page-when-unauthenticated-should-redirect-to-login-when-not-authenticated-1.png +0 -0
  247. package/templates/base/src/client/__tests__/routes/__screenshots__/login.test.tsx/Login-Page-should-display-Google-OAuth-login-button-1.png +0 -0
  248. package/templates/base/src/client/__tests__/routes/__screenshots__/login.test.tsx/Login-Page-should-have-a-link-back-to-home-page-1.png +0 -0
  249. package/templates/base/src/client/__tests__/routes/__screenshots__/login.test.tsx/Login-Page-should-render-login-content-without-waiting-for-authentication-1.png +0 -0
  250. package/templates/base/src/client/__tests__/routes/__screenshots__/login.test.tsx/Login-Page-should-render-login-page-at--login-route-1.png +0 -0
  251. package/templates/base/src/client/__tests__/routes/__screenshots__/login.test.tsx/Login-Page-should-show-Terms-of-Service-and-Privacy-Policy-links-1.png +0 -0
  252. package/templates/base/src/client/__tests__/routes/__screenshots__/login.test.tsx/Login-Page-should-trigger-OAuth-flow-when-clicking-login-button-1.png +0 -0
  253. package/templates/base/src/client/__tests__/routes/__screenshots__/navigation.test.tsx/Navigation-404-handling-should-display-404-text-on-not-found-page-1.png +0 -0
  254. package/templates/base/src/client/__tests__/routes/__screenshots__/navigation.test.tsx/Navigation-404-handling-should-have-navigation-options-on-404-page-1.png +0 -0
  255. package/templates/base/src/client/__tests__/routes/__screenshots__/navigation.test.tsx/Navigation-404-handling-should-render-404-page-for-unknown-routes-1.png +0 -0
  256. package/templates/base/src/client/__tests__/routes/__screenshots__/navigation.test.tsx/Navigation-authenticated-navigation-should-navigate-from-dashboard-to-account-page-1.png +0 -0
  257. package/templates/base/src/client/__tests__/routes/__screenshots__/navigation.test.tsx/Navigation-authenticated-navigation-should-navigate-from-dashboard-to-integrations-page-1.png +0 -0
  258. package/templates/base/src/client/__tests__/routes/__screenshots__/navigation.test.tsx/Navigation-authenticated-navigation-should-navigate-from-dashboard-to-settings-page-1.png +0 -0
  259. package/templates/base/src/client/__tests__/routes/__screenshots__/navigation.test.tsx/Navigation-authenticated-navigation-should-navigate-from-dashboard-to-team-page-1.png +0 -0
  260. package/templates/base/src/client/__tests__/routes/__screenshots__/navigation.test.tsx/Navigation-home-page-navigation-should-display-navigation-links-on-home-page-1.png +0 -0
  261. package/templates/base/src/client/__tests__/routes/__screenshots__/navigation.test.tsx/Navigation-home-page-navigation-should-have-correct-link-destinations-on-home-page-1.png +0 -0
  262. package/templates/base/src/client/__tests__/routes/__screenshots__/navigation.test.tsx/Navigation-unauthenticated-navigation-should-allow-access-to-home-page-without-authentication-1.png +0 -0
  263. package/templates/base/src/client/__tests__/routes/__screenshots__/navigation.test.tsx/Navigation-unauthenticated-navigation-should-allow-access-to-login-page-without-authentication-1.png +0 -0
  264. package/templates/base/src/client/__tests__/routes/__screenshots__/navigation.test.tsx/Navigation-unauthenticated-navigation-should-redirect-unauthenticated-users-from-dashboard-to-login-1.png +0 -0
  265. package/templates/base/src/client/__tests__/routes/__screenshots__/navigation.test.tsx/Navigation-unauthenticated-navigation-should-redirect-unauthenticated-users-from-settings-to-login-1.png +0 -0
  266. package/templates/base/src/client/__tests__/routes/__screenshots__/navigation.test.tsx/Navigation-unauthenticated-navigation-should-redirect-unauthenticated-users-from-team-to-login-1.png +0 -0
  267. package/templates/base/src/client/__tests__/routes/authenticated-layout.test.tsx +252 -0
  268. package/templates/base/src/client/__tests__/routes/dashboard.test.tsx +136 -0
  269. package/templates/base/src/client/__tests__/routes/error-components.test.tsx +186 -0
  270. package/templates/base/src/client/__tests__/routes/login.test.tsx +112 -0
  271. package/templates/base/src/client/__tests__/routes/navigation.test.tsx +272 -0
  272. package/templates/base/src/client/__tests__/routes/root-layout.test.tsx +65 -0
  273. package/templates/base/src/client/__tests__/setup-browser.ts +15 -0
  274. package/templates/base/src/client/__tests__/setup.ts +32 -0
  275. package/templates/base/src/client/__tests__/test-utils.tsx +135 -0
  276. package/templates/base/src/client/api/.gitkeep +0 -0
  277. package/templates/base/src/client/components/__tests__/__screenshots__/sidebar.test.tsx/Sidebar-can-be-collapsed-by-default-1.png +0 -0
  278. package/templates/base/src/client/components/__tests__/__screenshots__/sidebar.test.tsx/Sidebar-expands-when-collapsed-and-expand-button-is-clicked-1.png +0 -0
  279. package/templates/base/src/client/components/__tests__/__screenshots__/sidebar.test.tsx/Sidebar-handles-logout-button-click-1.png +0 -0
  280. package/templates/base/src/client/components/__tests__/__screenshots__/sidebar.test.tsx/Sidebar-handles-navigation-clicks-1.png +0 -0
  281. package/templates/base/src/client/components/__tests__/__screenshots__/sidebar.test.tsx/Sidebar-hides-navigation-labels-when-collapsed-1.png +0 -0
  282. package/templates/base/src/client/components/__tests__/__screenshots__/sidebar.test.tsx/Sidebar-highlights-active-route-1.png +0 -0
  283. package/templates/base/src/client/components/__tests__/__screenshots__/sidebar.test.tsx/Sidebar-renders-sidebar-navigation-items-1.png +0 -0
  284. package/templates/base/src/client/components/__tests__/__screenshots__/sidebar.test.tsx/Sidebar-shows-keyboard-shortcut-hint-when-expanded-1.png +0 -0
  285. package/templates/base/src/client/components/__tests__/__screenshots__/sidebar.test.tsx/Sidebar-shows-user-info-when-authenticated-1.png +0 -0
  286. package/templates/base/src/client/components/__tests__/__screenshots__/sidebar.test.tsx/Sidebar-shows-user-initials-in-avatar-fallback-1.png +0 -0
  287. package/templates/base/src/client/components/__tests__/error-boundary.test.tsx +97 -0
  288. package/templates/base/src/client/components/__tests__/sidebar.test.tsx +281 -0
  289. package/templates/base/src/client/components/error-boundary.tsx +68 -0
  290. package/templates/base/src/client/components/icons.tsx +106 -0
  291. package/templates/base/src/client/components/layout/.gitkeep +0 -0
  292. package/templates/base/src/client/components/sidebar.tsx +267 -0
  293. package/templates/base/src/client/components/ui/.gitkeep +0 -0
  294. package/templates/base/src/client/components/ui/__tests__/avatar.test.tsx +308 -0
  295. package/templates/base/src/client/components/ui/__tests__/card.test.tsx +214 -0
  296. package/templates/base/src/client/components/ui/__tests__/dialog.test.tsx +297 -0
  297. package/templates/base/src/client/components/ui/__tests__/error-fallback.test.tsx +145 -0
  298. package/templates/base/src/client/components/ui/__tests__/input.test.tsx +98 -0
  299. package/templates/base/src/client/components/ui/__tests__/loading-skeleton.test.tsx +139 -0
  300. package/templates/base/src/client/components/ui/__tests__/skeleton.test.tsx +44 -0
  301. package/templates/base/src/client/components/ui/__tests__/sonner.test.tsx +28 -0
  302. package/templates/base/src/client/components/ui/__tests__/tabs.test.tsx +233 -0
  303. package/templates/base/src/client/components/ui/avatar.tsx +101 -0
  304. package/templates/base/src/client/components/ui/badge.tsx +46 -0
  305. package/templates/base/src/client/components/ui/button.tsx +72 -0
  306. package/templates/base/src/client/components/ui/card.tsx +86 -0
  307. package/templates/base/src/client/components/ui/dialog.tsx +140 -0
  308. package/templates/base/src/client/components/ui/error-fallback.tsx +179 -0
  309. package/templates/base/src/client/components/ui/form.tsx +172 -0
  310. package/templates/base/src/client/components/ui/input.tsx +24 -0
  311. package/templates/base/src/client/components/ui/label.tsx +22 -0
  312. package/templates/base/src/client/components/ui/loading-skeleton.tsx +154 -0
  313. package/templates/base/src/client/components/ui/separator.tsx +33 -0
  314. package/templates/base/src/client/components/ui/skeleton.tsx +16 -0
  315. package/templates/base/src/client/components/ui/sonner.tsx +29 -0
  316. package/templates/base/src/client/components/ui/tabs.tsx +121 -0
  317. package/templates/base/src/client/hooks/.gitkeep +0 -0
  318. package/templates/base/src/client/hooks/__tests__/use-auth.test.tsx +306 -0
  319. package/templates/base/src/client/hooks/__tests__/use-theme.test.tsx +172 -0
  320. package/templates/base/src/client/hooks/use-auth.ts +53 -0
  321. package/templates/base/src/client/hooks/use-theme.tsx +78 -0
  322. package/templates/base/src/client/index.css +881 -0
  323. package/templates/base/src/client/lib/query-client.ts +11 -0
  324. package/templates/base/src/client/lib/utils.ts +7 -0
  325. package/templates/base/src/client/main.tsx +26 -0
  326. package/templates/base/src/client/routeTree.gen.ts +258 -0
  327. package/templates/base/src/client/router.ts +15 -0
  328. package/templates/base/src/client/routes/$.tsx +77 -0
  329. package/templates/base/src/client/routes/.gitkeep +0 -0
  330. package/templates/base/src/client/routes/__root.tsx +34 -0
  331. package/templates/base/src/client/routes/__tests__/__screenshots__/invite.test.tsx/Invite-Token-Page-pending-invitation-state-should-display-accept-invitation-button-1.png +0 -0
  332. package/templates/base/src/client/routes/__tests__/__screenshots__/invite.test.tsx/Invite-Token-Page-pending-invitation-state-should-display-decline-button-linking-to-homepage-1.png +0 -0
  333. package/templates/base/src/client/routes/__tests__/__screenshots__/invite.test.tsx/Invite-Token-Page-pending-invitation-state-should-display-invitation-details--email--workspace--role--1.png +0 -0
  334. package/templates/base/src/client/routes/__tests__/__screenshots__/invite.test.tsx/Invite-Token-Page-pending-invitation-state-should-have-a-logo-link-to-homepage-1.png +0 -0
  335. package/templates/base/src/client/routes/__tests__/__screenshots__/invite.test.tsx/Invite-Token-Page-pending-invitation-state-should-render-invitation-page-with-inviter-name-and-workspace-1.png +0 -0
  336. package/templates/base/src/client/routes/__tests__/__screenshots__/invite.test.tsx/Invite-Token-Page-pending-invitation-state-should-show-terms-of-service-and-privacy-policy-links-1.png +0 -0
  337. package/templates/base/src/client/routes/__tests__/invite.test.tsx +138 -0
  338. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/account.test.tsx/Account-Page-should-render-Active-Sessions-section-with-session-cards-1.png +0 -0
  339. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/account.test.tsx/Account-Page-should-render-page-with-correct-title--Account--1.png +0 -0
  340. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/account.test.tsx/Account-Page-should-show-API-Access-section-1.png +0 -0
  341. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/account.test.tsx/Account-Page-should-show-Connected-Accounts-section-with-Google-connected-1.png +0 -0
  342. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/account.test.tsx/Account-Page-should-show-Danger-Zone-section-with-delete-button-1.png +0 -0
  343. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/account.test.tsx/Account-Page-should-show-Security-section-with-Two-Factor-Authentication-1.png +0 -0
  344. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/integrations.test.tsx/Integrations-Page-API-documentation-section-should-display-API-documentation-link-section-1.png +0 -0
  345. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/integrations.test.tsx/Integrations-Page-Create-Webhook-Dialog-should-have-Add-Webhook-trigger-button-1.png +0 -0
  346. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/integrations.test.tsx/Integrations-Page-category-filters-should-display-all-category-buttons-1.png +0 -0
  347. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/integrations.test.tsx/Integrations-Page-integration-cards-should-display-all-integration-cards-with-names-1.png +0 -0
  348. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/integrations.test.tsx/Integrations-Page-integration-cards-should-display-category-badges-on-cards-1.png +0 -0
  349. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/integrations.test.tsx/Integrations-Page-integration-cards-should-show-Configure-button-for-connected-integrations-1.png +0 -0
  350. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/integrations.test.tsx/Integrations-Page-integration-cards-should-show-Connect-button-for-not-connected-integrations-1.png +0 -0
  351. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/integrations.test.tsx/Integrations-Page-integration-cards-should-show-Connected-badge-for-connected-integrations-1.png +0 -0
  352. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/integrations.test.tsx/Integrations-Page-page-rendering-should-display-Available-Integrations-section-1.png +0 -0
  353. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/integrations.test.tsx/Integrations-Page-page-rendering-should-display-Webhooks-section-1.png +0 -0
  354. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/integrations.test.tsx/Integrations-Page-page-rendering-should-display-connected-count-1.png +0 -0
  355. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/integrations.test.tsx/Integrations-Page-page-rendering-should-display-page-description-1.png +0 -0
  356. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/integrations.test.tsx/Integrations-Page-page-rendering-should-display-search-input-1.png +0 -0
  357. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/integrations.test.tsx/Integrations-Page-page-rendering-should-render-with-correct-title--Integrations--1.png +0 -0
  358. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/integrations.test.tsx/Integrations-Page-search-functionality-should-filter-integrations-based-on-search-query-1.png +0 -0
  359. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/integrations.test.tsx/Integrations-Page-search-functionality-should-search-by-description-1.png +0 -0
  360. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/integrations.test.tsx/Integrations-Page-search-functionality-should-show-no-results-message-when-search-has-no-matches-1.png +0 -0
  361. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/integrations.test.tsx/Integrations-Page-webhooks-section-should-display-existing-webhook-1.png +0 -0
  362. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/integrations.test.tsx/Integrations-Page-webhooks-section-should-display-webhook-events-1.png +0 -0
  363. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/integrations.test.tsx/Integrations-Page-webhooks-section-should-display-webhook-last-delivery-info-1.png +0 -0
  364. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/integrations.test.tsx/Integrations-Page-webhooks-section-should-display-webhook-success-status-1.png +0 -0
  365. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/integrations.test.tsx/Integrations-Page-webhooks-section-should-have-Add-Webhook-button-1.png +0 -0
  366. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/settings.test.tsx/Settings-Page-Account-tab-should-display-connected-accounts-section-with-Google-provider-1.png +0 -0
  367. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/settings.test.tsx/Settings-Page-Account-tab-should-display-sessions-and-danger-zone-sections-1.png +0 -0
  368. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/settings.test.tsx/Settings-Page-Notifications-tab-should-display-all-notification-toggle-options-1.png +0 -0
  369. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/settings.test.tsx/Settings-Page-Notifications-tab-should-display-email-notifications-section-1.png +0 -0
  370. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/settings.test.tsx/Settings-Page-Notifications-tab-should-display-toggle-switches-for-notification-options-1.png +0 -0
  371. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/settings.test.tsx/Settings-Page-Notifications-tab-should-have-toggles-checked-by-default-1.png +0 -0
  372. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/settings.test.tsx/Settings-Page-Profile-tab-should-display--Save-Changes--button-1.png +0 -0
  373. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/settings.test.tsx/Settings-Page-Profile-tab-should-display-personal-information-form-1.png +0 -0
  374. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/settings.test.tsx/Settings-Page-Profile-tab-should-display-profile-picture-section-1.png +0 -0
  375. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/settings.test.tsx/Settings-Page-Profile-tab-should-display-user-email-in-disabled-email-input-1.png +0 -0
  376. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/settings.test.tsx/Settings-Page-Profile-tab-should-display-user-initials-in-avatar-1.png +0 -0
  377. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/settings.test.tsx/Settings-Page-Profile-tab-should-display-user-name-in-the-name-input-1.png +0 -0
  378. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/settings.test.tsx/Settings-Page-page-rendering-should-display-all-three-tabs-1.png +0 -0
  379. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/settings.test.tsx/Settings-Page-page-rendering-should-display-page-description-1.png +0 -0
  380. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/settings.test.tsx/Settings-Page-page-rendering-should-render-with-correct-title--Settings--1.png +0 -0
  381. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/settings.test.tsx/Settings-Page-tab-navigation-should-show-Profile-tab-as-default-active-tab-1.png +0 -0
  382. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/settings.test.tsx/Settings-Page-tab-navigation-should-switch-to-Account-tab-when-clicked-1.png +0 -0
  383. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/settings.test.tsx/Settings-Page-tab-navigation-should-switch-to-Notifications-tab-when-clicked-1.png +0 -0
  384. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/team.test.tsx/Team-Page-should-display-Active-Members-section-with-member-count-1.png +0 -0
  385. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/team.test.tsx/Team-Page-should-display-Pending-Invitations-section-with-invitation-details-1.png +0 -0
  386. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/team.test.tsx/Team-Page-should-have-invite-member-button-that-can-be-clicked-1.png +0 -0
  387. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/team.test.tsx/Team-Page-should-render-page-with-correct-title-and-description-1.png +0 -0
  388. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/team.test.tsx/Team-Page-should-render-search-input-that-filters-team-members-1.png +0 -0
  389. package/templates/base/src/client/routes/_authenticated/__tests__/__screenshots__/team.test.tsx/Team-Page-should-show-current-user-with---you---indicator-and-role-badge-1.png +0 -0
  390. package/templates/base/src/client/routes/_authenticated/__tests__/account.test.tsx +324 -0
  391. package/templates/base/src/client/routes/_authenticated/__tests__/integrations.test.tsx +520 -0
  392. package/templates/base/src/client/routes/_authenticated/__tests__/settings.test.tsx +414 -0
  393. package/templates/base/src/client/routes/_authenticated/__tests__/team.test.tsx +374 -0
  394. package/templates/base/src/client/routes/_authenticated/account.tsx +416 -0
  395. package/templates/base/src/client/routes/_authenticated/dashboard.tsx +151 -0
  396. package/templates/base/src/client/routes/_authenticated/integrations.tsx +553 -0
  397. package/templates/base/src/client/routes/_authenticated/settings.tsx +310 -0
  398. package/templates/base/src/client/routes/_authenticated/team.tsx +395 -0
  399. package/templates/base/src/client/routes/_authenticated.tsx +69 -0
  400. package/templates/base/src/client/routes/index.tsx +155 -0
  401. package/templates/base/src/client/routes/invite.$token.tsx +191 -0
  402. package/templates/base/src/client/routes/login.tsx +92 -0
  403. package/templates/base/src/server/__tests__/fixtures.ts +461 -0
  404. package/templates/base/src/server/__tests__/mocks/__tests__/db.test.ts +239 -0
  405. package/templates/base/src/server/__tests__/mocks/__tests__/kv.test.ts +293 -0
  406. package/templates/base/src/server/__tests__/mocks/__tests__/r2.test.ts +363 -0
  407. package/templates/base/src/server/__tests__/mocks/db.ts +186 -0
  408. package/templates/base/src/server/__tests__/mocks/index.ts +33 -0
  409. package/templates/base/src/server/__tests__/mocks/kv.ts +286 -0
  410. package/templates/base/src/server/__tests__/mocks/r2.ts +397 -0
  411. package/templates/base/src/server/__tests__/setup.ts +281 -0
  412. package/templates/base/src/server/auth/__tests__/guards.test.ts +162 -0
  413. package/templates/base/src/server/auth/guards.ts +92 -0
  414. package/templates/base/src/server/auth/permissions.test.ts +45 -0
  415. package/templates/base/src/server/auth/permissions.ts +139 -0
  416. package/templates/base/src/server/auth/roles.test.ts +169 -0
  417. package/templates/base/src/server/auth/roles.ts +141 -0
  418. package/templates/base/src/server/db/client.ts +12 -0
  419. package/templates/base/src/server/db/schema/accounts.ts +20 -0
  420. package/templates/base/src/server/db/schema/audit-logs.ts +26 -0
  421. package/templates/base/src/server/db/schema/index.ts +7 -0
  422. package/templates/base/src/server/db/schema/invitations.ts +30 -0
  423. package/templates/base/src/server/db/schema/refresh-tokens.ts +22 -0
  424. package/templates/base/src/server/db/schema/user-accounts.ts +25 -0
  425. package/templates/base/src/server/db/schema/users.ts +33 -0
  426. package/templates/base/src/server/db/seed.ts +267 -0
  427. package/templates/base/src/server/env.test.ts +84 -0
  428. package/templates/base/src/server/env.ts +78 -0
  429. package/templates/base/src/server/index.ts +82 -0
  430. package/templates/base/src/server/lib/audit.ts +73 -0
  431. package/templates/base/src/server/lib/audited-db.test.ts +107 -0
  432. package/templates/base/src/server/lib/audited-db.ts +154 -0
  433. package/templates/base/src/server/lib/email.test.ts +116 -0
  434. package/templates/base/src/server/lib/email.ts +82 -0
  435. package/templates/base/src/server/lib/errors.test.ts +49 -0
  436. package/templates/base/src/server/lib/errors.ts +64 -0
  437. package/templates/base/src/server/lib/oauth.test.ts +238 -0
  438. package/templates/base/src/server/lib/oauth.ts +113 -0
  439. package/templates/base/src/server/lib/pagination.test.ts +52 -0
  440. package/templates/base/src/server/lib/pagination.ts +32 -0
  441. package/templates/base/src/server/lib/password.test.ts +151 -0
  442. package/templates/base/src/server/lib/password.ts +151 -0
  443. package/templates/base/src/server/lib/providers.test.ts +105 -0
  444. package/templates/base/src/server/lib/providers.ts +62 -0
  445. package/templates/base/src/server/lib/r2-storage.test.ts +202 -0
  446. package/templates/base/src/server/lib/r2-storage.ts +107 -0
  447. package/templates/base/src/server/lib/schema-helpers.ts +16 -0
  448. package/templates/base/src/server/lib/session.test.ts +758 -0
  449. package/templates/base/src/server/lib/session.ts +267 -0
  450. package/templates/base/src/server/lib/tokens.test.ts +208 -0
  451. package/templates/base/src/server/lib/tokens.ts +65 -0
  452. package/templates/base/src/server/lib/transaction.test.ts +45 -0
  453. package/templates/base/src/server/lib/transaction.ts +24 -0
  454. package/templates/base/src/server/middleware/account.test.ts +201 -0
  455. package/templates/base/src/server/middleware/account.ts +66 -0
  456. package/templates/base/src/server/middleware/auth.test.ts +345 -0
  457. package/templates/base/src/server/middleware/auth.ts +146 -0
  458. package/templates/base/src/server/middleware/cors.test.ts +88 -0
  459. package/templates/base/src/server/middleware/cors.ts +26 -0
  460. package/templates/base/src/server/middleware/error-handler.test.ts +69 -0
  461. package/templates/base/src/server/middleware/error-handler.ts +43 -0
  462. package/templates/base/src/server/middleware/index.ts +8 -0
  463. package/templates/base/src/server/middleware/rate-limit.test.ts +472 -0
  464. package/templates/base/src/server/middleware/rate-limit.ts +294 -0
  465. package/templates/base/src/server/middleware/request-context.test.ts +175 -0
  466. package/templates/base/src/server/middleware/request-context.ts +28 -0
  467. package/templates/base/src/server/middleware/request-logger.test.ts +92 -0
  468. package/templates/base/src/server/middleware/request-logger.ts +50 -0
  469. package/templates/base/src/server/routes/accounts/__tests__/handlers.test.ts +460 -0
  470. package/templates/base/src/server/routes/accounts/handlers.ts +179 -0
  471. package/templates/base/src/server/routes/accounts/index.ts +55 -0
  472. package/templates/base/src/server/routes/accounts/routes.ts +205 -0
  473. package/templates/base/src/server/routes/accounts/schemas.ts +31 -0
  474. package/templates/base/src/server/routes/api.ts +37 -0
  475. package/templates/base/src/server/routes/audits/__tests__/handlers.test.ts +349 -0
  476. package/templates/base/src/server/routes/audits/handlers.ts +37 -0
  477. package/templates/base/src/server/routes/audits/index.ts +14 -0
  478. package/templates/base/src/server/routes/audits/routes.ts +29 -0
  479. package/templates/base/src/server/routes/audits/schemas.ts +43 -0
  480. package/templates/base/src/server/routes/auth/__tests__/handlers.test.ts +381 -0
  481. package/templates/base/src/server/routes/auth/handlers.ts +222 -0
  482. package/templates/base/src/server/routes/auth/index.ts +37 -0
  483. package/templates/base/src/server/routes/auth/routes.ts +136 -0
  484. package/templates/base/src/server/routes/auth/schemas.ts +48 -0
  485. package/templates/base/src/server/routes/auth/test-login.ts +156 -0
  486. package/templates/base/src/server/routes/health/__tests__/handlers.test.ts +237 -0
  487. package/templates/base/src/server/routes/health/handlers.ts +83 -0
  488. package/templates/base/src/server/routes/health/index.ts +13 -0
  489. package/templates/base/src/server/routes/health/routes.ts +90 -0
  490. package/templates/base/src/server/routes/index.ts +53 -0
  491. package/templates/base/src/server/routes/invitations/__tests__/handlers.test.ts +473 -0
  492. package/templates/base/src/server/routes/invitations/handlers.ts +71 -0
  493. package/templates/base/src/server/routes/invitations/index.ts +25 -0
  494. package/templates/base/src/server/routes/invitations/routes.ts +69 -0
  495. package/templates/base/src/server/routes/invitations/schemas.ts +39 -0
  496. package/templates/base/src/server/routes/openapi.ts +14 -0
  497. package/templates/base/src/server/routes/schemas.ts +53 -0
  498. package/templates/base/src/server/routes/storage/__tests__/handlers.test.ts +408 -0
  499. package/templates/base/src/server/routes/storage/handlers.ts +100 -0
  500. package/templates/base/src/server/routes/storage/index.ts +42 -0
  501. package/templates/base/src/server/routes/storage/routes.ts +91 -0
  502. package/templates/base/src/server/routes/storage/schemas.ts +56 -0
  503. package/templates/base/src/server/routes/users/__tests__/handlers.test.ts +526 -0
  504. package/templates/base/src/server/routes/users/handlers.ts +228 -0
  505. package/templates/base/src/server/routes/users/index.ts +67 -0
  506. package/templates/base/src/server/routes/users/routes.ts +265 -0
  507. package/templates/base/src/server/routes/users/schemas.ts +67 -0
  508. package/templates/base/src/server/services/__tests__/accounts.test.ts +764 -0
  509. package/templates/base/src/server/services/__tests__/audits.test.ts +235 -0
  510. package/templates/base/src/server/services/__tests__/auth.test.ts +765 -0
  511. package/templates/base/src/server/services/__tests__/invitations.test.ts +704 -0
  512. package/templates/base/src/server/services/__tests__/users.test.ts +755 -0
  513. package/templates/base/src/server/services/accounts.ts +269 -0
  514. package/templates/base/src/server/services/audits.ts +82 -0
  515. package/templates/base/src/server/services/auth.ts +225 -0
  516. package/templates/base/src/server/services/index.ts +6 -0
  517. package/templates/base/src/server/services/invitations.ts +306 -0
  518. package/templates/base/src/server/services/users.ts +350 -0
  519. package/templates/base/src/server/types/auth.ts +36 -0
  520. package/templates/base/src/server/types/index.ts +117 -0
  521. package/templates/base/src/shared/schemas/.gitkeep +0 -0
  522. package/templates/base/src/shared/schemas/__tests__/schemas.test.ts +547 -0
  523. package/templates/base/src/shared/schemas/account.ts +15 -0
  524. package/templates/base/src/shared/schemas/index.ts +6 -0
  525. package/templates/base/src/shared/schemas/invitation.ts +9 -0
  526. package/templates/base/src/shared/schemas/profile.ts +10 -0
  527. package/templates/base/src/shared/schemas/user.ts +16 -0
  528. package/templates/base/src/shared/schemas/webhook.ts +12 -0
  529. package/templates/base/src/shared/types/.gitkeep +0 -0
  530. package/templates/base/src/shared/types/account.ts +12 -0
  531. package/templates/base/src/shared/types/api.ts +1399 -0
  532. package/templates/base/src/shared/types/auth.ts +24 -0
  533. package/templates/base/src/shared/types/index.ts +5 -0
  534. package/templates/base/src/shared/types/user.ts +31 -0
  535. package/templates/base/src/test/vitest-zod-matcher.ts +37 -0
  536. package/templates/base/src/test/vitest.d.ts +19 -0
  537. package/templates/base/tests/e2e/README.md +141 -0
  538. package/templates/base/tests/e2e/a11y/accessibility.spec.ts +925 -0
  539. package/templates/base/tests/e2e/a11y/keyboard-navigation.spec.ts +610 -0
  540. package/templates/base/tests/e2e/api/accounts.spec.ts +148 -0
  541. package/templates/base/tests/e2e/api/audit-logs.spec.ts +130 -0
  542. package/templates/base/tests/e2e/api/authenticated-api.spec.ts +311 -0
  543. package/templates/base/tests/e2e/api/storage.spec.ts +109 -0
  544. package/templates/base/tests/e2e/auth-flows.unauth.spec.ts +117 -0
  545. package/templates/base/tests/e2e/auth-logout.unauth.spec.ts +103 -0
  546. package/templates/base/tests/e2e/auth.setup.ts +115 -0
  547. package/templates/base/tests/e2e/auth.spec.ts +146 -0
  548. package/templates/base/tests/e2e/compatibility/cross-browser.spec.ts +152 -0
  549. package/templates/base/tests/e2e/compatibility/cross-browser.spec.ts-snapshots/login-chromium-chromium-darwin.png +0 -0
  550. package/templates/base/tests/e2e/crud/account.spec.ts +356 -0
  551. package/templates/base/tests/e2e/crud/integrations.spec.ts +419 -0
  552. package/templates/base/tests/e2e/crud/team.spec.ts +287 -0
  553. package/templates/base/tests/e2e/crud/users.spec.ts +239 -0
  554. package/templates/base/tests/e2e/errors/error-boundary.spec.ts +428 -0
  555. package/templates/base/tests/e2e/errors/error-handling.spec.ts +47 -0
  556. package/templates/base/tests/e2e/errors/error-handling.unauth.spec.ts +205 -0
  557. package/templates/base/tests/e2e/fixtures.ts +266 -0
  558. package/templates/base/tests/e2e/forms/validation.spec.ts +569 -0
  559. package/templates/base/tests/e2e/invitations/invite-flow.unauth.spec.ts +204 -0
  560. package/templates/base/tests/e2e/journeys/account-lifecycle.spec.ts +314 -0
  561. package/templates/base/tests/e2e/journeys/audit-investigation.spec.ts +299 -0
  562. package/templates/base/tests/e2e/journeys/auth-onboarding.spec.ts +232 -0
  563. package/templates/base/tests/e2e/journeys/critical-flows.spec.ts +281 -0
  564. package/templates/base/tests/e2e/journeys/error-recovery.spec.ts +354 -0
  565. package/templates/base/tests/e2e/journeys/file-management.spec.ts +307 -0
  566. package/templates/base/tests/e2e/journeys/integrations.spec.ts +372 -0
  567. package/templates/base/tests/e2e/journeys/multi-account.spec.ts +317 -0
  568. package/templates/base/tests/e2e/journeys/rbac-enforcement.spec.ts +389 -0
  569. package/templates/base/tests/e2e/journeys/settings-profile.spec.ts +400 -0
  570. package/templates/base/tests/e2e/journeys/team-collaboration.spec.ts +410 -0
  571. package/templates/base/tests/e2e/mobile/responsive.spec.ts +178 -0
  572. package/templates/base/tests/e2e/navigation/routing.spec.ts +371 -0
  573. package/templates/base/tests/e2e/navigation/sidebar.spec.ts +425 -0
  574. package/templates/base/tests/e2e/pages/ui-features.spec.ts +393 -0
  575. package/templates/base/tests/e2e/performance/baselines.spec.ts +162 -0
  576. package/templates/base/tests/e2e/performance/benchmarks.spec.ts +371 -0
  577. package/templates/base/tests/e2e/smoke.unauth.spec.ts +196 -0
  578. package/templates/base/tests/e2e/visual/components.spec.ts +650 -0
  579. package/templates/base/tests/e2e/visual/components.spec.ts-snapshots/confirmation-dialog-visual-darwin.png +0 -0
  580. package/templates/base/tests/e2e/visual/components.spec.ts-snapshots/dark-mode-background-visual-darwin.png +0 -0
  581. package/templates/base/tests/e2e/visual/components.spec.ts-snapshots/dark-mode-card-visual-darwin.png +0 -0
  582. package/templates/base/tests/e2e/visual/components.spec.ts-snapshots/dark-mode-sidebar-visual-darwin.png +0 -0
  583. package/templates/base/tests/e2e/visual/components.spec.ts-snapshots/dashboard-card-single-visual-darwin.png +0 -0
  584. package/templates/base/tests/e2e/visual/components.spec.ts-snapshots/dialog-content-visual-darwin.png +0 -0
  585. package/templates/base/tests/e2e/visual/components.spec.ts-snapshots/dialog-with-backdrop-visual-darwin.png +0 -0
  586. package/templates/base/tests/e2e/visual/components.spec.ts-snapshots/empty-search-results-visual-darwin.png +0 -0
  587. package/templates/base/tests/e2e/visual/components.spec.ts-snapshots/input-default-visual-darwin.png +0 -0
  588. package/templates/base/tests/e2e/visual/components.spec.ts-snapshots/input-focus-ring-visual-darwin.png +0 -0
  589. package/templates/base/tests/e2e/visual/components.spec.ts-snapshots/primary-button-focus-visual-darwin.png +0 -0
  590. package/templates/base/tests/e2e/visual/components.spec.ts-snapshots/primary-button-hover-visual-darwin.png +0 -0
  591. package/templates/base/tests/e2e/visual/components.spec.ts-snapshots/primary-button-visual-darwin.png +0 -0
  592. package/templates/base/tests/e2e/visual/components.spec.ts-snapshots/sidebar-active-nav-item-visual-darwin.png +0 -0
  593. package/templates/base/tests/e2e/visual/components.spec.ts-snapshots/sidebar-collapsed-visual-darwin.png +0 -0
  594. package/templates/base/tests/e2e/visual/components.spec.ts-snapshots/sidebar-navigation-visual-darwin.png +0 -0
  595. package/templates/base/tests/e2e/visual/core-components.spec.ts +192 -0
  596. package/templates/base/tests/e2e/visual/core-components.spec.ts-snapshots/account-page-visual-darwin.png +0 -0
  597. package/templates/base/tests/e2e/visual/core-components.spec.ts-snapshots/create-webhook-dialog-visual-darwin.png +0 -0
  598. package/templates/base/tests/e2e/visual/core-components.spec.ts-snapshots/dashboard-page-visual-darwin.png +0 -0
  599. package/templates/base/tests/e2e/visual/core-components.spec.ts-snapshots/delete-account-dialog-visual-darwin.png +0 -0
  600. package/templates/base/tests/e2e/visual/core-components.spec.ts-snapshots/integrations-page-visual-darwin.png +0 -0
  601. package/templates/base/tests/e2e/visual/core-components.spec.ts-snapshots/invite-member-dialog-visual-darwin.png +0 -0
  602. package/templates/base/tests/e2e/visual/core-components.spec.ts-snapshots/login-page-visual-darwin.png +0 -0
  603. package/templates/base/tests/e2e/visual/core-components.spec.ts-snapshots/settings-account-tab-visual-darwin.png +0 -0
  604. package/templates/base/tests/e2e/visual/core-components.spec.ts-snapshots/settings-profile-tab-visual-darwin.png +0 -0
  605. package/templates/base/tests/e2e/visual/core-components.spec.ts-snapshots/sidebar-navigation-visual-darwin.png +0 -0
  606. package/templates/base/tests/e2e/visual/core-components.spec.ts-snapshots/team-page-visual-darwin.png +0 -0
  607. package/templates/base/tests/e2e/visual/screenshots.spec.ts +230 -0
  608. package/templates/base/tests/e2e/visual/screenshots.spec.ts-snapshots/404-page-chromium-darwin.png +0 -0
  609. package/templates/base/tests/e2e/visual/screenshots.spec.ts-snapshots/404-page-visual-darwin.png +0 -0
  610. package/templates/base/tests/e2e/visual/screenshots.spec.ts-snapshots/account-page-visual-darwin.png +0 -0
  611. package/templates/base/tests/e2e/visual/screenshots.spec.ts-snapshots/login-page-chromium-darwin.png +0 -0
  612. package/templates/base/tests/e2e/visual/screenshots.spec.ts-snapshots/login-page-visual-darwin.png +0 -0
  613. package/templates/base/tests/e2e/visual/screenshots.spec.ts-snapshots/settings-page-visual-darwin.png +0 -0
  614. package/templates/base/tests/e2e/visual/screenshots.spec.ts-snapshots/team-invite-dialog-visual-darwin.png +0 -0
  615. package/templates/base/tests/e2e/visual/screenshots.spec.ts-snapshots/team-page-visual-darwin.png +0 -0
  616. package/templates/base/tests/e2e/visual/screenshots.spec.ts-snapshots/webhook-create-dialog-visual-darwin.png +0 -0
  617. package/templates/base/tests/e2e/visual/theme-colors.spec.ts +293 -0
  618. package/templates/base/tests/e2e/visual/ui-components.spec.ts +502 -0
  619. package/templates/base/tests/integration/accounts/crud.test.ts +1402 -0
  620. package/templates/base/tests/integration/audits/list.test.ts +1133 -0
  621. package/templates/base/tests/integration/auth/auth-service.test.ts +415 -0
  622. package/templates/base/tests/integration/auth/invitation-token.test.ts +529 -0
  623. package/templates/base/tests/integration/auth/logout.test.ts +524 -0
  624. package/templates/base/tests/integration/auth/oauth.test.ts +768 -0
  625. package/templates/base/tests/integration/auth/refresh-token.test.ts +364 -0
  626. package/templates/base/tests/integration/auth/session-expiry.test.ts +569 -0
  627. package/templates/base/tests/integration/auth/session.test.ts +520 -0
  628. package/templates/base/tests/integration/auth/super-admin.test.ts +451 -0
  629. package/templates/base/tests/integration/authorization/analytics-role.test.ts +1026 -0
  630. package/templates/base/tests/integration/authorization/billing-role.test.ts +776 -0
  631. package/templates/base/tests/integration/authorization/guards-roles.test.ts +539 -0
  632. package/templates/base/tests/integration/authorization/multi-tenancy.test.ts +1112 -0
  633. package/templates/base/tests/integration/authorization/role-hierarchy.test.ts +931 -0
  634. package/templates/base/tests/integration/authorization/roles.test.ts +1347 -0
  635. package/templates/base/tests/integration/config/production-behavior.test.ts +536 -0
  636. package/templates/base/tests/integration/db/constraints.test.ts +695 -0
  637. package/templates/base/tests/integration/fixtures/accounts.ts +136 -0
  638. package/templates/base/tests/integration/fixtures/index.ts +232 -0
  639. package/templates/base/tests/integration/fixtures/invitations.ts +195 -0
  640. package/templates/base/tests/integration/fixtures/users.ts +144 -0
  641. package/templates/base/tests/integration/health/health.test.ts +351 -0
  642. package/templates/base/tests/integration/invitations/crud.test.ts +1457 -0
  643. package/templates/base/tests/integration/invitations/email.test.ts +506 -0
  644. package/templates/base/tests/integration/lib/email.test.ts +174 -0
  645. package/templates/base/tests/integration/lib/oauth.test.ts +368 -0
  646. package/templates/base/tests/integration/lib/password.test.ts +192 -0
  647. package/templates/base/tests/integration/lib/schema-helpers.test.ts +129 -0
  648. package/templates/base/tests/integration/lib/tokens.test.ts +304 -0
  649. package/templates/base/tests/integration/middleware/auth.test.ts +499 -0
  650. package/templates/base/tests/integration/middleware/cors.test.ts +334 -0
  651. package/templates/base/tests/integration/middleware/request-context.test.ts +156 -0
  652. package/templates/base/tests/integration/middleware/request-logger.test.ts +313 -0
  653. package/templates/base/tests/integration/performance/response-times.test.ts +509 -0
  654. package/templates/base/tests/integration/security/cookie-security.test.ts +567 -0
  655. package/templates/base/tests/integration/security/csrf-protection.test.ts +542 -0
  656. package/templates/base/tests/integration/security/jwt-validation.test.ts +209 -0
  657. package/templates/base/tests/integration/security/log-sanitization.test.ts +658 -0
  658. package/templates/base/tests/integration/security/rate-limiting.test.ts +1251 -0
  659. package/templates/base/tests/integration/security/sql-injection.test.ts +663 -0
  660. package/templates/base/tests/integration/security/token-hashing.test.ts +371 -0
  661. package/templates/base/tests/integration/security/xss-prevention.test.ts +541 -0
  662. package/templates/base/tests/integration/setup.ts +834 -0
  663. package/templates/base/tests/integration/smoke.test.ts +288 -0
  664. package/templates/base/tests/integration/storage/upload.test.ts +1162 -0
  665. package/templates/base/tests/integration/storage/validation.test.ts +746 -0
  666. package/templates/base/tests/integration/users/crud.test.ts +1297 -0
  667. package/templates/base/tests/integration/users/list.test.ts +698 -0
  668. package/templates/base/tests/integration/vitest.config.ts +80 -0
  669. package/templates/base/tsconfig.app.json +18 -0
  670. package/templates/base/tsconfig.json +39 -0
  671. package/templates/base/tsconfig.node.json +16 -0
  672. package/templates/base/tsconfig.server.json +26 -0
  673. package/templates/base/tsconfig.tsbuildinfo +1 -0
  674. package/templates/base/vite.config.ts +46 -0
  675. package/templates/base/vitest.config.browser.ts +47 -0
  676. package/templates/base/vitest.config.frontend.ts +47 -0
  677. package/templates/base/vitest.config.ts +82 -0
  678. package/templates/base/vitest.workspace.ts +22 -0
  679. package/templates/modules/audit-logs/.gitkeep +0 -0
  680. package/templates/modules/billing/.gitkeep +0 -0
  681. package/templates/modules/invitations/.gitkeep +0 -0
  682. package/templates/modules/storage/.gitkeep +0 -0
  683. package/templates/modules/webhooks/.gitkeep +0 -0
  684. package/templates/providers/auth-email/.gitkeep +0 -0
  685. package/templates/providers/auth-github/.gitkeep +0 -0
  686. package/templates/providers/auth-google/.gitkeep +0 -0
  687. package/templates/providers/email-resend/.gitkeep +0 -0
  688. package/templates/providers/email-sendgrid/.gitkeep +0 -0
@@ -0,0 +1,2927 @@
1
+ {
2
+ "name": "dev-browser",
3
+ "version": "0.0.1",
4
+ "lockfileVersion": 3,
5
+ "requires": true,
6
+ "packages": {
7
+ "": {
8
+ "name": "dev-browser",
9
+ "version": "0.0.1",
10
+ "dependencies": {
11
+ "express": "^4.21.0",
12
+ "playwright": "^1.49.0"
13
+ },
14
+ "devDependencies": {
15
+ "@types/express": "^5.0.0",
16
+ "tsx": "^4.21.0",
17
+ "typescript": "^5.0.0",
18
+ "vitest": "^2.1.0"
19
+ },
20
+ "optionalDependencies": {
21
+ "@rollup/rollup-linux-x64-gnu": "^4.0.0"
22
+ }
23
+ },
24
+ "node_modules/@esbuild/aix-ppc64": {
25
+ "version": "0.27.2",
26
+ "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.27.2.tgz",
27
+ "integrity": "sha512-GZMB+a0mOMZs4MpDbj8RJp4cw+w1WV5NYD6xzgvzUJ5Ek2jerwfO2eADyI6ExDSUED+1X8aMbegahsJi+8mgpw==",
28
+ "cpu": [
29
+ "ppc64"
30
+ ],
31
+ "dev": true,
32
+ "license": "MIT",
33
+ "optional": true,
34
+ "os": [
35
+ "aix"
36
+ ],
37
+ "engines": {
38
+ "node": ">=18"
39
+ }
40
+ },
41
+ "node_modules/@esbuild/android-arm": {
42
+ "version": "0.27.2",
43
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.27.2.tgz",
44
+ "integrity": "sha512-DVNI8jlPa7Ujbr1yjU2PfUSRtAUZPG9I1RwW4F4xFB1Imiu2on0ADiI/c3td+KmDtVKNbi+nffGDQMfcIMkwIA==",
45
+ "cpu": [
46
+ "arm"
47
+ ],
48
+ "dev": true,
49
+ "license": "MIT",
50
+ "optional": true,
51
+ "os": [
52
+ "android"
53
+ ],
54
+ "engines": {
55
+ "node": ">=18"
56
+ }
57
+ },
58
+ "node_modules/@esbuild/android-arm64": {
59
+ "version": "0.27.2",
60
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.27.2.tgz",
61
+ "integrity": "sha512-pvz8ZZ7ot/RBphf8fv60ljmaoydPU12VuXHImtAs0XhLLw+EXBi2BLe3OYSBslR4rryHvweW5gmkKFwTiFy6KA==",
62
+ "cpu": [
63
+ "arm64"
64
+ ],
65
+ "dev": true,
66
+ "license": "MIT",
67
+ "optional": true,
68
+ "os": [
69
+ "android"
70
+ ],
71
+ "engines": {
72
+ "node": ">=18"
73
+ }
74
+ },
75
+ "node_modules/@esbuild/android-x64": {
76
+ "version": "0.27.2",
77
+ "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.27.2.tgz",
78
+ "integrity": "sha512-z8Ank4Byh4TJJOh4wpz8g2vDy75zFL0TlZlkUkEwYXuPSgX8yzep596n6mT7905kA9uHZsf/o2OJZubl2l3M7A==",
79
+ "cpu": [
80
+ "x64"
81
+ ],
82
+ "dev": true,
83
+ "license": "MIT",
84
+ "optional": true,
85
+ "os": [
86
+ "android"
87
+ ],
88
+ "engines": {
89
+ "node": ">=18"
90
+ }
91
+ },
92
+ "node_modules/@esbuild/darwin-arm64": {
93
+ "version": "0.27.2",
94
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.27.2.tgz",
95
+ "integrity": "sha512-davCD2Zc80nzDVRwXTcQP/28fiJbcOwvdolL0sOiOsbwBa72kegmVU0Wrh1MYrbuCL98Omp5dVhQFWRKR2ZAlg==",
96
+ "cpu": [
97
+ "arm64"
98
+ ],
99
+ "dev": true,
100
+ "license": "MIT",
101
+ "optional": true,
102
+ "os": [
103
+ "darwin"
104
+ ],
105
+ "engines": {
106
+ "node": ">=18"
107
+ }
108
+ },
109
+ "node_modules/@esbuild/darwin-x64": {
110
+ "version": "0.27.2",
111
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.27.2.tgz",
112
+ "integrity": "sha512-ZxtijOmlQCBWGwbVmwOF/UCzuGIbUkqB1faQRf5akQmxRJ1ujusWsb3CVfk/9iZKr2L5SMU5wPBi1UWbvL+VQA==",
113
+ "cpu": [
114
+ "x64"
115
+ ],
116
+ "dev": true,
117
+ "license": "MIT",
118
+ "optional": true,
119
+ "os": [
120
+ "darwin"
121
+ ],
122
+ "engines": {
123
+ "node": ">=18"
124
+ }
125
+ },
126
+ "node_modules/@esbuild/freebsd-arm64": {
127
+ "version": "0.27.2",
128
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.27.2.tgz",
129
+ "integrity": "sha512-lS/9CN+rgqQ9czogxlMcBMGd+l8Q3Nj1MFQwBZJyoEKI50XGxwuzznYdwcav6lpOGv5BqaZXqvBSiB/kJ5op+g==",
130
+ "cpu": [
131
+ "arm64"
132
+ ],
133
+ "dev": true,
134
+ "license": "MIT",
135
+ "optional": true,
136
+ "os": [
137
+ "freebsd"
138
+ ],
139
+ "engines": {
140
+ "node": ">=18"
141
+ }
142
+ },
143
+ "node_modules/@esbuild/freebsd-x64": {
144
+ "version": "0.27.2",
145
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.27.2.tgz",
146
+ "integrity": "sha512-tAfqtNYb4YgPnJlEFu4c212HYjQWSO/w/h/lQaBK7RbwGIkBOuNKQI9tqWzx7Wtp7bTPaGC6MJvWI608P3wXYA==",
147
+ "cpu": [
148
+ "x64"
149
+ ],
150
+ "dev": true,
151
+ "license": "MIT",
152
+ "optional": true,
153
+ "os": [
154
+ "freebsd"
155
+ ],
156
+ "engines": {
157
+ "node": ">=18"
158
+ }
159
+ },
160
+ "node_modules/@esbuild/linux-arm": {
161
+ "version": "0.27.2",
162
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.27.2.tgz",
163
+ "integrity": "sha512-vWfq4GaIMP9AIe4yj1ZUW18RDhx6EPQKjwe7n8BbIecFtCQG4CfHGaHuh7fdfq+y3LIA2vGS/o9ZBGVxIDi9hw==",
164
+ "cpu": [
165
+ "arm"
166
+ ],
167
+ "dev": true,
168
+ "license": "MIT",
169
+ "optional": true,
170
+ "os": [
171
+ "linux"
172
+ ],
173
+ "engines": {
174
+ "node": ">=18"
175
+ }
176
+ },
177
+ "node_modules/@esbuild/linux-arm64": {
178
+ "version": "0.27.2",
179
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.27.2.tgz",
180
+ "integrity": "sha512-hYxN8pr66NsCCiRFkHUAsxylNOcAQaxSSkHMMjcpx0si13t1LHFphxJZUiGwojB1a/Hd5OiPIqDdXONia6bhTw==",
181
+ "cpu": [
182
+ "arm64"
183
+ ],
184
+ "dev": true,
185
+ "license": "MIT",
186
+ "optional": true,
187
+ "os": [
188
+ "linux"
189
+ ],
190
+ "engines": {
191
+ "node": ">=18"
192
+ }
193
+ },
194
+ "node_modules/@esbuild/linux-ia32": {
195
+ "version": "0.27.2",
196
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.27.2.tgz",
197
+ "integrity": "sha512-MJt5BRRSScPDwG2hLelYhAAKh9imjHK5+NE/tvnRLbIqUWa+0E9N4WNMjmp/kXXPHZGqPLxggwVhz7QP8CTR8w==",
198
+ "cpu": [
199
+ "ia32"
200
+ ],
201
+ "dev": true,
202
+ "license": "MIT",
203
+ "optional": true,
204
+ "os": [
205
+ "linux"
206
+ ],
207
+ "engines": {
208
+ "node": ">=18"
209
+ }
210
+ },
211
+ "node_modules/@esbuild/linux-loong64": {
212
+ "version": "0.27.2",
213
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.27.2.tgz",
214
+ "integrity": "sha512-lugyF1atnAT463aO6KPshVCJK5NgRnU4yb3FUumyVz+cGvZbontBgzeGFO1nF+dPueHD367a2ZXe1NtUkAjOtg==",
215
+ "cpu": [
216
+ "loong64"
217
+ ],
218
+ "dev": true,
219
+ "license": "MIT",
220
+ "optional": true,
221
+ "os": [
222
+ "linux"
223
+ ],
224
+ "engines": {
225
+ "node": ">=18"
226
+ }
227
+ },
228
+ "node_modules/@esbuild/linux-mips64el": {
229
+ "version": "0.27.2",
230
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.27.2.tgz",
231
+ "integrity": "sha512-nlP2I6ArEBewvJ2gjrrkESEZkB5mIoaTswuqNFRv/WYd+ATtUpe9Y09RnJvgvdag7he0OWgEZWhviS1OTOKixw==",
232
+ "cpu": [
233
+ "mips64el"
234
+ ],
235
+ "dev": true,
236
+ "license": "MIT",
237
+ "optional": true,
238
+ "os": [
239
+ "linux"
240
+ ],
241
+ "engines": {
242
+ "node": ">=18"
243
+ }
244
+ },
245
+ "node_modules/@esbuild/linux-ppc64": {
246
+ "version": "0.27.2",
247
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.27.2.tgz",
248
+ "integrity": "sha512-C92gnpey7tUQONqg1n6dKVbx3vphKtTHJaNG2Ok9lGwbZil6DrfyecMsp9CrmXGQJmZ7iiVXvvZH6Ml5hL6XdQ==",
249
+ "cpu": [
250
+ "ppc64"
251
+ ],
252
+ "dev": true,
253
+ "license": "MIT",
254
+ "optional": true,
255
+ "os": [
256
+ "linux"
257
+ ],
258
+ "engines": {
259
+ "node": ">=18"
260
+ }
261
+ },
262
+ "node_modules/@esbuild/linux-riscv64": {
263
+ "version": "0.27.2",
264
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.27.2.tgz",
265
+ "integrity": "sha512-B5BOmojNtUyN8AXlK0QJyvjEZkWwy/FKvakkTDCziX95AowLZKR6aCDhG7LeF7uMCXEJqwa8Bejz5LTPYm8AvA==",
266
+ "cpu": [
267
+ "riscv64"
268
+ ],
269
+ "dev": true,
270
+ "license": "MIT",
271
+ "optional": true,
272
+ "os": [
273
+ "linux"
274
+ ],
275
+ "engines": {
276
+ "node": ">=18"
277
+ }
278
+ },
279
+ "node_modules/@esbuild/linux-s390x": {
280
+ "version": "0.27.2",
281
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.27.2.tgz",
282
+ "integrity": "sha512-p4bm9+wsPwup5Z8f4EpfN63qNagQ47Ua2znaqGH6bqLlmJ4bx97Y9JdqxgGZ6Y8xVTixUnEkoKSHcpRlDnNr5w==",
283
+ "cpu": [
284
+ "s390x"
285
+ ],
286
+ "dev": true,
287
+ "license": "MIT",
288
+ "optional": true,
289
+ "os": [
290
+ "linux"
291
+ ],
292
+ "engines": {
293
+ "node": ">=18"
294
+ }
295
+ },
296
+ "node_modules/@esbuild/linux-x64": {
297
+ "version": "0.27.2",
298
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.27.2.tgz",
299
+ "integrity": "sha512-uwp2Tip5aPmH+NRUwTcfLb+W32WXjpFejTIOWZFw/v7/KnpCDKG66u4DLcurQpiYTiYwQ9B7KOeMJvLCu/OvbA==",
300
+ "cpu": [
301
+ "x64"
302
+ ],
303
+ "dev": true,
304
+ "license": "MIT",
305
+ "optional": true,
306
+ "os": [
307
+ "linux"
308
+ ],
309
+ "engines": {
310
+ "node": ">=18"
311
+ }
312
+ },
313
+ "node_modules/@esbuild/netbsd-arm64": {
314
+ "version": "0.27.2",
315
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.27.2.tgz",
316
+ "integrity": "sha512-Kj6DiBlwXrPsCRDeRvGAUb/LNrBASrfqAIok+xB0LxK8CHqxZ037viF13ugfsIpePH93mX7xfJp97cyDuTZ3cw==",
317
+ "cpu": [
318
+ "arm64"
319
+ ],
320
+ "dev": true,
321
+ "license": "MIT",
322
+ "optional": true,
323
+ "os": [
324
+ "netbsd"
325
+ ],
326
+ "engines": {
327
+ "node": ">=18"
328
+ }
329
+ },
330
+ "node_modules/@esbuild/netbsd-x64": {
331
+ "version": "0.27.2",
332
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.27.2.tgz",
333
+ "integrity": "sha512-HwGDZ0VLVBY3Y+Nw0JexZy9o/nUAWq9MlV7cahpaXKW6TOzfVno3y3/M8Ga8u8Yr7GldLOov27xiCnqRZf0tCA==",
334
+ "cpu": [
335
+ "x64"
336
+ ],
337
+ "dev": true,
338
+ "license": "MIT",
339
+ "optional": true,
340
+ "os": [
341
+ "netbsd"
342
+ ],
343
+ "engines": {
344
+ "node": ">=18"
345
+ }
346
+ },
347
+ "node_modules/@esbuild/openbsd-arm64": {
348
+ "version": "0.27.2",
349
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.27.2.tgz",
350
+ "integrity": "sha512-DNIHH2BPQ5551A7oSHD0CKbwIA/Ox7+78/AWkbS5QoRzaqlev2uFayfSxq68EkonB+IKjiuxBFoV8ESJy8bOHA==",
351
+ "cpu": [
352
+ "arm64"
353
+ ],
354
+ "dev": true,
355
+ "license": "MIT",
356
+ "optional": true,
357
+ "os": [
358
+ "openbsd"
359
+ ],
360
+ "engines": {
361
+ "node": ">=18"
362
+ }
363
+ },
364
+ "node_modules/@esbuild/openbsd-x64": {
365
+ "version": "0.27.2",
366
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.27.2.tgz",
367
+ "integrity": "sha512-/it7w9Nb7+0KFIzjalNJVR5bOzA9Vay+yIPLVHfIQYG/j+j9VTH84aNB8ExGKPU4AzfaEvN9/V4HV+F+vo8OEg==",
368
+ "cpu": [
369
+ "x64"
370
+ ],
371
+ "dev": true,
372
+ "license": "MIT",
373
+ "optional": true,
374
+ "os": [
375
+ "openbsd"
376
+ ],
377
+ "engines": {
378
+ "node": ">=18"
379
+ }
380
+ },
381
+ "node_modules/@esbuild/openharmony-arm64": {
382
+ "version": "0.27.2",
383
+ "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.27.2.tgz",
384
+ "integrity": "sha512-LRBbCmiU51IXfeXk59csuX/aSaToeG7w48nMwA6049Y4J4+VbWALAuXcs+qcD04rHDuSCSRKdmY63sruDS5qag==",
385
+ "cpu": [
386
+ "arm64"
387
+ ],
388
+ "dev": true,
389
+ "license": "MIT",
390
+ "optional": true,
391
+ "os": [
392
+ "openharmony"
393
+ ],
394
+ "engines": {
395
+ "node": ">=18"
396
+ }
397
+ },
398
+ "node_modules/@esbuild/sunos-x64": {
399
+ "version": "0.27.2",
400
+ "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.27.2.tgz",
401
+ "integrity": "sha512-kMtx1yqJHTmqaqHPAzKCAkDaKsffmXkPHThSfRwZGyuqyIeBvf08KSsYXl+abf5HDAPMJIPnbBfXvP2ZC2TfHg==",
402
+ "cpu": [
403
+ "x64"
404
+ ],
405
+ "dev": true,
406
+ "license": "MIT",
407
+ "optional": true,
408
+ "os": [
409
+ "sunos"
410
+ ],
411
+ "engines": {
412
+ "node": ">=18"
413
+ }
414
+ },
415
+ "node_modules/@esbuild/win32-arm64": {
416
+ "version": "0.27.2",
417
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.27.2.tgz",
418
+ "integrity": "sha512-Yaf78O/B3Kkh+nKABUF++bvJv5Ijoy9AN1ww904rOXZFLWVc5OLOfL56W+C8F9xn5JQZa3UX6m+IktJnIb1Jjg==",
419
+ "cpu": [
420
+ "arm64"
421
+ ],
422
+ "dev": true,
423
+ "license": "MIT",
424
+ "optional": true,
425
+ "os": [
426
+ "win32"
427
+ ],
428
+ "engines": {
429
+ "node": ">=18"
430
+ }
431
+ },
432
+ "node_modules/@esbuild/win32-ia32": {
433
+ "version": "0.27.2",
434
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.27.2.tgz",
435
+ "integrity": "sha512-Iuws0kxo4yusk7sw70Xa2E2imZU5HoixzxfGCdxwBdhiDgt9vX9VUCBhqcwY7/uh//78A1hMkkROMJq9l27oLQ==",
436
+ "cpu": [
437
+ "ia32"
438
+ ],
439
+ "dev": true,
440
+ "license": "MIT",
441
+ "optional": true,
442
+ "os": [
443
+ "win32"
444
+ ],
445
+ "engines": {
446
+ "node": ">=18"
447
+ }
448
+ },
449
+ "node_modules/@esbuild/win32-x64": {
450
+ "version": "0.27.2",
451
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.27.2.tgz",
452
+ "integrity": "sha512-sRdU18mcKf7F+YgheI/zGf5alZatMUTKj/jNS6l744f9u3WFu4v7twcUI9vu4mknF4Y9aDlblIie0IM+5xxaqQ==",
453
+ "cpu": [
454
+ "x64"
455
+ ],
456
+ "dev": true,
457
+ "license": "MIT",
458
+ "optional": true,
459
+ "os": [
460
+ "win32"
461
+ ],
462
+ "engines": {
463
+ "node": ">=18"
464
+ }
465
+ },
466
+ "node_modules/@jridgewell/sourcemap-codec": {
467
+ "version": "1.5.5",
468
+ "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz",
469
+ "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==",
470
+ "dev": true,
471
+ "license": "MIT"
472
+ },
473
+ "node_modules/@rollup/rollup-android-arm-eabi": {
474
+ "version": "4.54.0",
475
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.54.0.tgz",
476
+ "integrity": "sha512-OywsdRHrFvCdvsewAInDKCNyR3laPA2mc9bRYJ6LBp5IyvF3fvXbbNR0bSzHlZVFtn6E0xw2oZlyjg4rKCVcng==",
477
+ "cpu": [
478
+ "arm"
479
+ ],
480
+ "dev": true,
481
+ "license": "MIT",
482
+ "optional": true,
483
+ "os": [
484
+ "android"
485
+ ]
486
+ },
487
+ "node_modules/@rollup/rollup-android-arm64": {
488
+ "version": "4.54.0",
489
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.54.0.tgz",
490
+ "integrity": "sha512-Skx39Uv+u7H224Af+bDgNinitlmHyQX1K/atIA32JP3JQw6hVODX5tkbi2zof/E69M1qH2UoN3Xdxgs90mmNYw==",
491
+ "cpu": [
492
+ "arm64"
493
+ ],
494
+ "dev": true,
495
+ "license": "MIT",
496
+ "optional": true,
497
+ "os": [
498
+ "android"
499
+ ]
500
+ },
501
+ "node_modules/@rollup/rollup-darwin-arm64": {
502
+ "version": "4.54.0",
503
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.54.0.tgz",
504
+ "integrity": "sha512-k43D4qta/+6Fq+nCDhhv9yP2HdeKeP56QrUUTW7E6PhZP1US6NDqpJj4MY0jBHlJivVJD5P8NxrjuobZBJTCRw==",
505
+ "cpu": [
506
+ "arm64"
507
+ ],
508
+ "dev": true,
509
+ "license": "MIT",
510
+ "optional": true,
511
+ "os": [
512
+ "darwin"
513
+ ]
514
+ },
515
+ "node_modules/@rollup/rollup-darwin-x64": {
516
+ "version": "4.54.0",
517
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.54.0.tgz",
518
+ "integrity": "sha512-cOo7biqwkpawslEfox5Vs8/qj83M/aZCSSNIWpVzfU2CYHa2G3P1UN5WF01RdTHSgCkri7XOlTdtk17BezlV3A==",
519
+ "cpu": [
520
+ "x64"
521
+ ],
522
+ "dev": true,
523
+ "license": "MIT",
524
+ "optional": true,
525
+ "os": [
526
+ "darwin"
527
+ ]
528
+ },
529
+ "node_modules/@rollup/rollup-freebsd-arm64": {
530
+ "version": "4.54.0",
531
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.54.0.tgz",
532
+ "integrity": "sha512-miSvuFkmvFbgJ1BevMa4CPCFt5MPGw094knM64W9I0giUIMMmRYcGW/JWZDriaw/k1kOBtsWh1z6nIFV1vPNtA==",
533
+ "cpu": [
534
+ "arm64"
535
+ ],
536
+ "dev": true,
537
+ "license": "MIT",
538
+ "optional": true,
539
+ "os": [
540
+ "freebsd"
541
+ ]
542
+ },
543
+ "node_modules/@rollup/rollup-freebsd-x64": {
544
+ "version": "4.54.0",
545
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.54.0.tgz",
546
+ "integrity": "sha512-KGXIs55+b/ZfZsq9aR026tmr/+7tq6VG6MsnrvF4H8VhwflTIuYh+LFUlIsRdQSgrgmtM3fVATzEAj4hBQlaqQ==",
547
+ "cpu": [
548
+ "x64"
549
+ ],
550
+ "dev": true,
551
+ "license": "MIT",
552
+ "optional": true,
553
+ "os": [
554
+ "freebsd"
555
+ ]
556
+ },
557
+ "node_modules/@rollup/rollup-linux-arm-gnueabihf": {
558
+ "version": "4.54.0",
559
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.54.0.tgz",
560
+ "integrity": "sha512-EHMUcDwhtdRGlXZsGSIuXSYwD5kOT9NVnx9sqzYiwAc91wfYOE1g1djOEDseZJKKqtHAHGwnGPQu3kytmfaXLQ==",
561
+ "cpu": [
562
+ "arm"
563
+ ],
564
+ "dev": true,
565
+ "license": "MIT",
566
+ "optional": true,
567
+ "os": [
568
+ "linux"
569
+ ]
570
+ },
571
+ "node_modules/@rollup/rollup-linux-arm-musleabihf": {
572
+ "version": "4.54.0",
573
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.54.0.tgz",
574
+ "integrity": "sha512-+pBrqEjaakN2ySv5RVrj/qLytYhPKEUwk+e3SFU5jTLHIcAtqh2rLrd/OkbNuHJpsBgxsD8ccJt5ga/SeG0JmA==",
575
+ "cpu": [
576
+ "arm"
577
+ ],
578
+ "dev": true,
579
+ "license": "MIT",
580
+ "optional": true,
581
+ "os": [
582
+ "linux"
583
+ ]
584
+ },
585
+ "node_modules/@rollup/rollup-linux-arm64-gnu": {
586
+ "version": "4.54.0",
587
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.54.0.tgz",
588
+ "integrity": "sha512-NSqc7rE9wuUaRBsBp5ckQ5CVz5aIRKCwsoa6WMF7G01sX3/qHUw/z4pv+D+ahL1EIKy6Enpcnz1RY8pf7bjwng==",
589
+ "cpu": [
590
+ "arm64"
591
+ ],
592
+ "dev": true,
593
+ "license": "MIT",
594
+ "optional": true,
595
+ "os": [
596
+ "linux"
597
+ ]
598
+ },
599
+ "node_modules/@rollup/rollup-linux-arm64-musl": {
600
+ "version": "4.54.0",
601
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.54.0.tgz",
602
+ "integrity": "sha512-gr5vDbg3Bakga5kbdpqx81m2n9IX8M6gIMlQQIXiLTNeQW6CucvuInJ91EuCJ/JYvc+rcLLsDFcfAD1K7fMofg==",
603
+ "cpu": [
604
+ "arm64"
605
+ ],
606
+ "dev": true,
607
+ "license": "MIT",
608
+ "optional": true,
609
+ "os": [
610
+ "linux"
611
+ ]
612
+ },
613
+ "node_modules/@rollup/rollup-linux-loong64-gnu": {
614
+ "version": "4.54.0",
615
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.54.0.tgz",
616
+ "integrity": "sha512-gsrtB1NA3ZYj2vq0Rzkylo9ylCtW/PhpLEivlgWe0bpgtX5+9j9EZa0wtZiCjgu6zmSeZWyI/e2YRX1URozpIw==",
617
+ "cpu": [
618
+ "loong64"
619
+ ],
620
+ "dev": true,
621
+ "license": "MIT",
622
+ "optional": true,
623
+ "os": [
624
+ "linux"
625
+ ]
626
+ },
627
+ "node_modules/@rollup/rollup-linux-ppc64-gnu": {
628
+ "version": "4.54.0",
629
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.54.0.tgz",
630
+ "integrity": "sha512-y3qNOfTBStmFNq+t4s7Tmc9hW2ENtPg8FeUD/VShI7rKxNW7O4fFeaYbMsd3tpFlIg1Q8IapFgy7Q9i2BqeBvA==",
631
+ "cpu": [
632
+ "ppc64"
633
+ ],
634
+ "dev": true,
635
+ "license": "MIT",
636
+ "optional": true,
637
+ "os": [
638
+ "linux"
639
+ ]
640
+ },
641
+ "node_modules/@rollup/rollup-linux-riscv64-gnu": {
642
+ "version": "4.54.0",
643
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.54.0.tgz",
644
+ "integrity": "sha512-89sepv7h2lIVPsFma8iwmccN7Yjjtgz0Rj/Ou6fEqg3HDhpCa+Et+YSufy27i6b0Wav69Qv4WBNl3Rs6pwhebQ==",
645
+ "cpu": [
646
+ "riscv64"
647
+ ],
648
+ "dev": true,
649
+ "license": "MIT",
650
+ "optional": true,
651
+ "os": [
652
+ "linux"
653
+ ]
654
+ },
655
+ "node_modules/@rollup/rollup-linux-riscv64-musl": {
656
+ "version": "4.54.0",
657
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.54.0.tgz",
658
+ "integrity": "sha512-ZcU77ieh0M2Q8Ur7D5X7KvK+UxbXeDHwiOt/CPSBTI1fBmeDMivW0dPkdqkT4rOgDjrDDBUed9x4EgraIKoR2A==",
659
+ "cpu": [
660
+ "riscv64"
661
+ ],
662
+ "dev": true,
663
+ "license": "MIT",
664
+ "optional": true,
665
+ "os": [
666
+ "linux"
667
+ ]
668
+ },
669
+ "node_modules/@rollup/rollup-linux-s390x-gnu": {
670
+ "version": "4.54.0",
671
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.54.0.tgz",
672
+ "integrity": "sha512-2AdWy5RdDF5+4YfG/YesGDDtbyJlC9LHmL6rZw6FurBJ5n4vFGupsOBGfwMRjBYH7qRQowT8D/U4LoSvVwOhSQ==",
673
+ "cpu": [
674
+ "s390x"
675
+ ],
676
+ "dev": true,
677
+ "license": "MIT",
678
+ "optional": true,
679
+ "os": [
680
+ "linux"
681
+ ]
682
+ },
683
+ "node_modules/@rollup/rollup-linux-x64-gnu": {
684
+ "version": "4.54.0",
685
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.54.0.tgz",
686
+ "integrity": "sha512-WGt5J8Ij/rvyqpFexxk3ffKqqbLf9AqrTBbWDk7ApGUzaIs6V+s2s84kAxklFwmMF/vBNGrVdYgbblCOFFezMQ==",
687
+ "cpu": [
688
+ "x64"
689
+ ],
690
+ "license": "MIT",
691
+ "optional": true,
692
+ "os": [
693
+ "linux"
694
+ ]
695
+ },
696
+ "node_modules/@rollup/rollup-linux-x64-musl": {
697
+ "version": "4.54.0",
698
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.54.0.tgz",
699
+ "integrity": "sha512-JzQmb38ATzHjxlPHuTH6tE7ojnMKM2kYNzt44LO/jJi8BpceEC8QuXYA908n8r3CNuG/B3BV8VR3Hi1rYtmPiw==",
700
+ "cpu": [
701
+ "x64"
702
+ ],
703
+ "dev": true,
704
+ "license": "MIT",
705
+ "optional": true,
706
+ "os": [
707
+ "linux"
708
+ ]
709
+ },
710
+ "node_modules/@rollup/rollup-openharmony-arm64": {
711
+ "version": "4.54.0",
712
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.54.0.tgz",
713
+ "integrity": "sha512-huT3fd0iC7jigGh7n3q/+lfPcXxBi+om/Rs3yiFxjvSxbSB6aohDFXbWvlspaqjeOh+hx7DDHS+5Es5qRkWkZg==",
714
+ "cpu": [
715
+ "arm64"
716
+ ],
717
+ "dev": true,
718
+ "license": "MIT",
719
+ "optional": true,
720
+ "os": [
721
+ "openharmony"
722
+ ]
723
+ },
724
+ "node_modules/@rollup/rollup-win32-arm64-msvc": {
725
+ "version": "4.54.0",
726
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.54.0.tgz",
727
+ "integrity": "sha512-c2V0W1bsKIKfbLMBu/WGBz6Yci8nJ/ZJdheE0EwB73N3MvHYKiKGs3mVilX4Gs70eGeDaMqEob25Tw2Gb9Nqyw==",
728
+ "cpu": [
729
+ "arm64"
730
+ ],
731
+ "dev": true,
732
+ "license": "MIT",
733
+ "optional": true,
734
+ "os": [
735
+ "win32"
736
+ ]
737
+ },
738
+ "node_modules/@rollup/rollup-win32-ia32-msvc": {
739
+ "version": "4.54.0",
740
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.54.0.tgz",
741
+ "integrity": "sha512-woEHgqQqDCkAzrDhvDipnSirm5vxUXtSKDYTVpZG3nUdW/VVB5VdCYA2iReSj/u3yCZzXID4kuKG7OynPnB3WQ==",
742
+ "cpu": [
743
+ "ia32"
744
+ ],
745
+ "dev": true,
746
+ "license": "MIT",
747
+ "optional": true,
748
+ "os": [
749
+ "win32"
750
+ ]
751
+ },
752
+ "node_modules/@rollup/rollup-win32-x64-gnu": {
753
+ "version": "4.54.0",
754
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.54.0.tgz",
755
+ "integrity": "sha512-dzAc53LOuFvHwbCEOS0rPbXp6SIhAf2txMP5p6mGyOXXw5mWY8NGGbPMPrs4P1WItkfApDathBj/NzMLUZ9rtQ==",
756
+ "cpu": [
757
+ "x64"
758
+ ],
759
+ "dev": true,
760
+ "license": "MIT",
761
+ "optional": true,
762
+ "os": [
763
+ "win32"
764
+ ]
765
+ },
766
+ "node_modules/@rollup/rollup-win32-x64-msvc": {
767
+ "version": "4.54.0",
768
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.54.0.tgz",
769
+ "integrity": "sha512-hYT5d3YNdSh3mbCU1gwQyPgQd3T2ne0A3KG8KSBdav5TiBg6eInVmV+TeR5uHufiIgSFg0XsOWGW5/RhNcSvPg==",
770
+ "cpu": [
771
+ "x64"
772
+ ],
773
+ "dev": true,
774
+ "license": "MIT",
775
+ "optional": true,
776
+ "os": [
777
+ "win32"
778
+ ]
779
+ },
780
+ "node_modules/@types/body-parser": {
781
+ "version": "1.19.6",
782
+ "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.6.tgz",
783
+ "integrity": "sha512-HLFeCYgz89uk22N5Qg3dvGvsv46B8GLvKKo1zKG4NybA8U2DiEO3w9lqGg29t/tfLRJpJ6iQxnVw4OnB7MoM9g==",
784
+ "dev": true,
785
+ "license": "MIT",
786
+ "dependencies": {
787
+ "@types/connect": "*",
788
+ "@types/node": "*"
789
+ }
790
+ },
791
+ "node_modules/@types/connect": {
792
+ "version": "3.4.38",
793
+ "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz",
794
+ "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==",
795
+ "dev": true,
796
+ "license": "MIT",
797
+ "dependencies": {
798
+ "@types/node": "*"
799
+ }
800
+ },
801
+ "node_modules/@types/estree": {
802
+ "version": "1.0.8",
803
+ "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz",
804
+ "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==",
805
+ "dev": true,
806
+ "license": "MIT"
807
+ },
808
+ "node_modules/@types/express": {
809
+ "version": "5.0.6",
810
+ "resolved": "https://registry.npmjs.org/@types/express/-/express-5.0.6.tgz",
811
+ "integrity": "sha512-sKYVuV7Sv9fbPIt/442koC7+IIwK5olP1KWeD88e/idgoJqDm3JV/YUiPwkoKK92ylff2MGxSz1CSjsXelx0YA==",
812
+ "dev": true,
813
+ "license": "MIT",
814
+ "dependencies": {
815
+ "@types/body-parser": "*",
816
+ "@types/express-serve-static-core": "^5.0.0",
817
+ "@types/serve-static": "^2"
818
+ }
819
+ },
820
+ "node_modules/@types/express-serve-static-core": {
821
+ "version": "5.1.0",
822
+ "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-5.1.0.tgz",
823
+ "integrity": "sha512-jnHMsrd0Mwa9Cf4IdOzbz543y4XJepXrbia2T4b6+spXC2We3t1y6K44D3mR8XMFSXMCf3/l7rCgddfx7UNVBA==",
824
+ "dev": true,
825
+ "license": "MIT",
826
+ "dependencies": {
827
+ "@types/node": "*",
828
+ "@types/qs": "*",
829
+ "@types/range-parser": "*",
830
+ "@types/send": "*"
831
+ }
832
+ },
833
+ "node_modules/@types/http-errors": {
834
+ "version": "2.0.5",
835
+ "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.5.tgz",
836
+ "integrity": "sha512-r8Tayk8HJnX0FztbZN7oVqGccWgw98T/0neJphO91KkmOzug1KkofZURD4UaD5uH8AqcFLfdPErnBod0u71/qg==",
837
+ "dev": true,
838
+ "license": "MIT"
839
+ },
840
+ "node_modules/@types/node": {
841
+ "version": "25.0.3",
842
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-25.0.3.tgz",
843
+ "integrity": "sha512-W609buLVRVmeW693xKfzHeIV6nJGGz98uCPfeXI1ELMLXVeKYZ9m15fAMSaUPBHYLGFsVRcMmSCksQOrZV9BYA==",
844
+ "dev": true,
845
+ "license": "MIT",
846
+ "dependencies": {
847
+ "undici-types": "~7.16.0"
848
+ }
849
+ },
850
+ "node_modules/@types/qs": {
851
+ "version": "6.14.0",
852
+ "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.14.0.tgz",
853
+ "integrity": "sha512-eOunJqu0K1923aExK6y8p6fsihYEn/BYuQ4g0CxAAgFc4b/ZLN4CrsRZ55srTdqoiLzU2B2evC+apEIxprEzkQ==",
854
+ "dev": true,
855
+ "license": "MIT"
856
+ },
857
+ "node_modules/@types/range-parser": {
858
+ "version": "1.2.7",
859
+ "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz",
860
+ "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==",
861
+ "dev": true,
862
+ "license": "MIT"
863
+ },
864
+ "node_modules/@types/send": {
865
+ "version": "1.2.1",
866
+ "resolved": "https://registry.npmjs.org/@types/send/-/send-1.2.1.tgz",
867
+ "integrity": "sha512-arsCikDvlU99zl1g69TcAB3mzZPpxgw0UQnaHeC1Nwb015xp8bknZv5rIfri9xTOcMuaVgvabfIRA7PSZVuZIQ==",
868
+ "dev": true,
869
+ "license": "MIT",
870
+ "dependencies": {
871
+ "@types/node": "*"
872
+ }
873
+ },
874
+ "node_modules/@types/serve-static": {
875
+ "version": "2.2.0",
876
+ "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-2.2.0.tgz",
877
+ "integrity": "sha512-8mam4H1NHLtu7nmtalF7eyBH14QyOASmcxHhSfEoRyr0nP/YdoesEtU+uSRvMe96TW/HPTtkoKqQLl53N7UXMQ==",
878
+ "dev": true,
879
+ "license": "MIT",
880
+ "dependencies": {
881
+ "@types/http-errors": "*",
882
+ "@types/node": "*"
883
+ }
884
+ },
885
+ "node_modules/@vitest/expect": {
886
+ "version": "2.1.9",
887
+ "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-2.1.9.tgz",
888
+ "integrity": "sha512-UJCIkTBenHeKT1TTlKMJWy1laZewsRIzYighyYiJKZreqtdxSos/S1t+ktRMQWu2CKqaarrkeszJx1cgC5tGZw==",
889
+ "dev": true,
890
+ "license": "MIT",
891
+ "dependencies": {
892
+ "@vitest/spy": "2.1.9",
893
+ "@vitest/utils": "2.1.9",
894
+ "chai": "^5.1.2",
895
+ "tinyrainbow": "^1.2.0"
896
+ },
897
+ "funding": {
898
+ "url": "https://opencollective.com/vitest"
899
+ }
900
+ },
901
+ "node_modules/@vitest/mocker": {
902
+ "version": "2.1.9",
903
+ "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-2.1.9.tgz",
904
+ "integrity": "sha512-tVL6uJgoUdi6icpxmdrn5YNo3g3Dxv+IHJBr0GXHaEdTcw3F+cPKnsXFhli6nO+f/6SDKPHEK1UN+k+TQv0Ehg==",
905
+ "dev": true,
906
+ "license": "MIT",
907
+ "dependencies": {
908
+ "@vitest/spy": "2.1.9",
909
+ "estree-walker": "^3.0.3",
910
+ "magic-string": "^0.30.12"
911
+ },
912
+ "funding": {
913
+ "url": "https://opencollective.com/vitest"
914
+ },
915
+ "peerDependencies": {
916
+ "msw": "^2.4.9",
917
+ "vite": "^5.0.0"
918
+ },
919
+ "peerDependenciesMeta": {
920
+ "msw": {
921
+ "optional": true
922
+ },
923
+ "vite": {
924
+ "optional": true
925
+ }
926
+ }
927
+ },
928
+ "node_modules/@vitest/pretty-format": {
929
+ "version": "2.1.9",
930
+ "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-2.1.9.tgz",
931
+ "integrity": "sha512-KhRIdGV2U9HOUzxfiHmY8IFHTdqtOhIzCpd8WRdJiE7D/HUcZVD0EgQCVjm+Q9gkUXWgBvMmTtZgIG48wq7sOQ==",
932
+ "dev": true,
933
+ "license": "MIT",
934
+ "dependencies": {
935
+ "tinyrainbow": "^1.2.0"
936
+ },
937
+ "funding": {
938
+ "url": "https://opencollective.com/vitest"
939
+ }
940
+ },
941
+ "node_modules/@vitest/runner": {
942
+ "version": "2.1.9",
943
+ "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-2.1.9.tgz",
944
+ "integrity": "sha512-ZXSSqTFIrzduD63btIfEyOmNcBmQvgOVsPNPe0jYtESiXkhd8u2erDLnMxmGrDCwHCCHE7hxwRDCT3pt0esT4g==",
945
+ "dev": true,
946
+ "license": "MIT",
947
+ "dependencies": {
948
+ "@vitest/utils": "2.1.9",
949
+ "pathe": "^1.1.2"
950
+ },
951
+ "funding": {
952
+ "url": "https://opencollective.com/vitest"
953
+ }
954
+ },
955
+ "node_modules/@vitest/snapshot": {
956
+ "version": "2.1.9",
957
+ "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-2.1.9.tgz",
958
+ "integrity": "sha512-oBO82rEjsxLNJincVhLhaxxZdEtV0EFHMK5Kmx5sJ6H9L183dHECjiefOAdnqpIgT5eZwT04PoggUnW88vOBNQ==",
959
+ "dev": true,
960
+ "license": "MIT",
961
+ "dependencies": {
962
+ "@vitest/pretty-format": "2.1.9",
963
+ "magic-string": "^0.30.12",
964
+ "pathe": "^1.1.2"
965
+ },
966
+ "funding": {
967
+ "url": "https://opencollective.com/vitest"
968
+ }
969
+ },
970
+ "node_modules/@vitest/spy": {
971
+ "version": "2.1.9",
972
+ "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-2.1.9.tgz",
973
+ "integrity": "sha512-E1B35FwzXXTs9FHNK6bDszs7mtydNi5MIfUWpceJ8Xbfb1gBMscAnwLbEu+B44ed6W3XjL9/ehLPHR1fkf1KLQ==",
974
+ "dev": true,
975
+ "license": "MIT",
976
+ "dependencies": {
977
+ "tinyspy": "^3.0.2"
978
+ },
979
+ "funding": {
980
+ "url": "https://opencollective.com/vitest"
981
+ }
982
+ },
983
+ "node_modules/@vitest/utils": {
984
+ "version": "2.1.9",
985
+ "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-2.1.9.tgz",
986
+ "integrity": "sha512-v0psaMSkNJ3A2NMrUEHFRzJtDPFn+/VWZ5WxImB21T9fjucJRmS7xCS3ppEnARb9y11OAzaD+P2Ps+b+BGX5iQ==",
987
+ "dev": true,
988
+ "license": "MIT",
989
+ "dependencies": {
990
+ "@vitest/pretty-format": "2.1.9",
991
+ "loupe": "^3.1.2",
992
+ "tinyrainbow": "^1.2.0"
993
+ },
994
+ "funding": {
995
+ "url": "https://opencollective.com/vitest"
996
+ }
997
+ },
998
+ "node_modules/accepts": {
999
+ "version": "1.3.8",
1000
+ "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz",
1001
+ "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==",
1002
+ "license": "MIT",
1003
+ "dependencies": {
1004
+ "mime-types": "~2.1.34",
1005
+ "negotiator": "0.6.3"
1006
+ },
1007
+ "engines": {
1008
+ "node": ">= 0.6"
1009
+ }
1010
+ },
1011
+ "node_modules/array-flatten": {
1012
+ "version": "1.1.1",
1013
+ "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
1014
+ "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==",
1015
+ "license": "MIT"
1016
+ },
1017
+ "node_modules/assertion-error": {
1018
+ "version": "2.0.1",
1019
+ "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-2.0.1.tgz",
1020
+ "integrity": "sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==",
1021
+ "dev": true,
1022
+ "license": "MIT",
1023
+ "engines": {
1024
+ "node": ">=12"
1025
+ }
1026
+ },
1027
+ "node_modules/body-parser": {
1028
+ "version": "1.20.4",
1029
+ "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.4.tgz",
1030
+ "integrity": "sha512-ZTgYYLMOXY9qKU/57FAo8F+HA2dGX7bqGc71txDRC1rS4frdFI5R7NhluHxH6M0YItAP0sHB4uqAOcYKxO6uGA==",
1031
+ "license": "MIT",
1032
+ "dependencies": {
1033
+ "bytes": "~3.1.2",
1034
+ "content-type": "~1.0.5",
1035
+ "debug": "2.6.9",
1036
+ "depd": "2.0.0",
1037
+ "destroy": "~1.2.0",
1038
+ "http-errors": "~2.0.1",
1039
+ "iconv-lite": "~0.4.24",
1040
+ "on-finished": "~2.4.1",
1041
+ "qs": "~6.14.0",
1042
+ "raw-body": "~2.5.3",
1043
+ "type-is": "~1.6.18",
1044
+ "unpipe": "~1.0.0"
1045
+ },
1046
+ "engines": {
1047
+ "node": ">= 0.8",
1048
+ "npm": "1.2.8000 || >= 1.4.16"
1049
+ }
1050
+ },
1051
+ "node_modules/bytes": {
1052
+ "version": "3.1.2",
1053
+ "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz",
1054
+ "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==",
1055
+ "license": "MIT",
1056
+ "engines": {
1057
+ "node": ">= 0.8"
1058
+ }
1059
+ },
1060
+ "node_modules/cac": {
1061
+ "version": "6.7.14",
1062
+ "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz",
1063
+ "integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==",
1064
+ "dev": true,
1065
+ "license": "MIT",
1066
+ "engines": {
1067
+ "node": ">=8"
1068
+ }
1069
+ },
1070
+ "node_modules/call-bind-apply-helpers": {
1071
+ "version": "1.0.2",
1072
+ "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz",
1073
+ "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==",
1074
+ "license": "MIT",
1075
+ "dependencies": {
1076
+ "es-errors": "^1.3.0",
1077
+ "function-bind": "^1.1.2"
1078
+ },
1079
+ "engines": {
1080
+ "node": ">= 0.4"
1081
+ }
1082
+ },
1083
+ "node_modules/call-bound": {
1084
+ "version": "1.0.4",
1085
+ "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz",
1086
+ "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==",
1087
+ "license": "MIT",
1088
+ "dependencies": {
1089
+ "call-bind-apply-helpers": "^1.0.2",
1090
+ "get-intrinsic": "^1.3.0"
1091
+ },
1092
+ "engines": {
1093
+ "node": ">= 0.4"
1094
+ },
1095
+ "funding": {
1096
+ "url": "https://github.com/sponsors/ljharb"
1097
+ }
1098
+ },
1099
+ "node_modules/chai": {
1100
+ "version": "5.3.3",
1101
+ "resolved": "https://registry.npmjs.org/chai/-/chai-5.3.3.tgz",
1102
+ "integrity": "sha512-4zNhdJD/iOjSH0A05ea+Ke6MU5mmpQcbQsSOkgdaUMJ9zTlDTD/GYlwohmIE2u0gaxHYiVHEn1Fw9mZ/ktJWgw==",
1103
+ "dev": true,
1104
+ "license": "MIT",
1105
+ "dependencies": {
1106
+ "assertion-error": "^2.0.1",
1107
+ "check-error": "^2.1.1",
1108
+ "deep-eql": "^5.0.1",
1109
+ "loupe": "^3.1.0",
1110
+ "pathval": "^2.0.0"
1111
+ },
1112
+ "engines": {
1113
+ "node": ">=18"
1114
+ }
1115
+ },
1116
+ "node_modules/check-error": {
1117
+ "version": "2.1.1",
1118
+ "resolved": "https://registry.npmjs.org/check-error/-/check-error-2.1.1.tgz",
1119
+ "integrity": "sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==",
1120
+ "dev": true,
1121
+ "license": "MIT",
1122
+ "engines": {
1123
+ "node": ">= 16"
1124
+ }
1125
+ },
1126
+ "node_modules/content-disposition": {
1127
+ "version": "0.5.4",
1128
+ "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz",
1129
+ "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==",
1130
+ "license": "MIT",
1131
+ "dependencies": {
1132
+ "safe-buffer": "5.2.1"
1133
+ },
1134
+ "engines": {
1135
+ "node": ">= 0.6"
1136
+ }
1137
+ },
1138
+ "node_modules/content-type": {
1139
+ "version": "1.0.5",
1140
+ "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz",
1141
+ "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==",
1142
+ "license": "MIT",
1143
+ "engines": {
1144
+ "node": ">= 0.6"
1145
+ }
1146
+ },
1147
+ "node_modules/cookie": {
1148
+ "version": "0.7.2",
1149
+ "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz",
1150
+ "integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==",
1151
+ "license": "MIT",
1152
+ "engines": {
1153
+ "node": ">= 0.6"
1154
+ }
1155
+ },
1156
+ "node_modules/cookie-signature": {
1157
+ "version": "1.0.7",
1158
+ "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.7.tgz",
1159
+ "integrity": "sha512-NXdYc3dLr47pBkpUCHtKSwIOQXLVn8dZEuywboCOJY/osA0wFSLlSawr3KN8qXJEyX66FcONTH8EIlVuK0yyFA==",
1160
+ "license": "MIT"
1161
+ },
1162
+ "node_modules/debug": {
1163
+ "version": "2.6.9",
1164
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
1165
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
1166
+ "license": "MIT",
1167
+ "dependencies": {
1168
+ "ms": "2.0.0"
1169
+ }
1170
+ },
1171
+ "node_modules/deep-eql": {
1172
+ "version": "5.0.2",
1173
+ "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-5.0.2.tgz",
1174
+ "integrity": "sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==",
1175
+ "dev": true,
1176
+ "license": "MIT",
1177
+ "engines": {
1178
+ "node": ">=6"
1179
+ }
1180
+ },
1181
+ "node_modules/depd": {
1182
+ "version": "2.0.0",
1183
+ "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
1184
+ "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==",
1185
+ "license": "MIT",
1186
+ "engines": {
1187
+ "node": ">= 0.8"
1188
+ }
1189
+ },
1190
+ "node_modules/destroy": {
1191
+ "version": "1.2.0",
1192
+ "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz",
1193
+ "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==",
1194
+ "license": "MIT",
1195
+ "engines": {
1196
+ "node": ">= 0.8",
1197
+ "npm": "1.2.8000 || >= 1.4.16"
1198
+ }
1199
+ },
1200
+ "node_modules/dunder-proto": {
1201
+ "version": "1.0.1",
1202
+ "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz",
1203
+ "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==",
1204
+ "license": "MIT",
1205
+ "dependencies": {
1206
+ "call-bind-apply-helpers": "^1.0.1",
1207
+ "es-errors": "^1.3.0",
1208
+ "gopd": "^1.2.0"
1209
+ },
1210
+ "engines": {
1211
+ "node": ">= 0.4"
1212
+ }
1213
+ },
1214
+ "node_modules/ee-first": {
1215
+ "version": "1.1.1",
1216
+ "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
1217
+ "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==",
1218
+ "license": "MIT"
1219
+ },
1220
+ "node_modules/encodeurl": {
1221
+ "version": "2.0.0",
1222
+ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz",
1223
+ "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==",
1224
+ "license": "MIT",
1225
+ "engines": {
1226
+ "node": ">= 0.8"
1227
+ }
1228
+ },
1229
+ "node_modules/es-define-property": {
1230
+ "version": "1.0.1",
1231
+ "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz",
1232
+ "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==",
1233
+ "license": "MIT",
1234
+ "engines": {
1235
+ "node": ">= 0.4"
1236
+ }
1237
+ },
1238
+ "node_modules/es-errors": {
1239
+ "version": "1.3.0",
1240
+ "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz",
1241
+ "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==",
1242
+ "license": "MIT",
1243
+ "engines": {
1244
+ "node": ">= 0.4"
1245
+ }
1246
+ },
1247
+ "node_modules/es-module-lexer": {
1248
+ "version": "1.7.0",
1249
+ "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.7.0.tgz",
1250
+ "integrity": "sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==",
1251
+ "dev": true,
1252
+ "license": "MIT"
1253
+ },
1254
+ "node_modules/es-object-atoms": {
1255
+ "version": "1.1.1",
1256
+ "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz",
1257
+ "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==",
1258
+ "license": "MIT",
1259
+ "dependencies": {
1260
+ "es-errors": "^1.3.0"
1261
+ },
1262
+ "engines": {
1263
+ "node": ">= 0.4"
1264
+ }
1265
+ },
1266
+ "node_modules/esbuild": {
1267
+ "version": "0.27.2",
1268
+ "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.27.2.tgz",
1269
+ "integrity": "sha512-HyNQImnsOC7X9PMNaCIeAm4ISCQXs5a5YasTXVliKv4uuBo1dKrG0A+uQS8M5eXjVMnLg3WgXaKvprHlFJQffw==",
1270
+ "dev": true,
1271
+ "hasInstallScript": true,
1272
+ "license": "MIT",
1273
+ "bin": {
1274
+ "esbuild": "bin/esbuild"
1275
+ },
1276
+ "engines": {
1277
+ "node": ">=18"
1278
+ },
1279
+ "optionalDependencies": {
1280
+ "@esbuild/aix-ppc64": "0.27.2",
1281
+ "@esbuild/android-arm": "0.27.2",
1282
+ "@esbuild/android-arm64": "0.27.2",
1283
+ "@esbuild/android-x64": "0.27.2",
1284
+ "@esbuild/darwin-arm64": "0.27.2",
1285
+ "@esbuild/darwin-x64": "0.27.2",
1286
+ "@esbuild/freebsd-arm64": "0.27.2",
1287
+ "@esbuild/freebsd-x64": "0.27.2",
1288
+ "@esbuild/linux-arm": "0.27.2",
1289
+ "@esbuild/linux-arm64": "0.27.2",
1290
+ "@esbuild/linux-ia32": "0.27.2",
1291
+ "@esbuild/linux-loong64": "0.27.2",
1292
+ "@esbuild/linux-mips64el": "0.27.2",
1293
+ "@esbuild/linux-ppc64": "0.27.2",
1294
+ "@esbuild/linux-riscv64": "0.27.2",
1295
+ "@esbuild/linux-s390x": "0.27.2",
1296
+ "@esbuild/linux-x64": "0.27.2",
1297
+ "@esbuild/netbsd-arm64": "0.27.2",
1298
+ "@esbuild/netbsd-x64": "0.27.2",
1299
+ "@esbuild/openbsd-arm64": "0.27.2",
1300
+ "@esbuild/openbsd-x64": "0.27.2",
1301
+ "@esbuild/openharmony-arm64": "0.27.2",
1302
+ "@esbuild/sunos-x64": "0.27.2",
1303
+ "@esbuild/win32-arm64": "0.27.2",
1304
+ "@esbuild/win32-ia32": "0.27.2",
1305
+ "@esbuild/win32-x64": "0.27.2"
1306
+ }
1307
+ },
1308
+ "node_modules/escape-html": {
1309
+ "version": "1.0.3",
1310
+ "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
1311
+ "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==",
1312
+ "license": "MIT"
1313
+ },
1314
+ "node_modules/estree-walker": {
1315
+ "version": "3.0.3",
1316
+ "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz",
1317
+ "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==",
1318
+ "dev": true,
1319
+ "license": "MIT",
1320
+ "dependencies": {
1321
+ "@types/estree": "^1.0.0"
1322
+ }
1323
+ },
1324
+ "node_modules/etag": {
1325
+ "version": "1.8.1",
1326
+ "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz",
1327
+ "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==",
1328
+ "license": "MIT",
1329
+ "engines": {
1330
+ "node": ">= 0.6"
1331
+ }
1332
+ },
1333
+ "node_modules/expect-type": {
1334
+ "version": "1.3.0",
1335
+ "resolved": "https://registry.npmjs.org/expect-type/-/expect-type-1.3.0.tgz",
1336
+ "integrity": "sha512-knvyeauYhqjOYvQ66MznSMs83wmHrCycNEN6Ao+2AeYEfxUIkuiVxdEa1qlGEPK+We3n0THiDciYSsCcgW/DoA==",
1337
+ "dev": true,
1338
+ "license": "Apache-2.0",
1339
+ "engines": {
1340
+ "node": ">=12.0.0"
1341
+ }
1342
+ },
1343
+ "node_modules/express": {
1344
+ "version": "4.22.1",
1345
+ "resolved": "https://registry.npmjs.org/express/-/express-4.22.1.tgz",
1346
+ "integrity": "sha512-F2X8g9P1X7uCPZMA3MVf9wcTqlyNp7IhH5qPCI0izhaOIYXaW9L535tGA3qmjRzpH+bZczqq7hVKxTR4NWnu+g==",
1347
+ "license": "MIT",
1348
+ "dependencies": {
1349
+ "accepts": "~1.3.8",
1350
+ "array-flatten": "1.1.1",
1351
+ "body-parser": "~1.20.3",
1352
+ "content-disposition": "~0.5.4",
1353
+ "content-type": "~1.0.4",
1354
+ "cookie": "~0.7.1",
1355
+ "cookie-signature": "~1.0.6",
1356
+ "debug": "2.6.9",
1357
+ "depd": "2.0.0",
1358
+ "encodeurl": "~2.0.0",
1359
+ "escape-html": "~1.0.3",
1360
+ "etag": "~1.8.1",
1361
+ "finalhandler": "~1.3.1",
1362
+ "fresh": "~0.5.2",
1363
+ "http-errors": "~2.0.0",
1364
+ "merge-descriptors": "1.0.3",
1365
+ "methods": "~1.1.2",
1366
+ "on-finished": "~2.4.1",
1367
+ "parseurl": "~1.3.3",
1368
+ "path-to-regexp": "~0.1.12",
1369
+ "proxy-addr": "~2.0.7",
1370
+ "qs": "~6.14.0",
1371
+ "range-parser": "~1.2.1",
1372
+ "safe-buffer": "5.2.1",
1373
+ "send": "~0.19.0",
1374
+ "serve-static": "~1.16.2",
1375
+ "setprototypeof": "1.2.0",
1376
+ "statuses": "~2.0.1",
1377
+ "type-is": "~1.6.18",
1378
+ "utils-merge": "1.0.1",
1379
+ "vary": "~1.1.2"
1380
+ },
1381
+ "engines": {
1382
+ "node": ">= 0.10.0"
1383
+ },
1384
+ "funding": {
1385
+ "type": "opencollective",
1386
+ "url": "https://opencollective.com/express"
1387
+ }
1388
+ },
1389
+ "node_modules/finalhandler": {
1390
+ "version": "1.3.2",
1391
+ "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.2.tgz",
1392
+ "integrity": "sha512-aA4RyPcd3badbdABGDuTXCMTtOneUCAYH/gxoYRTZlIJdF0YPWuGqiAsIrhNnnqdXGswYk6dGujem4w80UJFhg==",
1393
+ "license": "MIT",
1394
+ "dependencies": {
1395
+ "debug": "2.6.9",
1396
+ "encodeurl": "~2.0.0",
1397
+ "escape-html": "~1.0.3",
1398
+ "on-finished": "~2.4.1",
1399
+ "parseurl": "~1.3.3",
1400
+ "statuses": "~2.0.2",
1401
+ "unpipe": "~1.0.0"
1402
+ },
1403
+ "engines": {
1404
+ "node": ">= 0.8"
1405
+ }
1406
+ },
1407
+ "node_modules/forwarded": {
1408
+ "version": "0.2.0",
1409
+ "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz",
1410
+ "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==",
1411
+ "license": "MIT",
1412
+ "engines": {
1413
+ "node": ">= 0.6"
1414
+ }
1415
+ },
1416
+ "node_modules/fresh": {
1417
+ "version": "0.5.2",
1418
+ "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
1419
+ "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==",
1420
+ "license": "MIT",
1421
+ "engines": {
1422
+ "node": ">= 0.6"
1423
+ }
1424
+ },
1425
+ "node_modules/fsevents": {
1426
+ "version": "2.3.2",
1427
+ "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
1428
+ "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
1429
+ "hasInstallScript": true,
1430
+ "license": "MIT",
1431
+ "optional": true,
1432
+ "os": [
1433
+ "darwin"
1434
+ ],
1435
+ "engines": {
1436
+ "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
1437
+ }
1438
+ },
1439
+ "node_modules/function-bind": {
1440
+ "version": "1.1.2",
1441
+ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
1442
+ "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
1443
+ "license": "MIT",
1444
+ "funding": {
1445
+ "url": "https://github.com/sponsors/ljharb"
1446
+ }
1447
+ },
1448
+ "node_modules/get-intrinsic": {
1449
+ "version": "1.3.0",
1450
+ "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz",
1451
+ "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==",
1452
+ "license": "MIT",
1453
+ "dependencies": {
1454
+ "call-bind-apply-helpers": "^1.0.2",
1455
+ "es-define-property": "^1.0.1",
1456
+ "es-errors": "^1.3.0",
1457
+ "es-object-atoms": "^1.1.1",
1458
+ "function-bind": "^1.1.2",
1459
+ "get-proto": "^1.0.1",
1460
+ "gopd": "^1.2.0",
1461
+ "has-symbols": "^1.1.0",
1462
+ "hasown": "^2.0.2",
1463
+ "math-intrinsics": "^1.1.0"
1464
+ },
1465
+ "engines": {
1466
+ "node": ">= 0.4"
1467
+ },
1468
+ "funding": {
1469
+ "url": "https://github.com/sponsors/ljharb"
1470
+ }
1471
+ },
1472
+ "node_modules/get-proto": {
1473
+ "version": "1.0.1",
1474
+ "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz",
1475
+ "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==",
1476
+ "license": "MIT",
1477
+ "dependencies": {
1478
+ "dunder-proto": "^1.0.1",
1479
+ "es-object-atoms": "^1.0.0"
1480
+ },
1481
+ "engines": {
1482
+ "node": ">= 0.4"
1483
+ }
1484
+ },
1485
+ "node_modules/get-tsconfig": {
1486
+ "version": "4.13.0",
1487
+ "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.13.0.tgz",
1488
+ "integrity": "sha512-1VKTZJCwBrvbd+Wn3AOgQP/2Av+TfTCOlE4AcRJE72W1ksZXbAx8PPBR9RzgTeSPzlPMHrbANMH3LbltH73wxQ==",
1489
+ "dev": true,
1490
+ "license": "MIT",
1491
+ "dependencies": {
1492
+ "resolve-pkg-maps": "^1.0.0"
1493
+ },
1494
+ "funding": {
1495
+ "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1"
1496
+ }
1497
+ },
1498
+ "node_modules/gopd": {
1499
+ "version": "1.2.0",
1500
+ "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz",
1501
+ "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==",
1502
+ "license": "MIT",
1503
+ "engines": {
1504
+ "node": ">= 0.4"
1505
+ },
1506
+ "funding": {
1507
+ "url": "https://github.com/sponsors/ljharb"
1508
+ }
1509
+ },
1510
+ "node_modules/has-symbols": {
1511
+ "version": "1.1.0",
1512
+ "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz",
1513
+ "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==",
1514
+ "license": "MIT",
1515
+ "engines": {
1516
+ "node": ">= 0.4"
1517
+ },
1518
+ "funding": {
1519
+ "url": "https://github.com/sponsors/ljharb"
1520
+ }
1521
+ },
1522
+ "node_modules/hasown": {
1523
+ "version": "2.0.2",
1524
+ "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz",
1525
+ "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==",
1526
+ "license": "MIT",
1527
+ "dependencies": {
1528
+ "function-bind": "^1.1.2"
1529
+ },
1530
+ "engines": {
1531
+ "node": ">= 0.4"
1532
+ }
1533
+ },
1534
+ "node_modules/http-errors": {
1535
+ "version": "2.0.1",
1536
+ "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.1.tgz",
1537
+ "integrity": "sha512-4FbRdAX+bSdmo4AUFuS0WNiPz8NgFt+r8ThgNWmlrjQjt1Q7ZR9+zTlce2859x4KSXrwIsaeTqDoKQmtP8pLmQ==",
1538
+ "license": "MIT",
1539
+ "dependencies": {
1540
+ "depd": "~2.0.0",
1541
+ "inherits": "~2.0.4",
1542
+ "setprototypeof": "~1.2.0",
1543
+ "statuses": "~2.0.2",
1544
+ "toidentifier": "~1.0.1"
1545
+ },
1546
+ "engines": {
1547
+ "node": ">= 0.8"
1548
+ },
1549
+ "funding": {
1550
+ "type": "opencollective",
1551
+ "url": "https://opencollective.com/express"
1552
+ }
1553
+ },
1554
+ "node_modules/iconv-lite": {
1555
+ "version": "0.4.24",
1556
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
1557
+ "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
1558
+ "license": "MIT",
1559
+ "dependencies": {
1560
+ "safer-buffer": ">= 2.1.2 < 3"
1561
+ },
1562
+ "engines": {
1563
+ "node": ">=0.10.0"
1564
+ }
1565
+ },
1566
+ "node_modules/inherits": {
1567
+ "version": "2.0.4",
1568
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
1569
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
1570
+ "license": "ISC"
1571
+ },
1572
+ "node_modules/ipaddr.js": {
1573
+ "version": "1.9.1",
1574
+ "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz",
1575
+ "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==",
1576
+ "license": "MIT",
1577
+ "engines": {
1578
+ "node": ">= 0.10"
1579
+ }
1580
+ },
1581
+ "node_modules/loupe": {
1582
+ "version": "3.2.1",
1583
+ "resolved": "https://registry.npmjs.org/loupe/-/loupe-3.2.1.tgz",
1584
+ "integrity": "sha512-CdzqowRJCeLU72bHvWqwRBBlLcMEtIvGrlvef74kMnV2AolS9Y8xUv1I0U/MNAWMhBlKIoyuEgoJ0t/bbwHbLQ==",
1585
+ "dev": true,
1586
+ "license": "MIT"
1587
+ },
1588
+ "node_modules/magic-string": {
1589
+ "version": "0.30.21",
1590
+ "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz",
1591
+ "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==",
1592
+ "dev": true,
1593
+ "license": "MIT",
1594
+ "dependencies": {
1595
+ "@jridgewell/sourcemap-codec": "^1.5.5"
1596
+ }
1597
+ },
1598
+ "node_modules/math-intrinsics": {
1599
+ "version": "1.1.0",
1600
+ "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz",
1601
+ "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==",
1602
+ "license": "MIT",
1603
+ "engines": {
1604
+ "node": ">= 0.4"
1605
+ }
1606
+ },
1607
+ "node_modules/media-typer": {
1608
+ "version": "0.3.0",
1609
+ "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
1610
+ "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==",
1611
+ "license": "MIT",
1612
+ "engines": {
1613
+ "node": ">= 0.6"
1614
+ }
1615
+ },
1616
+ "node_modules/merge-descriptors": {
1617
+ "version": "1.0.3",
1618
+ "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz",
1619
+ "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==",
1620
+ "license": "MIT",
1621
+ "funding": {
1622
+ "url": "https://github.com/sponsors/sindresorhus"
1623
+ }
1624
+ },
1625
+ "node_modules/methods": {
1626
+ "version": "1.1.2",
1627
+ "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz",
1628
+ "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==",
1629
+ "license": "MIT",
1630
+ "engines": {
1631
+ "node": ">= 0.6"
1632
+ }
1633
+ },
1634
+ "node_modules/mime": {
1635
+ "version": "1.6.0",
1636
+ "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz",
1637
+ "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==",
1638
+ "license": "MIT",
1639
+ "bin": {
1640
+ "mime": "cli.js"
1641
+ },
1642
+ "engines": {
1643
+ "node": ">=4"
1644
+ }
1645
+ },
1646
+ "node_modules/mime-db": {
1647
+ "version": "1.52.0",
1648
+ "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
1649
+ "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
1650
+ "license": "MIT",
1651
+ "engines": {
1652
+ "node": ">= 0.6"
1653
+ }
1654
+ },
1655
+ "node_modules/mime-types": {
1656
+ "version": "2.1.35",
1657
+ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
1658
+ "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
1659
+ "license": "MIT",
1660
+ "dependencies": {
1661
+ "mime-db": "1.52.0"
1662
+ },
1663
+ "engines": {
1664
+ "node": ">= 0.6"
1665
+ }
1666
+ },
1667
+ "node_modules/ms": {
1668
+ "version": "2.0.0",
1669
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
1670
+ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
1671
+ "license": "MIT"
1672
+ },
1673
+ "node_modules/nanoid": {
1674
+ "version": "3.3.11",
1675
+ "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz",
1676
+ "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==",
1677
+ "dev": true,
1678
+ "funding": [
1679
+ {
1680
+ "type": "github",
1681
+ "url": "https://github.com/sponsors/ai"
1682
+ }
1683
+ ],
1684
+ "license": "MIT",
1685
+ "bin": {
1686
+ "nanoid": "bin/nanoid.cjs"
1687
+ },
1688
+ "engines": {
1689
+ "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
1690
+ }
1691
+ },
1692
+ "node_modules/negotiator": {
1693
+ "version": "0.6.3",
1694
+ "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz",
1695
+ "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==",
1696
+ "license": "MIT",
1697
+ "engines": {
1698
+ "node": ">= 0.6"
1699
+ }
1700
+ },
1701
+ "node_modules/object-inspect": {
1702
+ "version": "1.13.4",
1703
+ "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz",
1704
+ "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==",
1705
+ "license": "MIT",
1706
+ "engines": {
1707
+ "node": ">= 0.4"
1708
+ },
1709
+ "funding": {
1710
+ "url": "https://github.com/sponsors/ljharb"
1711
+ }
1712
+ },
1713
+ "node_modules/on-finished": {
1714
+ "version": "2.4.1",
1715
+ "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz",
1716
+ "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==",
1717
+ "license": "MIT",
1718
+ "dependencies": {
1719
+ "ee-first": "1.1.1"
1720
+ },
1721
+ "engines": {
1722
+ "node": ">= 0.8"
1723
+ }
1724
+ },
1725
+ "node_modules/parseurl": {
1726
+ "version": "1.3.3",
1727
+ "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
1728
+ "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==",
1729
+ "license": "MIT",
1730
+ "engines": {
1731
+ "node": ">= 0.8"
1732
+ }
1733
+ },
1734
+ "node_modules/path-to-regexp": {
1735
+ "version": "0.1.12",
1736
+ "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz",
1737
+ "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==",
1738
+ "license": "MIT"
1739
+ },
1740
+ "node_modules/pathe": {
1741
+ "version": "1.1.2",
1742
+ "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz",
1743
+ "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==",
1744
+ "dev": true,
1745
+ "license": "MIT"
1746
+ },
1747
+ "node_modules/pathval": {
1748
+ "version": "2.0.1",
1749
+ "resolved": "https://registry.npmjs.org/pathval/-/pathval-2.0.1.tgz",
1750
+ "integrity": "sha512-//nshmD55c46FuFw26xV/xFAaB5HF9Xdap7HJBBnrKdAd6/GxDBaNA1870O79+9ueg61cZLSVc+OaFlfmObYVQ==",
1751
+ "dev": true,
1752
+ "license": "MIT",
1753
+ "engines": {
1754
+ "node": ">= 14.16"
1755
+ }
1756
+ },
1757
+ "node_modules/picocolors": {
1758
+ "version": "1.1.1",
1759
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz",
1760
+ "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==",
1761
+ "dev": true,
1762
+ "license": "ISC"
1763
+ },
1764
+ "node_modules/playwright": {
1765
+ "version": "1.57.0",
1766
+ "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.57.0.tgz",
1767
+ "integrity": "sha512-ilYQj1s8sr2ppEJ2YVadYBN0Mb3mdo9J0wQ+UuDhzYqURwSoW4n1Xs5vs7ORwgDGmyEh33tRMeS8KhdkMoLXQw==",
1768
+ "license": "Apache-2.0",
1769
+ "dependencies": {
1770
+ "playwright-core": "1.57.0"
1771
+ },
1772
+ "bin": {
1773
+ "playwright": "cli.js"
1774
+ },
1775
+ "engines": {
1776
+ "node": ">=18"
1777
+ },
1778
+ "optionalDependencies": {
1779
+ "fsevents": "2.3.2"
1780
+ }
1781
+ },
1782
+ "node_modules/playwright-core": {
1783
+ "version": "1.57.0",
1784
+ "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.57.0.tgz",
1785
+ "integrity": "sha512-agTcKlMw/mjBWOnD6kFZttAAGHgi/Nw0CZ2o6JqWSbMlI219lAFLZZCyqByTsvVAJq5XA5H8cA6PrvBRpBWEuQ==",
1786
+ "license": "Apache-2.0",
1787
+ "bin": {
1788
+ "playwright-core": "cli.js"
1789
+ },
1790
+ "engines": {
1791
+ "node": ">=18"
1792
+ }
1793
+ },
1794
+ "node_modules/postcss": {
1795
+ "version": "8.5.6",
1796
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz",
1797
+ "integrity": "sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==",
1798
+ "dev": true,
1799
+ "funding": [
1800
+ {
1801
+ "type": "opencollective",
1802
+ "url": "https://opencollective.com/postcss/"
1803
+ },
1804
+ {
1805
+ "type": "tidelift",
1806
+ "url": "https://tidelift.com/funding/github/npm/postcss"
1807
+ },
1808
+ {
1809
+ "type": "github",
1810
+ "url": "https://github.com/sponsors/ai"
1811
+ }
1812
+ ],
1813
+ "license": "MIT",
1814
+ "dependencies": {
1815
+ "nanoid": "^3.3.11",
1816
+ "picocolors": "^1.1.1",
1817
+ "source-map-js": "^1.2.1"
1818
+ },
1819
+ "engines": {
1820
+ "node": "^10 || ^12 || >=14"
1821
+ }
1822
+ },
1823
+ "node_modules/proxy-addr": {
1824
+ "version": "2.0.7",
1825
+ "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz",
1826
+ "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==",
1827
+ "license": "MIT",
1828
+ "dependencies": {
1829
+ "forwarded": "0.2.0",
1830
+ "ipaddr.js": "1.9.1"
1831
+ },
1832
+ "engines": {
1833
+ "node": ">= 0.10"
1834
+ }
1835
+ },
1836
+ "node_modules/qs": {
1837
+ "version": "6.14.0",
1838
+ "resolved": "https://registry.npmjs.org/qs/-/qs-6.14.0.tgz",
1839
+ "integrity": "sha512-YWWTjgABSKcvs/nWBi9PycY/JiPJqOD4JA6o9Sej2AtvSGarXxKC3OQSk4pAarbdQlKAh5D4FCQkJNkW+GAn3w==",
1840
+ "license": "BSD-3-Clause",
1841
+ "dependencies": {
1842
+ "side-channel": "^1.1.0"
1843
+ },
1844
+ "engines": {
1845
+ "node": ">=0.6"
1846
+ },
1847
+ "funding": {
1848
+ "url": "https://github.com/sponsors/ljharb"
1849
+ }
1850
+ },
1851
+ "node_modules/range-parser": {
1852
+ "version": "1.2.1",
1853
+ "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz",
1854
+ "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==",
1855
+ "license": "MIT",
1856
+ "engines": {
1857
+ "node": ">= 0.6"
1858
+ }
1859
+ },
1860
+ "node_modules/raw-body": {
1861
+ "version": "2.5.3",
1862
+ "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.3.tgz",
1863
+ "integrity": "sha512-s4VSOf6yN0rvbRZGxs8Om5CWj6seneMwK3oDb4lWDH0UPhWcxwOWw5+qk24bxq87szX1ydrwylIOp2uG1ojUpA==",
1864
+ "license": "MIT",
1865
+ "dependencies": {
1866
+ "bytes": "~3.1.2",
1867
+ "http-errors": "~2.0.1",
1868
+ "iconv-lite": "~0.4.24",
1869
+ "unpipe": "~1.0.0"
1870
+ },
1871
+ "engines": {
1872
+ "node": ">= 0.8"
1873
+ }
1874
+ },
1875
+ "node_modules/resolve-pkg-maps": {
1876
+ "version": "1.0.0",
1877
+ "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz",
1878
+ "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==",
1879
+ "dev": true,
1880
+ "license": "MIT",
1881
+ "funding": {
1882
+ "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1"
1883
+ }
1884
+ },
1885
+ "node_modules/rollup": {
1886
+ "version": "4.54.0",
1887
+ "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.54.0.tgz",
1888
+ "integrity": "sha512-3nk8Y3a9Ea8szgKhinMlGMhGMw89mqule3KWczxhIzqudyHdCIOHw8WJlj/r329fACjKLEh13ZSk7oE22kyeIw==",
1889
+ "dev": true,
1890
+ "license": "MIT",
1891
+ "dependencies": {
1892
+ "@types/estree": "1.0.8"
1893
+ },
1894
+ "bin": {
1895
+ "rollup": "dist/bin/rollup"
1896
+ },
1897
+ "engines": {
1898
+ "node": ">=18.0.0",
1899
+ "npm": ">=8.0.0"
1900
+ },
1901
+ "optionalDependencies": {
1902
+ "@rollup/rollup-android-arm-eabi": "4.54.0",
1903
+ "@rollup/rollup-android-arm64": "4.54.0",
1904
+ "@rollup/rollup-darwin-arm64": "4.54.0",
1905
+ "@rollup/rollup-darwin-x64": "4.54.0",
1906
+ "@rollup/rollup-freebsd-arm64": "4.54.0",
1907
+ "@rollup/rollup-freebsd-x64": "4.54.0",
1908
+ "@rollup/rollup-linux-arm-gnueabihf": "4.54.0",
1909
+ "@rollup/rollup-linux-arm-musleabihf": "4.54.0",
1910
+ "@rollup/rollup-linux-arm64-gnu": "4.54.0",
1911
+ "@rollup/rollup-linux-arm64-musl": "4.54.0",
1912
+ "@rollup/rollup-linux-loong64-gnu": "4.54.0",
1913
+ "@rollup/rollup-linux-ppc64-gnu": "4.54.0",
1914
+ "@rollup/rollup-linux-riscv64-gnu": "4.54.0",
1915
+ "@rollup/rollup-linux-riscv64-musl": "4.54.0",
1916
+ "@rollup/rollup-linux-s390x-gnu": "4.54.0",
1917
+ "@rollup/rollup-linux-x64-gnu": "4.54.0",
1918
+ "@rollup/rollup-linux-x64-musl": "4.54.0",
1919
+ "@rollup/rollup-openharmony-arm64": "4.54.0",
1920
+ "@rollup/rollup-win32-arm64-msvc": "4.54.0",
1921
+ "@rollup/rollup-win32-ia32-msvc": "4.54.0",
1922
+ "@rollup/rollup-win32-x64-gnu": "4.54.0",
1923
+ "@rollup/rollup-win32-x64-msvc": "4.54.0",
1924
+ "fsevents": "~2.3.2"
1925
+ }
1926
+ },
1927
+ "node_modules/safe-buffer": {
1928
+ "version": "5.2.1",
1929
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
1930
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
1931
+ "funding": [
1932
+ {
1933
+ "type": "github",
1934
+ "url": "https://github.com/sponsors/feross"
1935
+ },
1936
+ {
1937
+ "type": "patreon",
1938
+ "url": "https://www.patreon.com/feross"
1939
+ },
1940
+ {
1941
+ "type": "consulting",
1942
+ "url": "https://feross.org/support"
1943
+ }
1944
+ ],
1945
+ "license": "MIT"
1946
+ },
1947
+ "node_modules/safer-buffer": {
1948
+ "version": "2.1.2",
1949
+ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
1950
+ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
1951
+ "license": "MIT"
1952
+ },
1953
+ "node_modules/send": {
1954
+ "version": "0.19.2",
1955
+ "resolved": "https://registry.npmjs.org/send/-/send-0.19.2.tgz",
1956
+ "integrity": "sha512-VMbMxbDeehAxpOtWJXlcUS5E8iXh6QmN+BkRX1GARS3wRaXEEgzCcB10gTQazO42tpNIya8xIyNx8fll1OFPrg==",
1957
+ "license": "MIT",
1958
+ "dependencies": {
1959
+ "debug": "2.6.9",
1960
+ "depd": "2.0.0",
1961
+ "destroy": "1.2.0",
1962
+ "encodeurl": "~2.0.0",
1963
+ "escape-html": "~1.0.3",
1964
+ "etag": "~1.8.1",
1965
+ "fresh": "~0.5.2",
1966
+ "http-errors": "~2.0.1",
1967
+ "mime": "1.6.0",
1968
+ "ms": "2.1.3",
1969
+ "on-finished": "~2.4.1",
1970
+ "range-parser": "~1.2.1",
1971
+ "statuses": "~2.0.2"
1972
+ },
1973
+ "engines": {
1974
+ "node": ">= 0.8.0"
1975
+ }
1976
+ },
1977
+ "node_modules/send/node_modules/ms": {
1978
+ "version": "2.1.3",
1979
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
1980
+ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
1981
+ "license": "MIT"
1982
+ },
1983
+ "node_modules/serve-static": {
1984
+ "version": "1.16.3",
1985
+ "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.3.tgz",
1986
+ "integrity": "sha512-x0RTqQel6g5SY7Lg6ZreMmsOzncHFU7nhnRWkKgWuMTu5NN0DR5oruckMqRvacAN9d5w6ARnRBXl9xhDCgfMeA==",
1987
+ "license": "MIT",
1988
+ "dependencies": {
1989
+ "encodeurl": "~2.0.0",
1990
+ "escape-html": "~1.0.3",
1991
+ "parseurl": "~1.3.3",
1992
+ "send": "~0.19.1"
1993
+ },
1994
+ "engines": {
1995
+ "node": ">= 0.8.0"
1996
+ }
1997
+ },
1998
+ "node_modules/setprototypeof": {
1999
+ "version": "1.2.0",
2000
+ "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz",
2001
+ "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==",
2002
+ "license": "ISC"
2003
+ },
2004
+ "node_modules/side-channel": {
2005
+ "version": "1.1.0",
2006
+ "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz",
2007
+ "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==",
2008
+ "license": "MIT",
2009
+ "dependencies": {
2010
+ "es-errors": "^1.3.0",
2011
+ "object-inspect": "^1.13.3",
2012
+ "side-channel-list": "^1.0.0",
2013
+ "side-channel-map": "^1.0.1",
2014
+ "side-channel-weakmap": "^1.0.2"
2015
+ },
2016
+ "engines": {
2017
+ "node": ">= 0.4"
2018
+ },
2019
+ "funding": {
2020
+ "url": "https://github.com/sponsors/ljharb"
2021
+ }
2022
+ },
2023
+ "node_modules/side-channel-list": {
2024
+ "version": "1.0.0",
2025
+ "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz",
2026
+ "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==",
2027
+ "license": "MIT",
2028
+ "dependencies": {
2029
+ "es-errors": "^1.3.0",
2030
+ "object-inspect": "^1.13.3"
2031
+ },
2032
+ "engines": {
2033
+ "node": ">= 0.4"
2034
+ },
2035
+ "funding": {
2036
+ "url": "https://github.com/sponsors/ljharb"
2037
+ }
2038
+ },
2039
+ "node_modules/side-channel-map": {
2040
+ "version": "1.0.1",
2041
+ "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz",
2042
+ "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==",
2043
+ "license": "MIT",
2044
+ "dependencies": {
2045
+ "call-bound": "^1.0.2",
2046
+ "es-errors": "^1.3.0",
2047
+ "get-intrinsic": "^1.2.5",
2048
+ "object-inspect": "^1.13.3"
2049
+ },
2050
+ "engines": {
2051
+ "node": ">= 0.4"
2052
+ },
2053
+ "funding": {
2054
+ "url": "https://github.com/sponsors/ljharb"
2055
+ }
2056
+ },
2057
+ "node_modules/side-channel-weakmap": {
2058
+ "version": "1.0.2",
2059
+ "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz",
2060
+ "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==",
2061
+ "license": "MIT",
2062
+ "dependencies": {
2063
+ "call-bound": "^1.0.2",
2064
+ "es-errors": "^1.3.0",
2065
+ "get-intrinsic": "^1.2.5",
2066
+ "object-inspect": "^1.13.3",
2067
+ "side-channel-map": "^1.0.1"
2068
+ },
2069
+ "engines": {
2070
+ "node": ">= 0.4"
2071
+ },
2072
+ "funding": {
2073
+ "url": "https://github.com/sponsors/ljharb"
2074
+ }
2075
+ },
2076
+ "node_modules/siginfo": {
2077
+ "version": "2.0.0",
2078
+ "resolved": "https://registry.npmjs.org/siginfo/-/siginfo-2.0.0.tgz",
2079
+ "integrity": "sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==",
2080
+ "dev": true,
2081
+ "license": "ISC"
2082
+ },
2083
+ "node_modules/source-map-js": {
2084
+ "version": "1.2.1",
2085
+ "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz",
2086
+ "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==",
2087
+ "dev": true,
2088
+ "license": "BSD-3-Clause",
2089
+ "engines": {
2090
+ "node": ">=0.10.0"
2091
+ }
2092
+ },
2093
+ "node_modules/stackback": {
2094
+ "version": "0.0.2",
2095
+ "resolved": "https://registry.npmjs.org/stackback/-/stackback-0.0.2.tgz",
2096
+ "integrity": "sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==",
2097
+ "dev": true,
2098
+ "license": "MIT"
2099
+ },
2100
+ "node_modules/statuses": {
2101
+ "version": "2.0.2",
2102
+ "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.2.tgz",
2103
+ "integrity": "sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==",
2104
+ "license": "MIT",
2105
+ "engines": {
2106
+ "node": ">= 0.8"
2107
+ }
2108
+ },
2109
+ "node_modules/std-env": {
2110
+ "version": "3.10.0",
2111
+ "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.10.0.tgz",
2112
+ "integrity": "sha512-5GS12FdOZNliM5mAOxFRg7Ir0pWz8MdpYm6AY6VPkGpbA7ZzmbzNcBJQ0GPvvyWgcY7QAhCgf9Uy89I03faLkg==",
2113
+ "dev": true,
2114
+ "license": "MIT"
2115
+ },
2116
+ "node_modules/tinybench": {
2117
+ "version": "2.9.0",
2118
+ "resolved": "https://registry.npmjs.org/tinybench/-/tinybench-2.9.0.tgz",
2119
+ "integrity": "sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==",
2120
+ "dev": true,
2121
+ "license": "MIT"
2122
+ },
2123
+ "node_modules/tinyexec": {
2124
+ "version": "0.3.2",
2125
+ "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-0.3.2.tgz",
2126
+ "integrity": "sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==",
2127
+ "dev": true,
2128
+ "license": "MIT"
2129
+ },
2130
+ "node_modules/tinypool": {
2131
+ "version": "1.1.1",
2132
+ "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-1.1.1.tgz",
2133
+ "integrity": "sha512-Zba82s87IFq9A9XmjiX5uZA/ARWDrB03OHlq+Vw1fSdt0I+4/Kutwy8BP4Y/y/aORMo61FQ0vIb5j44vSo5Pkg==",
2134
+ "dev": true,
2135
+ "license": "MIT",
2136
+ "engines": {
2137
+ "node": "^18.0.0 || >=20.0.0"
2138
+ }
2139
+ },
2140
+ "node_modules/tinyrainbow": {
2141
+ "version": "1.2.0",
2142
+ "resolved": "https://registry.npmjs.org/tinyrainbow/-/tinyrainbow-1.2.0.tgz",
2143
+ "integrity": "sha512-weEDEq7Z5eTHPDh4xjX789+fHfF+P8boiFB+0vbWzpbnbsEr/GRaohi/uMKxg8RZMXnl1ItAi/IUHWMsjDV7kQ==",
2144
+ "dev": true,
2145
+ "license": "MIT",
2146
+ "engines": {
2147
+ "node": ">=14.0.0"
2148
+ }
2149
+ },
2150
+ "node_modules/tinyspy": {
2151
+ "version": "3.0.2",
2152
+ "resolved": "https://registry.npmjs.org/tinyspy/-/tinyspy-3.0.2.tgz",
2153
+ "integrity": "sha512-n1cw8k1k0x4pgA2+9XrOkFydTerNcJ1zWCO5Nn9scWHTD+5tp8dghT2x1uduQePZTZgd3Tupf+x9BxJjeJi77Q==",
2154
+ "dev": true,
2155
+ "license": "MIT",
2156
+ "engines": {
2157
+ "node": ">=14.0.0"
2158
+ }
2159
+ },
2160
+ "node_modules/toidentifier": {
2161
+ "version": "1.0.1",
2162
+ "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz",
2163
+ "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==",
2164
+ "license": "MIT",
2165
+ "engines": {
2166
+ "node": ">=0.6"
2167
+ }
2168
+ },
2169
+ "node_modules/tsx": {
2170
+ "version": "4.21.0",
2171
+ "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.21.0.tgz",
2172
+ "integrity": "sha512-5C1sg4USs1lfG0GFb2RLXsdpXqBSEhAaA/0kPL01wxzpMqLILNxIxIOKiILz+cdg/pLnOUxFYOR5yhHU666wbw==",
2173
+ "dev": true,
2174
+ "license": "MIT",
2175
+ "dependencies": {
2176
+ "esbuild": "~0.27.0",
2177
+ "get-tsconfig": "^4.7.5"
2178
+ },
2179
+ "bin": {
2180
+ "tsx": "dist/cli.mjs"
2181
+ },
2182
+ "engines": {
2183
+ "node": ">=18.0.0"
2184
+ },
2185
+ "optionalDependencies": {
2186
+ "fsevents": "~2.3.3"
2187
+ }
2188
+ },
2189
+ "node_modules/tsx/node_modules/fsevents": {
2190
+ "version": "2.3.3",
2191
+ "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz",
2192
+ "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==",
2193
+ "dev": true,
2194
+ "hasInstallScript": true,
2195
+ "license": "MIT",
2196
+ "optional": true,
2197
+ "os": [
2198
+ "darwin"
2199
+ ],
2200
+ "engines": {
2201
+ "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
2202
+ }
2203
+ },
2204
+ "node_modules/type-is": {
2205
+ "version": "1.6.18",
2206
+ "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz",
2207
+ "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==",
2208
+ "license": "MIT",
2209
+ "dependencies": {
2210
+ "media-typer": "0.3.0",
2211
+ "mime-types": "~2.1.24"
2212
+ },
2213
+ "engines": {
2214
+ "node": ">= 0.6"
2215
+ }
2216
+ },
2217
+ "node_modules/typescript": {
2218
+ "version": "5.9.3",
2219
+ "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz",
2220
+ "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==",
2221
+ "dev": true,
2222
+ "license": "Apache-2.0",
2223
+ "bin": {
2224
+ "tsc": "bin/tsc",
2225
+ "tsserver": "bin/tsserver"
2226
+ },
2227
+ "engines": {
2228
+ "node": ">=14.17"
2229
+ }
2230
+ },
2231
+ "node_modules/undici-types": {
2232
+ "version": "7.16.0",
2233
+ "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.16.0.tgz",
2234
+ "integrity": "sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==",
2235
+ "dev": true,
2236
+ "license": "MIT"
2237
+ },
2238
+ "node_modules/unpipe": {
2239
+ "version": "1.0.0",
2240
+ "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz",
2241
+ "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==",
2242
+ "license": "MIT",
2243
+ "engines": {
2244
+ "node": ">= 0.8"
2245
+ }
2246
+ },
2247
+ "node_modules/utils-merge": {
2248
+ "version": "1.0.1",
2249
+ "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz",
2250
+ "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==",
2251
+ "license": "MIT",
2252
+ "engines": {
2253
+ "node": ">= 0.4.0"
2254
+ }
2255
+ },
2256
+ "node_modules/vary": {
2257
+ "version": "1.1.2",
2258
+ "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
2259
+ "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==",
2260
+ "license": "MIT",
2261
+ "engines": {
2262
+ "node": ">= 0.8"
2263
+ }
2264
+ },
2265
+ "node_modules/vite": {
2266
+ "version": "5.4.21",
2267
+ "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.21.tgz",
2268
+ "integrity": "sha512-o5a9xKjbtuhY6Bi5S3+HvbRERmouabWbyUcpXXUA1u+GNUKoROi9byOJ8M0nHbHYHkYICiMlqxkg1KkYmm25Sw==",
2269
+ "dev": true,
2270
+ "license": "MIT",
2271
+ "dependencies": {
2272
+ "esbuild": "^0.21.3",
2273
+ "postcss": "^8.4.43",
2274
+ "rollup": "^4.20.0"
2275
+ },
2276
+ "bin": {
2277
+ "vite": "bin/vite.js"
2278
+ },
2279
+ "engines": {
2280
+ "node": "^18.0.0 || >=20.0.0"
2281
+ },
2282
+ "funding": {
2283
+ "url": "https://github.com/vitejs/vite?sponsor=1"
2284
+ },
2285
+ "optionalDependencies": {
2286
+ "fsevents": "~2.3.3"
2287
+ },
2288
+ "peerDependencies": {
2289
+ "@types/node": "^18.0.0 || >=20.0.0",
2290
+ "less": "*",
2291
+ "lightningcss": "^1.21.0",
2292
+ "sass": "*",
2293
+ "sass-embedded": "*",
2294
+ "stylus": "*",
2295
+ "sugarss": "*",
2296
+ "terser": "^5.4.0"
2297
+ },
2298
+ "peerDependenciesMeta": {
2299
+ "@types/node": {
2300
+ "optional": true
2301
+ },
2302
+ "less": {
2303
+ "optional": true
2304
+ },
2305
+ "lightningcss": {
2306
+ "optional": true
2307
+ },
2308
+ "sass": {
2309
+ "optional": true
2310
+ },
2311
+ "sass-embedded": {
2312
+ "optional": true
2313
+ },
2314
+ "stylus": {
2315
+ "optional": true
2316
+ },
2317
+ "sugarss": {
2318
+ "optional": true
2319
+ },
2320
+ "terser": {
2321
+ "optional": true
2322
+ }
2323
+ }
2324
+ },
2325
+ "node_modules/vite-node": {
2326
+ "version": "2.1.9",
2327
+ "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-2.1.9.tgz",
2328
+ "integrity": "sha512-AM9aQ/IPrW/6ENLQg3AGY4K1N2TGZdR5e4gu/MmmR2xR3Ll1+dib+nook92g4TV3PXVyeyxdWwtaCAiUL0hMxA==",
2329
+ "dev": true,
2330
+ "license": "MIT",
2331
+ "dependencies": {
2332
+ "cac": "^6.7.14",
2333
+ "debug": "^4.3.7",
2334
+ "es-module-lexer": "^1.5.4",
2335
+ "pathe": "^1.1.2",
2336
+ "vite": "^5.0.0"
2337
+ },
2338
+ "bin": {
2339
+ "vite-node": "vite-node.mjs"
2340
+ },
2341
+ "engines": {
2342
+ "node": "^18.0.0 || >=20.0.0"
2343
+ },
2344
+ "funding": {
2345
+ "url": "https://opencollective.com/vitest"
2346
+ }
2347
+ },
2348
+ "node_modules/vite-node/node_modules/debug": {
2349
+ "version": "4.4.3",
2350
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz",
2351
+ "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==",
2352
+ "dev": true,
2353
+ "license": "MIT",
2354
+ "dependencies": {
2355
+ "ms": "^2.1.3"
2356
+ },
2357
+ "engines": {
2358
+ "node": ">=6.0"
2359
+ },
2360
+ "peerDependenciesMeta": {
2361
+ "supports-color": {
2362
+ "optional": true
2363
+ }
2364
+ }
2365
+ },
2366
+ "node_modules/vite-node/node_modules/ms": {
2367
+ "version": "2.1.3",
2368
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
2369
+ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
2370
+ "dev": true,
2371
+ "license": "MIT"
2372
+ },
2373
+ "node_modules/vite/node_modules/@esbuild/aix-ppc64": {
2374
+ "version": "0.21.5",
2375
+ "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz",
2376
+ "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==",
2377
+ "cpu": [
2378
+ "ppc64"
2379
+ ],
2380
+ "dev": true,
2381
+ "license": "MIT",
2382
+ "optional": true,
2383
+ "os": [
2384
+ "aix"
2385
+ ],
2386
+ "engines": {
2387
+ "node": ">=12"
2388
+ }
2389
+ },
2390
+ "node_modules/vite/node_modules/@esbuild/android-arm": {
2391
+ "version": "0.21.5",
2392
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz",
2393
+ "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==",
2394
+ "cpu": [
2395
+ "arm"
2396
+ ],
2397
+ "dev": true,
2398
+ "license": "MIT",
2399
+ "optional": true,
2400
+ "os": [
2401
+ "android"
2402
+ ],
2403
+ "engines": {
2404
+ "node": ">=12"
2405
+ }
2406
+ },
2407
+ "node_modules/vite/node_modules/@esbuild/android-arm64": {
2408
+ "version": "0.21.5",
2409
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz",
2410
+ "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==",
2411
+ "cpu": [
2412
+ "arm64"
2413
+ ],
2414
+ "dev": true,
2415
+ "license": "MIT",
2416
+ "optional": true,
2417
+ "os": [
2418
+ "android"
2419
+ ],
2420
+ "engines": {
2421
+ "node": ">=12"
2422
+ }
2423
+ },
2424
+ "node_modules/vite/node_modules/@esbuild/android-x64": {
2425
+ "version": "0.21.5",
2426
+ "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz",
2427
+ "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==",
2428
+ "cpu": [
2429
+ "x64"
2430
+ ],
2431
+ "dev": true,
2432
+ "license": "MIT",
2433
+ "optional": true,
2434
+ "os": [
2435
+ "android"
2436
+ ],
2437
+ "engines": {
2438
+ "node": ">=12"
2439
+ }
2440
+ },
2441
+ "node_modules/vite/node_modules/@esbuild/darwin-arm64": {
2442
+ "version": "0.21.5",
2443
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz",
2444
+ "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==",
2445
+ "cpu": [
2446
+ "arm64"
2447
+ ],
2448
+ "dev": true,
2449
+ "license": "MIT",
2450
+ "optional": true,
2451
+ "os": [
2452
+ "darwin"
2453
+ ],
2454
+ "engines": {
2455
+ "node": ">=12"
2456
+ }
2457
+ },
2458
+ "node_modules/vite/node_modules/@esbuild/darwin-x64": {
2459
+ "version": "0.21.5",
2460
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz",
2461
+ "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==",
2462
+ "cpu": [
2463
+ "x64"
2464
+ ],
2465
+ "dev": true,
2466
+ "license": "MIT",
2467
+ "optional": true,
2468
+ "os": [
2469
+ "darwin"
2470
+ ],
2471
+ "engines": {
2472
+ "node": ">=12"
2473
+ }
2474
+ },
2475
+ "node_modules/vite/node_modules/@esbuild/freebsd-arm64": {
2476
+ "version": "0.21.5",
2477
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz",
2478
+ "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==",
2479
+ "cpu": [
2480
+ "arm64"
2481
+ ],
2482
+ "dev": true,
2483
+ "license": "MIT",
2484
+ "optional": true,
2485
+ "os": [
2486
+ "freebsd"
2487
+ ],
2488
+ "engines": {
2489
+ "node": ">=12"
2490
+ }
2491
+ },
2492
+ "node_modules/vite/node_modules/@esbuild/freebsd-x64": {
2493
+ "version": "0.21.5",
2494
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz",
2495
+ "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==",
2496
+ "cpu": [
2497
+ "x64"
2498
+ ],
2499
+ "dev": true,
2500
+ "license": "MIT",
2501
+ "optional": true,
2502
+ "os": [
2503
+ "freebsd"
2504
+ ],
2505
+ "engines": {
2506
+ "node": ">=12"
2507
+ }
2508
+ },
2509
+ "node_modules/vite/node_modules/@esbuild/linux-arm": {
2510
+ "version": "0.21.5",
2511
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz",
2512
+ "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==",
2513
+ "cpu": [
2514
+ "arm"
2515
+ ],
2516
+ "dev": true,
2517
+ "license": "MIT",
2518
+ "optional": true,
2519
+ "os": [
2520
+ "linux"
2521
+ ],
2522
+ "engines": {
2523
+ "node": ">=12"
2524
+ }
2525
+ },
2526
+ "node_modules/vite/node_modules/@esbuild/linux-arm64": {
2527
+ "version": "0.21.5",
2528
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz",
2529
+ "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==",
2530
+ "cpu": [
2531
+ "arm64"
2532
+ ],
2533
+ "dev": true,
2534
+ "license": "MIT",
2535
+ "optional": true,
2536
+ "os": [
2537
+ "linux"
2538
+ ],
2539
+ "engines": {
2540
+ "node": ">=12"
2541
+ }
2542
+ },
2543
+ "node_modules/vite/node_modules/@esbuild/linux-ia32": {
2544
+ "version": "0.21.5",
2545
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz",
2546
+ "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==",
2547
+ "cpu": [
2548
+ "ia32"
2549
+ ],
2550
+ "dev": true,
2551
+ "license": "MIT",
2552
+ "optional": true,
2553
+ "os": [
2554
+ "linux"
2555
+ ],
2556
+ "engines": {
2557
+ "node": ">=12"
2558
+ }
2559
+ },
2560
+ "node_modules/vite/node_modules/@esbuild/linux-loong64": {
2561
+ "version": "0.21.5",
2562
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz",
2563
+ "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==",
2564
+ "cpu": [
2565
+ "loong64"
2566
+ ],
2567
+ "dev": true,
2568
+ "license": "MIT",
2569
+ "optional": true,
2570
+ "os": [
2571
+ "linux"
2572
+ ],
2573
+ "engines": {
2574
+ "node": ">=12"
2575
+ }
2576
+ },
2577
+ "node_modules/vite/node_modules/@esbuild/linux-mips64el": {
2578
+ "version": "0.21.5",
2579
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz",
2580
+ "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==",
2581
+ "cpu": [
2582
+ "mips64el"
2583
+ ],
2584
+ "dev": true,
2585
+ "license": "MIT",
2586
+ "optional": true,
2587
+ "os": [
2588
+ "linux"
2589
+ ],
2590
+ "engines": {
2591
+ "node": ">=12"
2592
+ }
2593
+ },
2594
+ "node_modules/vite/node_modules/@esbuild/linux-ppc64": {
2595
+ "version": "0.21.5",
2596
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz",
2597
+ "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==",
2598
+ "cpu": [
2599
+ "ppc64"
2600
+ ],
2601
+ "dev": true,
2602
+ "license": "MIT",
2603
+ "optional": true,
2604
+ "os": [
2605
+ "linux"
2606
+ ],
2607
+ "engines": {
2608
+ "node": ">=12"
2609
+ }
2610
+ },
2611
+ "node_modules/vite/node_modules/@esbuild/linux-riscv64": {
2612
+ "version": "0.21.5",
2613
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz",
2614
+ "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==",
2615
+ "cpu": [
2616
+ "riscv64"
2617
+ ],
2618
+ "dev": true,
2619
+ "license": "MIT",
2620
+ "optional": true,
2621
+ "os": [
2622
+ "linux"
2623
+ ],
2624
+ "engines": {
2625
+ "node": ">=12"
2626
+ }
2627
+ },
2628
+ "node_modules/vite/node_modules/@esbuild/linux-s390x": {
2629
+ "version": "0.21.5",
2630
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz",
2631
+ "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==",
2632
+ "cpu": [
2633
+ "s390x"
2634
+ ],
2635
+ "dev": true,
2636
+ "license": "MIT",
2637
+ "optional": true,
2638
+ "os": [
2639
+ "linux"
2640
+ ],
2641
+ "engines": {
2642
+ "node": ">=12"
2643
+ }
2644
+ },
2645
+ "node_modules/vite/node_modules/@esbuild/linux-x64": {
2646
+ "version": "0.21.5",
2647
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz",
2648
+ "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==",
2649
+ "cpu": [
2650
+ "x64"
2651
+ ],
2652
+ "dev": true,
2653
+ "license": "MIT",
2654
+ "optional": true,
2655
+ "os": [
2656
+ "linux"
2657
+ ],
2658
+ "engines": {
2659
+ "node": ">=12"
2660
+ }
2661
+ },
2662
+ "node_modules/vite/node_modules/@esbuild/netbsd-x64": {
2663
+ "version": "0.21.5",
2664
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz",
2665
+ "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==",
2666
+ "cpu": [
2667
+ "x64"
2668
+ ],
2669
+ "dev": true,
2670
+ "license": "MIT",
2671
+ "optional": true,
2672
+ "os": [
2673
+ "netbsd"
2674
+ ],
2675
+ "engines": {
2676
+ "node": ">=12"
2677
+ }
2678
+ },
2679
+ "node_modules/vite/node_modules/@esbuild/openbsd-x64": {
2680
+ "version": "0.21.5",
2681
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz",
2682
+ "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==",
2683
+ "cpu": [
2684
+ "x64"
2685
+ ],
2686
+ "dev": true,
2687
+ "license": "MIT",
2688
+ "optional": true,
2689
+ "os": [
2690
+ "openbsd"
2691
+ ],
2692
+ "engines": {
2693
+ "node": ">=12"
2694
+ }
2695
+ },
2696
+ "node_modules/vite/node_modules/@esbuild/sunos-x64": {
2697
+ "version": "0.21.5",
2698
+ "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz",
2699
+ "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==",
2700
+ "cpu": [
2701
+ "x64"
2702
+ ],
2703
+ "dev": true,
2704
+ "license": "MIT",
2705
+ "optional": true,
2706
+ "os": [
2707
+ "sunos"
2708
+ ],
2709
+ "engines": {
2710
+ "node": ">=12"
2711
+ }
2712
+ },
2713
+ "node_modules/vite/node_modules/@esbuild/win32-arm64": {
2714
+ "version": "0.21.5",
2715
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz",
2716
+ "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==",
2717
+ "cpu": [
2718
+ "arm64"
2719
+ ],
2720
+ "dev": true,
2721
+ "license": "MIT",
2722
+ "optional": true,
2723
+ "os": [
2724
+ "win32"
2725
+ ],
2726
+ "engines": {
2727
+ "node": ">=12"
2728
+ }
2729
+ },
2730
+ "node_modules/vite/node_modules/@esbuild/win32-ia32": {
2731
+ "version": "0.21.5",
2732
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz",
2733
+ "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==",
2734
+ "cpu": [
2735
+ "ia32"
2736
+ ],
2737
+ "dev": true,
2738
+ "license": "MIT",
2739
+ "optional": true,
2740
+ "os": [
2741
+ "win32"
2742
+ ],
2743
+ "engines": {
2744
+ "node": ">=12"
2745
+ }
2746
+ },
2747
+ "node_modules/vite/node_modules/@esbuild/win32-x64": {
2748
+ "version": "0.21.5",
2749
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz",
2750
+ "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==",
2751
+ "cpu": [
2752
+ "x64"
2753
+ ],
2754
+ "dev": true,
2755
+ "license": "MIT",
2756
+ "optional": true,
2757
+ "os": [
2758
+ "win32"
2759
+ ],
2760
+ "engines": {
2761
+ "node": ">=12"
2762
+ }
2763
+ },
2764
+ "node_modules/vite/node_modules/esbuild": {
2765
+ "version": "0.21.5",
2766
+ "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz",
2767
+ "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==",
2768
+ "dev": true,
2769
+ "hasInstallScript": true,
2770
+ "license": "MIT",
2771
+ "bin": {
2772
+ "esbuild": "bin/esbuild"
2773
+ },
2774
+ "engines": {
2775
+ "node": ">=12"
2776
+ },
2777
+ "optionalDependencies": {
2778
+ "@esbuild/aix-ppc64": "0.21.5",
2779
+ "@esbuild/android-arm": "0.21.5",
2780
+ "@esbuild/android-arm64": "0.21.5",
2781
+ "@esbuild/android-x64": "0.21.5",
2782
+ "@esbuild/darwin-arm64": "0.21.5",
2783
+ "@esbuild/darwin-x64": "0.21.5",
2784
+ "@esbuild/freebsd-arm64": "0.21.5",
2785
+ "@esbuild/freebsd-x64": "0.21.5",
2786
+ "@esbuild/linux-arm": "0.21.5",
2787
+ "@esbuild/linux-arm64": "0.21.5",
2788
+ "@esbuild/linux-ia32": "0.21.5",
2789
+ "@esbuild/linux-loong64": "0.21.5",
2790
+ "@esbuild/linux-mips64el": "0.21.5",
2791
+ "@esbuild/linux-ppc64": "0.21.5",
2792
+ "@esbuild/linux-riscv64": "0.21.5",
2793
+ "@esbuild/linux-s390x": "0.21.5",
2794
+ "@esbuild/linux-x64": "0.21.5",
2795
+ "@esbuild/netbsd-x64": "0.21.5",
2796
+ "@esbuild/openbsd-x64": "0.21.5",
2797
+ "@esbuild/sunos-x64": "0.21.5",
2798
+ "@esbuild/win32-arm64": "0.21.5",
2799
+ "@esbuild/win32-ia32": "0.21.5",
2800
+ "@esbuild/win32-x64": "0.21.5"
2801
+ }
2802
+ },
2803
+ "node_modules/vite/node_modules/fsevents": {
2804
+ "version": "2.3.3",
2805
+ "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz",
2806
+ "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==",
2807
+ "dev": true,
2808
+ "hasInstallScript": true,
2809
+ "license": "MIT",
2810
+ "optional": true,
2811
+ "os": [
2812
+ "darwin"
2813
+ ],
2814
+ "engines": {
2815
+ "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
2816
+ }
2817
+ },
2818
+ "node_modules/vitest": {
2819
+ "version": "2.1.9",
2820
+ "resolved": "https://registry.npmjs.org/vitest/-/vitest-2.1.9.tgz",
2821
+ "integrity": "sha512-MSmPM9REYqDGBI8439mA4mWhV5sKmDlBKWIYbA3lRb2PTHACE0mgKwA8yQ2xq9vxDTuk4iPrECBAEW2aoFXY0Q==",
2822
+ "dev": true,
2823
+ "license": "MIT",
2824
+ "dependencies": {
2825
+ "@vitest/expect": "2.1.9",
2826
+ "@vitest/mocker": "2.1.9",
2827
+ "@vitest/pretty-format": "^2.1.9",
2828
+ "@vitest/runner": "2.1.9",
2829
+ "@vitest/snapshot": "2.1.9",
2830
+ "@vitest/spy": "2.1.9",
2831
+ "@vitest/utils": "2.1.9",
2832
+ "chai": "^5.1.2",
2833
+ "debug": "^4.3.7",
2834
+ "expect-type": "^1.1.0",
2835
+ "magic-string": "^0.30.12",
2836
+ "pathe": "^1.1.2",
2837
+ "std-env": "^3.8.0",
2838
+ "tinybench": "^2.9.0",
2839
+ "tinyexec": "^0.3.1",
2840
+ "tinypool": "^1.0.1",
2841
+ "tinyrainbow": "^1.2.0",
2842
+ "vite": "^5.0.0",
2843
+ "vite-node": "2.1.9",
2844
+ "why-is-node-running": "^2.3.0"
2845
+ },
2846
+ "bin": {
2847
+ "vitest": "vitest.mjs"
2848
+ },
2849
+ "engines": {
2850
+ "node": "^18.0.0 || >=20.0.0"
2851
+ },
2852
+ "funding": {
2853
+ "url": "https://opencollective.com/vitest"
2854
+ },
2855
+ "peerDependencies": {
2856
+ "@edge-runtime/vm": "*",
2857
+ "@types/node": "^18.0.0 || >=20.0.0",
2858
+ "@vitest/browser": "2.1.9",
2859
+ "@vitest/ui": "2.1.9",
2860
+ "happy-dom": "*",
2861
+ "jsdom": "*"
2862
+ },
2863
+ "peerDependenciesMeta": {
2864
+ "@edge-runtime/vm": {
2865
+ "optional": true
2866
+ },
2867
+ "@types/node": {
2868
+ "optional": true
2869
+ },
2870
+ "@vitest/browser": {
2871
+ "optional": true
2872
+ },
2873
+ "@vitest/ui": {
2874
+ "optional": true
2875
+ },
2876
+ "happy-dom": {
2877
+ "optional": true
2878
+ },
2879
+ "jsdom": {
2880
+ "optional": true
2881
+ }
2882
+ }
2883
+ },
2884
+ "node_modules/vitest/node_modules/debug": {
2885
+ "version": "4.4.3",
2886
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz",
2887
+ "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==",
2888
+ "dev": true,
2889
+ "license": "MIT",
2890
+ "dependencies": {
2891
+ "ms": "^2.1.3"
2892
+ },
2893
+ "engines": {
2894
+ "node": ">=6.0"
2895
+ },
2896
+ "peerDependenciesMeta": {
2897
+ "supports-color": {
2898
+ "optional": true
2899
+ }
2900
+ }
2901
+ },
2902
+ "node_modules/vitest/node_modules/ms": {
2903
+ "version": "2.1.3",
2904
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
2905
+ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
2906
+ "dev": true,
2907
+ "license": "MIT"
2908
+ },
2909
+ "node_modules/why-is-node-running": {
2910
+ "version": "2.3.0",
2911
+ "resolved": "https://registry.npmjs.org/why-is-node-running/-/why-is-node-running-2.3.0.tgz",
2912
+ "integrity": "sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==",
2913
+ "dev": true,
2914
+ "license": "MIT",
2915
+ "dependencies": {
2916
+ "siginfo": "^2.0.0",
2917
+ "stackback": "0.0.2"
2918
+ },
2919
+ "bin": {
2920
+ "why-is-node-running": "cli.js"
2921
+ },
2922
+ "engines": {
2923
+ "node": ">=8"
2924
+ }
2925
+ }
2926
+ }
2927
+ }