@psnext/slingcli 3.3.20260924-1 → 3.3.20261002-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 (652) hide show
  1. package/node_modules/@hono/node-server/README.md +21 -10
  2. package/node_modules/@hono/node-server/dist/early-hints.cjs +1 -1
  3. package/node_modules/@hono/node-server/dist/early-hints.mjs +1 -1
  4. package/node_modules/@hono/node-server/dist/index.cjs +41 -19
  5. package/node_modules/@hono/node-server/dist/index.mjs +42 -20
  6. package/node_modules/@hono/node-server/dist/serve-static.cjs +1 -0
  7. package/node_modules/@hono/node-server/dist/serve-static.d.cts +2 -1
  8. package/node_modules/@hono/node-server/dist/serve-static.d.mts +2 -1
  9. package/node_modules/@hono/node-server/dist/serve-static.mjs +1 -0
  10. package/node_modules/@hono/node-server/package.json +3 -2
  11. package/node_modules/@modelcontextprotocol/sdk/dist/cjs/client/auth-extensions.d.ts +43 -2
  12. package/node_modules/@modelcontextprotocol/sdk/dist/cjs/client/auth-extensions.d.ts.map +1 -1
  13. package/node_modules/@modelcontextprotocol/sdk/dist/cjs/client/auth-extensions.js +26 -5
  14. package/node_modules/@modelcontextprotocol/sdk/dist/cjs/client/auth-extensions.js.map +1 -1
  15. package/node_modules/@modelcontextprotocol/sdk/dist/cjs/client/auth.d.ts +11 -0
  16. package/node_modules/@modelcontextprotocol/sdk/dist/cjs/client/auth.d.ts.map +1 -1
  17. package/node_modules/@modelcontextprotocol/sdk/dist/cjs/client/auth.js +96 -14
  18. package/node_modules/@modelcontextprotocol/sdk/dist/cjs/client/auth.js.map +1 -1
  19. package/node_modules/@modelcontextprotocol/sdk/dist/cjs/examples/client/simpleClientCredentials.d.ts +1 -0
  20. package/node_modules/@modelcontextprotocol/sdk/dist/cjs/examples/client/simpleClientCredentials.d.ts.map +1 -1
  21. package/node_modules/@modelcontextprotocol/sdk/dist/cjs/examples/client/simpleClientCredentials.js +11 -2
  22. package/node_modules/@modelcontextprotocol/sdk/dist/cjs/examples/client/simpleClientCredentials.js.map +1 -1
  23. package/node_modules/@modelcontextprotocol/sdk/dist/cjs/examples/server/demoInMemoryOAuthProvider.d.ts +2 -0
  24. package/node_modules/@modelcontextprotocol/sdk/dist/cjs/examples/server/demoInMemoryOAuthProvider.d.ts.map +1 -1
  25. package/node_modules/@modelcontextprotocol/sdk/dist/cjs/server/auth/providers/proxyProvider.d.ts.map +1 -1
  26. package/node_modules/@modelcontextprotocol/sdk/dist/cjs/server/auth/providers/proxyProvider.js +6 -3
  27. package/node_modules/@modelcontextprotocol/sdk/dist/cjs/server/auth/providers/proxyProvider.js.map +1 -1
  28. package/node_modules/@modelcontextprotocol/sdk/dist/cjs/shared/auth.d.ts +3 -0
  29. package/node_modules/@modelcontextprotocol/sdk/dist/cjs/shared/auth.d.ts.map +1 -1
  30. package/node_modules/@modelcontextprotocol/sdk/dist/cjs/shared/auth.js +12 -2
  31. package/node_modules/@modelcontextprotocol/sdk/dist/cjs/shared/auth.js.map +1 -1
  32. package/node_modules/@modelcontextprotocol/sdk/dist/esm/client/auth-extensions.d.ts +43 -2
  33. package/node_modules/@modelcontextprotocol/sdk/dist/esm/client/auth-extensions.d.ts.map +1 -1
  34. package/node_modules/@modelcontextprotocol/sdk/dist/esm/client/auth-extensions.js +26 -5
  35. package/node_modules/@modelcontextprotocol/sdk/dist/esm/client/auth-extensions.js.map +1 -1
  36. package/node_modules/@modelcontextprotocol/sdk/dist/esm/client/auth.d.ts +11 -0
  37. package/node_modules/@modelcontextprotocol/sdk/dist/esm/client/auth.d.ts.map +1 -1
  38. package/node_modules/@modelcontextprotocol/sdk/dist/esm/client/auth.js +96 -14
  39. package/node_modules/@modelcontextprotocol/sdk/dist/esm/client/auth.js.map +1 -1
  40. package/node_modules/@modelcontextprotocol/sdk/dist/esm/examples/client/simpleClientCredentials.d.ts +1 -0
  41. package/node_modules/@modelcontextprotocol/sdk/dist/esm/examples/client/simpleClientCredentials.d.ts.map +1 -1
  42. package/node_modules/@modelcontextprotocol/sdk/dist/esm/examples/client/simpleClientCredentials.js +11 -2
  43. package/node_modules/@modelcontextprotocol/sdk/dist/esm/examples/client/simpleClientCredentials.js.map +1 -1
  44. package/node_modules/@modelcontextprotocol/sdk/dist/esm/examples/server/demoInMemoryOAuthProvider.d.ts +2 -0
  45. package/node_modules/@modelcontextprotocol/sdk/dist/esm/examples/server/demoInMemoryOAuthProvider.d.ts.map +1 -1
  46. package/node_modules/@modelcontextprotocol/sdk/dist/esm/server/auth/providers/proxyProvider.d.ts.map +1 -1
  47. package/node_modules/@modelcontextprotocol/sdk/dist/esm/server/auth/providers/proxyProvider.js +6 -3
  48. package/node_modules/@modelcontextprotocol/sdk/dist/esm/server/auth/providers/proxyProvider.js.map +1 -1
  49. package/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/auth.d.ts +3 -0
  50. package/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/auth.d.ts.map +1 -1
  51. package/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/auth.js +12 -2
  52. package/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/auth.js.map +1 -1
  53. package/node_modules/@modelcontextprotocol/sdk/package.json +1 -1
  54. package/node_modules/@smithy/core/dist-cjs/submodules/client/index.js +33 -11
  55. package/node_modules/@smithy/core/dist-cjs/submodules/schema/index.js +3 -0
  56. package/node_modules/@smithy/core/dist-es/submodules/client/smithy-client/exceptions.js +33 -11
  57. package/node_modules/@smithy/core/dist-es/submodules/schema/TypeRegistry.js +3 -0
  58. package/node_modules/@smithy/core/dist-types/submodules/client/smithy-client/exceptions.d.ts +1 -0
  59. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/client/smithy-client/exceptions.d.ts +1 -0
  60. package/node_modules/@smithy/core/package.json +1 -1
  61. package/node_modules/@smithy/signature-v4/dist-cjs/index.js +4 -1
  62. package/node_modules/@smithy/signature-v4/dist-es/getCanonicalHeaders.js +4 -1
  63. package/node_modules/@smithy/signature-v4/package.json +3 -3
  64. package/node_modules/@types/node/README.md +1 -1
  65. package/node_modules/@types/node/crypto.d.ts +2 -2
  66. package/node_modules/@types/node/dgram.d.ts +1 -1
  67. package/node_modules/@types/node/package.json +2 -2
  68. package/node_modules/@types/node/zlib.d.ts +6 -0
  69. package/node_modules/hono/dist/_virtual/_rolldown/runtime.js +13 -0
  70. package/node_modules/hono/dist/adapter/aws-lambda/conninfo.js +42 -23
  71. package/node_modules/hono/dist/adapter/aws-lambda/handler.js +318 -344
  72. package/node_modules/hono/dist/adapter/aws-lambda/index.js +2 -8
  73. package/node_modules/hono/dist/adapter/aws-lambda/types.js +1 -0
  74. package/node_modules/hono/dist/adapter/bun/conninfo.js +20 -25
  75. package/node_modules/hono/dist/adapter/bun/index.js +3 -13
  76. package/node_modules/hono/dist/adapter/bun/serve-static.js +27 -27
  77. package/node_modules/hono/dist/adapter/bun/server.js +11 -5
  78. package/node_modules/hono/dist/adapter/bun/ssg.js +25 -15
  79. package/node_modules/hono/dist/adapter/bun/websocket.js +61 -68
  80. package/node_modules/hono/dist/adapter/cloudflare-pages/conninfo.js +24 -9
  81. package/node_modules/hono/dist/adapter/cloudflare-pages/handler.js +59 -62
  82. package/node_modules/hono/dist/adapter/cloudflare-pages/index.js +2 -8
  83. package/node_modules/hono/dist/adapter/cloudflare-workers/conninfo.js +7 -9
  84. package/node_modules/hono/dist/adapter/cloudflare-workers/index.js +3 -8
  85. package/node_modules/hono/dist/adapter/cloudflare-workers/serve-static-module.js +5 -6
  86. package/node_modules/hono/dist/adapter/cloudflare-workers/serve-static.js +26 -20
  87. package/node_modules/hono/dist/adapter/cloudflare-workers/utils.js +21 -34
  88. package/node_modules/hono/dist/adapter/cloudflare-workers/websocket.js +31 -39
  89. package/node_modules/hono/dist/adapter/deno/conninfo.js +16 -13
  90. package/node_modules/hono/dist/adapter/deno/deno.d.js +1 -0
  91. package/node_modules/hono/dist/adapter/deno/index.js +3 -10
  92. package/node_modules/hono/dist/adapter/deno/serve-static.js +33 -38
  93. package/node_modules/hono/dist/adapter/deno/ssg.js +27 -16
  94. package/node_modules/hono/dist/adapter/deno/websocket.js +30 -30
  95. package/node_modules/hono/dist/adapter/lambda-edge/conninfo.js +7 -9
  96. package/node_modules/hono/dist/adapter/lambda-edge/handler.js +102 -101
  97. package/node_modules/hono/dist/adapter/lambda-edge/index.js +2 -6
  98. package/node_modules/hono/dist/adapter/netlify/conninfo.js +24 -9
  99. package/node_modules/hono/dist/adapter/netlify/handler.js +10 -8
  100. package/node_modules/hono/dist/adapter/netlify/index.js +3 -2
  101. package/node_modules/hono/dist/adapter/netlify/mod.js +2 -6
  102. package/node_modules/hono/dist/adapter/service-worker/handler.js +15 -19
  103. package/node_modules/hono/dist/adapter/service-worker/index.js +23 -7
  104. package/node_modules/hono/dist/adapter/service-worker/types.js +1 -0
  105. package/node_modules/hono/dist/adapter/vercel/conninfo.js +7 -10
  106. package/node_modules/hono/dist/adapter/vercel/handler.js +8 -6
  107. package/node_modules/hono/dist/adapter/vercel/index.js +2 -6
  108. package/node_modules/hono/dist/cjs/_virtual/_rolldown/runtime.js +33 -0
  109. package/node_modules/hono/dist/cjs/adapter/aws-lambda/conninfo.js +42 -44
  110. package/node_modules/hono/dist/cjs/adapter/aws-lambda/handler.js +326 -373
  111. package/node_modules/hono/dist/cjs/adapter/aws-lambda/index.js +7 -34
  112. package/node_modules/hono/dist/cjs/adapter/aws-lambda/types.js +0 -15
  113. package/node_modules/hono/dist/cjs/adapter/bun/conninfo.js +21 -47
  114. package/node_modules/hono/dist/cjs/adapter/bun/index.js +14 -45
  115. package/node_modules/hono/dist/cjs/adapter/bun/serve-static.js +29 -50
  116. package/node_modules/hono/dist/cjs/adapter/bun/server.js +11 -26
  117. package/node_modules/hono/dist/cjs/adapter/bun/ssg.js +24 -35
  118. package/node_modules/hono/dist/cjs/adapter/bun/websocket.js +63 -91
  119. package/node_modules/hono/dist/cjs/adapter/cloudflare-pages/conninfo.js +25 -31
  120. package/node_modules/hono/dist/cjs/adapter/cloudflare-pages/handler.js +61 -85
  121. package/node_modules/hono/dist/cjs/adapter/cloudflare-pages/index.js +7 -34
  122. package/node_modules/hono/dist/cjs/adapter/cloudflare-workers/conninfo.js +8 -31
  123. package/node_modules/hono/dist/cjs/adapter/cloudflare-workers/index.js +7 -33
  124. package/node_modules/hono/dist/cjs/adapter/cloudflare-workers/serve-static-module.js +7 -29
  125. package/node_modules/hono/dist/cjs/adapter/cloudflare-workers/serve-static.js +27 -42
  126. package/node_modules/hono/dist/cjs/adapter/cloudflare-workers/utils.js +21 -55
  127. package/node_modules/hono/dist/cjs/adapter/cloudflare-workers/websocket.js +33 -62
  128. package/node_modules/hono/dist/cjs/adapter/deno/conninfo.js +16 -34
  129. package/node_modules/hono/dist/cjs/adapter/deno/index.js +10 -38
  130. package/node_modules/hono/dist/cjs/adapter/deno/serve-static.js +33 -59
  131. package/node_modules/hono/dist/cjs/adapter/deno/ssg.js +27 -37
  132. package/node_modules/hono/dist/cjs/adapter/deno/websocket.js +32 -53
  133. package/node_modules/hono/dist/cjs/adapter/lambda-edge/conninfo.js +8 -31
  134. package/node_modules/hono/dist/cjs/adapter/lambda-edge/handler.js +102 -130
  135. package/node_modules/hono/dist/cjs/adapter/lambda-edge/index.js +5 -30
  136. package/node_modules/hono/dist/cjs/adapter/netlify/conninfo.js +25 -31
  137. package/node_modules/hono/dist/cjs/adapter/netlify/handler.js +10 -29
  138. package/node_modules/hono/dist/cjs/adapter/netlify/index.js +5 -21
  139. package/node_modules/hono/dist/cjs/adapter/netlify/mod.js +5 -30
  140. package/node_modules/hono/dist/cjs/adapter/service-worker/handler.js +16 -41
  141. package/node_modules/hono/dist/cjs/adapter/service-worker/index.js +25 -30
  142. package/node_modules/hono/dist/cjs/adapter/service-worker/types.js +0 -15
  143. package/node_modules/hono/dist/cjs/adapter/vercel/conninfo.js +8 -32
  144. package/node_modules/hono/dist/cjs/adapter/vercel/handler.js +8 -27
  145. package/node_modules/hono/dist/cjs/adapter/vercel/index.js +5 -30
  146. package/node_modules/hono/dist/cjs/client/client.js +139 -212
  147. package/node_modules/hono/dist/cjs/client/fetch-result-please.js +62 -80
  148. package/node_modules/hono/dist/cjs/client/index.js +7 -32
  149. package/node_modules/hono/dist/cjs/client/types.js +0 -15
  150. package/node_modules/hono/dist/cjs/client/utils.js +54 -92
  151. package/node_modules/hono/dist/cjs/compose.js +49 -66
  152. package/node_modules/hono/dist/cjs/context.js +379 -450
  153. package/node_modules/hono/dist/cjs/helper/accepts/accepts.js +47 -72
  154. package/node_modules/hono/dist/cjs/helper/accepts/index.js +3 -27
  155. package/node_modules/hono/dist/cjs/helper/adapter/index.js +33 -73
  156. package/node_modules/hono/dist/cjs/helper/conninfo/index.js +0 -15
  157. package/node_modules/hono/dist/cjs/helper/conninfo/types.js +0 -15
  158. package/node_modules/hono/dist/cjs/helper/cookie/index.js +75 -116
  159. package/node_modules/hono/dist/cjs/helper/css/common.js +165 -244
  160. package/node_modules/hono/dist/cjs/helper/css/index.js +136 -151
  161. package/node_modules/hono/dist/cjs/helper/dev/index.js +45 -71
  162. package/node_modules/hono/dist/cjs/helper/factory/index.js +30 -51
  163. package/node_modules/hono/dist/cjs/helper/html/index.js +32 -62
  164. package/node_modules/hono/dist/cjs/helper/proxy/index.js +113 -106
  165. package/node_modules/hono/dist/cjs/helper/route/index.js +123 -66
  166. package/node_modules/hono/dist/cjs/helper/ssg/index.js +19 -43
  167. package/node_modules/hono/dist/cjs/helper/ssg/middleware.js +56 -64
  168. package/node_modules/hono/dist/cjs/helper/ssg/plugins.js +55 -57
  169. package/node_modules/hono/dist/cjs/helper/ssg/ssg.js +196 -296
  170. package/node_modules/hono/dist/cjs/helper/ssg/utils.js +47 -90
  171. package/node_modules/hono/dist/cjs/helper/streaming/index.js +8 -35
  172. package/node_modules/hono/dist/cjs/helper/streaming/sse.js +53 -85
  173. package/node_modules/hono/dist/cjs/helper/streaming/stream.js +23 -53
  174. package/node_modules/hono/dist/cjs/helper/streaming/text.js +10 -32
  175. package/node_modules/hono/dist/cjs/helper/streaming/utils.js +13 -32
  176. package/node_modules/hono/dist/cjs/helper/testing/index.js +16 -31
  177. package/node_modules/hono/dist/cjs/helper/websocket/index.js +51 -76
  178. package/node_modules/hono/dist/cjs/hono-base.js +345 -403
  179. package/node_modules/hono/dist/cjs/hono.js +28 -42
  180. package/node_modules/hono/dist/cjs/http-exception.js +55 -56
  181. package/node_modules/hono/dist/cjs/index.js +22 -30
  182. package/node_modules/hono/dist/cjs/jsx/base.js +237 -366
  183. package/node_modules/hono/dist/cjs/jsx/children.js +16 -41
  184. package/node_modules/hono/dist/cjs/jsx/components.js +119 -192
  185. package/node_modules/hono/dist/cjs/jsx/constants.js +15 -42
  186. package/node_modules/hono/dist/cjs/jsx/context.js +144 -162
  187. package/node_modules/hono/dist/cjs/jsx/dom/client.js +49 -69
  188. package/node_modules/hono/dist/cjs/jsx/dom/components.js +23 -52
  189. package/node_modules/hono/dist/cjs/jsx/dom/context.js +39 -67
  190. package/node_modules/hono/dist/cjs/jsx/dom/css.js +143 -158
  191. package/node_modules/hono/dist/cjs/jsx/dom/hooks/index.js +55 -64
  192. package/node_modules/hono/dist/cjs/jsx/dom/index.js +114 -173
  193. package/node_modules/hono/dist/cjs/jsx/dom/intrinsic-element/components.js +282 -375
  194. package/node_modules/hono/dist/cjs/jsx/dom/jsx-dev-runtime.js +14 -49
  195. package/node_modules/hono/dist/cjs/jsx/dom/jsx-runtime.js +5 -32
  196. package/node_modules/hono/dist/cjs/jsx/dom/render.js +469 -623
  197. package/node_modules/hono/dist/cjs/jsx/dom/server.js +37 -64
  198. package/node_modules/hono/dist/cjs/jsx/dom/utils.js +7 -30
  199. package/node_modules/hono/dist/cjs/jsx/hooks/index.js +225 -318
  200. package/node_modules/hono/dist/cjs/jsx/index.js +86 -135
  201. package/node_modules/hono/dist/cjs/jsx/intrinsic-element/common.js +20 -43
  202. package/node_modules/hono/dist/cjs/jsx/intrinsic-element/components.js +117 -168
  203. package/node_modules/hono/dist/cjs/jsx/intrinsic-elements.js +0 -15
  204. package/node_modules/hono/dist/cjs/jsx/jsx-dev-runtime.js +14 -39
  205. package/node_modules/hono/dist/cjs/jsx/jsx-runtime.js +34 -68
  206. package/node_modules/hono/dist/cjs/jsx/streaming.js +123 -166
  207. package/node_modules/hono/dist/cjs/jsx/types.js +0 -15
  208. package/node_modules/hono/dist/cjs/jsx/utils.js +91 -175
  209. package/node_modules/hono/dist/cjs/middleware/basic-auth/index.js +98 -86
  210. package/node_modules/hono/dist/cjs/middleware/bearer-auth/index.js +92 -109
  211. package/node_modules/hono/dist/cjs/middleware/body-limit/index.js +66 -72
  212. package/node_modules/hono/dist/cjs/middleware/cache/index.js +153 -199
  213. package/node_modules/hono/dist/cjs/middleware/combine/index.js +135 -95
  214. package/node_modules/hono/dist/cjs/middleware/compress/index.js +73 -88
  215. package/node_modules/hono/dist/cjs/middleware/context-storage/index.js +49 -41
  216. package/node_modules/hono/dist/cjs/middleware/cors/index.js +107 -107
  217. package/node_modules/hono/dist/cjs/middleware/csrf/index.js +101 -72
  218. package/node_modules/hono/dist/cjs/middleware/etag/digest.js +58 -97
  219. package/node_modules/hono/dist/cjs/middleware/etag/index.js +71 -91
  220. package/node_modules/hono/dist/cjs/middleware/ip-restriction/index.js +161 -169
  221. package/node_modules/hono/dist/cjs/middleware/jsx-renderer/index.js +99 -77
  222. package/node_modules/hono/dist/cjs/middleware/jwk/index.js +3 -27
  223. package/node_modules/hono/dist/cjs/middleware/jwk/jwk.js +118 -135
  224. package/node_modules/hono/dist/cjs/middleware/jwt/index.js +9 -38
  225. package/node_modules/hono/dist/cjs/middleware/jwt/jwt.js +120 -141
  226. package/node_modules/hono/dist/cjs/middleware/language/index.js +7 -35
  227. package/node_modules/hono/dist/cjs/middleware/language/language.js +184 -182
  228. package/node_modules/hono/dist/cjs/middleware/logger/index.js +41 -62
  229. package/node_modules/hono/dist/cjs/middleware/method-not-allowed/index.js +82 -88
  230. package/node_modules/hono/dist/cjs/middleware/method-override/index.js +101 -102
  231. package/node_modules/hono/dist/cjs/middleware/powered-by/index.js +23 -30
  232. package/node_modules/hono/dist/cjs/middleware/pretty-json/index.js +38 -42
  233. package/node_modules/hono/dist/cjs/middleware/request-id/index.js +3 -27
  234. package/node_modules/hono/dist/cjs/middleware/request-id/request-id.js +34 -42
  235. package/node_modules/hono/dist/cjs/middleware/secure-headers/index.js +4 -29
  236. package/node_modules/hono/dist/cjs/middleware/secure-headers/permissions-policy.js +0 -15
  237. package/node_modules/hono/dist/cjs/middleware/secure-headers/secure-headers.js +142 -174
  238. package/node_modules/hono/dist/cjs/middleware/serve-static/index.js +56 -93
  239. package/node_modules/hono/dist/cjs/middleware/serve-static/path.js +15 -38
  240. package/node_modules/hono/dist/cjs/middleware/timeout/index.js +40 -45
  241. package/node_modules/hono/dist/cjs/middleware/timing/index.js +7 -35
  242. package/node_modules/hono/dist/cjs/middleware/timing/timing.js +177 -118
  243. package/node_modules/hono/dist/cjs/middleware/trailing-slash/index.js +85 -58
  244. package/node_modules/hono/dist/cjs/preset/quick.js +18 -37
  245. package/node_modules/hono/dist/cjs/preset/tiny.js +15 -33
  246. package/node_modules/hono/dist/cjs/request/constants.js +5 -27
  247. package/node_modules/hono/dist/cjs/request.js +334 -346
  248. package/node_modules/hono/dist/cjs/router/linear-router/index.js +3 -27
  249. package/node_modules/hono/dist/cjs/router/linear-router/router.js +95 -143
  250. package/node_modules/hono/dist/cjs/router/pattern-router/index.js +3 -27
  251. package/node_modules/hono/dist/cjs/router/pattern-router/router.js +41 -63
  252. package/node_modules/hono/dist/cjs/router/reg-exp-router/index.js +7 -34
  253. package/node_modules/hono/dist/cjs/router/reg-exp-router/matcher.js +18 -45
  254. package/node_modules/hono/dist/cjs/router/reg-exp-router/node.js +91 -135
  255. package/node_modules/hono/dist/cjs/router/reg-exp-router/prepared-router.js +92 -161
  256. package/node_modules/hono/dist/cjs/router/reg-exp-router/router.js +98 -147
  257. package/node_modules/hono/dist/cjs/router/reg-exp-router/trie.js +73 -89
  258. package/node_modules/hono/dist/cjs/router/smart-router/index.js +3 -27
  259. package/node_modules/hono/dist/cjs/router/smart-router/router.js +49 -79
  260. package/node_modules/hono/dist/cjs/router/trie-router/index.js +3 -27
  261. package/node_modules/hono/dist/cjs/router/trie-router/node.js +134 -186
  262. package/node_modules/hono/dist/cjs/router/trie-router/router.js +15 -39
  263. package/node_modules/hono/dist/cjs/router/utils.js +5 -27
  264. package/node_modules/hono/dist/cjs/router.js +37 -37
  265. package/node_modules/hono/dist/cjs/types.js +5 -28
  266. package/node_modules/hono/dist/cjs/utils/accept.js +177 -225
  267. package/node_modules/hono/dist/cjs/utils/basic-auth.js +16 -40
  268. package/node_modules/hono/dist/cjs/utils/body.js +84 -110
  269. package/node_modules/hono/dist/cjs/utils/buffer.js +43 -91
  270. package/node_modules/hono/dist/cjs/utils/color.js +35 -44
  271. package/node_modules/hono/dist/cjs/utils/compress.js +11 -26
  272. package/node_modules/hono/dist/cjs/utils/concurrent.js +29 -59
  273. package/node_modules/hono/dist/cjs/utils/constants.js +7 -26
  274. package/node_modules/hono/dist/cjs/utils/cookie.js +107 -177
  275. package/node_modules/hono/dist/cjs/utils/crypto.js +30 -61
  276. package/node_modules/hono/dist/cjs/utils/encode.js +31 -48
  277. package/node_modules/hono/dist/cjs/utils/filepath.js +23 -54
  278. package/node_modules/hono/dist/cjs/utils/handler.js +11 -33
  279. package/node_modules/hono/dist/cjs/utils/headers.js +0 -15
  280. package/node_modules/hono/dist/cjs/utils/html.js +96 -137
  281. package/node_modules/hono/dist/cjs/utils/http-status.js +0 -15
  282. package/node_modules/hono/dist/cjs/utils/ipaddr.js +213 -286
  283. package/node_modules/hono/dist/cjs/utils/jwt/index.js +14 -27
  284. package/node_modules/hono/dist/cjs/utils/jwt/jwa.js +25 -42
  285. package/node_modules/hono/dist/cjs/utils/jwt/jws.js +119 -199
  286. package/node_modules/hono/dist/cjs/utils/jwt/jwt.js +122 -206
  287. package/node_modules/hono/dist/cjs/utils/jwt/types.js +122 -159
  288. package/node_modules/hono/dist/cjs/utils/jwt/utf8.js +9 -28
  289. package/node_modules/hono/dist/cjs/utils/mime.js +75 -101
  290. package/node_modules/hono/dist/cjs/utils/stream.js +88 -111
  291. package/node_modules/hono/dist/cjs/utils/types.js +0 -15
  292. package/node_modules/hono/dist/cjs/utils/url.js +185 -234
  293. package/node_modules/hono/dist/cjs/validator/index.js +3 -27
  294. package/node_modules/hono/dist/cjs/validator/utils.js +0 -15
  295. package/node_modules/hono/dist/cjs/validator/validator.js +60 -103
  296. package/node_modules/hono/dist/client/client.js +138 -197
  297. package/node_modules/hono/dist/client/fetch-result-please.js +59 -56
  298. package/node_modules/hono/dist/client/index.js +3 -7
  299. package/node_modules/hono/dist/client/types.js +1 -0
  300. package/node_modules/hono/dist/client/utils.js +51 -68
  301. package/node_modules/hono/dist/compose.js +49 -45
  302. package/node_modules/hono/dist/context.js +376 -426
  303. package/node_modules/hono/dist/helper/accepts/accepts.js +47 -51
  304. package/node_modules/hono/dist/helper/accepts/index.js +1 -4
  305. package/node_modules/hono/dist/helper/adapter/index.js +33 -52
  306. package/node_modules/hono/dist/helper/conninfo/index.js +1 -0
  307. package/node_modules/hono/dist/helper/conninfo/types.js +1 -0
  308. package/node_modules/hono/dist/helper/cookie/index.js +74 -94
  309. package/node_modules/hono/dist/helper/css/common.js +167 -225
  310. package/node_modules/hono/dist/helper/css/index.js +132 -137
  311. package/node_modules/hono/dist/helper/dev/index.js +44 -49
  312. package/node_modules/hono/dist/helper/factory/index.js +27 -27
  313. package/node_modules/hono/dist/helper/html/index.js +30 -39
  314. package/node_modules/hono/dist/helper/proxy/index.js +116 -88
  315. package/node_modules/hono/dist/helper/route/index.js +121 -43
  316. package/node_modules/hono/dist/helper/ssg/index.js +3 -18
  317. package/node_modules/hono/dist/helper/ssg/middleware.js +53 -40
  318. package/node_modules/hono/dist/helper/ssg/plugins.js +55 -36
  319. package/node_modules/hono/dist/helper/ssg/ssg.js +198 -283
  320. package/node_modules/hono/dist/helper/ssg/utils.js +53 -75
  321. package/node_modules/hono/dist/helper/streaming/index.js +2 -8
  322. package/node_modules/hono/dist/helper/streaming/sse.js +50 -61
  323. package/node_modules/hono/dist/helper/streaming/stream.js +22 -31
  324. package/node_modules/hono/dist/helper/streaming/text.js +9 -10
  325. package/node_modules/hono/dist/helper/streaming/utils.js +9 -12
  326. package/node_modules/hono/dist/helper/testing/index.js +16 -10
  327. package/node_modules/hono/dist/helper/websocket/index.js +49 -53
  328. package/node_modules/hono/dist/hono-base.js +342 -379
  329. package/node_modules/hono/dist/hono.js +27 -20
  330. package/node_modules/hono/dist/http-exception.js +53 -33
  331. package/node_modules/hono/dist/index.js +19 -6
  332. package/node_modules/hono/dist/jsx/base.js +231 -340
  333. package/node_modules/hono/dist/jsx/children.js +16 -20
  334. package/node_modules/hono/dist/jsx/components.js +118 -170
  335. package/node_modules/hono/dist/jsx/constants.js +9 -15
  336. package/node_modules/hono/dist/jsx/context.js +153 -150
  337. package/node_modules/hono/dist/jsx/dom/client.js +45 -48
  338. package/node_modules/hono/dist/jsx/dom/components.js +21 -29
  339. package/node_modules/hono/dist/jsx/dom/context.js +37 -44
  340. package/node_modules/hono/dist/jsx/dom/css.js +142 -147
  341. package/node_modules/hono/dist/jsx/dom/hooks/index.js +52 -40
  342. package/node_modules/hono/dist/jsx/dom/index.js +71 -134
  343. package/node_modules/hono/dist/jsx/dom/intrinsic-element/components.js +275 -359
  344. package/node_modules/hono/dist/jsx/dom/jsx-dev-runtime.js +14 -18
  345. package/node_modules/hono/dist/jsx/dom/jsx-runtime.js +2 -8
  346. package/node_modules/hono/dist/jsx/dom/render.js +492 -631
  347. package/node_modules/hono/dist/jsx/dom/server.js +32 -32
  348. package/node_modules/hono/dist/jsx/dom/utils.js +6 -8
  349. package/node_modules/hono/dist/jsx/hooks/index.js +236 -308
  350. package/node_modules/hono/dist/jsx/index.js +45 -98
  351. package/node_modules/hono/dist/jsx/intrinsic-element/common.js +20 -22
  352. package/node_modules/hono/dist/jsx/intrinsic-element/components.js +113 -154
  353. package/node_modules/hono/dist/jsx/intrinsic-elements.js +1 -0
  354. package/node_modules/hono/dist/jsx/jsx-dev-runtime.js +12 -16
  355. package/node_modules/hono/dist/jsx/jsx-runtime.js +29 -42
  356. package/node_modules/hono/dist/jsx/streaming.js +120 -142
  357. package/node_modules/hono/dist/jsx/types.js +1 -0
  358. package/node_modules/hono/dist/jsx/utils.js +105 -168
  359. package/node_modules/hono/dist/middleware/basic-auth/index.js +96 -63
  360. package/node_modules/hono/dist/middleware/bearer-auth/index.js +93 -89
  361. package/node_modules/hono/dist/middleware/body-limit/index.js +66 -51
  362. package/node_modules/hono/dist/middleware/cache/index.js +165 -190
  363. package/node_modules/hono/dist/middleware/combine/index.js +134 -73
  364. package/node_modules/hono/dist/middleware/compress/index.js +75 -69
  365. package/node_modules/hono/dist/middleware/context-storage/index.js +49 -19
  366. package/node_modules/hono/dist/middleware/cors/index.js +107 -86
  367. package/node_modules/hono/dist/middleware/csrf/index.js +103 -53
  368. package/node_modules/hono/dist/middleware/etag/digest.js +59 -77
  369. package/node_modules/hono/dist/middleware/etag/index.js +71 -70
  370. package/node_modules/hono/dist/middleware/ip-restriction/index.js +163 -158
  371. package/node_modules/hono/dist/middleware/jsx-renderer/index.js +97 -54
  372. package/node_modules/hono/dist/middleware/jwk/index.js +1 -4
  373. package/node_modules/hono/dist/middleware/jwk/jwk.js +116 -112
  374. package/node_modules/hono/dist/middleware/jwt/index.js +2 -10
  375. package/node_modules/hono/dist/middleware/jwt/jwt.js +114 -114
  376. package/node_modules/hono/dist/middleware/language/index.js +2 -15
  377. package/node_modules/hono/dist/middleware/language/language.js +180 -157
  378. package/node_modules/hono/dist/middleware/logger/index.js +43 -37
  379. package/node_modules/hono/dist/middleware/method-not-allowed/index.js +81 -66
  380. package/node_modules/hono/dist/middleware/method-override/index.js +101 -81
  381. package/node_modules/hono/dist/middleware/powered-by/index.js +23 -9
  382. package/node_modules/hono/dist/middleware/pretty-json/index.js +39 -22
  383. package/node_modules/hono/dist/middleware/request-id/index.js +1 -4
  384. package/node_modules/hono/dist/middleware/request-id/request-id.js +33 -20
  385. package/node_modules/hono/dist/middleware/secure-headers/index.js +1 -5
  386. package/node_modules/hono/dist/middleware/secure-headers/permissions-policy.js +1 -0
  387. package/node_modules/hono/dist/middleware/secure-headers/secure-headers.js +144 -155
  388. package/node_modules/hono/dist/middleware/serve-static/index.js +56 -72
  389. package/node_modules/hono/dist/middleware/serve-static/path.js +15 -17
  390. package/node_modules/hono/dist/middleware/timeout/index.js +40 -23
  391. package/node_modules/hono/dist/middleware/timing/index.js +2 -9
  392. package/node_modules/hono/dist/middleware/timing/timing.js +177 -97
  393. package/node_modules/hono/dist/middleware/trailing-slash/index.js +85 -37
  394. package/node_modules/hono/dist/preset/quick.js +17 -15
  395. package/node_modules/hono/dist/preset/tiny.js +14 -11
  396. package/node_modules/hono/dist/request/constants.js +4 -5
  397. package/node_modules/hono/dist/request.js +328 -319
  398. package/node_modules/hono/dist/router/linear-router/index.js +1 -4
  399. package/node_modules/hono/dist/router/linear-router/router.js +93 -120
  400. package/node_modules/hono/dist/router/pattern-router/index.js +1 -4
  401. package/node_modules/hono/dist/router/pattern-router/router.js +39 -40
  402. package/node_modules/hono/dist/router/reg-exp-router/index.js +1 -7
  403. package/node_modules/hono/dist/router/reg-exp-router/matcher.js +17 -23
  404. package/node_modules/hono/dist/router/reg-exp-router/node.js +87 -110
  405. package/node_modules/hono/dist/router/reg-exp-router/prepared-router.js +89 -137
  406. package/node_modules/hono/dist/router/reg-exp-router/router.js +92 -129
  407. package/node_modules/hono/dist/router/reg-exp-router/trie.js +69 -64
  408. package/node_modules/hono/dist/router/smart-router/index.js +1 -4
  409. package/node_modules/hono/dist/router/smart-router/router.js +46 -55
  410. package/node_modules/hono/dist/router/trie-router/index.js +1 -4
  411. package/node_modules/hono/dist/router/trie-router/node.js +131 -162
  412. package/node_modules/hono/dist/router/trie-router/router.js +11 -14
  413. package/node_modules/hono/dist/router/utils.js +4 -5
  414. package/node_modules/hono/dist/router.js +35 -14
  415. package/node_modules/hono/dist/types/adapter/aws-lambda/conninfo.d.ts +4 -1
  416. package/node_modules/hono/dist/types/adapter/aws-lambda/handler.d.ts +150 -104
  417. package/node_modules/hono/dist/types/adapter/aws-lambda/index.d.ts +4 -8
  418. package/node_modules/hono/dist/types/adapter/aws-lambda/types.d.ts +152 -122
  419. package/node_modules/hono/dist/types/adapter/bun/conninfo.d.ts +4 -1
  420. package/node_modules/hono/dist/types/adapter/bun/index.d.ts +6 -10
  421. package/node_modules/hono/dist/types/adapter/bun/serve-static.d.ts +7 -2
  422. package/node_modules/hono/dist/types/adapter/bun/server.d.ts +4 -5
  423. package/node_modules/hono/dist/types/adapter/bun/ssg.d.ts +5 -1
  424. package/node_modules/hono/dist/types/adapter/bun/websocket.d.ts +31 -16
  425. package/node_modules/hono/dist/types/adapter/cloudflare-pages/conninfo.d.ts +4 -1
  426. package/node_modules/hono/dist/types/adapter/cloudflare-pages/handler.d.ts +29 -17
  427. package/node_modules/hono/dist/types/adapter/cloudflare-pages/index.d.ts +3 -7
  428. package/node_modules/hono/dist/types/adapter/cloudflare-workers/conninfo.d.ts +6 -1
  429. package/node_modules/hono/dist/types/adapter/cloudflare-workers/index.d.ts +4 -7
  430. package/node_modules/hono/dist/types/adapter/cloudflare-workers/serve-static-module.d.ts +5 -2
  431. package/node_modules/hono/dist/types/adapter/cloudflare-workers/serve-static.d.ts +10 -5
  432. package/node_modules/hono/dist/types/adapter/cloudflare-workers/utils.d.ts +10 -2
  433. package/node_modules/hono/dist/types/adapter/cloudflare-workers/websocket.d.ts +6 -1
  434. package/node_modules/hono/dist/types/adapter/deno/conninfo.d.ts +4 -1
  435. package/node_modules/hono/dist/types/adapter/deno/deno.d.ts +1 -0
  436. package/node_modules/hono/dist/types/adapter/deno/index.d.ts +5 -8
  437. package/node_modules/hono/dist/types/adapter/deno/serve-static.d.ts +7 -2
  438. package/node_modules/hono/dist/types/adapter/deno/ssg.d.ts +5 -1
  439. package/node_modules/hono/dist/types/adapter/deno/websocket.d.ts +6 -1
  440. package/node_modules/hono/dist/types/adapter/lambda-edge/conninfo.d.ts +6 -1
  441. package/node_modules/hono/dist/types/adapter/lambda-edge/handler.d.ts +83 -57
  442. package/node_modules/hono/dist/types/adapter/lambda-edge/index.d.ts +3 -7
  443. package/node_modules/hono/dist/types/adapter/netlify/conninfo.d.ts +4 -1
  444. package/node_modules/hono/dist/types/adapter/netlify/handler.d.ts +6 -1
  445. package/node_modules/hono/dist/types/adapter/netlify/index.d.ts +3 -5
  446. package/node_modules/hono/dist/types/adapter/netlify/mod.d.ts +3 -2
  447. package/node_modules/hono/dist/types/adapter/service-worker/handler.d.ts +9 -7
  448. package/node_modules/hono/dist/types/adapter/service-worker/index.d.ts +7 -9
  449. package/node_modules/hono/dist/types/adapter/service-worker/types.d.ts +12 -7
  450. package/node_modules/hono/dist/types/adapter/vercel/conninfo.d.ts +6 -1
  451. package/node_modules/hono/dist/types/adapter/vercel/handler.d.ts +6 -1
  452. package/node_modules/hono/dist/types/adapter/vercel/index.d.ts +3 -6
  453. package/node_modules/hono/dist/types/client/client.d.ts +5 -3
  454. package/node_modules/hono/dist/types/client/fetch-result-please.d.ts +21 -19
  455. package/node_modules/hono/dist/types/client/index.d.ts +5 -7
  456. package/node_modules/hono/dist/types/client/types.d.ts +134 -159
  457. package/node_modules/hono/dist/types/client/utils.d.ts +6 -4
  458. package/node_modules/hono/dist/types/compose.d.ts +4 -2
  459. package/node_modules/hono/dist/types/context.d.ts +335 -335
  460. package/node_modules/hono/dist/types/helper/accepts/accepts.d.ts +11 -9
  461. package/node_modules/hono/dist/types/helper/accepts/index.d.ts +2 -5
  462. package/node_modules/hono/dist/types/helper/adapter/index.d.ts +4 -6
  463. package/node_modules/hono/dist/types/helper/conninfo/index.d.ts +2 -5
  464. package/node_modules/hono/dist/types/helper/conninfo/types.d.ts +25 -23
  465. package/node_modules/hono/dist/types/helper/cookie/index.d.ts +10 -12
  466. package/node_modules/hono/dist/types/helper/css/common.d.ts +11 -9
  467. package/node_modules/hono/dist/types/helper/css/index.d.ts +26 -28
  468. package/node_modules/hono/dist/types/helper/dev/index.d.ts +10 -12
  469. package/node_modules/hono/dist/types/helper/factory/index.d.ts +26 -73
  470. package/node_modules/hono/dist/types/helper/html/index.d.ts +4 -7
  471. package/node_modules/hono/dist/types/helper/proxy/index.d.ts +19 -21
  472. package/node_modules/hono/dist/types/helper/route/index.d.ts +4 -2
  473. package/node_modules/hono/dist/types/helper/ssg/index.d.ts +4 -7
  474. package/node_modules/hono/dist/types/helper/ssg/middleware.d.ts +8 -6
  475. package/node_modules/hono/dist/types/helper/ssg/plugins.d.ts +3 -1
  476. package/node_modules/hono/dist/types/helper/ssg/ssg.d.ts +38 -36
  477. package/node_modules/hono/dist/types/helper/ssg/utils.d.ts +5 -3
  478. package/node_modules/hono/dist/types/helper/streaming/index.d.ts +4 -8
  479. package/node_modules/hono/dist/types/helper/streaming/sse.d.ts +10 -8
  480. package/node_modules/hono/dist/types/helper/streaming/stream.d.ts +4 -2
  481. package/node_modules/hono/dist/types/helper/streaming/text.d.ts +4 -2
  482. package/node_modules/hono/dist/types/helper/streaming/utils.d.ts +2 -0
  483. package/node_modules/hono/dist/types/helper/testing/index.d.ts +7 -9
  484. package/node_modules/hono/dist/types/helper/websocket/index.d.ts +30 -33
  485. package/node_modules/hono/dist/types/hono-base.d.ts +208 -210
  486. package/node_modules/hono/dist/types/hono.d.ts +11 -10
  487. package/node_modules/hono/dist/types/http-exception.d.ts +20 -22
  488. package/node_modules/hono/dist/types/index.d.ts +6 -37
  489. package/node_modules/hono/dist/types/jsx/base.d.ts +36 -34
  490. package/node_modules/hono/dist/types/jsx/children.d.ts +8 -6
  491. package/node_modules/hono/dist/types/jsx/components.d.ts +8 -5
  492. package/node_modules/hono/dist/types/jsx/constants.d.ts +2 -0
  493. package/node_modules/hono/dist/types/jsx/context.d.ts +9 -6
  494. package/node_modules/hono/dist/types/jsx/dom/client.d.ts +9 -10
  495. package/node_modules/hono/dist/types/jsx/dom/components.d.ts +9 -6
  496. package/node_modules/hono/dist/types/jsx/dom/context.d.ts +3 -1
  497. package/node_modules/hono/dist/types/jsx/dom/css.d.ts +27 -30
  498. package/node_modules/hono/dist/types/jsx/dom/hooks/index.d.ts +11 -12
  499. package/node_modules/hono/dist/types/jsx/dom/index.d.ts +79 -83
  500. package/node_modules/hono/dist/types/jsx/dom/intrinsic-element/components.d.ts +9 -5
  501. package/node_modules/hono/dist/types/jsx/dom/jsx-dev-runtime.d.ts +4 -6
  502. package/node_modules/hono/dist/types/jsx/dom/jsx-runtime.d.ts +3 -7
  503. package/node_modules/hono/dist/types/jsx/dom/render.d.ts +32 -50
  504. package/node_modules/hono/dist/types/jsx/dom/server.d.ts +87 -85
  505. package/node_modules/hono/dist/types/jsx/dom/utils.d.ts +2 -0
  506. package/node_modules/hono/dist/types/jsx/hooks/index.d.ts +16 -16
  507. package/node_modules/hono/dist/types/jsx/index.d.ts +71 -73
  508. package/node_modules/hono/dist/types/jsx/intrinsic-element/common.d.ts +3 -1
  509. package/node_modules/hono/dist/types/jsx/intrinsic-element/components.d.ts +7 -4
  510. package/node_modules/hono/dist/types/jsx/intrinsic-elements.d.ts +708 -708
  511. package/node_modules/hono/dist/types/jsx/jsx-dev-runtime.d.ts +4 -7
  512. package/node_modules/hono/dist/types/jsx/jsx-runtime.d.ts +7 -10
  513. package/node_modules/hono/dist/types/jsx/streaming.d.ts +9 -10
  514. package/node_modules/hono/dist/types/jsx/types.d.ts +12 -13
  515. package/node_modules/hono/dist/types/jsx/utils.d.ts +2 -0
  516. package/node_modules/hono/dist/types/middleware/basic-auth/index.d.ts +17 -19
  517. package/node_modules/hono/dist/types/middleware/bearer-auth/index.d.ts +46 -48
  518. package/node_modules/hono/dist/types/middleware/body-limit/index.d.ts +6 -8
  519. package/node_modules/hono/dist/types/middleware/cache/index.d.ts +13 -15
  520. package/node_modules/hono/dist/types/middleware/combine/index.d.ts +4 -6
  521. package/node_modules/hono/dist/types/middleware/compress/index.d.ts +9 -10
  522. package/node_modules/hono/dist/types/middleware/context-storage/index.d.ts +4 -6
  523. package/node_modules/hono/dist/types/middleware/cors/index.d.ts +10 -12
  524. package/node_modules/hono/dist/types/middleware/csrf/index.d.ts +6 -8
  525. package/node_modules/hono/dist/types/middleware/etag/digest.d.ts +2 -0
  526. package/node_modules/hono/dist/types/middleware/etag/index.d.ts +6 -8
  527. package/node_modules/hono/dist/types/middleware/ip-restriction/index.d.ts +11 -12
  528. package/node_modules/hono/dist/types/middleware/jsx-renderer/index.d.ts +11 -11
  529. package/node_modules/hono/dist/types/middleware/jwk/index.d.ts +2 -1
  530. package/node_modules/hono/dist/types/middleware/jwk/jwk.d.ts +20 -23
  531. package/node_modules/hono/dist/types/middleware/jwt/index.d.ts +7 -6
  532. package/node_modules/hono/dist/types/middleware/jwt/jwt.d.ts +28 -30
  533. package/node_modules/hono/dist/types/middleware/language/index.d.ts +6 -5
  534. package/node_modules/hono/dist/types/middleware/language/language.d.ts +42 -44
  535. package/node_modules/hono/dist/types/middleware/logger/index.d.ts +3 -5
  536. package/node_modules/hono/dist/types/middleware/method-not-allowed/index.d.ts +7 -9
  537. package/node_modules/hono/dist/types/middleware/method-override/index.d.ts +14 -16
  538. package/node_modules/hono/dist/types/middleware/powered-by/index.d.ts +8 -10
  539. package/node_modules/hono/dist/types/middleware/pretty-json/index.d.ts +18 -20
  540. package/node_modules/hono/dist/types/middleware/request-id/index.d.ts +6 -5
  541. package/node_modules/hono/dist/types/middleware/request-id/request-id.d.ts +9 -11
  542. package/node_modules/hono/dist/types/middleware/secure-headers/index.d.ts +6 -6
  543. package/node_modules/hono/dist/types/middleware/secure-headers/permissions-policy.d.ts +2 -0
  544. package/node_modules/hono/dist/types/middleware/secure-headers/secure-headers.d.ts +55 -57
  545. package/node_modules/hono/dist/types/middleware/serve-static/index.d.ts +24 -24
  546. package/node_modules/hono/dist/types/middleware/serve-static/path.d.ts +2 -0
  547. package/node_modules/hono/dist/types/middleware/timeout/index.d.ts +5 -7
  548. package/node_modules/hono/dist/types/middleware/timing/index.d.ts +6 -5
  549. package/node_modules/hono/dist/types/middleware/timing/timing.d.ts +17 -20
  550. package/node_modules/hono/dist/types/middleware/trailing-slash/index.d.ts +35 -37
  551. package/node_modules/hono/dist/types/preset/quick.d.ts +6 -9
  552. package/node_modules/hono/dist/types/preset/tiny.d.ts +6 -9
  553. package/node_modules/hono/dist/types/request/constants.d.ts +2 -0
  554. package/node_modules/hono/dist/types/request.d.ts +288 -286
  555. package/node_modules/hono/dist/types/router/linear-router/index.d.ts +2 -5
  556. package/node_modules/hono/dist/types/router/linear-router/router.d.ts +7 -5
  557. package/node_modules/hono/dist/types/router/pattern-router/index.d.ts +2 -5
  558. package/node_modules/hono/dist/types/router/pattern-router/router.d.ts +7 -5
  559. package/node_modules/hono/dist/types/router/reg-exp-router/index.d.ts +3 -6
  560. package/node_modules/hono/dist/types/router/reg-exp-router/matcher.d.ts +3 -1
  561. package/node_modules/hono/dist/types/router/reg-exp-router/node.d.ts +6 -4
  562. package/node_modules/hono/dist/types/router/reg-exp-router/prepared-router.d.ts +11 -10
  563. package/node_modules/hono/dist/types/router/reg-exp-router/router.d.ts +10 -9
  564. package/node_modules/hono/dist/types/router/reg-exp-router/trie.d.ts +7 -5
  565. package/node_modules/hono/dist/types/router/smart-router/index.d.ts +2 -5
  566. package/node_modules/hono/dist/types/router/smart-router/router.d.ts +11 -9
  567. package/node_modules/hono/dist/types/router/trie-router/index.d.ts +2 -5
  568. package/node_modules/hono/dist/types/router/trie-router/node.d.ts +6 -4
  569. package/node_modules/hono/dist/types/router/trie-router/router.d.ts +7 -5
  570. package/node_modules/hono/dist/types/router/utils.d.ts +2 -0
  571. package/node_modules/hono/dist/types/router.d.ts +23 -22
  572. package/node_modules/hono/dist/types/types.d.ts +146 -505
  573. package/node_modules/hono/dist/types/utils/accept.d.ts +5 -3
  574. package/node_modules/hono/dist/types/utils/basic-auth.d.ts +4 -2
  575. package/node_modules/hono/dist/types/utils/body.d.ts +46 -50
  576. package/node_modules/hono/dist/types/utils/buffer.d.ts +7 -5
  577. package/node_modules/hono/dist/types/utils/color.d.ts +2 -0
  578. package/node_modules/hono/dist/types/utils/compress.d.ts +2 -0
  579. package/node_modules/hono/dist/types/utils/concurrent.d.ts +6 -4
  580. package/node_modules/hono/dist/types/utils/constants.d.ts +2 -0
  581. package/node_modules/hono/dist/types/utils/cookie.d.ts +20 -18
  582. package/node_modules/hono/dist/types/utils/crypto.d.ts +5 -7
  583. package/node_modules/hono/dist/types/utils/encode.d.ts +2 -0
  584. package/node_modules/hono/dist/types/utils/filepath.d.ts +5 -3
  585. package/node_modules/hono/dist/types/utils/handler.d.ts +2 -0
  586. package/node_modules/hono/dist/types/utils/headers.d.ts +2 -0
  587. package/node_modules/hono/dist/types/utils/html.d.ts +11 -9
  588. package/node_modules/hono/dist/types/utils/http-status.d.ts +2 -0
  589. package/node_modules/hono/dist/types/utils/ipaddr.d.ts +4 -6
  590. package/node_modules/hono/dist/types/utils/jwt/index.d.ts +18 -12
  591. package/node_modules/hono/dist/types/utils/jwt/jwa.d.ts +15 -13
  592. package/node_modules/hono/dist/types/utils/jwt/jws.d.ts +4 -7
  593. package/node_modules/hono/dist/types/utils/jwt/jwt.d.ts +26 -29
  594. package/node_modules/hono/dist/types/utils/jwt/types.d.ts +48 -45
  595. package/node_modules/hono/dist/types/utils/jwt/utf8.d.ts +2 -0
  596. package/node_modules/hono/dist/types/utils/mime.d.ts +60 -57
  597. package/node_modules/hono/dist/types/utils/stream.d.ts +27 -25
  598. package/node_modules/hono/dist/types/utils/types.d.ts +14 -26
  599. package/node_modules/hono/dist/types/utils/url.d.ts +2 -0
  600. package/node_modules/hono/dist/types/validator/index.d.ts +3 -7
  601. package/node_modules/hono/dist/types/validator/utils.d.ts +6 -8
  602. package/node_modules/hono/dist/types/validator/validator.d.ts +11 -9
  603. package/node_modules/hono/dist/types.js +4 -6
  604. package/node_modules/hono/dist/utils/accept.js +185 -212
  605. package/node_modules/hono/dist/utils/basic-auth.js +18 -21
  606. package/node_modules/hono/dist/utils/body.js +87 -92
  607. package/node_modules/hono/dist/utils/buffer.js +44 -71
  608. package/node_modules/hono/dist/utils/color.js +33 -21
  609. package/node_modules/hono/dist/utils/compress.js +11 -5
  610. package/node_modules/hono/dist/utils/concurrent.js +29 -38
  611. package/node_modules/hono/dist/utils/constants.js +7 -5
  612. package/node_modules/hono/dist/utils/cookie.js +114 -163
  613. package/node_modules/hono/dist/utils/crypto.js +30 -40
  614. package/node_modules/hono/dist/utils/encode.js +30 -26
  615. package/node_modules/hono/dist/utils/filepath.js +23 -33
  616. package/node_modules/hono/dist/utils/handler.js +10 -11
  617. package/node_modules/hono/dist/utils/headers.js +1 -0
  618. package/node_modules/hono/dist/utils/html.js +97 -117
  619. package/node_modules/hono/dist/utils/http-status.js +1 -0
  620. package/node_modules/hono/dist/utils/ipaddr.js +227 -279
  621. package/node_modules/hono/dist/utils/jwt/index.js +12 -4
  622. package/node_modules/hono/dist/utils/jwt/jwa.js +24 -20
  623. package/node_modules/hono/dist/utils/jwt/jws.js +115 -174
  624. package/node_modules/hono/dist/utils/jwt/jwt.js +120 -198
  625. package/node_modules/hono/dist/utils/jwt/types.js +79 -95
  626. package/node_modules/hono/dist/utils/jwt/utf8.js +9 -7
  627. package/node_modules/hono/dist/utils/mime.js +74 -79
  628. package/node_modules/hono/dist/utils/stream.js +86 -88
  629. package/node_modules/hono/dist/utils/types.js +1 -0
  630. package/node_modules/hono/dist/utils/url.js +187 -215
  631. package/node_modules/hono/dist/validator/index.js +1 -4
  632. package/node_modules/hono/dist/validator/utils.js +1 -0
  633. package/node_modules/hono/dist/validator/validator.js +61 -83
  634. package/node_modules/hono/package.json +27 -27
  635. package/node_modules/ip-address/README.md +34 -34
  636. package/node_modules/ip-address/dist/ipv4.js +7 -0
  637. package/node_modules/ip-address/dist/ipv4.js.map +1 -1
  638. package/node_modules/ip-address/package.json +1 -1
  639. package/node_modules/undici/docs/docs/api/DiagnosticsChannel.md +3 -1
  640. package/node_modules/undici/docs/docs/api/Dispatcher.md +1 -0
  641. package/node_modules/undici/lib/core/request.js +23 -2
  642. package/node_modules/undici/lib/dispatcher/client-h1.js +11 -4
  643. package/node_modules/undici/lib/dispatcher/client-h2.js +14 -5
  644. package/node_modules/undici/lib/handler/retry-handler.js +71 -20
  645. package/node_modules/undici/lib/interceptor/decompress.js +228 -68
  646. package/node_modules/undici/lib/web/websocket/connection.js +18 -8
  647. package/node_modules/undici/package.json +1 -1
  648. package/node_modules/undici/types/interceptors.d.ts +1 -1
  649. package/node_modules/ws/lib/websocket.js +17 -3
  650. package/node_modules/ws/package.json +1 -1
  651. package/package.json +2 -2
  652. package/slingshot/index.js +256 -256
@@ -1,385 +1,348 @@
1
- // src/hono-base.ts
2
1
  import { compose } from "./compose.js";
2
+ import { getPath, getPathNoStrict, mergePath } from "./utils/url.js";
3
3
  import { Context } from "./context.js";
4
- import { METHODS, METHOD_NAME_ALL, METHOD_NAME_ALL_LOWERCASE } from "./router.js";
4
+ import { METHODS } from "./router.js";
5
5
  import { COMPOSED_HANDLER } from "./utils/constants.js";
6
- import { getPath, getPathNoStrict, mergePath } from "./utils/url.js";
7
- var notFoundHandler = (c) => {
8
- return c.text("404 Not Found", 404);
9
- };
10
- var errorHandler = (err, c) => {
11
- if ("getResponse" in err) {
12
- const res = err.getResponse();
13
- return c.newResponse(res.body, res);
14
- }
15
- console.error(err);
16
- return c.text("Internal Server Error", 500);
6
+ //#region src/hono-base.ts
7
+ /**
8
+ * @module
9
+ * This module is the base module for the Hono object.
10
+ */
11
+ const notFoundHandler = (c) => {
12
+ return c.text("404 Not Found", 404);
17
13
  };
18
- var Hono = class _Hono {
19
- get;
20
- post;
21
- put;
22
- delete;
23
- options;
24
- patch;
25
- query;
26
- all;
27
- on;
28
- use;
29
- /*
30
- This class is like an abstract class and does not have a router.
31
- To use it, inherit the class and implement router in the constructor.
32
- */
33
- router;
34
- getPath;
35
- // Cannot use `#` because it requires visibility at JavaScript runtime.
36
- _basePath = "/";
37
- #path = "/";
38
- routes = [];
39
- constructor(options = {}) {
40
- const allMethods = [...METHODS, METHOD_NAME_ALL_LOWERCASE];
41
- allMethods.forEach((method) => {
42
- this[method] = (args1, ...args) => {
43
- const methodName = method.toUpperCase();
44
- if (typeof args1 === "string") {
45
- this.#path = args1;
46
- } else {
47
- this.#addRoute(methodName, this.#path, args1);
48
- }
49
- args.forEach((handler) => {
50
- this.#addRoute(methodName, this.#path, handler);
51
- });
52
- return this;
53
- };
54
- });
55
- this.on = (method, path, ...handlers) => {
56
- for (const p of [path].flat()) {
57
- this.#path = p;
58
- for (const m of [method].flat()) {
59
- const methodName = m.toUpperCase();
60
- for (const handler of handlers) {
61
- this.#addRoute(methodName, this.#path, handler);
62
- }
63
- }
64
- }
65
- return this;
66
- };
67
- this.use = (arg1, ...handlers) => {
68
- if (typeof arg1 === "string") {
69
- this.#path = arg1;
70
- } else {
71
- this.#path = "*";
72
- handlers.unshift(arg1);
73
- }
74
- handlers.forEach((handler) => {
75
- this.#addRoute(METHOD_NAME_ALL, this.#path, handler);
76
- });
77
- return this;
78
- };
79
- const { strict, ...optionsWithoutStrict } = options;
80
- Object.assign(this, optionsWithoutStrict);
81
- this.getPath = strict ?? true ? options.getPath ?? getPath : getPathNoStrict;
82
- }
83
- #clone() {
84
- const clone = new _Hono({
85
- router: this.router,
86
- getPath: this.getPath
87
- });
88
- clone.errorHandler = this.errorHandler;
89
- clone.#notFoundHandler = this.#notFoundHandler;
90
- clone.routes = this.routes;
91
- return clone;
92
- }
93
- #notFoundHandler = notFoundHandler;
94
- // Cannot use `#` because it requires visibility at JavaScript runtime.
95
- errorHandler = errorHandler;
96
- /**
97
- * `.route()` allows grouping other Hono instance in routes.
98
- *
99
- * @see {@link https://hono.dev/docs/api/routing#grouping}
100
- *
101
- * @param {string} path - base Path
102
- * @param {Hono} app - other Hono instance
103
- * @returns {Hono} routed Hono instance
104
- *
105
- * @example
106
- * ```ts
107
- * const app = new Hono()
108
- * const app2 = new Hono()
109
- *
110
- * app2.get("/user", (c) => c.text("user"))
111
- * app.route("/api", app2) // GET /api/user
112
- * ```
113
- */
114
- route(path, app) {
115
- const subApp = this.basePath(path);
116
- app.routes.map((r) => {
117
- let handler;
118
- if (app.errorHandler === errorHandler) {
119
- handler = r.handler;
120
- } else {
121
- handler = async (c, next) => (await compose([], app.errorHandler)(c, () => r.handler(c, next))).res;
122
- handler[COMPOSED_HANDLER] = r.handler;
123
- }
124
- subApp.#addRoute(r.method, r.path, handler, r.basePath);
125
- });
126
- return this;
127
- }
128
- /**
129
- * `.basePath()` allows base paths to be specified.
130
- *
131
- * @see {@link https://hono.dev/docs/api/routing#base-path}
132
- *
133
- * @param {string} path - base Path
134
- * @returns {Hono} changed Hono instance
135
- *
136
- * @example
137
- * ```ts
138
- * const api = new Hono().basePath('/api')
139
- * ```
140
- */
141
- basePath(path) {
142
- const subApp = this.#clone();
143
- subApp._basePath = mergePath(this._basePath, path);
144
- return subApp;
145
- }
146
- /**
147
- * `.onError()` handles an error and returns a customized Response.
148
- *
149
- * @see {@link https://hono.dev/docs/api/hono#error-handling}
150
- *
151
- * @param {ErrorHandler} handler - request Handler for error
152
- * @returns {Hono} changed Hono instance
153
- *
154
- * @example
155
- * ```ts
156
- * app.onError((err, c) => {
157
- * console.error(`${err}`)
158
- * return c.text('Custom Error Message', 500)
159
- * })
160
- * ```
161
- */
162
- onError = (handler) => {
163
- this.errorHandler = handler;
164
- return this;
165
- };
166
- /**
167
- * `.notFound()` allows you to customize a Not Found Response.
168
- *
169
- * @see {@link https://hono.dev/docs/api/hono#not-found}
170
- *
171
- * @param {NotFoundHandler} handler - request handler for not-found
172
- * @returns {Hono} changed Hono instance
173
- *
174
- * @example
175
- * ```ts
176
- * app.notFound((c) => {
177
- * return c.text('Custom 404 Message', 404)
178
- * })
179
- * ```
180
- */
181
- notFound = (handler) => {
182
- this.#notFoundHandler = handler;
183
- return this;
184
- };
185
- /**
186
- * `.mount()` allows you to mount applications built with other frameworks into your Hono application.
187
- *
188
- * @see {@link https://hono.dev/docs/api/hono#mount}
189
- *
190
- * @param {string} path - base Path
191
- * @param {Function} applicationHandler - other Request Handler
192
- * @param {MountOptions} [options] - options of `.mount()`
193
- * @returns {Hono} mounted Hono instance
194
- *
195
- * @example
196
- * ```ts
197
- * import { Router as IttyRouter } from 'itty-router'
198
- * import { Hono } from 'hono'
199
- * // Create itty-router application
200
- * const ittyRouter = IttyRouter()
201
- * // GET /itty-router/hello
202
- * ittyRouter.get('/hello', () => new Response('Hello from itty-router'))
203
- *
204
- * const app = new Hono()
205
- * app.mount('/itty-router', ittyRouter.handle)
206
- * ```
207
- *
208
- * @example
209
- * ```ts
210
- * const app = new Hono()
211
- * // Send the request to another application without modification.
212
- * app.mount('/app', anotherApp, {
213
- * replaceRequest: (req) => req,
214
- * })
215
- * ```
216
- */
217
- mount(path, applicationHandler, options) {
218
- let replaceRequest;
219
- let optionHandler;
220
- if (options) {
221
- if (typeof options === "function") {
222
- optionHandler = options;
223
- } else {
224
- optionHandler = options.optionHandler;
225
- if (options.replaceRequest === false) {
226
- replaceRequest = (request) => request;
227
- } else {
228
- replaceRequest = options.replaceRequest;
229
- }
230
- }
231
- }
232
- const getOptions = optionHandler ? (c) => {
233
- const options2 = optionHandler(c);
234
- return Array.isArray(options2) ? options2 : [options2];
235
- } : (c) => {
236
- let executionContext = void 0;
237
- try {
238
- executionContext = c.executionCtx;
239
- } catch {
240
- }
241
- return [c.env, executionContext];
242
- };
243
- replaceRequest ||= (() => {
244
- const mergedPath = mergePath(this._basePath, path);
245
- const pathPrefixLength = mergedPath === "/" ? 0 : mergedPath.length;
246
- return (request) => {
247
- const url = new URL(request.url);
248
- url.pathname = this.getPath(request).slice(pathPrefixLength) || "/";
249
- return new Request(url, request);
250
- };
251
- })();
252
- const handler = async (c, next) => {
253
- const res = await applicationHandler(replaceRequest(c.req.raw), ...getOptions(c));
254
- if (res) {
255
- return res;
256
- }
257
- await next();
258
- };
259
- this.#addRoute(METHOD_NAME_ALL, mergePath(path, "*"), handler);
260
- return this;
261
- }
262
- #addRoute(method, path, handler, baseRoutePath) {
263
- path = mergePath(this._basePath, path);
264
- const r = {
265
- basePath: baseRoutePath !== void 0 ? mergePath(this._basePath, baseRoutePath) : this._basePath,
266
- path,
267
- method,
268
- handler
269
- };
270
- this.router.add(method, path, [handler, r]);
271
- this.routes.push(r);
272
- }
273
- #handleError(err, c) {
274
- if (err instanceof Error) {
275
- return this.errorHandler(err, c);
276
- }
277
- throw err;
278
- }
279
- #dispatch(request, executionCtx, env, method) {
280
- if (method === "HEAD") {
281
- return (async () => new Response(null, await this.#dispatch(request, executionCtx, env, "GET")))();
282
- }
283
- const path = this.getPath(request, { env });
284
- const matchResult = this.router.match(method, path);
285
- const c = new Context(request, {
286
- path,
287
- matchResult,
288
- env,
289
- executionCtx,
290
- notFoundHandler: this.#notFoundHandler
291
- });
292
- if (matchResult[0].length === 1) {
293
- let res;
294
- try {
295
- res = matchResult[0][0][0][0](c, async () => {
296
- c.res = await this.#notFoundHandler(c);
297
- });
298
- } catch (err) {
299
- return this.#handleError(err, c);
300
- }
301
- return res instanceof Promise ? res.then(
302
- (resolved) => resolved || (c.finalized ? c.res : this.#notFoundHandler(c))
303
- ).catch((err) => this.#handleError(err, c)) : res ?? this.#notFoundHandler(c);
304
- }
305
- const composed = compose(matchResult[0], this.errorHandler, this.#notFoundHandler);
306
- return (async () => {
307
- try {
308
- const context = await composed(c);
309
- if (!context.finalized) {
310
- throw new Error(
311
- "Context is not finalized. Did you forget to return a Response object or `await next()`?"
312
- );
313
- }
314
- return context.res;
315
- } catch (err) {
316
- return this.#handleError(err, c);
317
- }
318
- })();
319
- }
320
- /**
321
- * `.fetch()` will be entry point of your app.
322
- *
323
- * @see {@link https://hono.dev/docs/api/hono#fetch}
324
- *
325
- * @param {Request} request - request Object of request
326
- * @param {Env} env - env Object
327
- * @param {ExecutionContext} executionCtx - context of execution
328
- * @returns {Response | Promise<Response>} response of request
329
- *
330
- */
331
- fetch = (request, ...rest) => {
332
- return this.#dispatch(request, rest[1], rest[0], request.method);
333
- };
334
- /**
335
- * `.request()` is a useful method for testing.
336
- * You can pass a URL or pathname to send a GET request.
337
- * app will return a Response object.
338
- * ```ts
339
- * test('GET /hello is ok', async () => {
340
- * const res = await app.request('/hello')
341
- * expect(res.status).toBe(200)
342
- * })
343
- * ```
344
- * @see https://hono.dev/docs/api/hono#request
345
- */
346
- request = (input, requestInit, Env, executionCtx) => {
347
- if (input instanceof Request) {
348
- return this.fetch(requestInit ? new Request(input, requestInit) : input, Env, executionCtx);
349
- }
350
- input = input.toString();
351
- return this.fetch(
352
- new Request(
353
- /^https?:\/\//.test(input) ? input : `http://localhost${mergePath("/", input)}`,
354
- requestInit
355
- ),
356
- Env,
357
- executionCtx
358
- );
359
- };
360
- /**
361
- * `.fire()` automatically adds a global fetch event listener.
362
- * This can be useful for environments that adhere to the Service Worker API, such as non-ES module Cloudflare Workers.
363
- * @deprecated
364
- * Use `fire` from `hono/service-worker` instead.
365
- * ```ts
366
- * import { Hono } from 'hono'
367
- * import { fire } from 'hono/service-worker'
368
- *
369
- * const app = new Hono()
370
- * // ...
371
- * fire(app)
372
- * ```
373
- * @see https://hono.dev/docs/api/hono#fire
374
- * @see https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API
375
- * @see https://developers.cloudflare.com/workers/reference/migrate-to-module-workers/
376
- */
377
- fire = () => {
378
- addEventListener("fetch", (event) => {
379
- event.respondWith(this.#dispatch(event.request, event, void 0, event.request.method));
380
- });
381
- };
14
+ const errorHandler = (err, c) => {
15
+ if ("getResponse" in err) {
16
+ const res = err.getResponse();
17
+ return c.newResponse(res.body, res);
18
+ }
19
+ console.error(err);
20
+ return c.text("Internal Server Error", 500);
382
21
  };
383
- export {
384
- Hono as HonoBase
22
+ var Hono = class Hono {
23
+ get;
24
+ post;
25
+ put;
26
+ delete;
27
+ options;
28
+ patch;
29
+ query;
30
+ all;
31
+ on;
32
+ use;
33
+ router;
34
+ getPath;
35
+ _basePath = "/";
36
+ #path = "/";
37
+ routes = [];
38
+ constructor(options = {}) {
39
+ [...METHODS, "all"].forEach((method) => {
40
+ this[method] = (args1, ...args) => {
41
+ const methodName = method.toUpperCase();
42
+ if (typeof args1 === "string") this.#path = args1;
43
+ else this.#addRoute(methodName, this.#path, args1);
44
+ args.forEach((handler) => {
45
+ this.#addRoute(methodName, this.#path, handler);
46
+ });
47
+ return this;
48
+ };
49
+ });
50
+ this.on = (method, path, ...handlers) => {
51
+ for (const p of [path].flat()) {
52
+ this.#path = p;
53
+ for (const m of [method].flat()) {
54
+ const methodName = m.toUpperCase();
55
+ for (const handler of handlers) this.#addRoute(methodName, this.#path, handler);
56
+ }
57
+ }
58
+ return this;
59
+ };
60
+ this.use = (arg1, ...handlers) => {
61
+ if (typeof arg1 === "string") this.#path = arg1;
62
+ else {
63
+ this.#path = "*";
64
+ handlers.unshift(arg1);
65
+ }
66
+ handlers.forEach((handler) => {
67
+ this.#addRoute("ALL", this.#path, handler);
68
+ });
69
+ return this;
70
+ };
71
+ const { strict, ...optionsWithoutStrict } = options;
72
+ Object.assign(this, optionsWithoutStrict);
73
+ this.getPath = strict ?? true ? options.getPath ?? getPath : getPathNoStrict;
74
+ }
75
+ #clone() {
76
+ const clone = new Hono({
77
+ router: this.router,
78
+ getPath: this.getPath
79
+ });
80
+ clone.errorHandler = this.errorHandler;
81
+ clone.#notFoundHandler = this.#notFoundHandler;
82
+ clone.routes = this.routes;
83
+ return clone;
84
+ }
85
+ #notFoundHandler = notFoundHandler;
86
+ errorHandler = errorHandler;
87
+ /**
88
+ * `.route()` allows grouping other Hono instance in routes.
89
+ *
90
+ * @see {@link https://hono.dev/docs/api/routing#grouping}
91
+ *
92
+ * @param {string} path - base Path
93
+ * @param {Hono} app - other Hono instance
94
+ * @returns {Hono} routed Hono instance
95
+ *
96
+ * @example
97
+ * ```ts
98
+ * const app = new Hono()
99
+ * const app2 = new Hono()
100
+ *
101
+ * app2.get("/user", (c) => c.text("user"))
102
+ * app.route("/api", app2) // GET /api/user
103
+ * ```
104
+ */
105
+ route(path, app) {
106
+ const subApp = this.basePath(path);
107
+ app.routes.map((r) => {
108
+ let handler;
109
+ if (app.errorHandler === errorHandler) handler = r.handler;
110
+ else {
111
+ handler = async (c, next) => (await compose([], app.errorHandler)(c, () => r.handler(c, next))).res;
112
+ handler[COMPOSED_HANDLER] = r.handler;
113
+ }
114
+ subApp.#addRoute(r.method, r.path, handler, r.basePath);
115
+ });
116
+ return this;
117
+ }
118
+ /**
119
+ * `.basePath()` allows base paths to be specified.
120
+ *
121
+ * @see {@link https://hono.dev/docs/api/routing#base-path}
122
+ *
123
+ * @param {string} path - base Path
124
+ * @returns {Hono} changed Hono instance
125
+ *
126
+ * @example
127
+ * ```ts
128
+ * const api = new Hono().basePath('/api')
129
+ * ```
130
+ */
131
+ basePath(path) {
132
+ const subApp = this.#clone();
133
+ subApp._basePath = mergePath(this._basePath, path);
134
+ return subApp;
135
+ }
136
+ /**
137
+ * `.onError()` handles an error and returns a customized Response.
138
+ *
139
+ * @see {@link https://hono.dev/docs/api/hono#error-handling}
140
+ *
141
+ * @param {ErrorHandler} handler - request Handler for error
142
+ * @returns {Hono} changed Hono instance
143
+ *
144
+ * @example
145
+ * ```ts
146
+ * app.onError((err, c) => {
147
+ * console.error(`${err}`)
148
+ * return c.text('Custom Error Message', 500)
149
+ * })
150
+ * ```
151
+ */
152
+ onError = (handler) => {
153
+ this.errorHandler = handler;
154
+ return this;
155
+ };
156
+ /**
157
+ * `.notFound()` allows you to customize a Not Found Response.
158
+ *
159
+ * @see {@link https://hono.dev/docs/api/hono#not-found}
160
+ *
161
+ * @param {NotFoundHandler} handler - request handler for not-found
162
+ * @returns {Hono} changed Hono instance
163
+ *
164
+ * @example
165
+ * ```ts
166
+ * app.notFound((c) => {
167
+ * return c.text('Custom 404 Message', 404)
168
+ * })
169
+ * ```
170
+ */
171
+ notFound = (handler) => {
172
+ this.#notFoundHandler = handler;
173
+ return this;
174
+ };
175
+ /**
176
+ * `.mount()` allows you to mount applications built with other frameworks into your Hono application.
177
+ *
178
+ * @see {@link https://hono.dev/docs/api/hono#mount}
179
+ *
180
+ * @param {string} path - base Path
181
+ * @param {Function} applicationHandler - other Request Handler
182
+ * @param {MountOptions} [options] - options of `.mount()`
183
+ * @returns {Hono} mounted Hono instance
184
+ *
185
+ * @example
186
+ * ```ts
187
+ * import { Router as IttyRouter } from 'itty-router'
188
+ * import { Hono } from 'hono'
189
+ * // Create itty-router application
190
+ * const ittyRouter = IttyRouter()
191
+ * // GET /itty-router/hello
192
+ * ittyRouter.get('/hello', () => new Response('Hello from itty-router'))
193
+ *
194
+ * const app = new Hono()
195
+ * app.mount('/itty-router', ittyRouter.handle)
196
+ * ```
197
+ *
198
+ * @example
199
+ * ```ts
200
+ * const app = new Hono()
201
+ * // Send the request to another application without modification.
202
+ * app.mount('/app', anotherApp, {
203
+ * replaceRequest: (req) => req,
204
+ * })
205
+ * ```
206
+ */
207
+ mount(path, applicationHandler, options) {
208
+ let replaceRequest;
209
+ let optionHandler;
210
+ if (options) {
211
+ if (typeof options === "function") optionHandler = options;
212
+ else {
213
+ optionHandler = options.optionHandler;
214
+ if (options.replaceRequest === false) replaceRequest = (request) => request;
215
+ else replaceRequest = options.replaceRequest;
216
+ }
217
+ }
218
+ const getOptions = optionHandler ? (c) => {
219
+ const options = optionHandler(c);
220
+ return Array.isArray(options) ? options : [options];
221
+ } : (c) => {
222
+ let executionContext = void 0;
223
+ try {
224
+ executionContext = c.executionCtx;
225
+ } catch {}
226
+ return [c.env, executionContext];
227
+ };
228
+ replaceRequest ||= (() => {
229
+ const mergedPath = mergePath(this._basePath, path);
230
+ const pathPrefixLength = mergedPath === "/" ? 0 : mergedPath.length;
231
+ return (request) => {
232
+ const url = new URL(request.url);
233
+ url.pathname = this.getPath(request).slice(pathPrefixLength) || "/";
234
+ return new Request(url, request);
235
+ };
236
+ })();
237
+ const handler = async (c, next) => {
238
+ const res = await applicationHandler(replaceRequest(c.req.raw), ...getOptions(c));
239
+ if (res) return res;
240
+ await next();
241
+ };
242
+ this.#addRoute("ALL", mergePath(path, "*"), handler);
243
+ return this;
244
+ }
245
+ #addRoute(method, path, handler, baseRoutePath) {
246
+ path = mergePath(this._basePath, path);
247
+ const r = {
248
+ basePath: baseRoutePath !== void 0 ? mergePath(this._basePath, baseRoutePath) : this._basePath,
249
+ path,
250
+ method,
251
+ handler
252
+ };
253
+ this.router.add(method, path, [handler, r]);
254
+ this.routes.push(r);
255
+ }
256
+ #handleError(err, c) {
257
+ if (err instanceof Error) return this.errorHandler(err, c);
258
+ throw err;
259
+ }
260
+ #dispatch(request, executionCtx, env, method) {
261
+ if (method === "HEAD") return (async () => new Response(null, await this.#dispatch(request, executionCtx, env, "GET")))();
262
+ const path = this.getPath(request, { env });
263
+ const matchResult = this.router.match(method, path);
264
+ const c = new Context(request, {
265
+ path,
266
+ matchResult,
267
+ env,
268
+ executionCtx,
269
+ notFoundHandler: this.#notFoundHandler
270
+ });
271
+ if (matchResult[0].length === 1) {
272
+ let res;
273
+ try {
274
+ res = matchResult[0][0][0][0](c, async () => {
275
+ c.res = await this.#notFoundHandler(c);
276
+ });
277
+ } catch (err) {
278
+ return this.#handleError(err, c);
279
+ }
280
+ return res instanceof Promise ? res.then((resolved) => resolved || (c.finalized ? c.res : this.#notFoundHandler(c))).catch((err) => this.#handleError(err, c)) : res ?? this.#notFoundHandler(c);
281
+ }
282
+ const composed = compose(matchResult[0], this.errorHandler, this.#notFoundHandler);
283
+ return (async () => {
284
+ try {
285
+ const context = await composed(c);
286
+ if (!context.finalized) throw new Error("Context is not finalized. Did you forget to return a Response object or `await next()`?");
287
+ return context.res;
288
+ } catch (err) {
289
+ return this.#handleError(err, c);
290
+ }
291
+ })();
292
+ }
293
+ /**
294
+ * `.fetch()` will be entry point of your app.
295
+ *
296
+ * @see {@link https://hono.dev/docs/api/hono#fetch}
297
+ *
298
+ * @param {Request} request - request Object of request
299
+ * @param {Env} env - env Object
300
+ * @param {ExecutionContext} executionCtx - context of execution
301
+ * @returns {Response | Promise<Response>} response of request
302
+ *
303
+ */
304
+ fetch = (request, ...rest) => {
305
+ return this.#dispatch(request, rest[1], rest[0], request.method);
306
+ };
307
+ /**
308
+ * `.request()` is a useful method for testing.
309
+ * You can pass a URL or pathname to send a GET request.
310
+ * app will return a Response object.
311
+ * ```ts
312
+ * test('GET /hello is ok', async () => {
313
+ * const res = await app.request('/hello')
314
+ * expect(res.status).toBe(200)
315
+ * })
316
+ * ```
317
+ * @see https://hono.dev/docs/api/hono#request
318
+ */
319
+ request = (input, requestInit, Env, executionCtx) => {
320
+ if (input instanceof Request) return this.fetch(requestInit ? new Request(input, requestInit) : input, Env, executionCtx);
321
+ input = input.toString();
322
+ return this.fetch(new Request(/^https?:\/\//.test(input) ? input : `http://localhost${mergePath("/", input)}`, requestInit), Env, executionCtx);
323
+ };
324
+ /**
325
+ * `.fire()` automatically adds a global fetch event listener.
326
+ * This can be useful for environments that adhere to the Service Worker API, such as non-ES module Cloudflare Workers.
327
+ * @deprecated
328
+ * Use `fire` from `hono/service-worker` instead.
329
+ * ```ts
330
+ * import { Hono } from 'hono'
331
+ * import { fire } from 'hono/service-worker'
332
+ *
333
+ * const app = new Hono()
334
+ * // ...
335
+ * fire(app)
336
+ * ```
337
+ * @see https://hono.dev/docs/api/hono#fire
338
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API
339
+ * @see https://developers.cloudflare.com/workers/reference/migrate-to-module-workers/
340
+ */
341
+ fire = () => {
342
+ addEventListener("fetch", (event) => {
343
+ event.respondWith(this.#dispatch(event.request, event, void 0, event.request.method));
344
+ });
345
+ };
385
346
  };
347
+ //#endregion
348
+ export { Hono as HonoBase };