@weavecode/weave 0.1.6 → 0.1.8

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 (435) hide show
  1. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/cjs/adapter/bun/serve-static.js +1 -1
  2. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/cjs/adapter/bun/websocket.js +1 -1
  3. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/cjs/context.js +1 -1
  4. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/cjs/helper/css/common.js +3 -5
  5. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/cjs/hono-base.js +4 -10
  6. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/cjs/hono.js +0 -1
  7. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/cjs/middleware/basic-auth/index.js +1 -1
  8. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/cjs/middleware/bearer-auth/index.js +1 -1
  9. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/cjs/middleware/csrf/index.js +2 -2
  10. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/cjs/middleware/jwk/jwk.js +2 -2
  11. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/cjs/middleware/jwt/jwt.js +2 -2
  12. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/cjs/middleware/mount/index.js +4 -4
  13. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/cjs/router/reg-exp-router/node.js +13 -11
  14. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/cjs/router/reg-exp-router/prepared-router.js +4 -4
  15. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/cjs/router/reg-exp-router/router.js +39 -51
  16. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/cjs/router/reg-exp-router/trie.js +15 -5
  17. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/cjs/utils/jwt/jwt.js +2 -1
  18. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/cjs/utils/mount.js +35 -0
  19. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/cjs/utils/url.js +10 -0
  20. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/cjs/validator/validator.js +1 -1
  21. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/context.js +1 -1
  22. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/helper/css/common.js +3 -5
  23. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/hono-base.js +4 -10
  24. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/hono.js +0 -1
  25. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/middleware/basic-auth/index.js +1 -1
  26. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/middleware/bearer-auth/index.js +1 -1
  27. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/middleware/csrf/index.js +2 -2
  28. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/middleware/jwk/jwk.js +2 -2
  29. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/middleware/jwt/jwt.js +2 -2
  30. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/middleware/language/language.js +1 -1
  31. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/middleware/mount/index.js +4 -4
  32. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/router/reg-exp-router/node.js +13 -11
  33. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/router/reg-exp-router/prepared-router.js +5 -5
  34. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/router/reg-exp-router/router.js +40 -52
  35. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/router/reg-exp-router/trie.js +15 -5
  36. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/types/middleware/mount/index.d.ts +1 -0
  37. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/types/router/reg-exp-router/node.d.ts +3 -3
  38. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/types/router/reg-exp-router/trie.d.ts +1 -1
  39. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/types/utils/mount.d.ts +4 -0
  40. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/types/utils/url.d.ts +1 -0
  41. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/utils/jwt/jwt.js +2 -1
  42. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/utils/mount.js +34 -0
  43. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/utils/url.js +10 -1
  44. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/dist/validator/validator.js +1 -1
  45. package/node_modules/@modelcontextprotocol/sdk/node_modules/hono/package.json +1 -1
  46. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jwks/remote.js +3 -1
  47. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/deflate.js +2 -1
  48. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/jwt_claims_set.js +2 -1
  49. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/package.json +1 -1
  50. package/node_modules/@weavecode/cli/dist/cli.js +3 -3
  51. package/node_modules/@weavecode/cli/dist/commands/chpass.js +1 -1
  52. package/node_modules/@weavecode/cli/dist/commands/daemon-auth.js +1 -1
  53. package/node_modules/@weavecode/cli/dist/commands/daemon.js +2 -2
  54. package/node_modules/@weavecode/cli/dist/commands/dashboard.js +2 -2
  55. package/node_modules/@weavecode/cli/dist/commands/doctor.js +1 -1
  56. package/node_modules/@weavecode/cli/dist/commands/init.js +1 -1
  57. package/node_modules/@weavecode/cli/dist/commands/msg.js +2 -2
  58. package/node_modules/@weavecode/cli/dist/commands/scan.js +1 -1
  59. package/node_modules/@weavecode/cli/dist/commands/status.js +2 -2
  60. package/node_modules/@weavecode/cli/dist/commands/uninstall.js +1 -1
  61. package/node_modules/@weavecode/cli/dist/i18n/dict/en.js +1 -1
  62. package/node_modules/@weavecode/cli/dist/i18n/dict/zh.d.ts +1 -0
  63. package/node_modules/@weavecode/cli/dist/i18n/dict/zh.js +2 -2
  64. package/node_modules/@weavecode/cli/dist/i18n/index.js +1 -1
  65. package/node_modules/@weavecode/cli/dist/i18n/t.js +1 -1
  66. package/node_modules/@weavecode/cli/dist/init/claudemd-gen.js +3 -3
  67. package/node_modules/@weavecode/cli/dist/init/executor.js +3 -3
  68. package/node_modules/@weavecode/cli/dist/init/git-commit.js +2 -2
  69. package/node_modules/@weavecode/cli/dist/init/harnesses/claude.js +7 -7
  70. package/node_modules/@weavecode/cli/dist/init/harnesses/codex.js +1 -1
  71. package/node_modules/@weavecode/cli/dist/init/instruction-link.js +1 -1
  72. package/node_modules/@weavecode/cli/dist/init/plugin-templates.js +1 -1
  73. package/node_modules/@weavecode/cli/dist/init/prompt.js +4 -4
  74. package/node_modules/@weavecode/cli/dist/init/provision.js +1 -1
  75. package/node_modules/@weavecode/cli/dist/init/uninstall.js +6 -6
  76. package/node_modules/@weavecode/cli/dist/init/wiring.js +1 -1
  77. package/node_modules/@weavecode/cli/dist/parser.js +1 -1
  78. package/node_modules/@weavecode/cli/dist/statusline/ansi.js +1 -1
  79. package/node_modules/@weavecode/cli/package.json +5 -5
  80. package/node_modules/@weavecode/core/dist/harness-checks.js +1 -1
  81. package/node_modules/@weavecode/core/dist/harness.d.ts +89 -0
  82. package/node_modules/@weavecode/core/dist/harness.js +1 -1
  83. package/node_modules/@weavecode/core/dist/index.d.ts +1 -1
  84. package/node_modules/@weavecode/core/dist/index.js +1 -1
  85. package/node_modules/@weavecode/core/dist/platform.js +1 -1
  86. package/node_modules/@weavecode/core/dist/types.js +1 -1
  87. package/node_modules/@weavecode/core/dist/utils/fs.js +1 -1
  88. package/node_modules/@weavecode/core/dist/utils/logger.js +1 -1
  89. package/node_modules/@weavecode/core/package.json +1 -1
  90. package/node_modules/@weavecode/harness/dist/claude/assets.js +4 -4
  91. package/node_modules/@weavecode/harness/dist/claude/capture.js +9 -9
  92. package/node_modules/@weavecode/harness/dist/claude/commands.d.ts +2 -0
  93. package/node_modules/@weavecode/harness/dist/claude/commands.js +3 -2
  94. package/node_modules/@weavecode/harness/dist/claude/config.js +2 -2
  95. package/node_modules/@weavecode/harness/dist/claude/detect.js +1 -1
  96. package/node_modules/@weavecode/harness/dist/claude/edits.js +1 -1
  97. package/node_modules/@weavecode/harness/dist/claude/event-source.js +1 -1
  98. package/node_modules/@weavecode/harness/dist/claude/images.js +2 -2
  99. package/node_modules/@weavecode/harness/dist/claude/index.js +1 -1
  100. package/node_modules/@weavecode/harness/dist/claude/liveness.js +1 -1
  101. package/node_modules/@weavecode/harness/dist/claude/mcp-gen.js +1 -1
  102. package/node_modules/@weavecode/harness/dist/claude/messaging.js +2 -2
  103. package/node_modules/@weavecode/harness/dist/claude/model-aliases.js +1 -1
  104. package/node_modules/@weavecode/harness/dist/claude/narration.js +1 -1
  105. package/node_modules/@weavecode/harness/dist/claude/peers.js +1 -1
  106. package/node_modules/@weavecode/harness/dist/claude/plan.js +1 -1
  107. package/node_modules/@weavecode/harness/dist/claude/plugins.js +4 -4
  108. package/node_modules/@weavecode/harness/dist/claude/prompt-inbox.js +1 -1
  109. package/node_modules/@weavecode/harness/dist/claude/prompt.js +3 -3
  110. package/node_modules/@weavecode/harness/dist/claude/questions.js +2 -2
  111. package/node_modules/@weavecode/harness/dist/claude/resume.js +1 -1
  112. package/node_modules/@weavecode/harness/dist/claude/rewind.js +1 -1
  113. package/node_modules/@weavecode/harness/dist/claude/settings-gen.js +1 -1
  114. package/node_modules/@weavecode/harness/dist/claude/side-question.js +2 -2
  115. package/node_modules/@weavecode/harness/dist/claude/statusline/generator.js +14 -14
  116. package/node_modules/@weavecode/harness/dist/claude/statusline/git-cache.js +1 -1
  117. package/node_modules/@weavecode/harness/dist/claude/statusline/surface.js +2 -2
  118. package/node_modules/@weavecode/harness/dist/claude/transcript-cursor.js +2 -2
  119. package/node_modules/@weavecode/harness/dist/claude/transcript.js +7 -7
  120. package/node_modules/@weavecode/harness/dist/codex/assets.js +1 -1
  121. package/node_modules/@weavecode/harness/dist/codex/capture.js +2 -2
  122. package/node_modules/@weavecode/harness/dist/codex/commands.js +4 -4
  123. package/node_modules/@weavecode/harness/dist/codex/config.js +2 -2
  124. package/node_modules/@weavecode/harness/dist/codex/detect.js +1 -1
  125. package/node_modules/@weavecode/harness/dist/codex/event-source.js +2 -2
  126. package/node_modules/@weavecode/harness/dist/codex/images.js +1 -1
  127. package/node_modules/@weavecode/harness/dist/codex/index.js +1 -1
  128. package/node_modules/@weavecode/harness/dist/codex/liveness.js +1 -1
  129. package/node_modules/@weavecode/harness/dist/codex/mcp.js +1 -1
  130. package/node_modules/@weavecode/harness/dist/codex/messaging.js +2 -2
  131. package/node_modules/@weavecode/harness/dist/codex/narration.js +1 -1
  132. package/node_modules/@weavecode/harness/dist/codex/plugin-state.js +1 -1
  133. package/node_modules/@weavecode/harness/dist/codex/plugins.js +3 -3
  134. package/node_modules/@weavecode/harness/dist/codex/provision.js +1 -1
  135. package/node_modules/@weavecode/harness/dist/codex/questions.js +2 -2
  136. package/node_modules/@weavecode/harness/dist/codex/rollout.js +5 -5
  137. package/node_modules/@weavecode/harness/dist/codex/side-question.js +4 -4
  138. package/node_modules/@weavecode/harness/dist/codex/titles.js +4 -4
  139. package/node_modules/@weavecode/harness/dist/codex/toml.js +13 -13
  140. package/node_modules/@weavecode/harness/dist/codex/transcript.js +2 -2
  141. package/node_modules/@weavecode/harness/dist/driver.d.ts +13 -0
  142. package/node_modules/@weavecode/harness/dist/driver.js +1 -1
  143. package/node_modules/@weavecode/harness/dist/init/generated.js +2 -2
  144. package/node_modules/@weavecode/harness/dist/init/pipeline.js +1 -1
  145. package/node_modules/@weavecode/harness/dist/registry-wiring.js +1 -1
  146. package/node_modules/@weavecode/harness/dist/shared/install-link.js +1 -1
  147. package/node_modules/@weavecode/harness/dist/shared/json-cap.js +1 -1
  148. package/node_modules/@weavecode/harness/package.json +2 -2
  149. package/node_modules/@weavecode/server/dist/config/dotted.js +1 -1
  150. package/node_modules/@weavecode/server/dist/config/profiles.js +2 -2
  151. package/node_modules/@weavecode/server/dist/daemon/ai-config.js +2 -2
  152. package/node_modules/@weavecode/server/dist/daemon/ai-context.js +6 -6
  153. package/node_modules/@weavecode/server/dist/daemon/ai-routes.js +4 -4
  154. package/node_modules/@weavecode/server/dist/daemon/api-log.js +3 -3
  155. package/node_modules/@weavecode/server/dist/daemon/auth-routes.js +1 -1
  156. package/node_modules/@weavecode/server/dist/daemon/auto-start.js +6 -6
  157. package/node_modules/@weavecode/server/dist/daemon/capture-routes.js +1 -1
  158. package/node_modules/@weavecode/server/dist/daemon/config-routes.js +1 -1
  159. package/node_modules/@weavecode/server/dist/daemon/cron.js +1 -1
  160. package/node_modules/@weavecode/server/dist/daemon/dashboard-auth.js +2 -2
  161. package/node_modules/@weavecode/server/dist/daemon/dashboard-pusher.js +1 -1
  162. package/node_modules/@weavecode/server/dist/daemon/data-bus.js +1 -1
  163. package/node_modules/@weavecode/server/dist/daemon/decision-config.js +2 -2
  164. package/node_modules/@weavecode/server/dist/daemon/dev-entry.js +1 -1
  165. package/node_modules/@weavecode/server/dist/daemon/entry.js +2 -2
  166. package/node_modules/@weavecode/server/dist/daemon/fs-browser.js +1 -1
  167. package/node_modules/@weavecode/server/dist/daemon/hook-pipeline.js +1 -1
  168. package/node_modules/@weavecode/server/dist/daemon/hooks-routes.js +1 -1
  169. package/node_modules/@weavecode/server/dist/daemon/http.js +1 -1
  170. package/node_modules/@weavecode/server/dist/daemon/liveness.js +1 -1
  171. package/node_modules/@weavecode/server/dist/daemon/mcp-orchestration.js +1 -1
  172. package/node_modules/@weavecode/server/dist/daemon/narration-watcher.js +2 -2
  173. package/node_modules/@weavecode/server/dist/daemon/opener/backend-ghostty.js +1 -1
  174. package/node_modules/@weavecode/server/dist/daemon/opener/backend-iterm.js +1 -1
  175. package/node_modules/@weavecode/server/dist/daemon/opener/backend-konsole.js +2 -2
  176. package/node_modules/@weavecode/server/dist/daemon/opener/backend-terminal-app.js +1 -1
  177. package/node_modules/@weavecode/server/dist/daemon/opener/backend-wezterm.js +1 -1
  178. package/node_modules/@weavecode/server/dist/daemon/opener/backend-wt.js +1 -1
  179. package/node_modules/@weavecode/server/dist/daemon/opener/backend.js +1 -1
  180. package/node_modules/@weavecode/server/dist/daemon/opener/pty-terminals.js +4 -4
  181. package/node_modules/@weavecode/server/dist/daemon/opener/shared.js +1 -1
  182. package/node_modules/@weavecode/server/dist/daemon/opener/wezterm-mux.js +1 -1
  183. package/node_modules/@weavecode/server/dist/daemon/opener/wt.js +3 -3
  184. package/node_modules/@weavecode/server/dist/daemon/opener.js +1 -1
  185. package/node_modules/@weavecode/server/dist/daemon/pet-seed.d.ts +6 -0
  186. package/node_modules/@weavecode/server/dist/daemon/pet-seed.js +1 -0
  187. package/node_modules/@weavecode/server/dist/daemon/pet-window.d.ts +17 -0
  188. package/node_modules/@weavecode/server/dist/daemon/pet-window.js +2 -0
  189. package/node_modules/@weavecode/server/dist/daemon/port.js +1 -1
  190. package/node_modules/@weavecode/server/dist/daemon/project-files.d.ts +1 -1
  191. package/node_modules/@weavecode/server/dist/daemon/project-files.js +2 -2
  192. package/node_modules/@weavecode/server/dist/daemon/project-harnesses.js +2 -2
  193. package/node_modules/@weavecode/server/dist/daemon/project-updates-refresher.js +1 -1
  194. package/node_modules/@weavecode/server/dist/daemon/prompt-images.js +1 -1
  195. package/node_modules/@weavecode/server/dist/daemon/routes/hooks-admin.js +1 -1
  196. package/node_modules/@weavecode/server/dist/daemon/routes/market.js +1 -1
  197. package/node_modules/@weavecode/server/dist/daemon/routes/orchestration.js +1 -1
  198. package/node_modules/@weavecode/server/dist/daemon/routes/path-refs.js +1 -1
  199. package/node_modules/@weavecode/server/dist/daemon/routes/pets.d.ts +3 -0
  200. package/node_modules/@weavecode/server/dist/daemon/routes/pets.js +1 -0
  201. package/node_modules/@weavecode/server/dist/daemon/routes/project-files.js +1 -1
  202. package/node_modules/@weavecode/server/dist/daemon/routes/projects.js +1 -1
  203. package/node_modules/@weavecode/server/dist/daemon/routes/search.js +1 -1
  204. package/node_modules/@weavecode/server/dist/daemon/routes/session-control.js +1 -1
  205. package/node_modules/@weavecode/server/dist/daemon/routes/session-insights.js +1 -1
  206. package/node_modules/@weavecode/server/dist/daemon/routes/settings-statusline.js +1 -1
  207. package/node_modules/@weavecode/server/dist/daemon/routes/uploads.js +1 -1
  208. package/node_modules/@weavecode/server/dist/daemon/routes/visualizations.js +2 -1
  209. package/node_modules/@weavecode/server/dist/daemon/routes/watches.js +1 -1
  210. package/node_modules/@weavecode/server/dist/daemon/server.d.ts +2 -0
  211. package/node_modules/@weavecode/server/dist/daemon/server.js +8 -8
  212. package/node_modules/@weavecode/server/dist/daemon/session-open.d.ts +17 -0
  213. package/node_modules/@weavecode/server/dist/daemon/session-open.js +1 -1
  214. package/node_modules/@weavecode/server/dist/daemon/session-probe.js +1 -1
  215. package/node_modules/@weavecode/server/dist/daemon/settings.d.ts +21 -0
  216. package/node_modules/@weavecode/server/dist/daemon/settings.js +2 -2
  217. package/node_modules/@weavecode/server/dist/daemon/snapshot-refresher.js +1 -1
  218. package/node_modules/@weavecode/server/dist/daemon/sse-hub.js +1 -1
  219. package/node_modules/@weavecode/server/dist/daemon/start.js +1 -1
  220. package/node_modules/@weavecode/server/dist/daemon/state.js +2 -2
  221. package/node_modules/@weavecode/server/dist/daemon/static.js +1 -1
  222. package/node_modules/@weavecode/server/dist/daemon/terminal-topology-refresher.js +1 -1
  223. package/node_modules/@weavecode/server/dist/daemon/tls.js +1 -1
  224. package/node_modules/@weavecode/server/dist/daemon/toolkit-routes.js +1 -1
  225. package/node_modules/@weavecode/server/dist/daemon/upload-sessions.js +1 -1
  226. package/node_modules/@weavecode/server/dist/db/db.d.ts +4 -1
  227. package/node_modules/@weavecode/server/dist/db/db.js +2 -2
  228. package/node_modules/@weavecode/server/dist/db/layout.js +1 -1
  229. package/node_modules/@weavecode/server/dist/db/paths.d.ts +4 -0
  230. package/node_modules/@weavecode/server/dist/db/paths.js +1 -1
  231. package/node_modules/@weavecode/server/dist/hooks/answer-keys.js +1 -1
  232. package/node_modules/@weavecode/server/dist/hooks/bus.js +1 -1
  233. package/node_modules/@weavecode/server/dist/hooks/dashboard-rate.js +1 -1
  234. package/node_modules/@weavecode/server/dist/hooks/decision-judge.js +1 -1
  235. package/node_modules/@weavecode/server/dist/hooks/delivery/ack-gate.js +1 -1
  236. package/node_modules/@weavecode/server/dist/hooks/delivery/channels.js +1 -1
  237. package/node_modules/@weavecode/server/dist/hooks/delivery/keys.js +1 -1
  238. package/node_modules/@weavecode/server/dist/hooks/delivery/queue.js +1 -1
  239. package/node_modules/@weavecode/server/dist/hooks/delivery/relay.js +1 -1
  240. package/node_modules/@weavecode/server/dist/hooks/delivery/send.js +2 -2
  241. package/node_modules/@weavecode/server/dist/hooks/delivery/views.d.ts +3 -1
  242. package/node_modules/@weavecode/server/dist/hooks/delivery/views.js +1 -1
  243. package/node_modules/@weavecode/server/dist/hooks/dispatcher.js +6 -6
  244. package/node_modules/@weavecode/server/dist/hooks/edge-extract.js +1 -1
  245. package/node_modules/@weavecode/server/dist/hooks/handlers/webhook.js +1 -1
  246. package/node_modules/@weavecode/server/dist/hooks/headless-runner.js +2 -2
  247. package/node_modules/@weavecode/server/dist/hooks/inbox-socket.js +2 -2
  248. package/node_modules/@weavecode/server/dist/hooks/inbox-worker.js +3 -3
  249. package/node_modules/@weavecode/server/dist/hooks/match.js +1 -1
  250. package/node_modules/@weavecode/server/dist/hooks/message-deliverer.js +5 -5
  251. package/node_modules/@weavecode/server/dist/hooks/mirror.js +4 -4
  252. package/node_modules/@weavecode/server/dist/hooks/orchestration-engine.js +7 -7
  253. package/node_modules/@weavecode/server/dist/hooks/orchestration-graph.js +1 -1
  254. package/node_modules/@weavecode/server/dist/hooks/plugin-installer.js +3 -3
  255. package/node_modules/@weavecode/server/dist/hooks/plugin-loader.js +1 -1
  256. package/node_modules/@weavecode/server/dist/hooks/plugin-project-state.js +1 -1
  257. package/node_modules/@weavecode/server/dist/hooks/prompt-flusher.js +1 -1
  258. package/node_modules/@weavecode/server/dist/hooks/promptbox.js +8 -8
  259. package/node_modules/@weavecode/server/dist/hooks/push-notify.js +2 -2
  260. package/node_modules/@weavecode/server/dist/hooks/question-tracker.js +1 -1
  261. package/node_modules/@weavecode/server/dist/hooks/registry.js +1 -1
  262. package/node_modules/@weavecode/server/dist/hooks/resume-runner.js +1 -1
  263. package/node_modules/@weavecode/server/dist/hooks/session-purge.js +1 -1
  264. package/node_modules/@weavecode/server/dist/hooks/side-questions.js +1 -1
  265. package/node_modules/@weavecode/server/dist/hooks/synthetic-sessions.js +1 -1
  266. package/node_modules/@weavecode/server/dist/hooks/toolkit-scan.js +1 -1
  267. package/node_modules/@weavecode/server/dist/hooks/toolkit.js +5 -5
  268. package/node_modules/@weavecode/server/dist/hooks/watch-engine.js +1 -1
  269. package/node_modules/@weavecode/server/dist/index.d.ts +1 -1
  270. package/node_modules/@weavecode/server/dist/index.js +1 -1
  271. package/node_modules/@weavecode/server/dist/install/apply-update.js +1 -1
  272. package/node_modules/@weavecode/server/dist/install/capabilities.js +1 -1
  273. package/node_modules/@weavecode/server/dist/install/codex-toml.js +1 -1
  274. package/node_modules/@weavecode/server/dist/install/file-assets.js +1 -1
  275. package/node_modules/@weavecode/server/dist/install/fingerprint.js +1 -1
  276. package/node_modules/@weavecode/server/dist/install/global-config.js +1 -1
  277. package/node_modules/@weavecode/server/dist/install/global-file-assets.js +1 -1
  278. package/node_modules/@weavecode/server/dist/install/init-files.js +2 -2
  279. package/node_modules/@weavecode/server/dist/install/install-ledger.js +1 -1
  280. package/node_modules/@weavecode/server/dist/install/installer.js +1 -1
  281. package/node_modules/@weavecode/server/dist/install/library-index.js +1 -1
  282. package/node_modules/@weavecode/server/dist/install/mcp-rows.js +1 -1
  283. package/node_modules/@weavecode/server/dist/install/plugin-install.js +1 -1
  284. package/node_modules/@weavecode/server/dist/install/plugin-rows.js +1 -1
  285. package/node_modules/@weavecode/server/dist/install/plugin-templates.js +1 -1
  286. package/node_modules/@weavecode/server/dist/install/project-config.js +1 -1
  287. package/node_modules/@weavecode/server/dist/install/reader.js +1 -1
  288. package/node_modules/@weavecode/server/dist/install/scan-cache.js +1 -1
  289. package/node_modules/@weavecode/server/dist/install/scanner.js +1 -1
  290. package/node_modules/@weavecode/server/dist/install/settings-mcp.js +2 -2
  291. package/node_modules/@weavecode/server/dist/install/updates.js +1 -1
  292. package/node_modules/@weavecode/server/dist/market/builtin.js +1 -1
  293. package/node_modules/@weavecode/server/dist/market/identity.js +1 -1
  294. package/node_modules/@weavecode/server/dist/market/import.js +2 -2
  295. package/node_modules/@weavecode/server/dist/market/refresh.js +1 -1
  296. package/node_modules/@weavecode/server/dist/market/resolve.js +1 -1
  297. package/node_modules/@weavecode/server/dist/market/updates.js +1 -1
  298. package/node_modules/@weavecode/server/dist/registry.js +2 -2
  299. package/node_modules/@weavecode/server/dist/repositories/hook-dispatches.js +5 -5
  300. package/node_modules/@weavecode/server/dist/repositories/hook-events.d.ts +6 -0
  301. package/node_modules/@weavecode/server/dist/repositories/hook-events.js +8 -5
  302. package/node_modules/@weavecode/server/dist/repositories/hook-rules.js +4 -4
  303. package/node_modules/@weavecode/server/dist/repositories/libraries.js +1 -1
  304. package/node_modules/@weavecode/server/dist/repositories/orchestrations.js +7 -7
  305. package/node_modules/@weavecode/server/dist/repositories/plugin-states.js +1 -1
  306. package/node_modules/@weavecode/server/dist/repositories/projects.js +2 -2
  307. package/node_modules/@weavecode/server/dist/repositories/push-subscriptions.js +2 -2
  308. package/node_modules/@weavecode/server/dist/repositories/session-watches.js +4 -4
  309. package/node_modules/@weavecode/server/dist/repositories/sessions.js +2 -2
  310. package/node_modules/@weavecode/server/dist/repositories/uploads.js +11 -11
  311. package/node_modules/@weavecode/server/dist/statusline/cache-sweeper.js +1 -1
  312. package/node_modules/@weavecode/server/dist/statusline/generator.js +1 -1
  313. package/node_modules/@weavecode/server/dist/statusline/manager.js +3 -3
  314. package/node_modules/@weavecode/server/dist/surfaces.js +1 -1
  315. package/node_modules/@weavecode/server/dist/watch/cache.js +1 -1
  316. package/node_modules/@weavecode/server/dist/watch/classifier.js +1 -1
  317. package/node_modules/@weavecode/server/dist/watch/plugin-mods.js +1 -1
  318. package/node_modules/@weavecode/server/dist/watch/sync-scheduler.js +1 -1
  319. package/node_modules/@weavecode/server/dist/watch/watch-service.js +1 -1
  320. package/node_modules/@weavecode/server/package.json +4 -4
  321. package/node_modules/@weavecode/server/web/dist/assets/abnfDiagram-WEYOIA3C-t5OQjhuS.js +1 -0
  322. package/node_modules/@weavecode/server/web/dist/assets/{arc-DH8-rYAa.js → arc-De-uH_Q9.js} +1 -1
  323. package/node_modules/@weavecode/server/web/dist/assets/architectureDiagram-ZHVYKT53-ImPclD43.js +36 -0
  324. package/node_modules/@weavecode/server/web/dist/assets/{blockDiagram-RJAE7QA3-pT5eO-cB.js → blockDiagram-RJAE7QA3-B5xEQs6X.js} +2 -2
  325. package/node_modules/@weavecode/server/web/dist/assets/{c4Diagram-XDPPPE54-DHDBDMb1.js → c4Diagram-XDPPPE54-DP8MjIgJ.js} +2 -2
  326. package/node_modules/@weavecode/server/web/dist/assets/channel-C0RGiobt.js +1 -0
  327. package/node_modules/@weavecode/server/web/dist/assets/{chunk-2E7WHVMD-CT951PH5.js → chunk-2E7WHVMD-C3UFIDyj.js} +1 -1
  328. package/node_modules/@weavecode/server/web/dist/assets/{chunk-2Q5K7J3B-E5AD7_ZY.js → chunk-2Q5K7J3B-Bgw-3YfG.js} +1 -1
  329. package/node_modules/@weavecode/server/web/dist/assets/{chunk-4EMNKR2T-DWz9qkcy.js → chunk-4EMNKR2T-Dy_Wq9qn.js} +1 -1
  330. package/node_modules/@weavecode/server/web/dist/assets/chunk-55XCU76K-D32C0DXX.js +1 -0
  331. package/node_modules/@weavecode/server/web/dist/assets/{chunk-5VM5RSS4-ci6YzbO5.js → chunk-5VM5RSS4-Dpmi-9Gi.js} +1 -1
  332. package/node_modules/@weavecode/server/web/dist/assets/{chunk-JWPE2WC7-CY4mr2f4.js → chunk-JWPE2WC7-CEYXaZDX.js} +1 -1
  333. package/node_modules/@weavecode/server/web/dist/assets/{chunk-VQ5W62QI-CON8zyg8.js → chunk-VQ5W62QI-A616Pgzo.js} +1 -1
  334. package/node_modules/@weavecode/server/web/dist/assets/chunk-XXDRQBXY-CnxFMLWV.js +1 -0
  335. package/node_modules/@weavecode/server/web/dist/assets/chunk-ZCHMQSOR-BhjCTig8.js +2 -0
  336. package/node_modules/@weavecode/server/web/dist/assets/{classDiagram-v2-4MYWR3UA-GiWZ9xtF.js → classDiagram-v2-4MYWR3UA-rzlq5tPv.js} +2 -2
  337. package/node_modules/@weavecode/server/web/dist/assets/cose-bilkent-JH36ORCC-CxWQXzj8.js +1 -0
  338. package/node_modules/@weavecode/server/web/dist/assets/{cynefin-EF2NZ3EQ-9B__MaRM.js → cynefin-EF2NZ3EQ-AFHjx2wU.js} +1 -1
  339. package/node_modules/@weavecode/server/web/dist/assets/cynefinDiagram-WF24UDRP-Bp_Oaf9U.js +62 -0
  340. package/node_modules/@weavecode/server/web/dist/assets/dagre-NK4GIZVX-7oUPIU35.js +4 -0
  341. package/node_modules/@weavecode/server/web/dist/assets/diagram-CBK3MWTC-D_rS_rSY.js +24 -0
  342. package/node_modules/@weavecode/server/web/dist/assets/diagram-I5XIIV2D-Duc_cKMb.js +24 -0
  343. package/node_modules/@weavecode/server/web/dist/assets/{diagram-ODIL2UCW-CckywF4W.js → diagram-ODIL2UCW-DA0XFVXm.js} +2 -2
  344. package/node_modules/@weavecode/server/web/dist/assets/{diagram-PFBEJUXE-Dpjlc7Wh.js → diagram-PFBEJUXE-D1U0Xhtt.js} +2 -2
  345. package/node_modules/@weavecode/server/web/dist/assets/diagram-RJA3I4VV-CbDFY871.js +41 -0
  346. package/node_modules/@weavecode/server/web/dist/assets/{diagram-TYUNFSNR-DgRJ3zL1.js → diagram-TYUNFSNR-jPg9AxQv.js} +2 -2
  347. package/node_modules/@weavecode/server/web/dist/assets/ebnfDiagram-V4P3TTPT-ZHfGTB0N.js +1 -0
  348. package/node_modules/@weavecode/server/web/dist/assets/{elk-QONTBCTQ-Ch6Gs9G9.js → elk-QONTBCTQ-C-ESJrUi.js} +3 -3
  349. package/node_modules/@weavecode/server/web/dist/assets/{erDiagram-KYQIGQAA-COxT-Pxb.js → erDiagram-KYQIGQAA-DGK7TeHj.js} +2 -2
  350. package/node_modules/@weavecode/server/web/dist/assets/{flowDiagram-IUGLLWBU-CJVWnTBa.js → flowDiagram-IUGLLWBU-CVV4rL8v.js} +1 -1
  351. package/node_modules/@weavecode/server/web/dist/assets/ganttDiagram-R7GPNTJY-CuAwNvbm.js +292 -0
  352. package/node_modules/@weavecode/server/web/dist/assets/gitGraphDiagram-PDYL7XHY-D_15Wtf-.js +106 -0
  353. package/node_modules/@weavecode/server/web/dist/assets/infoDiagram-MVDRKAX5-ClqhbrCa.js +2 -0
  354. package/node_modules/@weavecode/server/web/dist/assets/{ishikawaDiagram-HPEHV2GE-BNjEDIZy.js → ishikawaDiagram-HPEHV2GE-CUJ891JX.js} +2 -2
  355. package/node_modules/@weavecode/server/web/dist/assets/{journeyDiagram-BOSHW7O7-Cao6h91a.js → journeyDiagram-BOSHW7O7-B4skiMu-.js} +2 -2
  356. package/node_modules/@weavecode/server/web/dist/assets/{kanban-definition-FNSA4HC5-CXIx2CHQ.js → kanban-definition-FNSA4HC5-UNGJR_y_.js} +2 -2
  357. package/node_modules/@weavecode/server/web/dist/assets/linear-BEB-UwbR.js +1 -0
  358. package/node_modules/@weavecode/server/web/dist/assets/main-B_0jS_Gz.js +1096 -0
  359. package/node_modules/@weavecode/server/web/dist/assets/main-Czzlavi4.css +11 -0
  360. package/node_modules/@weavecode/server/web/dist/assets/{mermaid.core-D39fi_iR.js → mermaid.core-knGXJfjz.js} +4 -4
  361. package/node_modules/@weavecode/server/web/dist/assets/{mindmap-definition-6OY57UG3-DHqpz_AK.js → mindmap-definition-6OY57UG3-CEldbr3a.js} +2 -2
  362. package/node_modules/@weavecode/server/web/dist/assets/modulepreload-polyfill-B5Qt9EMX.js +1 -0
  363. package/node_modules/@weavecode/server/web/dist/assets/pegDiagram-ECIUJNBX-cNCkGLx3.js +1 -0
  364. package/node_modules/@weavecode/server/web/dist/assets/pet-DJCpIDM5.js +1 -0
  365. package/node_modules/@weavecode/server/web/dist/assets/pieDiagram-GNMPY74T-CfMEFiQD.js +39 -0
  366. package/node_modules/@weavecode/server/web/dist/assets/{quadrantDiagram-D57K4MC3-zSM6o7mB.js → quadrantDiagram-D57K4MC3-knmi2rwP.js} +4 -4
  367. package/node_modules/@weavecode/server/web/dist/assets/railroadDiagram-Y72NRBL7-BJ7AzhEo.js +1 -0
  368. package/node_modules/@weavecode/server/web/dist/assets/{requirementDiagram-EQYSW5RA-CbCLBjHf.js → requirementDiagram-EQYSW5RA-Dte2LGQM.js} +2 -2
  369. package/node_modules/@weavecode/server/web/dist/assets/{sankeyDiagram-SY24JHO5-BucVk6EP.js → sankeyDiagram-SY24JHO5-3noLaWgd.js} +2 -2
  370. package/node_modules/@weavecode/server/web/dist/assets/{sequenceDiagram-BLEHNHQU-Dg8CYEnT.js → sequenceDiagram-BLEHNHQU-CclOWTTc.js} +2 -2
  371. package/node_modules/@weavecode/server/web/dist/assets/sizeCapture-INFHLROL-B82sbLhA.js +1 -0
  372. package/node_modules/@weavecode/server/web/dist/assets/{stateDiagram-v2-A6IESKWZ-BvK2l3is.js → stateDiagram-v2-A6IESKWZ-BXfVDwSN.js} +2 -2
  373. package/node_modules/@weavecode/server/web/dist/assets/swimlanes-B3ENRKFQ-D4lKZaeV.js +1 -0
  374. package/node_modules/@weavecode/server/web/dist/assets/swimlanesDiagram-AYQRV4AK-DbdFh_d6.js +8 -0
  375. package/node_modules/@weavecode/server/web/dist/assets/{timeline-definition-JXYKGLGB-CadU4Qq4.js → timeline-definition-JXYKGLGB-D6H6zP5b.js} +2 -2
  376. package/node_modules/@weavecode/server/web/dist/assets/{usecaseDiagram-WPOLBNNX-BYuZwTDZ.js → usecaseDiagram-WPOLBNNX-D2J2bKo_.js} +2 -2
  377. package/node_modules/@weavecode/server/web/dist/assets/{vennDiagram-Q3Y3IDCW-C7zgxe07.js → vennDiagram-Q3Y3IDCW-pdRbIkpB.js} +2 -2
  378. package/node_modules/@weavecode/server/web/dist/assets/{wardleyDiagram-IVAIDKWA-DA4Otf4s.js → wardleyDiagram-IVAIDKWA-Cyd2QPMf.js} +2 -2
  379. package/node_modules/@weavecode/server/web/dist/assets/{xychartDiagram-4URNHDU4-Bs5YGwMU.js → xychartDiagram-4URNHDU4-Bd4BkwVM.js} +2 -2
  380. package/node_modules/@weavecode/server/web/dist/icons/apple-touch-icon.png +0 -0
  381. package/node_modules/@weavecode/server/web/dist/icons/icon-192.png +0 -0
  382. package/node_modules/@weavecode/server/web/dist/icons/icon-512.png +0 -0
  383. package/node_modules/@weavecode/server/web/dist/icons/icon-maskable-512.png +0 -0
  384. package/node_modules/@weavecode/server/web/dist/index.html +12 -2
  385. package/node_modules/@weavecode/server/web/dist/manifest.webmanifest +16 -0
  386. package/node_modules/@weavecode/server/web/dist/pet.html +60 -0
  387. package/node_modules/@weavecode/templates/dist/index.d.ts +2 -0
  388. package/node_modules/@weavecode/templates/dist/index.js +1 -1
  389. package/node_modules/@weavecode/templates/dist/resources/pets/weave-spider/pet.json +7 -0
  390. package/node_modules/@weavecode/templates/dist/resources/pets/weave-spider/spritesheet.png +0 -0
  391. package/node_modules/@weavecode/templates/dist/resources/weave-market/.claude-plugin/marketplace.json +6 -0
  392. package/node_modules/@weavecode/templates/dist/resources/weave-market/plugins/core-skills/weave-pet-hatcher/.claude-plugin/plugin.json +8 -0
  393. package/node_modules/@weavecode/templates/dist/resources/weave-market/plugins/core-skills/weave-pet-hatcher/skills/weave-pet-hatcher/SKILL.md +121 -0
  394. package/node_modules/@weavecode/templates/dist/resources/weave-market/plugins/core-skills/weave-pet-hatcher/skills/weave-pet-hatcher/scripts/assemble-pet.mjs +308 -0
  395. package/node_modules/@weavecode/templates/dist/resources/weave-market/plugins/core-skills/weave-pet-hatcher/weave.json +4 -0
  396. package/node_modules/@weavecode/templates/package.json +2 -2
  397. package/node_modules/selfsigned/node_modules/@peculiar/x509/node_modules/tslib/README.md +3 -8
  398. package/node_modules/selfsigned/node_modules/@peculiar/x509/node_modules/tslib/package.json +1 -1
  399. package/node_modules/selfsigned/node_modules/@peculiar/x509/node_modules/tslib/tslib.d.ts +4 -2
  400. package/node_modules/selfsigned/node_modules/@peculiar/x509/node_modules/tslib/tslib.es6.js +10 -1
  401. package/node_modules/selfsigned/node_modules/@peculiar/x509/node_modules/tslib/tslib.es6.mjs +10 -1
  402. package/node_modules/selfsigned/node_modules/@peculiar/x509/node_modules/tslib/tslib.js +10 -1
  403. package/node_modules/selfsigned/node_modules/pkijs/node_modules/tslib/README.md +3 -8
  404. package/node_modules/selfsigned/node_modules/pkijs/node_modules/tslib/package.json +1 -1
  405. package/node_modules/selfsigned/node_modules/pkijs/node_modules/tslib/tslib.d.ts +4 -2
  406. package/node_modules/selfsigned/node_modules/pkijs/node_modules/tslib/tslib.es6.js +10 -1
  407. package/node_modules/selfsigned/node_modules/pkijs/node_modules/tslib/tslib.es6.mjs +10 -1
  408. package/node_modules/selfsigned/node_modules/pkijs/node_modules/tslib/tslib.js +10 -1
  409. package/package.json +11 -7
  410. package/scripts/preinstall.mjs +70 -0
  411. package/node_modules/@weavecode/server/web/dist/assets/abnfDiagram-WEYOIA3C-CbIFQh0R.js +0 -1
  412. package/node_modules/@weavecode/server/web/dist/assets/architectureDiagram-ZHVYKT53-qnv6S0sc.js +0 -36
  413. package/node_modules/@weavecode/server/web/dist/assets/channel-BHPeeuzN.js +0 -1
  414. package/node_modules/@weavecode/server/web/dist/assets/chunk-55XCU76K-D-SgWD8w.js +0 -1
  415. package/node_modules/@weavecode/server/web/dist/assets/chunk-XXDRQBXY-DXXXZ4pW.js +0 -1
  416. package/node_modules/@weavecode/server/web/dist/assets/chunk-ZCHMQSOR-CukvPvkM.js +0 -2
  417. package/node_modules/@weavecode/server/web/dist/assets/cose-bilkent-JH36ORCC-D7aJ-akq.js +0 -1
  418. package/node_modules/@weavecode/server/web/dist/assets/cynefinDiagram-WF24UDRP-B2ujZh2k.js +0 -62
  419. package/node_modules/@weavecode/server/web/dist/assets/dagre-NK4GIZVX-nHaB6IWf.js +0 -4
  420. package/node_modules/@weavecode/server/web/dist/assets/diagram-CBK3MWTC-xKfjDvgr.js +0 -24
  421. package/node_modules/@weavecode/server/web/dist/assets/diagram-I5XIIV2D-BHT2-5mY.js +0 -24
  422. package/node_modules/@weavecode/server/web/dist/assets/diagram-RJA3I4VV-M6WznOaW.js +0 -41
  423. package/node_modules/@weavecode/server/web/dist/assets/ebnfDiagram-V4P3TTPT-BzzVN__a.js +0 -1
  424. package/node_modules/@weavecode/server/web/dist/assets/ganttDiagram-R7GPNTJY-BkRpWPUl.js +0 -292
  425. package/node_modules/@weavecode/server/web/dist/assets/gitGraphDiagram-PDYL7XHY-Ba8BJcvZ.js +0 -106
  426. package/node_modules/@weavecode/server/web/dist/assets/index-CtifxEiF.css +0 -11
  427. package/node_modules/@weavecode/server/web/dist/assets/index-FwH9INgS.js +0 -1090
  428. package/node_modules/@weavecode/server/web/dist/assets/infoDiagram-MVDRKAX5-HTQ5FUNK.js +0 -2
  429. package/node_modules/@weavecode/server/web/dist/assets/linear-65WmlvQb.js +0 -1
  430. package/node_modules/@weavecode/server/web/dist/assets/pegDiagram-ECIUJNBX-Cpy1nsER.js +0 -1
  431. package/node_modules/@weavecode/server/web/dist/assets/pieDiagram-GNMPY74T-B1IyNqzr.js +0 -39
  432. package/node_modules/@weavecode/server/web/dist/assets/railroadDiagram-Y72NRBL7-oM4XJIwA.js +0 -1
  433. package/node_modules/@weavecode/server/web/dist/assets/sizeCapture-INFHLROL-C51zb7Oc.js +0 -1
  434. package/node_modules/@weavecode/server/web/dist/assets/swimlanes-B3ENRKFQ-Ds7QOfXW.js +0 -1
  435. package/node_modules/@weavecode/server/web/dist/assets/swimlanesDiagram-AYQRV4AK-ByBF02UJ.js +0 -8
@@ -1,7 +1,7 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  const require_middleware_serve_static_index = require("../../middleware/serve-static/index.js");
3
- let node_fs_promises = require("node:fs/promises");
4
3
  let node_path = require("node:path");
4
+ let node_fs_promises = require("node:fs/promises");
5
5
  //#region src/adapter/bun/serve-static.ts
6
6
  /**
7
7
  * @deprecated `hono/bun` will be removed in v5. Install `@hono/bun` and import from there instead.
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_adapter_bun_server = require("./server.js");
3
2
  const require_helper_websocket_index = require("../../helper/websocket/index.js");
3
+ const require_adapter_bun_server = require("./server.js");
4
4
  //#region src/adapter/bun/websocket.ts
5
5
  /**
6
6
  * @internal
@@ -198,7 +198,7 @@ var Context = class {
198
198
  * ```
199
199
  */
200
200
  header = (name, value, options) => {
201
- if (this.finalized) this.#res = createResponseInstance(this.#res.body, this.#res);
201
+ if (this.finalized && !this.#res.bodyUsed) this.#res = createResponseInstance(this.#res.body, this.#res);
202
202
  const headers = this.#res ? this.#res.headers : this.#preparedHeaders ??= new Headers();
203
203
  if (value === void 0) headers.delete(name);
204
204
  else if (options?.append) headers.append(name, value);
@@ -80,10 +80,8 @@ const buildStyleString = (strings, values) => {
80
80
  for (let j = 0, len = vArray.length; j < len; j++) {
81
81
  let value = vArray[j];
82
82
  if (typeof value === "boolean" || value === null || value === void 0) continue;
83
- if (typeof value === "string") {
84
- if (/([\\"'\/])/.test(value)) styleString += value.replace(/([\\"']|(?<=<)\/)/g, "\\$1");
85
- else styleString += value;
86
- } else if (typeof value === "number") styleString += value;
83
+ if (typeof value === "string") styleString += value.replace(/[\\"']/g, "\\$&");
84
+ else if (typeof value === "number") styleString += value;
87
85
  else if (value[CSS_ESCAPED]) styleString += value[CSS_ESCAPED];
88
86
  else if (value[CLASS_NAME].startsWith("@keyframes ")) {
89
87
  selectors.push(value);
@@ -108,7 +106,7 @@ const buildStyleString = (strings, values) => {
108
106
  }
109
107
  return [
110
108
  label,
111
- minify(styleString),
109
+ minify(styleString).replace(/<\//g, "<\\/"),
112
110
  selectors,
113
111
  externalClassNames
114
112
  ];
@@ -4,6 +4,7 @@ const require_utils_url = require("./utils/url.js");
4
4
  const require_context = require("./context.js");
5
5
  const require_router = require("./router.js");
6
6
  const require_utils_constants = require("./utils/constants.js");
7
+ const require_utils_mount = require("./utils/mount.js");
7
8
  //#region src/hono-base.ts
8
9
  /**
9
10
  * @module
@@ -228,17 +229,10 @@ var Hono = class Hono {
228
229
  } catch {}
229
230
  return [c.env, executionContext];
230
231
  };
231
- replaceRequest ||= (() => {
232
- const mergedPath = require_utils_url.mergePath(this._basePath, path);
233
- const pathPrefixLength = mergedPath === "/" ? 0 : mergedPath.length;
234
- return (request) => {
235
- const url = new URL(request.url);
236
- url.pathname = this.getPath(request).slice(pathPrefixLength) || "/";
237
- return new Request(url, request);
238
- };
239
- })();
232
+ const mergedPath = require_utils_url.mergePath(this._basePath, path);
233
+ const defaultReplaceRequest = (c) => require_utils_mount.createMountedRequest(c, mergedPath.replace(/\/$/, ""), require_utils_url.mergePath(mergedPath, "*"));
240
234
  const handler = async (c, next) => {
241
- const res = await applicationHandler(replaceRequest(c.req.raw), ...getOptions(c));
235
+ const res = await applicationHandler(replaceRequest ? replaceRequest(c.req.raw) : defaultReplaceRequest(c), ...getOptions(c));
242
236
  if (res) return res;
243
237
  await next();
244
238
  };
@@ -1,7 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  const require_hono_base = require("./hono-base.js");
3
3
  const require_router_reg_exp_router_router = require("./router/reg-exp-router/router.js");
4
- require("./router/reg-exp-router/index.js");
5
4
  const require_router_smart_router_router = require("./router/smart-router/router.js");
6
5
  const require_router_trie_router_router = require("./router/trie-router/router.js");
7
6
  require("./router/trie-router/index.js");
@@ -81,7 +81,7 @@ const basicAuth = (options, ...users) => {
81
81
  }
82
82
  }
83
83
  const status = 401;
84
- const headers = { "WWW-Authenticate": "Basic realm=\"" + options.realm?.replace(/"/g, "\\\"") + "\"" };
84
+ const headers = { "WWW-Authenticate": "Basic realm=\"" + options.realm?.replace(/[\\"]/g, "\\$&") + "\"" };
85
85
  const responseMessage = typeof options.invalidUserMessage === "function" ? await options.invalidUserMessage(ctx) : options.invalidUserMessage;
86
86
  const res = typeof responseMessage === "string" ? new Response(responseMessage, {
87
87
  status,
@@ -45,7 +45,7 @@ const bearerAuth = (options) => {
45
45
  if (!("token" in options || "verifyToken" in options)) throw new Error("bearer auth middleware requires options for \"token\" or \"verifyToken\"");
46
46
  if (!options.realm) options.realm = "";
47
47
  if (options.prefix === void 0) options.prefix = PREFIX;
48
- const realm = options.realm?.replace(/"/g, "\\\"");
48
+ const realm = options.realm?.replace(/[\\"]/g, "\\$&");
49
49
  const prefix = options.prefix;
50
50
  const tokenRegexp = new RegExp(`^${TOKEN_STRINGS}$`);
51
51
  const wwwAuthenticatePrefix = prefix === "" ? "" : `${prefix} `;
@@ -9,7 +9,7 @@ const secFetchSiteValues = [
9
9
  ];
10
10
  const isSecFetchSite = (value) => secFetchSiteValues.includes(value);
11
11
  const isSafeMethodRe = /^(GET|HEAD|OPTIONS)$/;
12
- const isRequestedByFormElementRe = /^\b(application\/x-www-form-urlencoded|multipart\/form-data|text\/plain)\b/i;
12
+ const isCsrfContentTypeRe = /^\b(application\/x-www-form-urlencoded|multipart\/form-data|text\/(?:plain|ping))\b/i;
13
13
  /**
14
14
  * CSRF Protection Middleware for Hono.
15
15
  *
@@ -95,7 +95,7 @@ const csrf = (options) => {
95
95
  return await secFetchSiteHandler(secFetchSite, c);
96
96
  };
97
97
  return async function csrf(c, next) {
98
- if (!isSafeMethodRe.test(c.req.method) && isRequestedByFormElementRe.test(c.req.header("content-type") || "text/plain") && !await isAllowedSecFetchSite(c.req.header("sec-fetch-site"), c) && !await isAllowedOrigin(c.req.header("origin"), c)) {
98
+ if (!isSafeMethodRe.test(c.req.method) && isCsrfContentTypeRe.test(c.req.header("content-type") || "text/plain") && !await isAllowedSecFetchSite(c.req.header("sec-fetch-site"), c) && !await isAllowedOrigin(c.req.header("origin"), c)) {
99
99
  const res = new Response("Forbidden", { status: 403 });
100
100
  throw new require_http_exception.HTTPException(403, { res });
101
101
  }
@@ -110,8 +110,8 @@ const jwk = (options, init) => {
110
110
  };
111
111
  };
112
112
  function unauthorizedResponse(opts) {
113
- const realm = (opts.realm ?? opts.ctx.req.url).replace(/"/g, "\\\"");
114
- const errDescription = opts.errDescription.replace(/"/g, "\\\"");
113
+ const realm = (opts.realm ?? opts.ctx.req.url).replace(/[\\"]/g, "\\$&");
114
+ const errDescription = opts.errDescription.replace(/[\\"]/g, "\\$&");
115
115
  return new Response("Unauthorized", {
116
116
  status: 401,
117
117
  statusText: opts.statusText,
@@ -104,8 +104,8 @@ const jwt = (options) => {
104
104
  };
105
105
  };
106
106
  function unauthorizedResponse(opts) {
107
- const realm = (opts.realm ?? opts.ctx.req.url).replace(/"/g, "\\\"");
108
- const errDescription = opts.errDescription.replace(/"/g, "\\\"");
107
+ const realm = (opts.realm ?? opts.ctx.req.url).replace(/[\\"]/g, "\\$&");
108
+ const errDescription = opts.errDescription.replace(/[\\"]/g, "\\$&");
109
109
  return new Response("Unauthorized", {
110
110
  status: 401,
111
111
  statusText: opts.statusText,
@@ -1,11 +1,10 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_utils_mount = require("../../utils/mount.js");
2
3
  const require_helper_route_index = require("../../helper/route/index.js");
3
4
  //#region src/middleware/mount/index.ts
4
5
  const defaultReplaceRequest = (c) => {
5
- const pathPrefix = require_helper_route_index.routePath(c).replace(/\/\*$/, "");
6
- const url = new URL(c.req.raw.url);
7
- url.pathname = c.req.path.slice(pathPrefix.length) || "/";
8
- return new Request(url, c.req.raw);
6
+ const path = require_helper_route_index.routePath(c);
7
+ return require_utils_mount.createMountedRequest(c, path.replace(/\/?\*$/, ""), path);
9
8
  };
10
9
  const defaultGetOptions = (c) => {
11
10
  let executionContext = void 0;
@@ -22,6 +21,7 @@ const defaultGetOptions = (c) => {
22
21
  * @param {Function} applicationHandler - other Request Handler
23
22
  * @param {MountOptions} [options] - options of `mount()`
24
23
  * @returns {MiddlewareHandler} handler to register with `app.all()`
24
+ * @throws {Error} If the route ends with a wildcard inside a segment (e.g. `/assets*`), or automatic request rewriting encounters duplicate path parameter names.
25
25
  *
26
26
  * @example
27
27
  * ```ts
@@ -2,8 +2,8 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  const require_router_utils = require("../utils.js");
3
3
  //#region src/router/reg-exp-router/node.ts
4
4
  const LABEL_REG_EXP_STR = "[^/]+";
5
- const ONLY_WILDCARD_REG_EXP_STR = ".*";
6
- const TAIL_WILDCARD_REG_EXP_STR = "(?:|/.*)";
5
+ const ONLY_WILDCARD_REG_EXP_STR = "[^]*";
6
+ const TAIL_WILDCARD_REG_EXP_STR = "(?:|/[^]*)";
7
7
  const PATH_ERROR = Symbol();
8
8
  const regExpMetaChars = /* @__PURE__ */ new Set(".\\+*[^]$()");
9
9
  /**
@@ -16,8 +16,8 @@ const regExpMetaChars = /* @__PURE__ */ new Set(".\\+*[^]$()");
16
16
  function compareKey(a, b) {
17
17
  if (a.length === 1) return b.length === 1 ? a < b ? -1 : 1 : -1;
18
18
  if (b.length === 1) return 1;
19
- if (a === ".*" || a === "(?:|/.*)") return b === "(?:|/.*)" ? -1 : 1;
20
- else if (b === ".*" || b === "(?:|/.*)") return -1;
19
+ if (a === "[^]*" || a === "(?:|/[^]*)") return b === "[^]*" ? -1 : 1;
20
+ else if (b === "[^]*" || b === "(?:|/[^]*)") return -1;
21
21
  if (a === "[^/]+") return 1;
22
22
  else if (b === "[^/]+") return -1;
23
23
  return a.length === b.length ? a < b ? -1 : 1 : b.length - a.length;
@@ -26,14 +26,14 @@ var Node = class Node {
26
26
  #index;
27
27
  #varIndex;
28
28
  #children = require_router_utils.createNullObject();
29
- insert(tokens, index, paramMap, context, isStatic) {
29
+ insert(tokens, index, paramMap, context, keys) {
30
30
  let node = this;
31
31
  for (let i = 0, len = tokens.length; i < len; i++) {
32
32
  const token = tokens[i];
33
33
  const pattern = token.length === 1 ? token === "*" ? i === len - 1 ? [
34
34
  "",
35
35
  "",
36
- ".*"
36
+ ONLY_WILDCARD_REG_EXP_STR
37
37
  ] : [
38
38
  "",
39
39
  "",
@@ -48,15 +48,16 @@ var Node = class Node {
48
48
  const name = pattern[1];
49
49
  let regexpStr = pattern[2] || "[^/]+";
50
50
  if (name && pattern[2]) {
51
- if (regexpStr === ".*") throw PATH_ERROR;
51
+ if (new RegExp(regexpStr).test("")) throw PATH_ERROR;
52
52
  regexpStr = regexpStr.replace(/^\((?!\?:)(?=[^)]+\)$)/, "(?:");
53
53
  if (/\((?!\?:)/.test(regexpStr)) throw PATH_ERROR;
54
54
  if (regexpStr.length === 1 && regExpMetaChars.has(regexpStr)) throw PATH_ERROR;
55
55
  }
56
+ keys.push(regexpStr);
56
57
  nextNode = node.#children[regexpStr];
57
58
  if (!nextNode) {
58
- if (regexpStr !== ".*" && regexpStr !== "(?:|/.*)") {
59
- for (const k in node.#children) if ((regexpStr.length > 1 || k.length > 1) && k !== ".*" && k !== "(?:|/.*)") throw PATH_ERROR;
59
+ if (regexpStr !== "[^]*" && regexpStr !== "(?:|/[^]*)") {
60
+ for (const k in node.#children) if ((regexpStr.length > 1 || k.length > 1) && k !== "[^]*" && k !== "(?:|/[^]*)") throw PATH_ERROR;
60
61
  }
61
62
  nextNode = node.#children[regexpStr] = new Node();
62
63
  }
@@ -65,16 +66,17 @@ var Node = class Node {
65
66
  paramMap.push([name, nextNode.#varIndex]);
66
67
  }
67
68
  } else {
69
+ keys.push(token);
68
70
  nextNode = node.#children[token];
69
71
  if (!nextNode) {
70
- for (const k in node.#children) if (k.length > 1 && k !== ".*" && k !== "(?:|/.*)") throw PATH_ERROR;
72
+ for (const k in node.#children) if (k.length > 1 && k !== "[^]*" && k !== "(?:|/[^]*)") throw PATH_ERROR;
71
73
  nextNode = node.#children[token] = new Node();
72
74
  }
73
75
  }
74
76
  node = nextNode;
75
77
  }
76
78
  if (node.#index !== void 0) throw PATH_ERROR;
77
- node.#index = isStatic ? -1 : index;
79
+ node.#index = index;
78
80
  }
79
81
  buildRegExpStr() {
80
82
  const strList = Object.keys(this.#children).sort(compareKey).map((k) => {
@@ -28,7 +28,7 @@ var PreparedRegExpRouter = class {
28
28
  if (!this.#matchers[method]) {
29
29
  const all = this.#matchers["ALL"];
30
30
  const staticMap = {};
31
- for (const key in all[2]) staticMap[key] = [all[2][key][0].slice(), require_router_reg_exp_router_matcher.emptyParam];
31
+ for (const key in all[2]) staticMap[key] = [all[2][key][0].slice(), all[2][key][1]];
32
32
  this.#matchers[method] = [
33
33
  all[0],
34
34
  all[1].map((list) => Array.isArray(list) ? list.slice() : 0),
@@ -72,7 +72,7 @@ const buildInitParams = ({ paths }) => {
72
72
  ...map
73
73
  };
74
74
  else relocateMap[path] = [[[], map]];
75
- if (relocateMap[path][0][0].findIndex((j) => j === i) === -1) relocateMap[path][0][0].push(i);
75
+ if (!relocateMap[path][0][0].includes(i)) relocateMap[path][0][0].push(i);
76
76
  }
77
77
  });
78
78
  });
@@ -80,7 +80,7 @@ const buildInitParams = ({ paths }) => {
80
80
  if (p === path) {
81
81
  relocateMap[path] ||= [[[]]];
82
82
  const value = path2 === path ? "" : path2;
83
- if (relocateMap[path][0][0].findIndex((v) => v === value) === -1) relocateMap[path][0][0].push(value);
83
+ if (!relocateMap[path][0][0].includes(value)) relocateMap[path][0][0].push(value);
84
84
  }
85
85
  });
86
86
  }
@@ -89,7 +89,7 @@ const buildInitParams = ({ paths }) => {
89
89
  return [matchers, relocateMap];
90
90
  };
91
91
  const serializeInitParams = ([matchers, relocateMap]) => {
92
- return `[${JSON.stringify(matchers, (_, value) => value instanceof RegExp ? `##${value.toString()}##` : value).replace(/"##(.+?)##"/g, (_, str) => str.replace(/\\\\/g, "\\"))},${JSON.stringify(relocateMap)}]`;
92
+ return `[${JSON.stringify(matchers, (_, value) => value instanceof RegExp || value === void 0 ? `##${value}##` : value).replace(/"##(.+?)##"/g, (_, str) => str.replace(/\\\\/g, "\\"))},${JSON.stringify(relocateMap)}]`;
93
93
  };
94
94
  //#endregion
95
95
  exports.PreparedRegExpRouter = PreparedRegExpRouter;
@@ -6,21 +6,21 @@ const require_router_reg_exp_router_matcher = require("./matcher.js");
6
6
  const require_router_reg_exp_router_node = require("./node.js");
7
7
  const require_router_reg_exp_router_trie = require("./trie.js");
8
8
  //#region src/router/reg-exp-router/router.ts
9
- let wildcardRegExpCache = require_router_utils.createNullObject();
10
- function buildWildcardRegExp(path) {
11
- return wildcardRegExpCache[path] ??= new RegExp(`^${path.replace(/\/:[^/{}]+(?:\{\[\^\/]\+})?(?=[/{]|$)|\/?\*$|([.\\+*[^\]$()?{}|])/g, (match, metaChar) => metaChar ? `\\${metaChar}` : match === "/*" ? require_router_reg_exp_router_node.TAIL_WILDCARD_REG_EXP_STR : match === "*" ? ".*" : `/:${require_router_reg_exp_router_node.LABEL_REG_EXP_STR}`)}$`);
9
+ function endsWithWildcard(keys) {
10
+ const tail = keys[keys.length - 1];
11
+ return tail === "[^]*" || tail === "(?:|/[^]*)";
12
12
  }
13
- function findMiddleware(middleware, path) {
14
- for (const k of Object.keys(middleware).sort((a, b) => b.length - a.length)) if (buildWildcardRegExp(k).test(path)) return [...middleware[k]];
13
+ function covers(wildcard, target) {
14
+ const last = wildcard.length - 1;
15
+ for (let i = 0; i < last; i++) if (wildcard[i] !== target[i]) return false;
16
+ return wildcard[last] === "[^]*" || target.length === last || target[last] === "/";
15
17
  }
16
18
  var RegExpRouter = class {
17
19
  name = "RegExpRouter";
18
- #middleware;
19
- #routes;
20
+ #handlers;
20
21
  #tries;
21
22
  constructor() {
22
- this.#middleware = { ["ALL"]: require_router_utils.createNullObject() };
23
- this.#routes = { ["ALL"]: require_router_utils.createNullObject() };
23
+ this.#handlers = { ["ALL"]: [] };
24
24
  this.#tries = { ["ALL"]: new require_router_reg_exp_router_trie.Trie() };
25
25
  }
26
26
  #insertPath(method, path) {
@@ -31,65 +31,53 @@ var RegExpRouter = class {
31
31
  }
32
32
  }
33
33
  add(method, path, handler) {
34
- const middleware = this.#middleware;
35
- const routes = this.#routes;
36
- if (!middleware) throw new Error(require_router.MESSAGE_MATCHER_IS_ALREADY_BUILT);
37
- if (!middleware[method]) {
38
- this.#tries[method] = new require_router_reg_exp_router_trie.Trie();
39
- for (const handlerMap of [middleware, routes]) {
40
- handlerMap[method] = require_router_utils.createNullObject();
41
- for (const p in handlerMap["ALL"]) {
42
- handlerMap[method][p] = [...handlerMap["ALL"][p]];
43
- this.#insertPath(method, p);
44
- }
45
- }
34
+ const handlers = this.#handlers;
35
+ if (!handlers) throw new Error(require_router.MESSAGE_MATCHER_IS_ALREADY_BUILT);
36
+ const tries = this.#tries;
37
+ if (!handlers[method]) {
38
+ tries[method] = new require_router_reg_exp_router_trie.Trie();
39
+ handlers[method] = [...handlers["ALL"]];
40
+ for (const p in tries["ALL"].paths) this.#insertPath(method, p);
46
41
  }
47
42
  if (path === "/*") path = "*";
48
- const methods = method === "ALL" ? Object.keys(middleware) : [method];
49
- if (/\*$/.test(path)) {
50
- const re = buildWildcardRegExp(path);
51
- for (const m of methods) if (!middleware[m][path]) {
52
- this.#insertPath(m, path);
53
- middleware[m][path] = findMiddleware(middleware[m], path) || findMiddleware(middleware["ALL"], path) || [];
54
- }
55
- for (const handlerMap of [middleware, routes]) for (const m of methods) for (const p in handlerMap[m]) re.test(p) && handlerMap[m][p].push([handler, path]);
56
- return;
57
- }
43
+ const methods = method === "ALL" ? Object.keys(handlers) : [method];
58
44
  const paths = require_utils_url.checkOptionalParameter(path) || [path];
59
45
  for (const path of paths) for (const m of methods) {
60
- if (!routes[m][path]) {
61
- this.#insertPath(m, path);
62
- routes[m][path] = findMiddleware(middleware[m], path) || findMiddleware(middleware["ALL"], path) || [];
63
- }
64
- routes[m][path].push([handler, path]);
46
+ if (!tries[m].paths[path]) this.#insertPath(m, path);
47
+ handlers[m].push([handler, path]);
65
48
  }
66
49
  }
67
50
  match = require_router_reg_exp_router_matcher.match;
68
51
  buildAllMatchers() {
69
52
  const matchers = require_router_utils.createNullObject();
70
- for (const method of Object.keys(this.#routes)) matchers[method] = this.#buildMatcher(method);
71
- this.#middleware = this.#routes = this.#tries = void 0;
72
- wildcardRegExpCache = require_router_utils.createNullObject();
53
+ for (const method of Object.keys(this.#handlers)) matchers[method] = this.#buildMatcher(method);
54
+ this.#handlers = this.#tries = void 0;
73
55
  return matchers;
74
56
  }
75
57
  #buildMatcher(method) {
76
- const middleware = this.#middleware[method];
77
- const routes = this.#routes[method];
58
+ const handlers = this.#handlers[method];
78
59
  const trie = this.#tries[method];
79
60
  const staticMap = require_router_utils.createNullObject();
80
61
  const handlerData = [];
81
62
  const [regexp, indexReplacementMap, paramReplacementMap] = trie.buildRegExp();
82
- for (const r of [middleware, routes]) for (const path in r) {
83
- const handlers = r[path];
84
- const pathData = trie.paths[path];
85
- if (!pathData) {
86
- staticMap[path] = [handlers.map(([h]) => [h, require_router_utils.createNullObject()]), require_router_reg_exp_router_matcher.emptyParam];
87
- continue;
88
- }
89
- handlerData[pathData[0]] = handlers.map(([h, handlerPath]) => [h, trie.paths[handlerPath][1].reduceRight((map, [key], i) => {
90
- map[key] = paramReplacementMap[pathData[1][i][1]];
63
+ const own = require_router_utils.createNullObject();
64
+ const entries = handlers.map(([h, p], i) => {
65
+ (own[p] ??= []).push(i);
66
+ return [h, trie.paths[p][1].reduceRight((map, [key, varIndex]) => {
67
+ map[key] = paramReplacementMap[varIndex];
91
68
  return map;
92
- }, require_router_utils.createNullObject())]);
69
+ }, require_router_utils.createNullObject())];
70
+ });
71
+ const wildcards = Object.keys(own).filter((p) => endsWithWildcard(trie.paths[p][2]));
72
+ for (const path in trie.paths) {
73
+ const [index, , keys] = trie.paths[path];
74
+ const indexes = [...own[path]];
75
+ for (const p of wildcards) if (p !== path && covers(trie.paths[p][2], keys)) indexes.push(...own[p]);
76
+ const data = indexes.sort((a, b) => a - b).map((i) => entries[i]);
77
+ if (index === -1) {
78
+ const last = Math.max(-1, ...data.flatMap(([, map]) => Object.values(map)));
79
+ staticMap[path] = [data, last === -1 ? require_router_reg_exp_router_matcher.emptyParam : path.match(regexp).slice(0, last + 1)];
80
+ } else handlerData[index] = data;
93
81
  }
94
82
  return [
95
83
  regexp,
@@ -8,8 +8,14 @@ var Trie = class {
8
8
  #index = 0;
9
9
  paths = require_router_utils.createNullObject();
10
10
  insert(path, isStatic) {
11
+ const keys = [];
11
12
  if (isStatic) {
12
- this.#root.insert(path.split(""), 0, [], this.#context, true);
13
+ this.#root.insert(path.split(""), -1, [], this.#context, keys);
14
+ this.paths[path] = [
15
+ -1,
16
+ [],
17
+ keys
18
+ ];
13
19
  return;
14
20
  }
15
21
  const paramAssoc = [];
@@ -17,7 +23,7 @@ var Trie = class {
17
23
  let markedPath = path;
18
24
  for (let i = 0;;) {
19
25
  let replaced = false;
20
- markedPath = markedPath.replace(/\{[^}]+\}/g, (m) => {
26
+ markedPath = markedPath.replace(/\{(?:\{[\d,]+\}|[^}])+\}/g, (m) => {
21
27
  const mark = `@\\${i}`;
22
28
  groups[i] = [mark, m];
23
29
  i++;
@@ -31,7 +37,7 @@ var Trie = class {
31
37
  * - /* wildcard
32
38
  * - character
33
39
  */
34
- const tokens = markedPath.match(/(?::[^\/]+)|(?:\/\*$)|./g) || [];
40
+ const tokens = markedPath.match(/(?::[^\/]+)|(?:\/\*$)|./gs) || [];
35
41
  for (let i = groups.length - 1; i >= 0; i--) {
36
42
  const [mark] = groups[i];
37
43
  for (let j = tokens.length - 1; j >= 0; j--) if (tokens[j].indexOf(mark) !== -1) {
@@ -39,8 +45,12 @@ var Trie = class {
39
45
  break;
40
46
  }
41
47
  }
42
- this.#root.insert(tokens, this.#index, paramAssoc, this.#context, false);
43
- this.paths[path] = [this.#index++, paramAssoc];
48
+ this.#root.insert(tokens, this.#index, paramAssoc, this.#context, keys);
49
+ this.paths[path] = [
50
+ this.#index++,
51
+ paramAssoc,
52
+ keys
53
+ ];
44
54
  }
45
55
  buildRegExp() {
46
56
  let regexp = this.#root.buildRegExpStr();
@@ -16,7 +16,7 @@ const decodeJwtPart = (part) => JSON.parse(require_utils_jwt_utf8.utf8Decoder.de
16
16
  function isTokenHeader(obj) {
17
17
  if (typeof obj === "object" && obj !== null) {
18
18
  const objWithAlg = obj;
19
- return "alg" in objWithAlg && Object.values(require_utils_jwt_jwa.AlgorithmTypes).includes(objWithAlg.alg) && (!("typ" in objWithAlg) || objWithAlg.typ === "JWT");
19
+ return "alg" in objWithAlg && Object.values(require_utils_jwt_jwa.AlgorithmTypes).includes(objWithAlg.alg) && (!("typ" in objWithAlg) || objWithAlg.typ === "JWT") && !("crit" in objWithAlg);
20
20
  }
21
21
  return false;
22
22
  }
@@ -67,6 +67,7 @@ const verify = async (token, publicKey, algOrOptions) => {
67
67
  if (!(Array.isArray(payload.aud) ? payload.aud : [payload.aud]).some((payloadAud) => aud instanceof RegExp ? aud.test(payloadAud) : typeof aud === "string" ? payloadAud === aud : Array.isArray(aud) && aud.includes(payloadAud))) throw new require_utils_jwt_types.JwtTokenAudience(aud, payload.aud);
68
68
  }
69
69
  const headerPayload = token.substring(0, token.lastIndexOf("."));
70
+ if (!/^[A-Za-z0-9_-]*={0,2}$/.test(tokenParts[2])) throw new require_utils_jwt_types.JwtTokenInvalid(token);
70
71
  let signature;
71
72
  try {
72
73
  signature = require_utils_encode.decodeBase64Url(tokenParts[2]);
@@ -0,0 +1,35 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_request_constants = require("../request/constants.js");
3
+ const require_utils_url = require("./url.js");
4
+ //#region src/utils/mount.ts
5
+ const getPathPrefixLength = (c, pathPrefix, routePath) => {
6
+ if (!/[:*]/.test(pathPrefix)) return pathPrefix.length;
7
+ const path = c.req.path;
8
+ const matchResult = c.req[require_request_constants.GET_MATCH_RESULT];
9
+ const paramNames = /* @__PURE__ */ new Set();
10
+ let length = 0;
11
+ for (const part of require_utils_url.splitRoutingPath(pathPrefix)) {
12
+ const pattern = require_utils_url.getPattern(part);
13
+ if (pattern && pattern !== "*") {
14
+ const name = pattern[1];
15
+ if (paramNames.has(name)) throw new Error(`mount(): Duplicate path parameter "${name}" in "${routePath}".`);
16
+ paramNames.add(name);
17
+ }
18
+ if (pattern && pattern !== "*" && pattern[2] !== true) {
19
+ const value = matchResult.length === 2 ? matchResult[1][matchResult[0][c.req.routeIndex][1][pattern[1]]] : matchResult[0][c.req.routeIndex][1][pattern[1]];
20
+ length += value.length + 1;
21
+ } else if (pattern || part.endsWith("*")) {
22
+ const end = path.indexOf("/", length + 1);
23
+ length = end === -1 ? path.length : end;
24
+ } else length += part.length + 1;
25
+ }
26
+ return length;
27
+ };
28
+ const createMountedRequest = (c, pathPrefix, routePath) => {
29
+ if (/[^/]\*$/.test(routePath)) throw new Error(`mount(): Wildcard must follow "/" in "${routePath}".`);
30
+ const url = new URL(c.req.raw.url);
31
+ url.pathname = require_utils_url.stripPathPrefix(url.pathname, c.req.path, getPathPrefixLength(c, pathPrefix, routePath));
32
+ return new Request(url, c.req.raw);
33
+ };
34
+ //#endregion
35
+ exports.createMountedRequest = createMountedRequest;
@@ -111,6 +111,15 @@ const getPathNoStrict = (request) => {
111
111
  const result = getPath(request);
112
112
  return result.length > 1 && result.at(-1) === "/" ? result.slice(0, -1) : result;
113
113
  };
114
+ const stripPathPrefix = (rawPath, decodedPath, prefixLength) => {
115
+ if (rawPath.at(-1) === "/" && decodedPath.at(-1) !== "/") rawPath = rawPath.slice(0, -1);
116
+ let index = 0;
117
+ for (let i = decodedPath.indexOf("/"); i !== -1 && i < prefixLength; i = decodedPath.indexOf("/", i + 1)) {
118
+ index = rawPath.indexOf("/", index + 1);
119
+ if (index === -1) return "/";
120
+ }
121
+ return rawPath.slice(index) || "/";
122
+ };
114
123
  /**
115
124
  * Merge paths.
116
125
  * @param {string[]} ...paths - The paths to merge.
@@ -215,6 +224,7 @@ exports.getQueryStrings = getQueryStrings;
215
224
  exports.mergePath = mergePath;
216
225
  exports.splitPath = splitPath;
217
226
  exports.splitRoutingPath = splitRoutingPath;
227
+ exports.stripPathPrefix = stripPathPrefix;
218
228
  exports.tryDecode = tryDecode;
219
229
  exports.tryDecodeURI = tryDecodeURI;
220
230
  exports.tryDecodeURIComponent = tryDecodeURIComponent;
@@ -4,7 +4,7 @@ const require_utils_buffer = require("../utils/buffer.js");
4
4
  const require_helper_cookie_index = require("../helper/cookie/index.js");
5
5
  //#region src/validator/validator.ts
6
6
  const jsonRegex = /^application\/([a-z-\.]+\+)?json(;\s*[a-zA-Z0-9\-]+\=([^;]+))*$/i;
7
- const multipartRegex = /^multipart\/form-data(;\s?boundary=[a-zA-Z0-9'"()+_,\-./:=?]+)?$/i;
7
+ const multipartRegex = /^multipart\/form-data(;\s*[a-zA-Z0-9\-]+\=([^;]+))*$/i;
8
8
  const urlencodedRegex = /^application\/x-www-form-urlencoded(;\s*[a-zA-Z0-9\-]+\=([^;]+))*$/i;
9
9
  const validator = (target, validationFunc) => {
10
10
  return async (c, next) => {
@@ -197,7 +197,7 @@ var Context = class {
197
197
  * ```
198
198
  */
199
199
  header = (name, value, options) => {
200
- if (this.finalized) this.#res = createResponseInstance(this.#res.body, this.#res);
200
+ if (this.finalized && !this.#res.bodyUsed) this.#res = createResponseInstance(this.#res.body, this.#res);
201
201
  const headers = this.#res ? this.#res.headers : this.#preparedHeaders ??= new Headers();
202
202
  if (value === void 0) headers.delete(name);
203
203
  else if (options?.append) headers.append(name, value);
@@ -79,10 +79,8 @@ const buildStyleString = (strings, values) => {
79
79
  for (let j = 0, len = vArray.length; j < len; j++) {
80
80
  let value = vArray[j];
81
81
  if (typeof value === "boolean" || value === null || value === void 0) continue;
82
- if (typeof value === "string") {
83
- if (/([\\"'\/])/.test(value)) styleString += value.replace(/([\\"']|(?<=<)\/)/g, "\\$1");
84
- else styleString += value;
85
- } else if (typeof value === "number") styleString += value;
82
+ if (typeof value === "string") styleString += value.replace(/[\\"']/g, "\\$&");
83
+ else if (typeof value === "number") styleString += value;
86
84
  else if (value[CSS_ESCAPED]) styleString += value[CSS_ESCAPED];
87
85
  else if (value[CLASS_NAME].startsWith("@keyframes ")) {
88
86
  selectors.push(value);
@@ -107,7 +105,7 @@ const buildStyleString = (strings, values) => {
107
105
  }
108
106
  return [
109
107
  label,
110
- minify(styleString),
108
+ minify(styleString).replace(/<\//g, "<\\/"),
111
109
  selectors,
112
110
  externalClassNames
113
111
  ];
@@ -3,6 +3,7 @@ import { getPath, getPathNoStrict, mergePath } from "./utils/url.js";
3
3
  import { Context } from "./context.js";
4
4
  import { METHODS } from "./router.js";
5
5
  import { COMPOSED_HANDLER } from "./utils/constants.js";
6
+ import { createMountedRequest } from "./utils/mount.js";
6
7
  //#region src/hono-base.ts
7
8
  /**
8
9
  * @module
@@ -227,17 +228,10 @@ var Hono = class Hono {
227
228
  } catch {}
228
229
  return [c.env, executionContext];
229
230
  };
230
- replaceRequest ||= (() => {
231
- const mergedPath = mergePath(this._basePath, path);
232
- const pathPrefixLength = mergedPath === "/" ? 0 : mergedPath.length;
233
- return (request) => {
234
- const url = new URL(request.url);
235
- url.pathname = this.getPath(request).slice(pathPrefixLength) || "/";
236
- return new Request(url, request);
237
- };
238
- })();
231
+ const mergedPath = mergePath(this._basePath, path);
232
+ const defaultReplaceRequest = (c) => createMountedRequest(c, mergedPath.replace(/\/$/, ""), mergePath(mergedPath, "*"));
239
233
  const handler = async (c, next) => {
240
- const res = await applicationHandler(replaceRequest(c.req.raw), ...getOptions(c));
234
+ const res = await applicationHandler(replaceRequest ? replaceRequest(c.req.raw) : defaultReplaceRequest(c), ...getOptions(c));
241
235
  if (res) return res;
242
236
  await next();
243
237
  };
@@ -1,6 +1,5 @@
1
1
  import { HonoBase as Hono$1 } from "./hono-base.js";
2
2
  import { RegExpRouter } from "./router/reg-exp-router/router.js";
3
- import "./router/reg-exp-router/index.js";
4
3
  import { SmartRouter } from "./router/smart-router/router.js";
5
4
  import { TrieRouter } from "./router/trie-router/router.js";
6
5
  import "./router/trie-router/index.js";