hono 4.13.9 → 4.13.10
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.
- package/dist/_virtual/_rolldown/runtime.js +13 -0
- package/dist/adapter/aws-lambda/conninfo.js +42 -23
- package/dist/adapter/aws-lambda/handler.js +318 -344
- package/dist/adapter/aws-lambda/index.js +2 -8
- package/dist/adapter/aws-lambda/types.js +1 -0
- package/dist/adapter/bun/conninfo.js +20 -25
- package/dist/adapter/bun/index.js +3 -13
- package/dist/adapter/bun/serve-static.js +27 -27
- package/dist/adapter/bun/server.js +11 -5
- package/dist/adapter/bun/ssg.js +25 -15
- package/dist/adapter/bun/websocket.js +61 -68
- package/dist/adapter/cloudflare-pages/conninfo.js +24 -9
- package/dist/adapter/cloudflare-pages/handler.js +59 -62
- package/dist/adapter/cloudflare-pages/index.js +2 -8
- package/dist/adapter/cloudflare-workers/conninfo.js +7 -9
- package/dist/adapter/cloudflare-workers/index.js +3 -8
- package/dist/adapter/cloudflare-workers/serve-static-module.js +5 -6
- package/dist/adapter/cloudflare-workers/serve-static.js +26 -20
- package/dist/adapter/cloudflare-workers/utils.js +21 -34
- package/dist/adapter/cloudflare-workers/websocket.js +31 -39
- package/dist/adapter/deno/conninfo.js +16 -13
- package/dist/adapter/deno/deno.d.js +1 -0
- package/dist/adapter/deno/index.js +3 -10
- package/dist/adapter/deno/serve-static.js +33 -38
- package/dist/adapter/deno/ssg.js +27 -16
- package/dist/adapter/deno/websocket.js +30 -30
- package/dist/adapter/lambda-edge/conninfo.js +7 -9
- package/dist/adapter/lambda-edge/handler.js +102 -101
- package/dist/adapter/lambda-edge/index.js +2 -6
- package/dist/adapter/netlify/conninfo.js +24 -9
- package/dist/adapter/netlify/handler.js +10 -8
- package/dist/adapter/netlify/index.js +3 -2
- package/dist/adapter/netlify/mod.js +2 -6
- package/dist/adapter/service-worker/handler.js +15 -19
- package/dist/adapter/service-worker/index.js +23 -7
- package/dist/adapter/service-worker/types.js +1 -0
- package/dist/adapter/vercel/conninfo.js +7 -10
- package/dist/adapter/vercel/handler.js +8 -6
- package/dist/adapter/vercel/index.js +2 -6
- package/dist/cjs/_virtual/_rolldown/runtime.js +33 -0
- package/dist/cjs/adapter/aws-lambda/conninfo.js +42 -44
- package/dist/cjs/adapter/aws-lambda/handler.js +326 -373
- package/dist/cjs/adapter/aws-lambda/index.js +7 -34
- package/dist/cjs/adapter/aws-lambda/types.js +0 -15
- package/dist/cjs/adapter/bun/conninfo.js +21 -47
- package/dist/cjs/adapter/bun/index.js +14 -45
- package/dist/cjs/adapter/bun/serve-static.js +29 -50
- package/dist/cjs/adapter/bun/server.js +11 -26
- package/dist/cjs/adapter/bun/ssg.js +24 -35
- package/dist/cjs/adapter/bun/websocket.js +63 -91
- package/dist/cjs/adapter/cloudflare-pages/conninfo.js +25 -31
- package/dist/cjs/adapter/cloudflare-pages/handler.js +61 -85
- package/dist/cjs/adapter/cloudflare-pages/index.js +7 -34
- package/dist/cjs/adapter/cloudflare-workers/conninfo.js +8 -31
- package/dist/cjs/adapter/cloudflare-workers/index.js +7 -33
- package/dist/cjs/adapter/cloudflare-workers/serve-static-module.js +7 -29
- package/dist/cjs/adapter/cloudflare-workers/serve-static.js +27 -42
- package/dist/cjs/adapter/cloudflare-workers/utils.js +21 -55
- package/dist/cjs/adapter/cloudflare-workers/websocket.js +33 -62
- package/dist/cjs/adapter/deno/conninfo.js +16 -34
- package/dist/cjs/adapter/deno/index.js +10 -38
- package/dist/cjs/adapter/deno/serve-static.js +33 -59
- package/dist/cjs/adapter/deno/ssg.js +27 -37
- package/dist/cjs/adapter/deno/websocket.js +32 -53
- package/dist/cjs/adapter/lambda-edge/conninfo.js +8 -31
- package/dist/cjs/adapter/lambda-edge/handler.js +102 -130
- package/dist/cjs/adapter/lambda-edge/index.js +5 -30
- package/dist/cjs/adapter/netlify/conninfo.js +25 -31
- package/dist/cjs/adapter/netlify/handler.js +10 -29
- package/dist/cjs/adapter/netlify/index.js +5 -21
- package/dist/cjs/adapter/netlify/mod.js +5 -30
- package/dist/cjs/adapter/service-worker/handler.js +16 -41
- package/dist/cjs/adapter/service-worker/index.js +25 -30
- package/dist/cjs/adapter/service-worker/types.js +0 -15
- package/dist/cjs/adapter/vercel/conninfo.js +8 -32
- package/dist/cjs/adapter/vercel/handler.js +8 -27
- package/dist/cjs/adapter/vercel/index.js +5 -30
- package/dist/cjs/client/client.js +139 -212
- package/dist/cjs/client/fetch-result-please.js +62 -80
- package/dist/cjs/client/index.js +7 -32
- package/dist/cjs/client/types.js +0 -15
- package/dist/cjs/client/utils.js +54 -92
- package/dist/cjs/compose.js +49 -66
- package/dist/cjs/context.js +379 -450
- package/dist/cjs/helper/accepts/accepts.js +47 -72
- package/dist/cjs/helper/accepts/index.js +3 -27
- package/dist/cjs/helper/adapter/index.js +33 -73
- package/dist/cjs/helper/conninfo/index.js +0 -15
- package/dist/cjs/helper/conninfo/types.js +0 -15
- package/dist/cjs/helper/cookie/index.js +75 -116
- package/dist/cjs/helper/css/common.js +165 -244
- package/dist/cjs/helper/css/index.js +136 -151
- package/dist/cjs/helper/dev/index.js +45 -71
- package/dist/cjs/helper/factory/index.js +30 -51
- package/dist/cjs/helper/html/index.js +32 -62
- package/dist/cjs/helper/proxy/index.js +113 -106
- package/dist/cjs/helper/route/index.js +123 -66
- package/dist/cjs/helper/ssg/index.js +19 -43
- package/dist/cjs/helper/ssg/middleware.js +56 -64
- package/dist/cjs/helper/ssg/plugins.js +55 -57
- package/dist/cjs/helper/ssg/ssg.js +196 -296
- package/dist/cjs/helper/ssg/utils.js +47 -90
- package/dist/cjs/helper/streaming/index.js +8 -35
- package/dist/cjs/helper/streaming/sse.js +53 -85
- package/dist/cjs/helper/streaming/stream.js +23 -53
- package/dist/cjs/helper/streaming/text.js +10 -32
- package/dist/cjs/helper/streaming/utils.js +13 -32
- package/dist/cjs/helper/testing/index.js +16 -31
- package/dist/cjs/helper/websocket/index.js +51 -76
- package/dist/cjs/hono-base.js +345 -403
- package/dist/cjs/hono.js +28 -42
- package/dist/cjs/http-exception.js +55 -56
- package/dist/cjs/index.js +22 -30
- package/dist/cjs/jsx/base.js +237 -366
- package/dist/cjs/jsx/children.js +16 -41
- package/dist/cjs/jsx/components.js +119 -192
- package/dist/cjs/jsx/constants.js +15 -42
- package/dist/cjs/jsx/context.js +144 -162
- package/dist/cjs/jsx/dom/client.js +49 -69
- package/dist/cjs/jsx/dom/components.js +23 -52
- package/dist/cjs/jsx/dom/context.js +39 -67
- package/dist/cjs/jsx/dom/css.js +143 -158
- package/dist/cjs/jsx/dom/hooks/index.js +55 -64
- package/dist/cjs/jsx/dom/index.js +114 -173
- package/dist/cjs/jsx/dom/intrinsic-element/components.js +282 -375
- package/dist/cjs/jsx/dom/jsx-dev-runtime.js +14 -49
- package/dist/cjs/jsx/dom/jsx-runtime.js +5 -32
- package/dist/cjs/jsx/dom/render.js +469 -623
- package/dist/cjs/jsx/dom/server.js +37 -64
- package/dist/cjs/jsx/dom/utils.js +7 -30
- package/dist/cjs/jsx/hooks/index.js +225 -318
- package/dist/cjs/jsx/index.js +86 -135
- package/dist/cjs/jsx/intrinsic-element/common.js +20 -43
- package/dist/cjs/jsx/intrinsic-element/components.js +117 -168
- package/dist/cjs/jsx/intrinsic-elements.js +0 -15
- package/dist/cjs/jsx/jsx-dev-runtime.js +14 -39
- package/dist/cjs/jsx/jsx-runtime.js +34 -68
- package/dist/cjs/jsx/streaming.js +123 -166
- package/dist/cjs/jsx/types.js +0 -15
- package/dist/cjs/jsx/utils.js +91 -175
- package/dist/cjs/middleware/basic-auth/index.js +98 -86
- package/dist/cjs/middleware/bearer-auth/index.js +92 -109
- package/dist/cjs/middleware/body-limit/index.js +66 -72
- package/dist/cjs/middleware/cache/index.js +153 -199
- package/dist/cjs/middleware/combine/index.js +133 -95
- package/dist/cjs/middleware/compress/index.js +73 -88
- package/dist/cjs/middleware/context-storage/index.js +49 -41
- package/dist/cjs/middleware/cors/index.js +107 -107
- package/dist/cjs/middleware/csrf/index.js +101 -72
- package/dist/cjs/middleware/etag/digest.js +58 -97
- package/dist/cjs/middleware/etag/index.js +71 -91
- package/dist/cjs/middleware/ip-restriction/index.js +161 -169
- package/dist/cjs/middleware/jsx-renderer/index.js +99 -77
- package/dist/cjs/middleware/jwk/index.js +3 -27
- package/dist/cjs/middleware/jwk/jwk.js +118 -135
- package/dist/cjs/middleware/jwt/index.js +9 -38
- package/dist/cjs/middleware/jwt/jwt.js +120 -141
- package/dist/cjs/middleware/language/index.js +7 -35
- package/dist/cjs/middleware/language/language.js +184 -182
- package/dist/cjs/middleware/logger/index.js +41 -62
- package/dist/cjs/middleware/method-not-allowed/index.js +82 -88
- package/dist/cjs/middleware/method-override/index.js +101 -102
- package/dist/cjs/middleware/powered-by/index.js +23 -30
- package/dist/cjs/middleware/pretty-json/index.js +38 -42
- package/dist/cjs/middleware/request-id/index.js +3 -27
- package/dist/cjs/middleware/request-id/request-id.js +34 -42
- package/dist/cjs/middleware/secure-headers/index.js +4 -29
- package/dist/cjs/middleware/secure-headers/permissions-policy.js +0 -15
- package/dist/cjs/middleware/secure-headers/secure-headers.js +142 -174
- package/dist/cjs/middleware/serve-static/index.js +55 -93
- package/dist/cjs/middleware/serve-static/path.js +15 -38
- package/dist/cjs/middleware/timeout/index.js +40 -45
- package/dist/cjs/middleware/timing/index.js +7 -35
- package/dist/cjs/middleware/timing/timing.js +177 -118
- package/dist/cjs/middleware/trailing-slash/index.js +85 -58
- package/dist/cjs/preset/quick.js +18 -37
- package/dist/cjs/preset/tiny.js +15 -33
- package/dist/cjs/request/constants.js +5 -27
- package/dist/cjs/request.js +334 -346
- package/dist/cjs/router/linear-router/index.js +3 -27
- package/dist/cjs/router/linear-router/router.js +95 -143
- package/dist/cjs/router/pattern-router/index.js +3 -27
- package/dist/cjs/router/pattern-router/router.js +41 -63
- package/dist/cjs/router/reg-exp-router/index.js +7 -34
- package/dist/cjs/router/reg-exp-router/matcher.js +18 -45
- package/dist/cjs/router/reg-exp-router/node.js +91 -135
- package/dist/cjs/router/reg-exp-router/prepared-router.js +92 -161
- package/dist/cjs/router/reg-exp-router/router.js +98 -147
- package/dist/cjs/router/reg-exp-router/trie.js +73 -89
- package/dist/cjs/router/smart-router/index.js +3 -27
- package/dist/cjs/router/smart-router/router.js +49 -79
- package/dist/cjs/router/trie-router/index.js +3 -27
- package/dist/cjs/router/trie-router/node.js +134 -186
- package/dist/cjs/router/trie-router/router.js +15 -39
- package/dist/cjs/router/utils.js +5 -27
- package/dist/cjs/router.js +37 -37
- package/dist/cjs/types.js +5 -28
- package/dist/cjs/utils/accept.js +177 -225
- package/dist/cjs/utils/basic-auth.js +16 -40
- package/dist/cjs/utils/body.js +84 -110
- package/dist/cjs/utils/buffer.js +43 -91
- package/dist/cjs/utils/color.js +35 -44
- package/dist/cjs/utils/compress.js +11 -26
- package/dist/cjs/utils/concurrent.js +29 -59
- package/dist/cjs/utils/constants.js +7 -26
- package/dist/cjs/utils/cookie.js +107 -177
- package/dist/cjs/utils/crypto.js +30 -61
- package/dist/cjs/utils/encode.js +31 -48
- package/dist/cjs/utils/filepath.js +23 -54
- package/dist/cjs/utils/handler.js +11 -33
- package/dist/cjs/utils/headers.js +0 -15
- package/dist/cjs/utils/html.js +96 -137
- package/dist/cjs/utils/http-status.js +0 -15
- package/dist/cjs/utils/ipaddr.js +213 -286
- package/dist/cjs/utils/jwt/index.js +14 -27
- package/dist/cjs/utils/jwt/jwa.js +25 -42
- package/dist/cjs/utils/jwt/jws.js +119 -199
- package/dist/cjs/utils/jwt/jwt.js +122 -206
- package/dist/cjs/utils/jwt/types.js +122 -159
- package/dist/cjs/utils/jwt/utf8.js +9 -28
- package/dist/cjs/utils/mime.js +75 -101
- package/dist/cjs/utils/stream.js +88 -111
- package/dist/cjs/utils/types.js +0 -15
- package/dist/cjs/utils/url.js +185 -234
- package/dist/cjs/validator/index.js +3 -27
- package/dist/cjs/validator/utils.js +0 -15
- package/dist/cjs/validator/validator.js +60 -103
- package/dist/client/client.js +138 -197
- package/dist/client/fetch-result-please.js +59 -56
- package/dist/client/index.js +3 -7
- package/dist/client/types.js +1 -0
- package/dist/client/utils.js +51 -68
- package/dist/compose.js +49 -45
- package/dist/context.js +376 -426
- package/dist/helper/accepts/accepts.js +47 -51
- package/dist/helper/accepts/index.js +1 -4
- package/dist/helper/adapter/index.js +33 -52
- package/dist/helper/conninfo/index.js +1 -0
- package/dist/helper/conninfo/types.js +1 -0
- package/dist/helper/cookie/index.js +74 -94
- package/dist/helper/css/common.js +167 -225
- package/dist/helper/css/index.js +132 -137
- package/dist/helper/dev/index.js +44 -49
- package/dist/helper/factory/index.js +27 -27
- package/dist/helper/html/index.js +30 -39
- package/dist/helper/proxy/index.js +116 -88
- package/dist/helper/route/index.js +121 -43
- package/dist/helper/ssg/index.js +3 -18
- package/dist/helper/ssg/middleware.js +53 -40
- package/dist/helper/ssg/plugins.js +55 -36
- package/dist/helper/ssg/ssg.js +198 -283
- package/dist/helper/ssg/utils.js +53 -75
- package/dist/helper/streaming/index.js +2 -8
- package/dist/helper/streaming/sse.js +50 -61
- package/dist/helper/streaming/stream.js +22 -31
- package/dist/helper/streaming/text.js +9 -10
- package/dist/helper/streaming/utils.js +9 -12
- package/dist/helper/testing/index.js +16 -10
- package/dist/helper/websocket/index.js +49 -53
- package/dist/hono-base.js +342 -379
- package/dist/hono.js +27 -20
- package/dist/http-exception.js +53 -33
- package/dist/index.js +19 -6
- package/dist/jsx/base.js +231 -340
- package/dist/jsx/children.js +16 -20
- package/dist/jsx/components.js +118 -170
- package/dist/jsx/constants.js +9 -15
- package/dist/jsx/context.js +153 -150
- package/dist/jsx/dom/client.js +45 -48
- package/dist/jsx/dom/components.js +21 -29
- package/dist/jsx/dom/context.js +37 -44
- package/dist/jsx/dom/css.js +142 -147
- package/dist/jsx/dom/hooks/index.js +52 -40
- package/dist/jsx/dom/index.js +71 -134
- package/dist/jsx/dom/intrinsic-element/components.js +275 -359
- package/dist/jsx/dom/jsx-dev-runtime.js +14 -18
- package/dist/jsx/dom/jsx-runtime.js +2 -8
- package/dist/jsx/dom/render.js +492 -631
- package/dist/jsx/dom/server.js +32 -32
- package/dist/jsx/dom/utils.js +6 -8
- package/dist/jsx/hooks/index.js +236 -308
- package/dist/jsx/index.js +45 -98
- package/dist/jsx/intrinsic-element/common.js +20 -22
- package/dist/jsx/intrinsic-element/components.js +113 -154
- package/dist/jsx/intrinsic-elements.js +1 -0
- package/dist/jsx/jsx-dev-runtime.js +12 -16
- package/dist/jsx/jsx-runtime.js +29 -42
- package/dist/jsx/streaming.js +120 -142
- package/dist/jsx/types.js +1 -0
- package/dist/jsx/utils.js +105 -168
- package/dist/middleware/basic-auth/index.js +96 -63
- package/dist/middleware/bearer-auth/index.js +93 -89
- package/dist/middleware/body-limit/index.js +66 -51
- package/dist/middleware/cache/index.js +165 -190
- package/dist/middleware/combine/index.js +132 -73
- package/dist/middleware/compress/index.js +75 -69
- package/dist/middleware/context-storage/index.js +49 -19
- package/dist/middleware/cors/index.js +107 -86
- package/dist/middleware/csrf/index.js +103 -53
- package/dist/middleware/etag/digest.js +59 -77
- package/dist/middleware/etag/index.js +71 -70
- package/dist/middleware/ip-restriction/index.js +163 -158
- package/dist/middleware/jsx-renderer/index.js +97 -54
- package/dist/middleware/jwk/index.js +1 -4
- package/dist/middleware/jwk/jwk.js +116 -112
- package/dist/middleware/jwt/index.js +2 -10
- package/dist/middleware/jwt/jwt.js +114 -114
- package/dist/middleware/language/index.js +2 -15
- package/dist/middleware/language/language.js +180 -157
- package/dist/middleware/logger/index.js +43 -37
- package/dist/middleware/method-not-allowed/index.js +81 -66
- package/dist/middleware/method-override/index.js +101 -81
- package/dist/middleware/powered-by/index.js +23 -9
- package/dist/middleware/pretty-json/index.js +39 -22
- package/dist/middleware/request-id/index.js +1 -4
- package/dist/middleware/request-id/request-id.js +33 -20
- package/dist/middleware/secure-headers/index.js +1 -5
- package/dist/middleware/secure-headers/permissions-policy.js +1 -0
- package/dist/middleware/secure-headers/secure-headers.js +144 -155
- package/dist/middleware/serve-static/index.js +55 -72
- package/dist/middleware/serve-static/path.js +15 -17
- package/dist/middleware/timeout/index.js +40 -23
- package/dist/middleware/timing/index.js +2 -9
- package/dist/middleware/timing/timing.js +177 -97
- package/dist/middleware/trailing-slash/index.js +85 -37
- package/dist/preset/quick.js +17 -15
- package/dist/preset/tiny.js +14 -11
- package/dist/request/constants.js +4 -5
- package/dist/request.js +328 -319
- package/dist/router/linear-router/index.js +1 -4
- package/dist/router/linear-router/router.js +93 -120
- package/dist/router/pattern-router/index.js +1 -4
- package/dist/router/pattern-router/router.js +39 -40
- package/dist/router/reg-exp-router/index.js +1 -7
- package/dist/router/reg-exp-router/matcher.js +17 -23
- package/dist/router/reg-exp-router/node.js +87 -110
- package/dist/router/reg-exp-router/prepared-router.js +89 -137
- package/dist/router/reg-exp-router/router.js +92 -129
- package/dist/router/reg-exp-router/trie.js +69 -64
- package/dist/router/smart-router/index.js +1 -4
- package/dist/router/smart-router/router.js +46 -55
- package/dist/router/trie-router/index.js +1 -4
- package/dist/router/trie-router/node.js +131 -162
- package/dist/router/trie-router/router.js +11 -14
- package/dist/router/utils.js +4 -5
- package/dist/router.js +35 -14
- package/dist/types/adapter/aws-lambda/conninfo.d.ts +4 -1
- package/dist/types/adapter/aws-lambda/handler.d.ts +150 -105
- package/dist/types/adapter/aws-lambda/index.d.ts +4 -8
- package/dist/types/adapter/aws-lambda/types.d.ts +152 -123
- package/dist/types/adapter/bun/conninfo.d.ts +4 -1
- package/dist/types/adapter/bun/index.d.ts +6 -10
- package/dist/types/adapter/bun/serve-static.d.ts +7 -2
- package/dist/types/adapter/bun/server.d.ts +4 -5
- package/dist/types/adapter/bun/ssg.d.ts +5 -1
- package/dist/types/adapter/bun/websocket.d.ts +31 -17
- package/dist/types/adapter/cloudflare-pages/conninfo.d.ts +4 -1
- package/dist/types/adapter/cloudflare-pages/handler.d.ts +29 -18
- package/dist/types/adapter/cloudflare-pages/index.d.ts +3 -7
- package/dist/types/adapter/cloudflare-workers/conninfo.d.ts +6 -1
- package/dist/types/adapter/cloudflare-workers/index.d.ts +4 -7
- package/dist/types/adapter/cloudflare-workers/serve-static-module.d.ts +5 -3
- package/dist/types/adapter/cloudflare-workers/serve-static.d.ts +10 -5
- package/dist/types/adapter/cloudflare-workers/utils.d.ts +10 -2
- package/dist/types/adapter/cloudflare-workers/websocket.d.ts +6 -1
- package/dist/types/adapter/deno/conninfo.d.ts +4 -1
- package/dist/types/adapter/deno/deno.d.ts +1 -0
- package/dist/types/adapter/deno/index.d.ts +5 -8
- package/dist/types/adapter/deno/serve-static.d.ts +7 -2
- package/dist/types/adapter/deno/ssg.d.ts +5 -1
- package/dist/types/adapter/deno/websocket.d.ts +6 -1
- package/dist/types/adapter/lambda-edge/conninfo.d.ts +6 -1
- package/dist/types/adapter/lambda-edge/handler.d.ts +83 -58
- package/dist/types/adapter/lambda-edge/index.d.ts +3 -7
- package/dist/types/adapter/netlify/conninfo.d.ts +4 -1
- package/dist/types/adapter/netlify/handler.d.ts +6 -1
- package/dist/types/adapter/netlify/index.d.ts +3 -5
- package/dist/types/adapter/netlify/mod.d.ts +3 -2
- package/dist/types/adapter/service-worker/handler.d.ts +9 -8
- package/dist/types/adapter/service-worker/index.d.ts +6 -9
- package/dist/types/adapter/service-worker/types.d.ts +12 -8
- package/dist/types/adapter/vercel/conninfo.d.ts +6 -1
- package/dist/types/adapter/vercel/handler.d.ts +6 -1
- package/dist/types/adapter/vercel/index.d.ts +3 -6
- package/dist/types/client/client.d.ts +5 -3
- package/dist/types/client/fetch-result-please.d.ts +21 -19
- package/dist/types/client/index.d.ts +5 -7
- package/dist/types/client/types.d.ts +134 -160
- package/dist/types/client/utils.d.ts +6 -4
- package/dist/types/compose.d.ts +4 -2
- package/dist/types/context.d.ts +335 -336
- package/dist/types/helper/accepts/accepts.d.ts +11 -9
- package/dist/types/helper/accepts/index.d.ts +2 -5
- package/dist/types/helper/adapter/index.d.ts +4 -6
- package/dist/types/helper/conninfo/index.d.ts +2 -5
- package/dist/types/helper/conninfo/types.d.ts +25 -23
- package/dist/types/helper/cookie/index.d.ts +10 -13
- package/dist/types/helper/css/common.d.ts +11 -10
- package/dist/types/helper/css/index.d.ts +25 -28
- package/dist/types/helper/dev/index.d.ts +10 -13
- package/dist/types/helper/factory/index.d.ts +26 -74
- package/dist/types/helper/html/index.d.ts +4 -7
- package/dist/types/helper/proxy/index.d.ts +19 -22
- package/dist/types/helper/route/index.d.ts +4 -2
- package/dist/types/helper/ssg/index.d.ts +4 -7
- package/dist/types/helper/ssg/middleware.d.ts +8 -7
- package/dist/types/helper/ssg/plugins.d.ts +3 -1
- package/dist/types/helper/ssg/ssg.d.ts +38 -36
- package/dist/types/helper/ssg/utils.d.ts +5 -4
- package/dist/types/helper/streaming/index.d.ts +4 -8
- package/dist/types/helper/streaming/sse.d.ts +10 -8
- package/dist/types/helper/streaming/stream.d.ts +4 -2
- package/dist/types/helper/streaming/text.d.ts +4 -2
- package/dist/types/helper/streaming/utils.d.ts +2 -0
- package/dist/types/helper/testing/index.d.ts +7 -10
- package/dist/types/helper/websocket/index.d.ts +30 -33
- package/dist/types/hono-base.d.ts +208 -211
- package/dist/types/hono.d.ts +11 -10
- package/dist/types/http-exception.d.ts +20 -23
- package/dist/types/index.d.ts +6 -37
- package/dist/types/jsx/base.d.ts +36 -35
- package/dist/types/jsx/children.d.ts +8 -6
- package/dist/types/jsx/components.d.ts +8 -5
- package/dist/types/jsx/constants.d.ts +2 -0
- package/dist/types/jsx/context.d.ts +9 -7
- package/dist/types/jsx/dom/client.d.ts +8 -10
- package/dist/types/jsx/dom/components.d.ts +9 -6
- package/dist/types/jsx/dom/context.d.ts +3 -1
- package/dist/types/jsx/dom/css.d.ts +26 -30
- package/dist/types/jsx/dom/hooks/index.d.ts +11 -13
- package/dist/types/jsx/dom/index.d.ts +78 -83
- package/dist/types/jsx/dom/intrinsic-element/components.d.ts +9 -5
- package/dist/types/jsx/dom/jsx-dev-runtime.d.ts +4 -6
- package/dist/types/jsx/dom/jsx-runtime.d.ts +3 -7
- package/dist/types/jsx/dom/render.d.ts +32 -51
- package/dist/types/jsx/dom/server.d.ts +86 -85
- package/dist/types/jsx/dom/utils.d.ts +2 -0
- package/dist/types/jsx/hooks/index.d.ts +16 -17
- package/dist/types/jsx/index.d.ts +70 -73
- package/dist/types/jsx/intrinsic-element/common.d.ts +3 -1
- package/dist/types/jsx/intrinsic-element/components.d.ts +7 -4
- package/dist/types/jsx/intrinsic-elements.d.ts +708 -708
- package/dist/types/jsx/jsx-dev-runtime.d.ts +4 -7
- package/dist/types/jsx/jsx-runtime.d.ts +7 -10
- package/dist/types/jsx/streaming.d.ts +9 -10
- package/dist/types/jsx/types.d.ts +11 -13
- package/dist/types/jsx/utils.d.ts +2 -0
- package/dist/types/middleware/basic-auth/index.d.ts +17 -20
- package/dist/types/middleware/bearer-auth/index.d.ts +46 -49
- package/dist/types/middleware/body-limit/index.d.ts +6 -9
- package/dist/types/middleware/cache/index.d.ts +13 -15
- package/dist/types/middleware/combine/index.d.ts +4 -7
- package/dist/types/middleware/compress/index.d.ts +8 -10
- package/dist/types/middleware/context-storage/index.d.ts +4 -6
- package/dist/types/middleware/cors/index.d.ts +10 -13
- package/dist/types/middleware/csrf/index.d.ts +6 -9
- package/dist/types/middleware/etag/digest.d.ts +2 -0
- package/dist/types/middleware/etag/index.d.ts +6 -9
- package/dist/types/middleware/ip-restriction/index.d.ts +11 -13
- package/dist/types/middleware/jsx-renderer/index.d.ts +11 -12
- package/dist/types/middleware/jwk/index.d.ts +2 -1
- package/dist/types/middleware/jwk/jwk.d.ts +20 -23
- package/dist/types/middleware/jwt/index.d.ts +6 -6
- package/dist/types/middleware/jwt/jwt.d.ts +28 -30
- package/dist/types/middleware/language/index.d.ts +5 -5
- package/dist/types/middleware/language/language.d.ts +42 -44
- package/dist/types/middleware/logger/index.d.ts +3 -6
- package/dist/types/middleware/method-not-allowed/index.d.ts +7 -10
- package/dist/types/middleware/method-override/index.d.ts +14 -17
- package/dist/types/middleware/powered-by/index.d.ts +8 -11
- package/dist/types/middleware/pretty-json/index.d.ts +18 -21
- package/dist/types/middleware/request-id/index.d.ts +5 -5
- package/dist/types/middleware/request-id/request-id.d.ts +9 -11
- package/dist/types/middleware/secure-headers/index.d.ts +5 -6
- package/dist/types/middleware/secure-headers/permissions-policy.d.ts +2 -1
- package/dist/types/middleware/secure-headers/secure-headers.d.ts +55 -58
- package/dist/types/middleware/serve-static/index.d.ts +22 -24
- package/dist/types/middleware/serve-static/path.d.ts +2 -0
- package/dist/types/middleware/timeout/index.d.ts +5 -7
- package/dist/types/middleware/timing/index.d.ts +5 -5
- package/dist/types/middleware/timing/timing.d.ts +17 -21
- package/dist/types/middleware/trailing-slash/index.d.ts +35 -38
- package/dist/types/preset/quick.d.ts +6 -9
- package/dist/types/preset/tiny.d.ts +6 -9
- package/dist/types/request/constants.d.ts +2 -0
- package/dist/types/request.d.ts +288 -287
- package/dist/types/router/linear-router/index.d.ts +2 -5
- package/dist/types/router/linear-router/router.d.ts +7 -5
- package/dist/types/router/pattern-router/index.d.ts +2 -5
- package/dist/types/router/pattern-router/router.d.ts +7 -5
- package/dist/types/router/reg-exp-router/index.d.ts +3 -6
- package/dist/types/router/reg-exp-router/matcher.d.ts +3 -1
- package/dist/types/router/reg-exp-router/node.d.ts +6 -4
- package/dist/types/router/reg-exp-router/prepared-router.d.ts +11 -11
- package/dist/types/router/reg-exp-router/router.d.ts +10 -9
- package/dist/types/router/reg-exp-router/trie.d.ts +7 -5
- package/dist/types/router/smart-router/index.d.ts +2 -5
- package/dist/types/router/smart-router/router.d.ts +11 -9
- package/dist/types/router/trie-router/index.d.ts +2 -5
- package/dist/types/router/trie-router/node.d.ts +6 -4
- package/dist/types/router/trie-router/router.d.ts +7 -5
- package/dist/types/router/utils.d.ts +2 -0
- package/dist/types/router.d.ts +23 -22
- package/dist/types/types.d.ts +146 -506
- package/dist/types/utils/accept.d.ts +5 -3
- package/dist/types/utils/basic-auth.d.ts +4 -2
- package/dist/types/utils/body.d.ts +46 -51
- package/dist/types/utils/buffer.d.ts +7 -6
- package/dist/types/utils/color.d.ts +2 -0
- package/dist/types/utils/compress.d.ts +2 -0
- package/dist/types/utils/concurrent.d.ts +6 -4
- package/dist/types/utils/constants.d.ts +2 -0
- package/dist/types/utils/cookie.d.ts +20 -19
- package/dist/types/utils/crypto.d.ts +5 -8
- package/dist/types/utils/encode.d.ts +2 -0
- package/dist/types/utils/filepath.d.ts +5 -4
- package/dist/types/utils/handler.d.ts +2 -0
- package/dist/types/utils/headers.d.ts +2 -0
- package/dist/types/utils/html.d.ts +11 -10
- package/dist/types/utils/http-status.d.ts +2 -0
- package/dist/types/utils/ipaddr.d.ts +4 -6
- package/dist/types/utils/jwt/index.d.ts +18 -12
- package/dist/types/utils/jwt/jwa.d.ts +15 -13
- package/dist/types/utils/jwt/jws.d.ts +4 -7
- package/dist/types/utils/jwt/jwt.d.ts +26 -29
- package/dist/types/utils/jwt/types.d.ts +48 -45
- package/dist/types/utils/jwt/utf8.d.ts +2 -0
- package/dist/types/utils/mime.d.ts +59 -57
- package/dist/types/utils/stream.d.ts +27 -25
- package/dist/types/utils/types.d.ts +14 -27
- package/dist/types/utils/url.d.ts +2 -1
- package/dist/types/validator/index.d.ts +3 -7
- package/dist/types/validator/utils.d.ts +6 -9
- package/dist/types/validator/validator.d.ts +11 -10
- package/dist/types.js +4 -6
- package/dist/utils/accept.js +185 -212
- package/dist/utils/basic-auth.js +18 -21
- package/dist/utils/body.js +87 -92
- package/dist/utils/buffer.js +44 -71
- package/dist/utils/color.js +33 -21
- package/dist/utils/compress.js +11 -5
- package/dist/utils/concurrent.js +29 -38
- package/dist/utils/constants.js +7 -5
- package/dist/utils/cookie.js +114 -163
- package/dist/utils/crypto.js +30 -40
- package/dist/utils/encode.js +30 -26
- package/dist/utils/filepath.js +23 -33
- package/dist/utils/handler.js +10 -11
- package/dist/utils/headers.js +1 -0
- package/dist/utils/html.js +97 -117
- package/dist/utils/http-status.js +1 -0
- package/dist/utils/ipaddr.js +227 -279
- package/dist/utils/jwt/index.js +12 -4
- package/dist/utils/jwt/jwa.js +24 -20
- package/dist/utils/jwt/jws.js +115 -174
- package/dist/utils/jwt/jwt.js +120 -198
- package/dist/utils/jwt/types.js +79 -95
- package/dist/utils/jwt/utf8.js +9 -7
- package/dist/utils/mime.js +74 -79
- package/dist/utils/stream.js +86 -88
- package/dist/utils/types.js +1 -0
- package/dist/utils/url.js +187 -215
- package/dist/validator/index.js +1 -4
- package/dist/validator/utils.js +1 -0
- package/dist/validator/validator.js +61 -83
- package/package.json +27 -27
package/dist/types/context.d.ts
CHANGED
|
@@ -1,48 +1,47 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
1
|
+
import { Result } from "./router.js";
|
|
2
|
+
import { ResponseHeader } from "./utils/headers.js";
|
|
3
|
+
import { ContentfulStatusCode, RedirectStatusCode, StatusCode } from "./utils/http-status.js";
|
|
4
|
+
import { InvalidJSONValue, IsAny, JSONParsed, JSONValue } from "./utils/types.js";
|
|
5
|
+
import { Env, FetchEventLike, H, Input, NotFoundHandler, RouterRoute, TypedResponse } from "./types.js";
|
|
6
|
+
import { HonoRequest } from "./request.js";
|
|
7
|
+
import { BaseMime } from "./utils/mime.js";
|
|
8
|
+
//#region src/context.d.ts
|
|
8
9
|
type HeaderRecord = Record<'Content-Type', BaseMime> | Record<ResponseHeader, string | string[]> | Record<string, string | string[]>;
|
|
9
10
|
/**
|
|
10
|
-
* Data type can be a string, ArrayBuffer, Uint8Array (buffer), or ReadableStream.
|
|
11
|
+
* Data type can be a string, ArrayBuffer, Blob, Uint8Array (buffer), or ReadableStream.
|
|
11
12
|
*/
|
|
12
|
-
export type Data = string | ArrayBuffer | ReadableStream | Uint8Array<ArrayBuffer>;
|
|
13
|
+
export type Data = string | ArrayBuffer | Blob | ReadableStream | Uint8Array<ArrayBuffer>;
|
|
13
14
|
/**
|
|
14
15
|
* Interface for the execution context in a web worker or similar environment.
|
|
15
16
|
*/
|
|
16
17
|
export interface ExecutionContext {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
18
|
+
/**
|
|
19
|
+
* Extends the lifetime of the event callback until the promise is settled.
|
|
20
|
+
*
|
|
21
|
+
* @param promise - A promise to wait for.
|
|
22
|
+
*/
|
|
23
|
+
waitUntil(promise: Promise<unknown>): void;
|
|
24
|
+
/**
|
|
25
|
+
* Allows the event to be passed through to subsequent event listeners.
|
|
26
|
+
*/
|
|
27
|
+
passThroughOnException(): void;
|
|
28
|
+
/**
|
|
29
|
+
* For compatibility with Wrangler 4.x.
|
|
30
|
+
*/
|
|
31
|
+
props: any;
|
|
32
|
+
/**
|
|
33
|
+
* For compatibility with Wrangler 4.x.
|
|
34
|
+
*/
|
|
35
|
+
exports?: any;
|
|
35
36
|
}
|
|
36
37
|
/**
|
|
37
38
|
* Interface for context variable mapping.
|
|
38
39
|
*/
|
|
39
|
-
export interface ContextVariableMap {
|
|
40
|
-
}
|
|
40
|
+
export interface ContextVariableMap {}
|
|
41
41
|
/**
|
|
42
42
|
* Interface for context renderer.
|
|
43
43
|
*/
|
|
44
|
-
export interface ContextRenderer {
|
|
45
|
-
}
|
|
44
|
+
export interface ContextRenderer {}
|
|
46
45
|
/**
|
|
47
46
|
* Interface representing a renderer for content.
|
|
48
47
|
*
|
|
@@ -51,7 +50,7 @@ export interface ContextRenderer {
|
|
|
51
50
|
* @returns {Response | Promise<Response>} - The response after rendering the content, which can be either a Response or a Promise resolving to a Response.
|
|
52
51
|
*/
|
|
53
52
|
interface DefaultRenderer {
|
|
54
|
-
|
|
53
|
+
(content: string | Promise<string>): Response | Promise<Response>;
|
|
55
54
|
}
|
|
56
55
|
/**
|
|
57
56
|
* Renderer type which can either be a ContextRenderer or DefaultRenderer.
|
|
@@ -68,8 +67,8 @@ export type Layout<T = Record<string, any>> = (props: T) => any;
|
|
|
68
67
|
* @template E - Environment type.
|
|
69
68
|
*/
|
|
70
69
|
interface Get<E extends Env> {
|
|
71
|
-
|
|
72
|
-
|
|
70
|
+
<Key extends keyof E['Variables']>(key: Key): E['Variables'][Key];
|
|
71
|
+
<Key extends keyof ContextVariableMap>(key: Key): ContextVariableMap[Key];
|
|
73
72
|
}
|
|
74
73
|
/**
|
|
75
74
|
* Interface for setting context variables.
|
|
@@ -77,24 +76,24 @@ interface Get<E extends Env> {
|
|
|
77
76
|
* @template E - Environment type.
|
|
78
77
|
*/
|
|
79
78
|
interface Set<E extends Env> {
|
|
80
|
-
|
|
81
|
-
|
|
79
|
+
<Key extends keyof E['Variables']>(key: Key, value: E['Variables'][Key]): void;
|
|
80
|
+
<Key extends keyof ContextVariableMap>(key: Key, value: ContextVariableMap[Key]): void;
|
|
82
81
|
}
|
|
83
82
|
/**
|
|
84
83
|
* Interface for creating a new response.
|
|
85
84
|
*/
|
|
86
85
|
interface NewResponse {
|
|
87
|
-
|
|
88
|
-
|
|
86
|
+
(data: Data | null, status?: StatusCode, headers?: HeaderRecord): Response;
|
|
87
|
+
(data: Data | null, init?: ResponseOrInit): Response;
|
|
89
88
|
}
|
|
90
89
|
/**
|
|
91
90
|
* Interface for responding with a body.
|
|
92
91
|
*/
|
|
93
92
|
interface BodyRespond {
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
93
|
+
<T extends Data, U extends ContentfulStatusCode>(data: T, status?: U, headers?: HeaderRecord): Response & TypedResponse<T, U, 'body'>;
|
|
94
|
+
<T extends Data, U extends ContentfulStatusCode>(data: T, init?: ResponseOrInit<U>): Response & TypedResponse<T, U, 'body'>;
|
|
95
|
+
<T extends null, U extends StatusCode>(data: T, status?: U, headers?: HeaderRecord): Response & TypedResponse<null, U, 'body'>;
|
|
96
|
+
<T extends null, U extends StatusCode>(data: T, init?: ResponseOrInit<U>): Response & TypedResponse<null, U, 'body'>;
|
|
98
97
|
}
|
|
99
98
|
/**
|
|
100
99
|
* Interface for responding with text.
|
|
@@ -110,8 +109,8 @@ interface BodyRespond {
|
|
|
110
109
|
* @returns {Response & TypedResponse<T, U, 'text'>} - The response after rendering the text content, typed with the provided text and status code types.
|
|
111
110
|
*/
|
|
112
111
|
interface TextRespond {
|
|
113
|
-
|
|
114
|
-
|
|
112
|
+
<T extends string, U extends ContentfulStatusCode = ContentfulStatusCode>(text: T, status?: U, headers?: HeaderRecord): Response & TypedResponse<T, U, 'text'>;
|
|
113
|
+
<T extends string, U extends ContentfulStatusCode = ContentfulStatusCode>(text: T, init?: ResponseOrInit<U>): Response & TypedResponse<T, U, 'text'>;
|
|
115
114
|
}
|
|
116
115
|
/**
|
|
117
116
|
* Interface for responding with JSON.
|
|
@@ -127,8 +126,8 @@ interface TextRespond {
|
|
|
127
126
|
* @returns {JSONRespondReturn<T, U>} - The response after rendering the JSON object, typed with the provided object and status code types.
|
|
128
127
|
*/
|
|
129
128
|
interface JSONRespond {
|
|
130
|
-
|
|
131
|
-
|
|
129
|
+
<T extends JSONValue | {} | InvalidJSONValue, U extends ContentfulStatusCode = ContentfulStatusCode>(object: T, status?: U, headers?: HeaderRecord): JSONRespondReturn<T, U>;
|
|
130
|
+
<T extends JSONValue | {} | InvalidJSONValue, U extends ContentfulStatusCode = ContentfulStatusCode>(object: T, init?: ResponseOrInit<U>): JSONRespondReturn<T, U>;
|
|
132
131
|
}
|
|
133
132
|
/**
|
|
134
133
|
* @template T - The type of the JSON value or simplified unknown type.
|
|
@@ -148,8 +147,8 @@ type JSONRespondReturn<T extends JSONValue | {} | InvalidJSONValue, U extends Co
|
|
|
148
147
|
* @returns A Response object or a Promise that resolves to a Response object.
|
|
149
148
|
*/
|
|
150
149
|
interface HTMLRespond {
|
|
151
|
-
|
|
152
|
-
|
|
150
|
+
<T extends string | Promise<string>>(html: T, status?: ContentfulStatusCode, headers?: HeaderRecord): T extends string ? Response : Promise<Response>;
|
|
151
|
+
<T extends string | Promise<string>>(html: T, init?: ResponseOrInit<ContentfulStatusCode>): T extends string ? Response : Promise<Response>;
|
|
153
152
|
}
|
|
154
153
|
/**
|
|
155
154
|
* Options for configuring the context.
|
|
@@ -157,303 +156,303 @@ interface HTMLRespond {
|
|
|
157
156
|
* @template E - Environment type.
|
|
158
157
|
*/
|
|
159
158
|
type ContextOptions<E extends Env> = {
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
159
|
+
/**
|
|
160
|
+
* Bindings for the environment.
|
|
161
|
+
*/
|
|
162
|
+
env: E['Bindings'];
|
|
163
|
+
/**
|
|
164
|
+
* Execution context for the request.
|
|
165
|
+
*/
|
|
166
|
+
executionCtx?: FetchEventLike | ExecutionContext | undefined;
|
|
167
|
+
/**
|
|
168
|
+
* Handler for not found responses.
|
|
169
|
+
*/
|
|
170
|
+
notFoundHandler?: NotFoundHandler<E>;
|
|
171
|
+
matchResult?: Result<[H, RouterRoute]>;
|
|
172
|
+
path?: string;
|
|
174
173
|
};
|
|
175
174
|
interface SetHeadersOptions {
|
|
176
|
-
|
|
175
|
+
append?: boolean;
|
|
177
176
|
}
|
|
178
177
|
interface SetHeaders {
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
178
|
+
(name: 'Content-Type', value?: BaseMime, options?: SetHeadersOptions): void;
|
|
179
|
+
(name: ResponseHeader, value?: string, options?: SetHeadersOptions): void;
|
|
180
|
+
(name: string, value?: string, options?: SetHeadersOptions): void;
|
|
182
181
|
}
|
|
183
182
|
type ResponseHeadersInit = [string, string][] | Record<'Content-Type', BaseMime> | Record<ResponseHeader, string> | Record<string, string> | Headers;
|
|
184
183
|
interface ResponseInit<T extends StatusCode = StatusCode> {
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
184
|
+
headers?: ResponseHeadersInit;
|
|
185
|
+
status?: T;
|
|
186
|
+
statusText?: string;
|
|
188
187
|
}
|
|
189
188
|
type ResponseOrInit<T extends StatusCode = StatusCode> = ResponseInit<T> | Response;
|
|
190
189
|
export declare const TEXT_PLAIN = "text/plain; charset=UTF-8";
|
|
191
190
|
export declare class Context<E extends Env = any, P extends string = any, I extends Input = {}> {
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
191
|
+
|
|
192
|
+
/**
|
|
193
|
+
* `.env` can get bindings (environment variables, secrets, KV namespaces, D1 database, R2 bucket etc.) in Cloudflare Workers.
|
|
194
|
+
*
|
|
195
|
+
* @see {@link https://hono.dev/docs/api/context#env}
|
|
196
|
+
*
|
|
197
|
+
* @example
|
|
198
|
+
* ```ts
|
|
199
|
+
* // Environment object for Cloudflare Workers
|
|
200
|
+
* app.get('*', async c => {
|
|
201
|
+
* const counter = c.env.COUNTER
|
|
202
|
+
* })
|
|
203
|
+
* ```
|
|
204
|
+
*/
|
|
205
|
+
env: E['Bindings'];
|
|
206
|
+
finalized: boolean;
|
|
207
|
+
/**
|
|
208
|
+
* `.error` can get the error object from the middleware if the Handler throws an error.
|
|
209
|
+
*
|
|
210
|
+
* @see {@link https://hono.dev/docs/api/context#error}
|
|
211
|
+
*
|
|
212
|
+
* @example
|
|
213
|
+
* ```ts
|
|
214
|
+
* app.use('*', async (c, next) => {
|
|
215
|
+
* await next()
|
|
216
|
+
* if (c.error) {
|
|
217
|
+
* // do something...
|
|
218
|
+
* }
|
|
219
|
+
* })
|
|
220
|
+
* ```
|
|
221
|
+
*/
|
|
222
|
+
error: Error | undefined;
|
|
223
|
+
/**
|
|
224
|
+
* Creates an instance of the Context class.
|
|
225
|
+
*
|
|
226
|
+
* @param req - The Request object.
|
|
227
|
+
* @param options - Optional configuration options for the context.
|
|
228
|
+
*/
|
|
229
|
+
constructor(req: Request, options?: ContextOptions<E>);
|
|
230
|
+
/**
|
|
231
|
+
* `.req` is the instance of {@link HonoRequest}.
|
|
232
|
+
*/
|
|
233
|
+
get req(): HonoRequest<P, I['out']>;
|
|
234
|
+
/**
|
|
235
|
+
* @see {@link https://hono.dev/docs/api/context#event}
|
|
236
|
+
* The FetchEvent associated with the current request.
|
|
237
|
+
*
|
|
238
|
+
* @throws Will throw an error if the context does not have a FetchEvent.
|
|
239
|
+
*/
|
|
240
|
+
get event(): FetchEventLike;
|
|
241
|
+
/**
|
|
242
|
+
* @see {@link https://hono.dev/docs/api/context#executionctx}
|
|
243
|
+
* The ExecutionContext associated with the current request.
|
|
244
|
+
*
|
|
245
|
+
* @throws Will throw an error if the context does not have an ExecutionContext.
|
|
246
|
+
*/
|
|
247
|
+
get executionCtx(): ExecutionContext;
|
|
248
|
+
/**
|
|
249
|
+
* @see {@link https://hono.dev/docs/api/context#res}
|
|
250
|
+
* The Response object for the current request.
|
|
251
|
+
*/
|
|
252
|
+
get res(): Response;
|
|
253
|
+
/**
|
|
254
|
+
* Sets the Response object for the current request.
|
|
255
|
+
*
|
|
256
|
+
* @param _res - The Response object to set.
|
|
257
|
+
*/
|
|
258
|
+
set res(_res: Response | undefined);
|
|
259
|
+
/**
|
|
260
|
+
* `.render()` can create a response within a layout.
|
|
261
|
+
*
|
|
262
|
+
* @see {@link https://hono.dev/docs/api/context#render-setrenderer}
|
|
263
|
+
*
|
|
264
|
+
* @example
|
|
265
|
+
* ```ts
|
|
266
|
+
* app.get('/', (c) => {
|
|
267
|
+
* return c.render('Hello!')
|
|
268
|
+
* })
|
|
269
|
+
* ```
|
|
270
|
+
*/
|
|
271
|
+
render: Renderer;
|
|
272
|
+
/**
|
|
273
|
+
* Sets the layout for the response.
|
|
274
|
+
*
|
|
275
|
+
* @param layout - The layout to set.
|
|
276
|
+
* @returns The layout function.
|
|
277
|
+
*/
|
|
278
|
+
setLayout: (layout: Layout<PropsForRenderer & {
|
|
279
|
+
Layout: Layout;
|
|
280
|
+
}>) => Layout<PropsForRenderer & {
|
|
281
|
+
Layout: Layout;
|
|
282
|
+
}>;
|
|
283
|
+
/**
|
|
284
|
+
* Gets the current layout for the response.
|
|
285
|
+
*
|
|
286
|
+
* @returns The current layout function.
|
|
287
|
+
*/
|
|
288
|
+
getLayout: () => Layout<PropsForRenderer & {
|
|
289
|
+
Layout: Layout;
|
|
290
|
+
}> | undefined;
|
|
291
|
+
/**
|
|
292
|
+
* `.setRenderer()` can set the layout in the custom middleware.
|
|
293
|
+
*
|
|
294
|
+
* @see {@link https://hono.dev/docs/api/context#render-setrenderer}
|
|
295
|
+
*
|
|
296
|
+
* @example
|
|
297
|
+
* ```tsx
|
|
298
|
+
* app.use('*', async (c, next) => {
|
|
299
|
+
* c.setRenderer((content) => {
|
|
300
|
+
* return c.html(
|
|
301
|
+
* <html>
|
|
302
|
+
* <body>
|
|
303
|
+
* <p>{content}</p>
|
|
304
|
+
* </body>
|
|
305
|
+
* </html>
|
|
306
|
+
* )
|
|
307
|
+
* })
|
|
308
|
+
* await next()
|
|
309
|
+
* })
|
|
310
|
+
* ```
|
|
311
|
+
*/
|
|
312
|
+
setRenderer: (renderer: Renderer) => void;
|
|
313
|
+
/**
|
|
314
|
+
* `.header()` can set headers.
|
|
315
|
+
*
|
|
316
|
+
* @see {@link https://hono.dev/docs/api/context#header}
|
|
317
|
+
*
|
|
318
|
+
* @example
|
|
319
|
+
* ```ts
|
|
320
|
+
* app.get('/welcome', (c) => {
|
|
321
|
+
* // Set headers
|
|
322
|
+
* c.header('X-Message', 'Hello!')
|
|
323
|
+
* c.header('Content-Type', 'text/plain')
|
|
324
|
+
*
|
|
325
|
+
* // Append multiple headers using the append option (e.g. Vary)
|
|
326
|
+
* c.header('Vary', 'Accept-Encoding', { append: true })
|
|
327
|
+
* c.header('Vary', 'User-Agent', { append: true })
|
|
328
|
+
*
|
|
329
|
+
* return c.body('Thank you for coming')
|
|
330
|
+
* })
|
|
331
|
+
* ```
|
|
332
|
+
*/
|
|
333
|
+
header: SetHeaders;
|
|
334
|
+
status: (status: StatusCode) => void;
|
|
335
|
+
/**
|
|
336
|
+
* `.set()` can set the value specified by the key.
|
|
337
|
+
*
|
|
338
|
+
* @see {@link https://hono.dev/docs/api/context#set-get}
|
|
339
|
+
*
|
|
340
|
+
* @example
|
|
341
|
+
* ```ts
|
|
342
|
+
* app.use('*', async (c, next) => {
|
|
343
|
+
* c.set('message', 'Hono is hot!!')
|
|
344
|
+
* await next()
|
|
345
|
+
* })
|
|
346
|
+
* ```
|
|
347
|
+
*/
|
|
348
|
+
set: Set<IsAny<E> extends true ? {
|
|
349
|
+
Variables: ContextVariableMap & Record<PropertyKey, any>;
|
|
350
|
+
} : E>;
|
|
351
|
+
/**
|
|
352
|
+
* `.get()` can use the value specified by the key.
|
|
353
|
+
*
|
|
354
|
+
* @see {@link https://hono.dev/docs/api/context#set-get}
|
|
355
|
+
*
|
|
356
|
+
* @example
|
|
357
|
+
* ```ts
|
|
358
|
+
* app.get('/', (c) => {
|
|
359
|
+
* const message = c.get('message')
|
|
360
|
+
* return c.text(`The message is "${message}"`)
|
|
361
|
+
* })
|
|
362
|
+
* ```
|
|
363
|
+
*/
|
|
364
|
+
get: Get<IsAny<E> extends true ? {
|
|
365
|
+
Variables: ContextVariableMap & Record<PropertyKey, any>;
|
|
366
|
+
} : E>;
|
|
367
|
+
/**
|
|
368
|
+
* `.var` can access the value of a variable.
|
|
369
|
+
*
|
|
370
|
+
* @see {@link https://hono.dev/docs/api/context#var}
|
|
371
|
+
*
|
|
372
|
+
* @example
|
|
373
|
+
* ```ts
|
|
374
|
+
* const result = c.var.client.oneMethod()
|
|
375
|
+
* ```
|
|
376
|
+
*/
|
|
377
|
+
get var(): Readonly<ContextVariableMap & (IsAny<E['Variables']> extends true ? Record<string, any> : E['Variables'])>;
|
|
378
|
+
newResponse: NewResponse;
|
|
379
|
+
/**
|
|
380
|
+
* `.body()` can return the HTTP response.
|
|
381
|
+
* You can set headers with `.header()` and set HTTP status code with `.status`.
|
|
382
|
+
* This can also be set in `.text()`, `.json()` and so on.
|
|
383
|
+
*
|
|
384
|
+
* @see {@link https://hono.dev/docs/api/context#body}
|
|
385
|
+
*
|
|
386
|
+
* @example
|
|
387
|
+
* ```ts
|
|
388
|
+
* app.get('/welcome', (c) => {
|
|
389
|
+
* // Set headers
|
|
390
|
+
* c.header('X-Message', 'Hello!')
|
|
391
|
+
* c.header('Content-Type', 'text/plain')
|
|
392
|
+
* // Set HTTP status code
|
|
393
|
+
* c.status(201)
|
|
394
|
+
*
|
|
395
|
+
* // Return the response body
|
|
396
|
+
* return c.body('Thank you for coming')
|
|
397
|
+
* })
|
|
398
|
+
* ```
|
|
399
|
+
*/
|
|
400
|
+
body: BodyRespond;
|
|
401
|
+
/**
|
|
402
|
+
* `.text()` can render text as `Content-Type:text/plain`.
|
|
403
|
+
*
|
|
404
|
+
* @see {@link https://hono.dev/docs/api/context#text}
|
|
405
|
+
*
|
|
406
|
+
* @example
|
|
407
|
+
* ```ts
|
|
408
|
+
* app.get('/say', (c) => {
|
|
409
|
+
* return c.text('Hello!')
|
|
410
|
+
* })
|
|
411
|
+
* ```
|
|
412
|
+
*/
|
|
413
|
+
text: TextRespond;
|
|
414
|
+
/**
|
|
415
|
+
* `.json()` can render JSON as `Content-Type:application/json`.
|
|
416
|
+
*
|
|
417
|
+
* @see {@link https://hono.dev/docs/api/context#json}
|
|
418
|
+
*
|
|
419
|
+
* @example
|
|
420
|
+
* ```ts
|
|
421
|
+
* app.get('/api', (c) => {
|
|
422
|
+
* return c.json({ message: 'Hello!' })
|
|
423
|
+
* })
|
|
424
|
+
* ```
|
|
425
|
+
*/
|
|
426
|
+
json: JSONRespond;
|
|
427
|
+
html: HTMLRespond;
|
|
428
|
+
/**
|
|
429
|
+
* `.redirect()` can Redirect, default status code is 302.
|
|
430
|
+
*
|
|
431
|
+
* @see {@link https://hono.dev/docs/api/context#redirect}
|
|
432
|
+
*
|
|
433
|
+
* @example
|
|
434
|
+
* ```ts
|
|
435
|
+
* app.get('/redirect', (c) => {
|
|
436
|
+
* return c.redirect('/')
|
|
437
|
+
* })
|
|
438
|
+
* app.get('/redirect-permanently', (c) => {
|
|
439
|
+
* return c.redirect('/', 301)
|
|
440
|
+
* })
|
|
441
|
+
* ```
|
|
442
|
+
*/
|
|
443
|
+
redirect: <T extends RedirectStatusCode = 302>(location: string | URL, status?: T) => Response & TypedResponse<undefined, T, "redirect">;
|
|
444
|
+
/**
|
|
445
|
+
* `.notFound()` can return the Not Found Response.
|
|
446
|
+
*
|
|
447
|
+
* @see {@link https://hono.dev/docs/api/context#notfound}
|
|
448
|
+
*
|
|
449
|
+
* @example
|
|
450
|
+
* ```ts
|
|
451
|
+
* app.get('/notfound', (c) => {
|
|
452
|
+
* return c.notFound()
|
|
453
|
+
* })
|
|
454
|
+
* ```
|
|
455
|
+
*/
|
|
456
|
+
notFound: () => ReturnType<NotFoundHandler>;
|
|
458
457
|
}
|
|
459
|
-
|
|
458
|
+
//#endregion
|