@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,454 +1,383 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
- var __getOwnPropNames = Object.getOwnPropertyNames;
4
- var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- var __export = (target, all) => {
6
- for (var name in all)
7
- __defProp(target, name, { get: all[name], enumerable: true });
8
- };
9
- var __copyProps = (to, from, except, desc) => {
10
- if (from && typeof from === "object" || typeof from === "function") {
11
- for (let key of __getOwnPropNames(from))
12
- if (!__hasOwnProp.call(to, key) && key !== except)
13
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
- }
15
- return to;
16
- };
17
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
- var context_exports = {};
19
- __export(context_exports, {
20
- Context: () => Context,
21
- TEXT_PLAIN: () => TEXT_PLAIN
22
- });
23
- module.exports = __toCommonJS(context_exports);
24
- var import_request = require("./request");
25
- var import_html = require("./utils/html");
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_request = require("./request.js");
3
+ const require_utils_html = require("./utils/html.js");
4
+ //#region src/context.ts
26
5
  const TEXT_PLAIN = "text/plain; charset=UTF-8";
27
6
  const setDefaultContentType = (contentType, headers) => {
28
- return {
29
- "Content-Type": contentType,
30
- ...headers
31
- };
7
+ return {
8
+ "Content-Type": contentType,
9
+ ...headers
10
+ };
32
11
  };
33
12
  const createResponseInstance = (body, init) => new Response(body, init);
34
- class Context {
35
- #rawRequest;
36
- #req;
37
- /**
38
- * `.env` can get bindings (environment variables, secrets, KV namespaces, D1 database, R2 bucket etc.) in Cloudflare Workers.
39
- *
40
- * @see {@link https://hono.dev/docs/api/context#env}
41
- *
42
- * @example
43
- * ```ts
44
- * // Environment object for Cloudflare Workers
45
- * app.get('*', async c => {
46
- * const counter = c.env.COUNTER
47
- * })
48
- * ```
49
- */
50
- env = {};
51
- #var;
52
- finalized = false;
53
- /**
54
- * `.error` can get the error object from the middleware if the Handler throws an error.
55
- *
56
- * @see {@link https://hono.dev/docs/api/context#error}
57
- *
58
- * @example
59
- * ```ts
60
- * app.use('*', async (c, next) => {
61
- * await next()
62
- * if (c.error) {
63
- * // do something...
64
- * }
65
- * })
66
- * ```
67
- */
68
- error;
69
- #status;
70
- #executionCtx;
71
- #res;
72
- #layout;
73
- #renderer;
74
- #notFoundHandler;
75
- #preparedHeaders;
76
- #matchResult;
77
- #path;
78
- /**
79
- * Creates an instance of the Context class.
80
- *
81
- * @param req - The Request object.
82
- * @param options - Optional configuration options for the context.
83
- */
84
- constructor(req, options) {
85
- this.#rawRequest = req;
86
- if (options) {
87
- this.#executionCtx = options.executionCtx;
88
- this.env = options.env;
89
- this.#notFoundHandler = options.notFoundHandler;
90
- this.#path = options.path;
91
- this.#matchResult = options.matchResult;
92
- }
93
- }
94
- /**
95
- * `.req` is the instance of {@link HonoRequest}.
96
- */
97
- get req() {
98
- this.#req ??= new import_request.HonoRequest(this.#rawRequest, this.#path, this.#matchResult);
99
- return this.#req;
100
- }
101
- /**
102
- * @see {@link https://hono.dev/docs/api/context#event}
103
- * The FetchEvent associated with the current request.
104
- *
105
- * @throws Will throw an error if the context does not have a FetchEvent.
106
- */
107
- get event() {
108
- if (this.#executionCtx && "respondWith" in this.#executionCtx) {
109
- return this.#executionCtx;
110
- } else {
111
- throw Error("This context has no FetchEvent");
112
- }
113
- }
114
- /**
115
- * @see {@link https://hono.dev/docs/api/context#executionctx}
116
- * The ExecutionContext associated with the current request.
117
- *
118
- * @throws Will throw an error if the context does not have an ExecutionContext.
119
- */
120
- get executionCtx() {
121
- if (this.#executionCtx) {
122
- return this.#executionCtx;
123
- } else {
124
- throw Error("This context has no ExecutionContext");
125
- }
126
- }
127
- /**
128
- * @see {@link https://hono.dev/docs/api/context#res}
129
- * The Response object for the current request.
130
- */
131
- get res() {
132
- return this.#res ||= createResponseInstance(null, {
133
- headers: this.#preparedHeaders ??= new Headers()
134
- });
135
- }
136
- /**
137
- * Sets the Response object for the current request.
138
- *
139
- * @param _res - The Response object to set.
140
- */
141
- set res(_res) {
142
- if (this.#res && _res) {
143
- _res = createResponseInstance(_res.body, _res);
144
- for (const [k, v] of this.#res.headers.entries()) {
145
- if (k === "content-type") {
146
- continue;
147
- }
148
- if (k === "set-cookie") {
149
- const cookies = this.#res.headers.getSetCookie();
150
- _res.headers.delete("set-cookie");
151
- for (const cookie of cookies) {
152
- _res.headers.append("set-cookie", cookie);
153
- }
154
- } else {
155
- _res.headers.set(k, v);
156
- }
157
- }
158
- }
159
- this.#res = _res;
160
- this.finalized = true;
161
- }
162
- /**
163
- * `.render()` can create a response within a layout.
164
- *
165
- * @see {@link https://hono.dev/docs/api/context#render-setrenderer}
166
- *
167
- * @example
168
- * ```ts
169
- * app.get('/', (c) => {
170
- * return c.render('Hello!')
171
- * })
172
- * ```
173
- */
174
- render = (...args) => {
175
- this.#renderer ??= (content) => this.html(content);
176
- return this.#renderer(...args);
177
- };
178
- /**
179
- * Sets the layout for the response.
180
- *
181
- * @param layout - The layout to set.
182
- * @returns The layout function.
183
- */
184
- setLayout = (layout) => this.#layout = layout;
185
- /**
186
- * Gets the current layout for the response.
187
- *
188
- * @returns The current layout function.
189
- */
190
- getLayout = () => this.#layout;
191
- /**
192
- * `.setRenderer()` can set the layout in the custom middleware.
193
- *
194
- * @see {@link https://hono.dev/docs/api/context#render-setrenderer}
195
- *
196
- * @example
197
- * ```tsx
198
- * app.use('*', async (c, next) => {
199
- * c.setRenderer((content) => {
200
- * return c.html(
201
- * <html>
202
- * <body>
203
- * <p>{content}</p>
204
- * </body>
205
- * </html>
206
- * )
207
- * })
208
- * await next()
209
- * })
210
- * ```
211
- */
212
- setRenderer = (renderer) => {
213
- this.#renderer = renderer;
214
- };
215
- /**
216
- * `.header()` can set headers.
217
- *
218
- * @see {@link https://hono.dev/docs/api/context#header}
219
- *
220
- * @example
221
- * ```ts
222
- * app.get('/welcome', (c) => {
223
- * // Set headers
224
- * c.header('X-Message', 'Hello!')
225
- * c.header('Content-Type', 'text/plain')
226
- *
227
- * // Append multiple headers using the append option (e.g. Vary)
228
- * c.header('Vary', 'Accept-Encoding', { append: true })
229
- * c.header('Vary', 'User-Agent', { append: true })
230
- *
231
- * return c.body('Thank you for coming')
232
- * })
233
- * ```
234
- */
235
- header = (name, value, options) => {
236
- if (this.finalized) {
237
- this.#res = createResponseInstance(this.#res.body, this.#res);
238
- }
239
- const headers = this.#res ? this.#res.headers : this.#preparedHeaders ??= new Headers();
240
- if (value === void 0) {
241
- headers.delete(name);
242
- } else if (options?.append) {
243
- headers.append(name, value);
244
- } else {
245
- headers.set(name, value);
246
- }
247
- };
248
- status = (status) => {
249
- this.#status = status;
250
- };
251
- /**
252
- * `.set()` can set the value specified by the key.
253
- *
254
- * @see {@link https://hono.dev/docs/api/context#set-get}
255
- *
256
- * @example
257
- * ```ts
258
- * app.use('*', async (c, next) => {
259
- * c.set('message', 'Hono is hot!!')
260
- * await next()
261
- * })
262
- * ```
263
- */
264
- set = (key, value) => {
265
- this.#var ??= /* @__PURE__ */ new Map();
266
- this.#var.set(key, value);
267
- };
268
- /**
269
- * `.get()` can use the value specified by the key.
270
- *
271
- * @see {@link https://hono.dev/docs/api/context#set-get}
272
- *
273
- * @example
274
- * ```ts
275
- * app.get('/', (c) => {
276
- * const message = c.get('message')
277
- * return c.text(`The message is "${message}"`)
278
- * })
279
- * ```
280
- */
281
- get = (key) => {
282
- return this.#var ? this.#var.get(key) : void 0;
283
- };
284
- /**
285
- * `.var` can access the value of a variable.
286
- *
287
- * @see {@link https://hono.dev/docs/api/context#var}
288
- *
289
- * @example
290
- * ```ts
291
- * const result = c.var.client.oneMethod()
292
- * ```
293
- */
294
- // c.var.propName is a read-only
295
- get var() {
296
- if (!this.#var) {
297
- return {};
298
- }
299
- return Object.fromEntries(this.#var);
300
- }
301
- #newResponse(data, arg, headers) {
302
- let responseHeaders = this.#res ? new Headers(this.#res.headers) : this.#preparedHeaders;
303
- if (typeof arg === "object" && arg.headers) {
304
- responseHeaders ??= new Headers();
305
- for (const [key, value] of new Headers(arg.headers)) {
306
- if (key === "set-cookie") {
307
- responseHeaders.append(key, value);
308
- } else {
309
- responseHeaders.set(key, value);
310
- }
311
- }
312
- }
313
- if (headers) {
314
- if (!responseHeaders) {
315
- let count = 0;
316
- for (const k in headers) {
317
- if (++count > 1 || typeof headers[k] !== "string") {
318
- responseHeaders = new Headers();
319
- break;
320
- }
321
- }
322
- }
323
- if (responseHeaders) {
324
- for (const k in headers) {
325
- const v = headers[k];
326
- if (typeof v === "string") {
327
- responseHeaders.set(k, v);
328
- } else {
329
- responseHeaders.delete(k);
330
- for (const v2 of v) {
331
- responseHeaders.append(k, v2);
332
- }
333
- }
334
- }
335
- }
336
- }
337
- const status = typeof arg === "number" ? arg : arg?.status ?? this.#status;
338
- return createResponseInstance(data, {
339
- status,
340
- headers: responseHeaders ?? headers
341
- });
342
- }
343
- newResponse = (...args) => this.#newResponse(...args);
344
- /**
345
- * `.body()` can return the HTTP response.
346
- * You can set headers with `.header()` and set HTTP status code with `.status`.
347
- * This can also be set in `.text()`, `.json()` and so on.
348
- *
349
- * @see {@link https://hono.dev/docs/api/context#body}
350
- *
351
- * @example
352
- * ```ts
353
- * app.get('/welcome', (c) => {
354
- * // Set headers
355
- * c.header('X-Message', 'Hello!')
356
- * c.header('Content-Type', 'text/plain')
357
- * // Set HTTP status code
358
- * c.status(201)
359
- *
360
- * // Return the response body
361
- * return c.body('Thank you for coming')
362
- * })
363
- * ```
364
- */
365
- body = (data, arg, headers) => this.#newResponse(data, arg, headers);
366
- /**
367
- * `.text()` can render text as `Content-Type:text/plain`.
368
- *
369
- * @see {@link https://hono.dev/docs/api/context#text}
370
- *
371
- * @example
372
- * ```ts
373
- * app.get('/say', (c) => {
374
- * return c.text('Hello!')
375
- * })
376
- * ```
377
- */
378
- text = (text, arg, headers) => {
379
- return !this.#preparedHeaders && !this.#status && !arg && !headers && !this.finalized ? new Response(text) : this.#newResponse(
380
- text,
381
- arg,
382
- setDefaultContentType(TEXT_PLAIN, headers)
383
- );
384
- };
385
- /**
386
- * `.json()` can render JSON as `Content-Type:application/json`.
387
- *
388
- * @see {@link https://hono.dev/docs/api/context#json}
389
- *
390
- * @example
391
- * ```ts
392
- * app.get('/api', (c) => {
393
- * return c.json({ message: 'Hello!' })
394
- * })
395
- * ```
396
- */
397
- json = (object, arg, headers) => {
398
- return this.#newResponse(
399
- JSON.stringify(object),
400
- arg,
401
- setDefaultContentType("application/json", headers)
402
- );
403
- };
404
- html = (html, arg, headers) => {
405
- const res = (html2) => this.#newResponse(html2, arg, setDefaultContentType("text/html; charset=UTF-8", headers));
406
- return typeof html === "object" ? (0, import_html.resolveCallback)(html, import_html.HtmlEscapedCallbackPhase.Stringify, false, {}).then(res) : res(html);
407
- };
408
- /**
409
- * `.redirect()` can Redirect, default status code is 302.
410
- *
411
- * @see {@link https://hono.dev/docs/api/context#redirect}
412
- *
413
- * @example
414
- * ```ts
415
- * app.get('/redirect', (c) => {
416
- * return c.redirect('/')
417
- * })
418
- * app.get('/redirect-permanently', (c) => {
419
- * return c.redirect('/', 301)
420
- * })
421
- * ```
422
- */
423
- redirect = (location, status) => {
424
- const locationString = String(location);
425
- this.header(
426
- "Location",
427
- // Multibytes should be encoded
428
- // eslint-disable-next-line no-control-regex
429
- !/[^\x00-\xFF]/.test(locationString) ? locationString : encodeURI(locationString)
430
- );
431
- return this.newResponse(null, status ?? 302);
432
- };
433
- /**
434
- * `.notFound()` can return the Not Found Response.
435
- *
436
- * @see {@link https://hono.dev/docs/api/context#notfound}
437
- *
438
- * @example
439
- * ```ts
440
- * app.get('/notfound', (c) => {
441
- * return c.notFound()
442
- * })
443
- * ```
444
- */
445
- notFound = () => {
446
- this.#notFoundHandler ??= () => createResponseInstance();
447
- return this.#notFoundHandler(this);
448
- };
449
- }
450
- // Annotate the CommonJS export names for ESM import in node:
451
- 0 && (module.exports = {
452
- Context,
453
- TEXT_PLAIN
454
- });
13
+ var Context = class {
14
+ #rawRequest;
15
+ #req;
16
+ /**
17
+ * `.env` can get bindings (environment variables, secrets, KV namespaces, D1 database, R2 bucket etc.) in Cloudflare Workers.
18
+ *
19
+ * @see {@link https://hono.dev/docs/api/context#env}
20
+ *
21
+ * @example
22
+ * ```ts
23
+ * // Environment object for Cloudflare Workers
24
+ * app.get('*', async c => {
25
+ * const counter = c.env.COUNTER
26
+ * })
27
+ * ```
28
+ */
29
+ env = {};
30
+ #var;
31
+ finalized = false;
32
+ /**
33
+ * `.error` can get the error object from the middleware if the Handler throws an error.
34
+ *
35
+ * @see {@link https://hono.dev/docs/api/context#error}
36
+ *
37
+ * @example
38
+ * ```ts
39
+ * app.use('*', async (c, next) => {
40
+ * await next()
41
+ * if (c.error) {
42
+ * // do something...
43
+ * }
44
+ * })
45
+ * ```
46
+ */
47
+ error;
48
+ #status;
49
+ #executionCtx;
50
+ #res;
51
+ #layout;
52
+ #renderer;
53
+ #notFoundHandler;
54
+ #preparedHeaders;
55
+ #matchResult;
56
+ #path;
57
+ /**
58
+ * Creates an instance of the Context class.
59
+ *
60
+ * @param req - The Request object.
61
+ * @param options - Optional configuration options for the context.
62
+ */
63
+ constructor(req, options) {
64
+ this.#rawRequest = req;
65
+ if (options) {
66
+ this.#executionCtx = options.executionCtx;
67
+ this.env = options.env;
68
+ this.#notFoundHandler = options.notFoundHandler;
69
+ this.#path = options.path;
70
+ this.#matchResult = options.matchResult;
71
+ }
72
+ }
73
+ /**
74
+ * `.req` is the instance of {@link HonoRequest}.
75
+ */
76
+ get req() {
77
+ this.#req ??= new require_request.HonoRequest(this.#rawRequest, this.#path, this.#matchResult);
78
+ return this.#req;
79
+ }
80
+ /**
81
+ * @see {@link https://hono.dev/docs/api/context#event}
82
+ * The FetchEvent associated with the current request.
83
+ *
84
+ * @throws Will throw an error if the context does not have a FetchEvent.
85
+ */
86
+ get event() {
87
+ if (this.#executionCtx && "respondWith" in this.#executionCtx) return this.#executionCtx;
88
+ else throw Error("This context has no FetchEvent");
89
+ }
90
+ /**
91
+ * @see {@link https://hono.dev/docs/api/context#executionctx}
92
+ * The ExecutionContext associated with the current request.
93
+ *
94
+ * @throws Will throw an error if the context does not have an ExecutionContext.
95
+ */
96
+ get executionCtx() {
97
+ if (this.#executionCtx) return this.#executionCtx;
98
+ else throw Error("This context has no ExecutionContext");
99
+ }
100
+ /**
101
+ * @see {@link https://hono.dev/docs/api/context#res}
102
+ * The Response object for the current request.
103
+ */
104
+ get res() {
105
+ return this.#res ||= createResponseInstance(null, { headers: this.#preparedHeaders ??= new Headers() });
106
+ }
107
+ /**
108
+ * Sets the Response object for the current request.
109
+ *
110
+ * @param _res - The Response object to set.
111
+ */
112
+ set res(_res) {
113
+ if (this.#res && _res) {
114
+ _res = createResponseInstance(_res.body, _res);
115
+ for (const [k, v] of this.#res.headers.entries()) {
116
+ if (k === "content-type") continue;
117
+ if (k === "set-cookie") {
118
+ const cookies = this.#res.headers.getSetCookie();
119
+ _res.headers.delete("set-cookie");
120
+ for (const cookie of cookies) _res.headers.append("set-cookie", cookie);
121
+ } else _res.headers.set(k, v);
122
+ }
123
+ }
124
+ this.#res = _res;
125
+ this.finalized = true;
126
+ }
127
+ /**
128
+ * `.render()` can create a response within a layout.
129
+ *
130
+ * @see {@link https://hono.dev/docs/api/context#render-setrenderer}
131
+ *
132
+ * @example
133
+ * ```ts
134
+ * app.get('/', (c) => {
135
+ * return c.render('Hello!')
136
+ * })
137
+ * ```
138
+ */
139
+ render = (...args) => {
140
+ this.#renderer ??= (content) => this.html(content);
141
+ return this.#renderer(...args);
142
+ };
143
+ /**
144
+ * Sets the layout for the response.
145
+ *
146
+ * @param layout - The layout to set.
147
+ * @returns The layout function.
148
+ */
149
+ setLayout = (layout) => this.#layout = layout;
150
+ /**
151
+ * Gets the current layout for the response.
152
+ *
153
+ * @returns The current layout function.
154
+ */
155
+ getLayout = () => this.#layout;
156
+ /**
157
+ * `.setRenderer()` can set the layout in the custom middleware.
158
+ *
159
+ * @see {@link https://hono.dev/docs/api/context#render-setrenderer}
160
+ *
161
+ * @example
162
+ * ```tsx
163
+ * app.use('*', async (c, next) => {
164
+ * c.setRenderer((content) => {
165
+ * return c.html(
166
+ * <html>
167
+ * <body>
168
+ * <p>{content}</p>
169
+ * </body>
170
+ * </html>
171
+ * )
172
+ * })
173
+ * await next()
174
+ * })
175
+ * ```
176
+ */
177
+ setRenderer = (renderer) => {
178
+ this.#renderer = renderer;
179
+ };
180
+ /**
181
+ * `.header()` can set headers.
182
+ *
183
+ * @see {@link https://hono.dev/docs/api/context#header}
184
+ *
185
+ * @example
186
+ * ```ts
187
+ * app.get('/welcome', (c) => {
188
+ * // Set headers
189
+ * c.header('X-Message', 'Hello!')
190
+ * c.header('Content-Type', 'text/plain')
191
+ *
192
+ * // Append multiple headers using the append option (e.g. Vary)
193
+ * c.header('Vary', 'Accept-Encoding', { append: true })
194
+ * c.header('Vary', 'User-Agent', { append: true })
195
+ *
196
+ * return c.body('Thank you for coming')
197
+ * })
198
+ * ```
199
+ */
200
+ header = (name, value, options) => {
201
+ if (this.finalized) this.#res = createResponseInstance(this.#res.body, this.#res);
202
+ const headers = this.#res ? this.#res.headers : this.#preparedHeaders ??= new Headers();
203
+ if (value === void 0) headers.delete(name);
204
+ else if (options?.append) headers.append(name, value);
205
+ else headers.set(name, value);
206
+ };
207
+ status = (status) => {
208
+ this.#status = status;
209
+ };
210
+ /**
211
+ * `.set()` can set the value specified by the key.
212
+ *
213
+ * @see {@link https://hono.dev/docs/api/context#set-get}
214
+ *
215
+ * @example
216
+ * ```ts
217
+ * app.use('*', async (c, next) => {
218
+ * c.set('message', 'Hono is hot!!')
219
+ * await next()
220
+ * })
221
+ * ```
222
+ */
223
+ set = (key, value) => {
224
+ this.#var ??= /* @__PURE__ */ new Map();
225
+ this.#var.set(key, value);
226
+ };
227
+ /**
228
+ * `.get()` can use the value specified by the key.
229
+ *
230
+ * @see {@link https://hono.dev/docs/api/context#set-get}
231
+ *
232
+ * @example
233
+ * ```ts
234
+ * app.get('/', (c) => {
235
+ * const message = c.get('message')
236
+ * return c.text(`The message is "${message}"`)
237
+ * })
238
+ * ```
239
+ */
240
+ get = (key) => {
241
+ return this.#var ? this.#var.get(key) : void 0;
242
+ };
243
+ /**
244
+ * `.var` can access the value of a variable.
245
+ *
246
+ * @see {@link https://hono.dev/docs/api/context#var}
247
+ *
248
+ * @example
249
+ * ```ts
250
+ * const result = c.var.client.oneMethod()
251
+ * ```
252
+ */
253
+ get var() {
254
+ if (!this.#var) return {};
255
+ return Object.fromEntries(this.#var);
256
+ }
257
+ #newResponse(data, arg, headers) {
258
+ let responseHeaders = this.#res ? new Headers(this.#res.headers) : this.#preparedHeaders;
259
+ if (typeof arg === "object" && arg.headers) {
260
+ responseHeaders ??= new Headers();
261
+ for (const [key, value] of new Headers(arg.headers)) if (key === "set-cookie") responseHeaders.append(key, value);
262
+ else responseHeaders.set(key, value);
263
+ }
264
+ if (headers) {
265
+ if (!responseHeaders) {
266
+ let count = 0;
267
+ for (const k in headers) if (++count > 1 || typeof headers[k] !== "string") {
268
+ responseHeaders = new Headers();
269
+ break;
270
+ }
271
+ }
272
+ if (responseHeaders) for (const k in headers) {
273
+ const v = headers[k];
274
+ if (typeof v === "string") responseHeaders.set(k, v);
275
+ else {
276
+ responseHeaders.delete(k);
277
+ for (const v2 of v) responseHeaders.append(k, v2);
278
+ }
279
+ }
280
+ }
281
+ const status = typeof arg === "number" ? arg : arg?.status ?? this.#status;
282
+ return createResponseInstance(data, {
283
+ status,
284
+ headers: responseHeaders ?? headers
285
+ });
286
+ }
287
+ newResponse = (...args) => this.#newResponse(...args);
288
+ /**
289
+ * `.body()` can return the HTTP response.
290
+ * You can set headers with `.header()` and set HTTP status code with `.status`.
291
+ * This can also be set in `.text()`, `.json()` and so on.
292
+ *
293
+ * @see {@link https://hono.dev/docs/api/context#body}
294
+ *
295
+ * @example
296
+ * ```ts
297
+ * app.get('/welcome', (c) => {
298
+ * // Set headers
299
+ * c.header('X-Message', 'Hello!')
300
+ * c.header('Content-Type', 'text/plain')
301
+ * // Set HTTP status code
302
+ * c.status(201)
303
+ *
304
+ * // Return the response body
305
+ * return c.body('Thank you for coming')
306
+ * })
307
+ * ```
308
+ */
309
+ body = (data, arg, headers) => this.#newResponse(data, arg, headers);
310
+ /**
311
+ * `.text()` can render text as `Content-Type:text/plain`.
312
+ *
313
+ * @see {@link https://hono.dev/docs/api/context#text}
314
+ *
315
+ * @example
316
+ * ```ts
317
+ * app.get('/say', (c) => {
318
+ * return c.text('Hello!')
319
+ * })
320
+ * ```
321
+ */
322
+ text = (text, arg, headers) => {
323
+ return !this.#preparedHeaders && !this.#status && !arg && !headers && !this.finalized ? new Response(text) : this.#newResponse(text, arg, setDefaultContentType(TEXT_PLAIN, headers));
324
+ };
325
+ /**
326
+ * `.json()` can render JSON as `Content-Type:application/json`.
327
+ *
328
+ * @see {@link https://hono.dev/docs/api/context#json}
329
+ *
330
+ * @example
331
+ * ```ts
332
+ * app.get('/api', (c) => {
333
+ * return c.json({ message: 'Hello!' })
334
+ * })
335
+ * ```
336
+ */
337
+ json = (object, arg, headers) => {
338
+ return this.#newResponse(JSON.stringify(object), arg, setDefaultContentType("application/json", headers));
339
+ };
340
+ html = (html, arg, headers) => {
341
+ const res = (html) => this.#newResponse(html, arg, setDefaultContentType("text/html; charset=UTF-8", headers));
342
+ return typeof html === "object" ? require_utils_html.resolveCallback(html, require_utils_html.HtmlEscapedCallbackPhase.Stringify, false, {}).then(res) : res(html);
343
+ };
344
+ /**
345
+ * `.redirect()` can Redirect, default status code is 302.
346
+ *
347
+ * @see {@link https://hono.dev/docs/api/context#redirect}
348
+ *
349
+ * @example
350
+ * ```ts
351
+ * app.get('/redirect', (c) => {
352
+ * return c.redirect('/')
353
+ * })
354
+ * app.get('/redirect-permanently', (c) => {
355
+ * return c.redirect('/', 301)
356
+ * })
357
+ * ```
358
+ */
359
+ redirect = (location, status) => {
360
+ const locationString = String(location);
361
+ this.header("Location", !/[^\x00-\xFF]/.test(locationString) ? locationString : encodeURI(locationString));
362
+ return this.newResponse(null, status ?? 302);
363
+ };
364
+ /**
365
+ * `.notFound()` can return the Not Found Response.
366
+ *
367
+ * @see {@link https://hono.dev/docs/api/context#notfound}
368
+ *
369
+ * @example
370
+ * ```ts
371
+ * app.get('/notfound', (c) => {
372
+ * return c.notFound()
373
+ * })
374
+ * ```
375
+ */
376
+ notFound = () => {
377
+ this.#notFoundHandler ??= () => createResponseInstance();
378
+ return this.#notFoundHandler(this);
379
+ };
380
+ };
381
+ //#endregion
382
+ exports.Context = Context;
383
+ exports.TEXT_PLAIN = TEXT_PLAIN;