@depup/hono 4.12.8-depup.0
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/LICENSE +21 -0
- package/README.md +25 -0
- package/changes.json +5 -0
- package/dist/adapter/aws-lambda/conninfo.js +24 -0
- package/dist/adapter/aws-lambda/handler.js +366 -0
- package/dist/adapter/aws-lambda/index.js +9 -0
- package/dist/adapter/aws-lambda/types.js +0 -0
- package/dist/adapter/bun/conninfo.js +27 -0
- package/dist/adapter/bun/index.js +16 -0
- package/dist/adapter/bun/serve-static.js +30 -0
- package/dist/adapter/bun/server.js +5 -0
- package/dist/adapter/bun/ssg.js +17 -0
- package/dist/adapter/bun/websocket.js +71 -0
- package/dist/adapter/cloudflare-pages/conninfo.js +9 -0
- package/dist/adapter/cloudflare-pages/handler.js +67 -0
- package/dist/adapter/cloudflare-pages/index.js +9 -0
- package/dist/adapter/cloudflare-workers/conninfo.js +9 -0
- package/dist/adapter/cloudflare-workers/index.js +9 -0
- package/dist/adapter/cloudflare-workers/serve-static-module.js +8 -0
- package/dist/adapter/cloudflare-workers/serve-static.js +22 -0
- package/dist/adapter/cloudflare-workers/utils.js +35 -0
- package/dist/adapter/cloudflare-workers/websocket.js +41 -0
- package/dist/adapter/deno/conninfo.js +14 -0
- package/dist/adapter/deno/deno.d.js +0 -0
- package/dist/adapter/deno/index.js +12 -0
- package/dist/adapter/deno/serve-static.js +40 -0
- package/dist/adapter/deno/ssg.js +18 -0
- package/dist/adapter/deno/websocket.js +28 -0
- package/dist/adapter/lambda-edge/conninfo.js +9 -0
- package/dist/adapter/lambda-edge/handler.js +80 -0
- package/dist/adapter/lambda-edge/index.js +7 -0
- package/dist/adapter/netlify/conninfo.js +9 -0
- package/dist/adapter/netlify/handler.js +9 -0
- package/dist/adapter/netlify/index.js +2 -0
- package/dist/adapter/netlify/mod.js +7 -0
- package/dist/adapter/service-worker/handler.js +20 -0
- package/dist/adapter/service-worker/index.js +11 -0
- package/dist/adapter/service-worker/types.js +0 -0
- package/dist/adapter/vercel/conninfo.js +10 -0
- package/dist/adapter/vercel/handler.js +7 -0
- package/dist/adapter/vercel/index.js +7 -0
- package/dist/cjs/adapter/aws-lambda/conninfo.js +46 -0
- package/dist/cjs/adapter/aws-lambda/handler.js +397 -0
- package/dist/cjs/adapter/aws-lambda/index.js +34 -0
- package/dist/cjs/adapter/aws-lambda/types.js +15 -0
- package/dist/cjs/adapter/bun/conninfo.js +49 -0
- package/dist/cjs/adapter/bun/index.js +45 -0
- package/dist/cjs/adapter/bun/serve-static.js +52 -0
- package/dist/cjs/adapter/bun/server.js +27 -0
- package/dist/cjs/adapter/bun/ssg.js +40 -0
- package/dist/cjs/adapter/bun/websocket.js +96 -0
- package/dist/cjs/adapter/cloudflare-pages/conninfo.js +31 -0
- package/dist/cjs/adapter/cloudflare-pages/handler.js +91 -0
- package/dist/cjs/adapter/cloudflare-pages/index.js +34 -0
- package/dist/cjs/adapter/cloudflare-workers/conninfo.js +31 -0
- package/dist/cjs/adapter/cloudflare-workers/index.js +33 -0
- package/dist/cjs/adapter/cloudflare-workers/serve-static-module.js +30 -0
- package/dist/cjs/adapter/cloudflare-workers/serve-static.js +44 -0
- package/dist/cjs/adapter/cloudflare-workers/utils.js +57 -0
- package/dist/cjs/adapter/cloudflare-workers/websocket.js +63 -0
- package/dist/cjs/adapter/deno/conninfo.js +36 -0
- package/dist/cjs/adapter/deno/deno.d.js +0 -0
- package/dist/cjs/adapter/deno/index.js +38 -0
- package/dist/cjs/adapter/deno/serve-static.js +62 -0
- package/dist/cjs/adapter/deno/ssg.js +41 -0
- package/dist/cjs/adapter/deno/websocket.js +50 -0
- package/dist/cjs/adapter/lambda-edge/conninfo.js +31 -0
- package/dist/cjs/adapter/lambda-edge/handler.js +114 -0
- package/dist/cjs/adapter/lambda-edge/index.js +30 -0
- package/dist/cjs/adapter/netlify/conninfo.js +31 -0
- package/dist/cjs/adapter/netlify/handler.js +31 -0
- package/dist/cjs/adapter/netlify/index.js +21 -0
- package/dist/cjs/adapter/netlify/mod.js +30 -0
- package/dist/cjs/adapter/service-worker/handler.js +42 -0
- package/dist/cjs/adapter/service-worker/index.js +34 -0
- package/dist/cjs/adapter/service-worker/types.js +15 -0
- package/dist/cjs/adapter/vercel/conninfo.js +32 -0
- package/dist/cjs/adapter/vercel/handler.js +29 -0
- package/dist/cjs/adapter/vercel/index.js +30 -0
- package/dist/cjs/client/client.js +195 -0
- package/dist/cjs/client/fetch-result-please.js +85 -0
- package/dist/cjs/client/index.js +32 -0
- package/dist/cjs/client/types.js +15 -0
- package/dist/cjs/client/utils.js +105 -0
- package/dist/cjs/compose.js +68 -0
- package/dist/cjs/context.js +435 -0
- package/dist/cjs/helper/accepts/accepts.js +43 -0
- package/dist/cjs/helper/accepts/index.js +27 -0
- package/dist/cjs/helper/adapter/index.js +81 -0
- package/dist/cjs/helper/conninfo/index.js +15 -0
- package/dist/cjs/helper/conninfo/types.js +15 -0
- package/dist/cjs/helper/cookie/index.js +130 -0
- package/dist/cjs/helper/css/common.js +222 -0
- package/dist/cjs/helper/css/index.js +142 -0
- package/dist/cjs/helper/dev/index.js +79 -0
- package/dist/cjs/helper/factory/index.js +54 -0
- package/dist/cjs/helper/html/index.js +64 -0
- package/dist/cjs/helper/proxy/index.js +111 -0
- package/dist/cjs/helper/route/index.js +71 -0
- package/dist/cjs/helper/ssg/index.js +43 -0
- package/dist/cjs/helper/ssg/middleware.js +73 -0
- package/dist/cjs/helper/ssg/plugins.js +70 -0
- package/dist/cjs/helper/ssg/ssg.js +316 -0
- package/dist/cjs/helper/ssg/utils.js +84 -0
- package/dist/cjs/helper/streaming/index.js +35 -0
- package/dist/cjs/helper/streaming/sse.js +90 -0
- package/dist/cjs/helper/streaming/stream.js +56 -0
- package/dist/cjs/helper/streaming/text.js +34 -0
- package/dist/cjs/helper/streaming/utils.js +35 -0
- package/dist/cjs/helper/testing/index.js +33 -0
- package/dist/cjs/helper/websocket/index.js +81 -0
- package/dist/cjs/hono-base.js +400 -0
- package/dist/cjs/hono.js +43 -0
- package/dist/cjs/http-exception.js +57 -0
- package/dist/cjs/index.js +27 -0
- package/dist/cjs/jsx/base.js +374 -0
- package/dist/cjs/jsx/children.js +44 -0
- package/dist/cjs/jsx/components.js +201 -0
- package/dist/cjs/jsx/constants.js +42 -0
- package/dist/cjs/jsx/context.js +62 -0
- package/dist/cjs/jsx/dom/client.js +76 -0
- package/dist/cjs/jsx/dom/components.js +55 -0
- package/dist/cjs/jsx/dom/context.js +71 -0
- package/dist/cjs/jsx/dom/css.js +161 -0
- package/dist/cjs/jsx/dom/hooks/index.js +74 -0
- package/dist/cjs/jsx/dom/index.js +181 -0
- package/dist/cjs/jsx/dom/intrinsic-element/components.js +399 -0
- package/dist/cjs/jsx/dom/jsx-dev-runtime.js +52 -0
- package/dist/cjs/jsx/dom/jsx-runtime.js +32 -0
- package/dist/cjs/jsx/dom/render.js +619 -0
- package/dist/cjs/jsx/dom/server.js +67 -0
- package/dist/cjs/jsx/dom/utils.js +32 -0
- package/dist/cjs/jsx/hooks/index.js +370 -0
- package/dist/cjs/jsx/index.js +138 -0
- package/dist/cjs/jsx/intrinsic-element/common.js +50 -0
- package/dist/cjs/jsx/intrinsic-element/components.js +189 -0
- package/dist/cjs/jsx/intrinsic-elements.js +15 -0
- package/dist/cjs/jsx/jsx-dev-runtime.js +41 -0
- package/dist/cjs/jsx/jsx-runtime.js +68 -0
- package/dist/cjs/jsx/streaming.js +177 -0
- package/dist/cjs/jsx/types.js +15 -0
- package/dist/cjs/jsx/utils.js +50 -0
- package/dist/cjs/middleware/basic-auth/index.js +88 -0
- package/dist/cjs/middleware/bearer-auth/index.js +114 -0
- package/dist/cjs/middleware/body-limit/index.js +84 -0
- package/dist/cjs/middleware/cache/index.js +111 -0
- package/dist/cjs/middleware/combine/index.js +101 -0
- package/dist/cjs/middleware/compress/index.js +61 -0
- package/dist/cjs/middleware/context-storage/index.js +47 -0
- package/dist/cjs/middleware/cors/index.js +109 -0
- package/dist/cjs/middleware/csrf/index.js +77 -0
- package/dist/cjs/middleware/etag/digest.js +55 -0
- package/dist/cjs/middleware/etag/index.js +95 -0
- package/dist/cjs/middleware/ip-restriction/index.js +124 -0
- package/dist/cjs/middleware/jsx-renderer/index.js +82 -0
- package/dist/cjs/middleware/jwk/index.js +27 -0
- package/dist/cjs/middleware/jwk/jwk.js +134 -0
- package/dist/cjs/middleware/jwt/index.js +38 -0
- package/dist/cjs/middleware/jwt/jwt.js +140 -0
- package/dist/cjs/middleware/language/index.js +35 -0
- package/dist/cjs/middleware/language/language.js +221 -0
- package/dist/cjs/middleware/logger/index.js +72 -0
- package/dist/cjs/middleware/method-override/index.js +104 -0
- package/dist/cjs/middleware/powered-by/index.js +32 -0
- package/dist/cjs/middleware/pretty-json/index.js +37 -0
- package/dist/cjs/middleware/request-id/index.js +27 -0
- package/dist/cjs/middleware/request-id/request-id.js +43 -0
- package/dist/cjs/middleware/secure-headers/index.js +29 -0
- package/dist/cjs/middleware/secure-headers/permissions-policy.js +15 -0
- package/dist/cjs/middleware/secure-headers/secure-headers.js +189 -0
- package/dist/cjs/middleware/serve-static/index.js +99 -0
- package/dist/cjs/middleware/serve-static/path.js +40 -0
- package/dist/cjs/middleware/timeout/index.js +47 -0
- package/dist/cjs/middleware/timing/index.js +35 -0
- package/dist/cjs/middleware/timing/timing.js +128 -0
- package/dist/cjs/middleware/trailing-slash/index.js +62 -0
- package/dist/cjs/package.json +3 -0
- package/dist/cjs/preset/quick.js +38 -0
- package/dist/cjs/preset/tiny.js +34 -0
- package/dist/cjs/request/constants.js +27 -0
- package/dist/cjs/request.js +324 -0
- package/dist/cjs/router/linear-router/index.js +27 -0
- package/dist/cjs/router/linear-router/router.js +140 -0
- package/dist/cjs/router/pattern-router/index.js +27 -0
- package/dist/cjs/router/pattern-router/router.js +70 -0
- package/dist/cjs/router/reg-exp-router/index.js +34 -0
- package/dist/cjs/router/reg-exp-router/matcher.js +48 -0
- package/dist/cjs/router/reg-exp-router/node.js +134 -0
- package/dist/cjs/router/reg-exp-router/prepared-router.js +166 -0
- package/dist/cjs/router/reg-exp-router/router.js +208 -0
- package/dist/cjs/router/reg-exp-router/trie.js +81 -0
- package/dist/cjs/router/smart-router/index.js +27 -0
- package/dist/cjs/router/smart-router/router.js +80 -0
- package/dist/cjs/router/trie-router/index.js +27 -0
- package/dist/cjs/router/trie-router/node.js +201 -0
- package/dist/cjs/router/trie-router/router.js +48 -0
- package/dist/cjs/router.js +40 -0
- package/dist/cjs/types.js +28 -0
- package/dist/cjs/utils/accept.js +245 -0
- package/dist/cjs/utils/basic-auth.js +45 -0
- package/dist/cjs/utils/body.js +97 -0
- package/dist/cjs/utils/buffer.js +102 -0
- package/dist/cjs/utils/color.js +48 -0
- package/dist/cjs/utils/compress.js +27 -0
- package/dist/cjs/utils/concurrent.js +61 -0
- package/dist/cjs/utils/constants.js +27 -0
- package/dist/cjs/utils/cookie.js +177 -0
- package/dist/cjs/utils/crypto.js +69 -0
- package/dist/cjs/utils/encode.js +54 -0
- package/dist/cjs/utils/filepath.js +58 -0
- package/dist/cjs/utils/handler.js +36 -0
- package/dist/cjs/utils/headers.js +15 -0
- package/dist/cjs/utils/html.js +150 -0
- package/dist/cjs/utils/http-status.js +15 -0
- package/dist/cjs/utils/ipaddr.js +129 -0
- package/dist/cjs/utils/jwt/index.js +28 -0
- package/dist/cjs/utils/jwt/jwa.js +42 -0
- package/dist/cjs/utils/jwt/jws.js +215 -0
- package/dist/cjs/utils/jwt/jwt.js +213 -0
- package/dist/cjs/utils/jwt/types.js +161 -0
- package/dist/cjs/utils/jwt/utf8.js +30 -0
- package/dist/cjs/utils/mime.js +108 -0
- package/dist/cjs/utils/stream.js +101 -0
- package/dist/cjs/utils/types.js +15 -0
- package/dist/cjs/utils/url.js +256 -0
- package/dist/cjs/validator/index.js +27 -0
- package/dist/cjs/validator/utils.js +15 -0
- package/dist/cjs/validator/validator.js +108 -0
- package/dist/client/client.js +180 -0
- package/dist/client/fetch-result-please.js +62 -0
- package/dist/client/index.js +8 -0
- package/dist/client/types.js +0 -0
- package/dist/client/utils.js +76 -0
- package/dist/compose.js +46 -0
- package/dist/context.js +412 -0
- package/dist/helper/accepts/accepts.js +20 -0
- package/dist/helper/accepts/index.js +5 -0
- package/dist/helper/adapter/index.js +56 -0
- package/dist/helper/conninfo/index.js +0 -0
- package/dist/helper/conninfo/types.js +0 -0
- package/dist/helper/cookie/index.js +102 -0
- package/dist/helper/css/common.js +185 -0
- package/dist/helper/css/index.js +125 -0
- package/dist/helper/dev/index.js +55 -0
- package/dist/helper/factory/index.js +30 -0
- package/dist/helper/html/index.js +41 -0
- package/dist/helper/proxy/index.js +89 -0
- package/dist/helper/route/index.js +46 -0
- package/dist/helper/ssg/index.js +19 -0
- package/dist/helper/ssg/middleware.js +45 -0
- package/dist/helper/ssg/plugins.js +47 -0
- package/dist/helper/ssg/ssg.js +287 -0
- package/dist/helper/ssg/utils.js +59 -0
- package/dist/helper/streaming/index.js +10 -0
- package/dist/helper/streaming/sse.js +67 -0
- package/dist/helper/streaming/stream.js +34 -0
- package/dist/helper/streaming/text.js +12 -0
- package/dist/helper/streaming/utils.js +13 -0
- package/dist/helper/testing/index.js +11 -0
- package/dist/helper/websocket/index.js +57 -0
- package/dist/hono-base.js +378 -0
- package/dist/hono.js +21 -0
- package/dist/http-exception.js +35 -0
- package/dist/index.js +5 -0
- package/dist/jsx/base.js +331 -0
- package/dist/jsx/children.js +21 -0
- package/dist/jsx/components.js +178 -0
- package/dist/jsx/constants.js +15 -0
- package/dist/jsx/context.js +38 -0
- package/dist/jsx/dom/client.js +53 -0
- package/dist/jsx/dom/components.js +32 -0
- package/dist/jsx/dom/context.js +48 -0
- package/dist/jsx/dom/css.js +143 -0
- package/dist/jsx/dom/hooks/index.js +48 -0
- package/dist/jsx/dom/index.js +142 -0
- package/dist/jsx/dom/intrinsic-element/components.js +374 -0
- package/dist/jsx/dom/jsx-dev-runtime.js +19 -0
- package/dist/jsx/dom/jsx-runtime.js +8 -0
- package/dist/jsx/dom/render.js +595 -0
- package/dist/jsx/dom/server.js +33 -0
- package/dist/jsx/dom/utils.js +10 -0
- package/dist/jsx/hooks/index.js +328 -0
- package/dist/jsx/index.js +103 -0
- package/dist/jsx/intrinsic-element/common.js +24 -0
- package/dist/jsx/intrinsic-element/components.js +165 -0
- package/dist/jsx/intrinsic-elements.js +0 -0
- package/dist/jsx/jsx-dev-runtime.js +18 -0
- package/dist/jsx/jsx-runtime.js +41 -0
- package/dist/jsx/streaming.js +153 -0
- package/dist/jsx/types.js +0 -0
- package/dist/jsx/utils.js +27 -0
- package/dist/middleware/basic-auth/index.js +66 -0
- package/dist/middleware/bearer-auth/index.js +92 -0
- package/dist/middleware/body-limit/index.js +62 -0
- package/dist/middleware/cache/index.js +89 -0
- package/dist/middleware/combine/index.js +77 -0
- package/dist/middleware/compress/index.js +39 -0
- package/dist/middleware/context-storage/index.js +23 -0
- package/dist/middleware/cors/index.js +87 -0
- package/dist/middleware/csrf/index.js +55 -0
- package/dist/middleware/etag/digest.js +33 -0
- package/dist/middleware/etag/index.js +72 -0
- package/dist/middleware/ip-restriction/index.js +107 -0
- package/dist/middleware/jsx-renderer/index.js +58 -0
- package/dist/middleware/jwk/index.js +5 -0
- package/dist/middleware/jwk/jwk.js +112 -0
- package/dist/middleware/jwt/index.js +11 -0
- package/dist/middleware/jwt/jwt.js +114 -0
- package/dist/middleware/language/index.js +15 -0
- package/dist/middleware/language/language.js +190 -0
- package/dist/middleware/logger/index.js +44 -0
- package/dist/middleware/method-override/index.js +82 -0
- package/dist/middleware/powered-by/index.js +10 -0
- package/dist/middleware/pretty-json/index.js +15 -0
- package/dist/middleware/request-id/index.js +5 -0
- package/dist/middleware/request-id/request-id.js +21 -0
- package/dist/middleware/secure-headers/index.js +6 -0
- package/dist/middleware/secure-headers/permissions-policy.js +0 -0
- package/dist/middleware/secure-headers/secure-headers.js +166 -0
- package/dist/middleware/serve-static/index.js +77 -0
- package/dist/middleware/serve-static/path.js +18 -0
- package/dist/middleware/timeout/index.js +25 -0
- package/dist/middleware/timing/index.js +9 -0
- package/dist/middleware/timing/timing.js +102 -0
- package/dist/middleware/trailing-slash/index.js +39 -0
- package/dist/preset/quick.js +16 -0
- package/dist/preset/tiny.js +12 -0
- package/dist/request/constants.js +5 -0
- package/dist/request.js +301 -0
- package/dist/router/linear-router/index.js +5 -0
- package/dist/router/linear-router/router.js +118 -0
- package/dist/router/pattern-router/index.js +5 -0
- package/dist/router/pattern-router/router.js +48 -0
- package/dist/router/reg-exp-router/index.js +9 -0
- package/dist/router/reg-exp-router/matcher.js +25 -0
- package/dist/router/reg-exp-router/node.js +111 -0
- package/dist/router/reg-exp-router/prepared-router.js +142 -0
- package/dist/router/reg-exp-router/router.js +190 -0
- package/dist/router/reg-exp-router/trie.js +59 -0
- package/dist/router/smart-router/index.js +5 -0
- package/dist/router/smart-router/router.js +58 -0
- package/dist/router/trie-router/index.js +5 -0
- package/dist/router/trie-router/node.js +179 -0
- package/dist/router/trie-router/router.js +26 -0
- package/dist/router.js +14 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -0
- package/dist/types/adapter/aws-lambda/conninfo.d.ts +27 -0
- package/dist/types/adapter/aws-lambda/handler.d.ts +184 -0
- package/dist/types/adapter/aws-lambda/index.d.ts +8 -0
- package/dist/types/adapter/aws-lambda/types.d.ts +144 -0
- package/dist/types/adapter/bun/conninfo.d.ts +7 -0
- package/dist/types/adapter/bun/index.d.ts +10 -0
- package/dist/types/adapter/bun/serve-static.d.ts +3 -0
- package/dist/types/adapter/bun/server.d.ts +12 -0
- package/dist/types/adapter/bun/ssg.d.ts +13 -0
- package/dist/types/adapter/bun/websocket.d.ts +39 -0
- package/dist/types/adapter/cloudflare-pages/conninfo.d.ts +21 -0
- package/dist/types/adapter/cloudflare-pages/handler.d.ts +33 -0
- package/dist/types/adapter/cloudflare-pages/index.d.ts +7 -0
- package/dist/types/adapter/cloudflare-workers/conninfo.d.ts +2 -0
- package/dist/types/adapter/cloudflare-workers/index.d.ts +7 -0
- package/dist/types/adapter/cloudflare-workers/serve-static-module.d.ts +4 -0
- package/dist/types/adapter/cloudflare-workers/serve-static.d.ts +16 -0
- package/dist/types/adapter/cloudflare-workers/utils.d.ts +5 -0
- package/dist/types/adapter/cloudflare-workers/websocket.d.ts +2 -0
- package/dist/types/adapter/deno/conninfo.d.ts +7 -0
- package/dist/types/adapter/deno/index.d.ts +8 -0
- package/dist/types/adapter/deno/serve-static.d.ts +3 -0
- package/dist/types/adapter/deno/ssg.d.ts +13 -0
- package/dist/types/adapter/deno/websocket.d.ts +2 -0
- package/dist/types/adapter/lambda-edge/conninfo.d.ts +2 -0
- package/dist/types/adapter/lambda-edge/handler.d.ts +87 -0
- package/dist/types/adapter/lambda-edge/index.d.ts +7 -0
- package/dist/types/adapter/netlify/conninfo.d.ts +21 -0
- package/dist/types/adapter/netlify/handler.d.ts +2 -0
- package/dist/types/adapter/netlify/index.d.ts +5 -0
- package/dist/types/adapter/netlify/mod.d.ts +2 -0
- package/dist/types/adapter/service-worker/handler.d.ts +16 -0
- package/dist/types/adapter/service-worker/index.d.ts +28 -0
- package/dist/types/adapter/service-worker/types.d.ts +12 -0
- package/dist/types/adapter/vercel/conninfo.d.ts +2 -0
- package/dist/types/adapter/vercel/handler.d.ts +2 -0
- package/dist/types/adapter/vercel/index.d.ts +6 -0
- package/dist/types/client/client.d.ts +4 -0
- package/dist/types/client/fetch-result-please.d.ts +35 -0
- package/dist/types/client/index.d.ts +7 -0
- package/dist/types/client/types.d.ts +209 -0
- package/dist/types/client/utils.d.ts +18 -0
- package/dist/types/compose.d.ts +14 -0
- package/dist/types/context.d.ts +455 -0
- package/dist/types/helper/accepts/accepts.d.ts +30 -0
- package/dist/types/helper/accepts/index.d.ts +5 -0
- package/dist/types/helper/adapter/index.d.ts +12 -0
- package/dist/types/helper/conninfo/index.d.ts +5 -0
- package/dist/types/helper/conninfo/types.d.ts +36 -0
- package/dist/types/helper/cookie/index.d.ts +24 -0
- package/dist/types/helper/css/common.d.ts +42 -0
- package/dist/types/helper/css/index.d.ts +73 -0
- package/dist/types/helper/dev/index.d.ts +20 -0
- package/dist/types/helper/factory/index.d.ts +82 -0
- package/dist/types/helper/html/index.d.ts +8 -0
- package/dist/types/helper/proxy/index.d.ts +72 -0
- package/dist/types/helper/route/index.d.ts +75 -0
- package/dist/types/helper/ssg/index.d.ts +7 -0
- package/dist/types/helper/ssg/middleware.d.ts +44 -0
- package/dist/types/helper/ssg/plugins.d.ts +27 -0
- package/dist/types/helper/ssg/ssg.d.ts +91 -0
- package/dist/types/helper/ssg/utils.d.ts +15 -0
- package/dist/types/helper/streaming/index.d.ts +8 -0
- package/dist/types/helper/streaming/sse.d.ts +13 -0
- package/dist/types/helper/streaming/stream.d.ts +3 -0
- package/dist/types/helper/streaming/text.d.ts +3 -0
- package/dist/types/helper/streaming/utils.d.ts +1 -0
- package/dist/types/helper/testing/index.d.ts +12 -0
- package/dist/types/helper/websocket/index.d.ts +69 -0
- package/dist/types/hono-base.d.ts +220 -0
- package/dist/types/hono.d.ts +19 -0
- package/dist/types/http-exception.d.ts +59 -0
- package/dist/types/index.d.ts +36 -0
- package/dist/types/jsx/base.d.ts +58 -0
- package/dist/types/jsx/children.d.ts +9 -0
- package/dist/types/jsx/components.d.ts +15 -0
- package/dist/types/jsx/constants.d.ts +6 -0
- package/dist/types/jsx/context.d.ts +12 -0
- package/dist/types/jsx/dom/client.d.ts +31 -0
- package/dist/types/jsx/dom/components.d.ts +10 -0
- package/dist/types/jsx/dom/context.d.ts +3 -0
- package/dist/types/jsx/dom/css.d.ts +77 -0
- package/dist/types/jsx/dom/hooks/index.d.ts +39 -0
- package/dist/types/jsx/dom/index.d.ts +88 -0
- package/dist/types/jsx/dom/intrinsic-element/components.d.ts +16 -0
- package/dist/types/jsx/dom/jsx-dev-runtime.d.ts +8 -0
- package/dist/types/jsx/dom/jsx-runtime.d.ts +7 -0
- package/dist/types/jsx/dom/render.d.ts +73 -0
- package/dist/types/jsx/dom/server.d.ts +106 -0
- package/dist/types/jsx/dom/utils.d.ts +1 -0
- package/dist/types/jsx/hooks/index.d.ts +45 -0
- package/dist/types/jsx/index.d.ts +75 -0
- package/dist/types/jsx/intrinsic-element/common.d.ts +6 -0
- package/dist/types/jsx/intrinsic-element/components.d.ts +13 -0
- package/dist/types/jsx/intrinsic-elements.d.ts +722 -0
- package/dist/types/jsx/jsx-dev-runtime.d.ts +8 -0
- package/dist/types/jsx/jsx-runtime.d.ts +12 -0
- package/dist/types/jsx/streaming.d.ts +36 -0
- package/dist/types/jsx/types.d.ts +35 -0
- package/dist/types/jsx/utils.d.ts +2 -0
- package/dist/types/middleware/basic-auth/index.d.ts +75 -0
- package/dist/types/middleware/bearer-auth/index.d.ts +91 -0
- package/dist/types/middleware/body-limit/index.d.ts +45 -0
- package/dist/types/middleware/cache/index.d.ts +41 -0
- package/dist/types/middleware/combine/index.d.ts +85 -0
- package/dist/types/middleware/compress/index.d.ts +29 -0
- package/dist/types/middleware/context-storage/index.d.ts +40 -0
- package/dist/types/middleware/cors/index.d.ts +55 -0
- package/dist/types/middleware/csrf/index.d.ts +78 -0
- package/dist/types/middleware/etag/digest.d.ts +1 -0
- package/dist/types/middleware/etag/index.d.ts +42 -0
- package/dist/types/middleware/ip-restriction/index.d.ts +31 -0
- package/dist/types/middleware/jsx-renderer/index.d.ts +77 -0
- package/dist/types/middleware/jwk/index.d.ts +1 -0
- package/dist/types/middleware/jwk/jwk.d.ts +54 -0
- package/dist/types/middleware/jwt/index.d.ts +8 -0
- package/dist/types/middleware/jwt/jwt.d.ts +67 -0
- package/dist/types/middleware/language/index.d.ts +7 -0
- package/dist/types/middleware/language/language.d.ts +102 -0
- package/dist/types/middleware/logger/index.d.ts +24 -0
- package/dist/types/middleware/method-override/index.d.ts +48 -0
- package/dist/types/middleware/powered-by/index.d.ts +29 -0
- package/dist/types/middleware/pretty-json/index.d.ts +42 -0
- package/dist/types/middleware/request-id/index.d.ts +7 -0
- package/dist/types/middleware/request-id/request-id.d.ts +37 -0
- package/dist/types/middleware/secure-headers/index.d.ts +8 -0
- package/dist/types/middleware/secure-headers/permissions-policy.d.ts +14 -0
- package/dist/types/middleware/secure-headers/secure-headers.d.ts +109 -0
- package/dist/types/middleware/serve-static/index.d.ts +31 -0
- package/dist/types/middleware/serve-static/path.d.ts +5 -0
- package/dist/types/middleware/timeout/index.d.ts +31 -0
- package/dist/types/middleware/timing/index.d.ts +7 -0
- package/dist/types/middleware/timing/timing.d.ts +129 -0
- package/dist/types/middleware/trailing-slash/index.d.ts +78 -0
- package/dist/types/package.json +3 -0
- package/dist/types/preset/quick.d.ts +10 -0
- package/dist/types/preset/tiny.d.ts +10 -0
- package/dist/types/request/constants.d.ts +1 -0
- package/dist/types/request.d.ts +313 -0
- package/dist/types/router/linear-router/index.d.ts +5 -0
- package/dist/types/router/linear-router/router.d.ts +7 -0
- package/dist/types/router/pattern-router/index.d.ts +5 -0
- package/dist/types/router/pattern-router/router.d.ts +7 -0
- package/dist/types/router/reg-exp-router/index.d.ts +6 -0
- package/dist/types/router/reg-exp-router/matcher.d.ts +7 -0
- package/dist/types/router/reg-exp-router/node.d.ts +10 -0
- package/dist/types/router/reg-exp-router/prepared-router.d.ts +17 -0
- package/dist/types/router/reg-exp-router/router.d.ts +11 -0
- package/dist/types/router/reg-exp-router/trie.d.ts +7 -0
- package/dist/types/router/smart-router/index.d.ts +5 -0
- package/dist/types/router/smart-router/router.d.ts +11 -0
- package/dist/types/router/trie-router/index.d.ts +5 -0
- package/dist/types/router/trie-router/node.d.ts +7 -0
- package/dist/types/router/trie-router/router.d.ts +8 -0
- package/dist/types/router.d.ts +97 -0
- package/dist/types/types.d.ts +573 -0
- package/dist/types/utils/accept.d.ts +6 -0
- package/dist/types/utils/basic-auth.d.ts +5 -0
- package/dist/types/utils/body.d.ts +79 -0
- package/dist/types/utils/buffer.d.ts +17 -0
- package/dist/types/utils/color.d.ts +21 -0
- package/dist/types/utils/compress.d.ts +8 -0
- package/dist/types/utils/concurrent.d.ts +11 -0
- package/dist/types/utils/constants.d.ts +4 -0
- package/dist/types/utils/cookie.d.ts +40 -0
- package/dist/types/utils/crypto.d.ts +15 -0
- package/dist/types/utils/encode.d.ts +8 -0
- package/dist/types/utils/filepath.d.ts +12 -0
- package/dist/types/utils/handler.d.ts +6 -0
- package/dist/types/utils/headers.d.ts +8 -0
- package/dist/types/utils/html.d.ts +44 -0
- package/dist/types/utils/http-status.d.ts +32 -0
- package/dist/types/utils/ipaddr.d.ts +40 -0
- package/dist/types/utils/jwt/index.d.ts +18 -0
- package/dist/types/utils/jwt/jwa.d.ts +23 -0
- package/dist/types/utils/jwt/jws.d.ts +12 -0
- package/dist/types/utils/jwt/jwt.d.ts +43 -0
- package/dist/types/utils/jwt/types.d.ts +86 -0
- package/dist/types/utils/jwt/utf8.d.ts +6 -0
- package/dist/types/utils/mime.d.ts +70 -0
- package/dist/types/utils/stream.d.ts +31 -0
- package/dist/types/utils/types.d.ts +74 -0
- package/dist/types/utils/url.d.ts +39 -0
- package/dist/types/validator/index.d.ts +7 -0
- package/dist/types/validator/utils.d.ts +29 -0
- package/dist/types/validator/validator.d.ts +16 -0
- package/dist/types.js +6 -0
- package/dist/utils/accept.js +223 -0
- package/dist/utils/basic-auth.js +23 -0
- package/dist/utils/body.js +75 -0
- package/dist/utils/buffer.js +77 -0
- package/dist/utils/color.js +25 -0
- package/dist/utils/compress.js +5 -0
- package/dist/utils/concurrent.js +39 -0
- package/dist/utils/constants.js +5 -0
- package/dist/utils/cookie.js +152 -0
- package/dist/utils/crypto.js +44 -0
- package/dist/utils/encode.js +29 -0
- package/dist/utils/filepath.js +35 -0
- package/dist/utils/handler.js +13 -0
- package/dist/utils/headers.js +0 -0
- package/dist/utils/html.js +123 -0
- package/dist/utils/http-status.js +0 -0
- package/dist/utils/ipaddr.js +102 -0
- package/dist/utils/jwt/index.js +6 -0
- package/dist/utils/jwt/jwa.js +20 -0
- package/dist/utils/jwt/jws.js +192 -0
- package/dist/utils/jwt/jwt.js +201 -0
- package/dist/utils/jwt/types.js +124 -0
- package/dist/utils/jwt/utf8.js +7 -0
- package/dist/utils/mime.js +84 -0
- package/dist/utils/stream.js +79 -0
- package/dist/utils/types.js +0 -0
- package/dist/utils/url.js +222 -0
- package/dist/validator/index.js +5 -0
- package/dist/validator/utils.js +0 -0
- package/dist/validator/validator.js +86 -0
- package/package.json +702 -0
|
@@ -0,0 +1,77 @@
|
|
|
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 csrf_exports = {};
|
|
19
|
+
__export(csrf_exports, {
|
|
20
|
+
csrf: () => csrf
|
|
21
|
+
});
|
|
22
|
+
module.exports = __toCommonJS(csrf_exports);
|
|
23
|
+
var import_http_exception = require("../../http-exception");
|
|
24
|
+
const secFetchSiteValues = ["same-origin", "same-site", "none", "cross-site"];
|
|
25
|
+
const isSecFetchSite = (value) => secFetchSiteValues.includes(value);
|
|
26
|
+
const isSafeMethodRe = /^(GET|HEAD)$/;
|
|
27
|
+
const isRequestedByFormElementRe = /^\b(application\/x-www-form-urlencoded|multipart\/form-data|text\/plain)\b/i;
|
|
28
|
+
const csrf = (options) => {
|
|
29
|
+
const originHandler = ((optsOrigin) => {
|
|
30
|
+
if (!optsOrigin) {
|
|
31
|
+
return (origin, c) => origin === new URL(c.req.url).origin;
|
|
32
|
+
} else if (typeof optsOrigin === "string") {
|
|
33
|
+
return (origin) => origin === optsOrigin;
|
|
34
|
+
} else if (typeof optsOrigin === "function") {
|
|
35
|
+
return optsOrigin;
|
|
36
|
+
} else {
|
|
37
|
+
return (origin) => optsOrigin.includes(origin);
|
|
38
|
+
}
|
|
39
|
+
})(options?.origin);
|
|
40
|
+
const isAllowedOrigin = async (origin, c) => {
|
|
41
|
+
if (origin === void 0) {
|
|
42
|
+
return false;
|
|
43
|
+
}
|
|
44
|
+
return await originHandler(origin, c);
|
|
45
|
+
};
|
|
46
|
+
const secFetchSiteHandler = ((optsSecFetchSite) => {
|
|
47
|
+
if (!optsSecFetchSite) {
|
|
48
|
+
return (secFetchSite) => secFetchSite === "same-origin";
|
|
49
|
+
} else if (typeof optsSecFetchSite === "string") {
|
|
50
|
+
return (secFetchSite) => secFetchSite === optsSecFetchSite;
|
|
51
|
+
} else if (typeof optsSecFetchSite === "function") {
|
|
52
|
+
return optsSecFetchSite;
|
|
53
|
+
} else {
|
|
54
|
+
return (secFetchSite) => optsSecFetchSite.includes(secFetchSite);
|
|
55
|
+
}
|
|
56
|
+
})(options?.secFetchSite);
|
|
57
|
+
const isAllowedSecFetchSite = async (secFetchSite, c) => {
|
|
58
|
+
if (secFetchSite === void 0) {
|
|
59
|
+
return false;
|
|
60
|
+
}
|
|
61
|
+
if (!isSecFetchSite(secFetchSite)) {
|
|
62
|
+
return false;
|
|
63
|
+
}
|
|
64
|
+
return await secFetchSiteHandler(secFetchSite, c);
|
|
65
|
+
};
|
|
66
|
+
return async function csrf2(c, next) {
|
|
67
|
+
if (!isSafeMethodRe.test(c.req.method) && isRequestedByFormElementRe.test(c.req.header("content-type") || "text/plain") && !await isAllowedSecFetchSite(c.req.header("sec-fetch-site"), c) && !await isAllowedOrigin(c.req.header("origin"), c)) {
|
|
68
|
+
const res = new Response("Forbidden", { status: 403 });
|
|
69
|
+
throw new import_http_exception.HTTPException(403, { res });
|
|
70
|
+
}
|
|
71
|
+
await next();
|
|
72
|
+
};
|
|
73
|
+
};
|
|
74
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
75
|
+
0 && (module.exports = {
|
|
76
|
+
csrf
|
|
77
|
+
});
|
|
@@ -0,0 +1,55 @@
|
|
|
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 digest_exports = {};
|
|
19
|
+
__export(digest_exports, {
|
|
20
|
+
generateDigest: () => generateDigest
|
|
21
|
+
});
|
|
22
|
+
module.exports = __toCommonJS(digest_exports);
|
|
23
|
+
const mergeBuffers = (buffer1, buffer2) => {
|
|
24
|
+
if (!buffer1) {
|
|
25
|
+
return buffer2;
|
|
26
|
+
}
|
|
27
|
+
const merged = new Uint8Array(
|
|
28
|
+
new ArrayBuffer(buffer1.byteLength + buffer2.byteLength)
|
|
29
|
+
);
|
|
30
|
+
merged.set(new Uint8Array(buffer1), 0);
|
|
31
|
+
merged.set(buffer2, buffer1.byteLength);
|
|
32
|
+
return merged;
|
|
33
|
+
};
|
|
34
|
+
const generateDigest = async (stream, generator) => {
|
|
35
|
+
if (!stream) {
|
|
36
|
+
return null;
|
|
37
|
+
}
|
|
38
|
+
let result = void 0;
|
|
39
|
+
const reader = stream.getReader();
|
|
40
|
+
for (; ; ) {
|
|
41
|
+
const { value, done } = await reader.read();
|
|
42
|
+
if (done) {
|
|
43
|
+
break;
|
|
44
|
+
}
|
|
45
|
+
result = await generator(mergeBuffers(result, value));
|
|
46
|
+
}
|
|
47
|
+
if (!result) {
|
|
48
|
+
return null;
|
|
49
|
+
}
|
|
50
|
+
return Array.prototype.map.call(new Uint8Array(result), (x) => x.toString(16).padStart(2, "0")).join("");
|
|
51
|
+
};
|
|
52
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
53
|
+
0 && (module.exports = {
|
|
54
|
+
generateDigest
|
|
55
|
+
});
|
|
@@ -0,0 +1,95 @@
|
|
|
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 etag_exports = {};
|
|
19
|
+
__export(etag_exports, {
|
|
20
|
+
RETAINED_304_HEADERS: () => RETAINED_304_HEADERS,
|
|
21
|
+
etag: () => etag
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(etag_exports);
|
|
24
|
+
var import_digest = require("./digest");
|
|
25
|
+
const RETAINED_304_HEADERS = [
|
|
26
|
+
"cache-control",
|
|
27
|
+
"content-location",
|
|
28
|
+
"date",
|
|
29
|
+
"etag",
|
|
30
|
+
"expires",
|
|
31
|
+
"vary"
|
|
32
|
+
];
|
|
33
|
+
const stripWeak = (tag) => tag.replace(/^W\//, "");
|
|
34
|
+
function etagMatches(etag2, ifNoneMatch) {
|
|
35
|
+
return ifNoneMatch != null && ifNoneMatch.split(/,\s*/).some((t) => stripWeak(t) === stripWeak(etag2));
|
|
36
|
+
}
|
|
37
|
+
function initializeGenerator(generator) {
|
|
38
|
+
if (!generator) {
|
|
39
|
+
if (crypto && crypto.subtle) {
|
|
40
|
+
generator = (body) => crypto.subtle.digest(
|
|
41
|
+
{
|
|
42
|
+
name: "SHA-1"
|
|
43
|
+
},
|
|
44
|
+
body
|
|
45
|
+
);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
return generator;
|
|
49
|
+
}
|
|
50
|
+
const etag = (options) => {
|
|
51
|
+
const retainedHeaders = options?.retainedHeaders ?? RETAINED_304_HEADERS;
|
|
52
|
+
const weak = options?.weak ?? false;
|
|
53
|
+
const generator = initializeGenerator(options?.generateDigest);
|
|
54
|
+
return async function etag2(c, next) {
|
|
55
|
+
const ifNoneMatch = c.req.header("If-None-Match") ?? null;
|
|
56
|
+
await next();
|
|
57
|
+
const res = c.res;
|
|
58
|
+
let etag3 = res.headers.get("ETag");
|
|
59
|
+
if (!etag3) {
|
|
60
|
+
if (!generator) {
|
|
61
|
+
return;
|
|
62
|
+
}
|
|
63
|
+
const hash = await (0, import_digest.generateDigest)(
|
|
64
|
+
// This type casing avoids the type error for `deno publish`
|
|
65
|
+
res.clone().body,
|
|
66
|
+
generator
|
|
67
|
+
);
|
|
68
|
+
if (hash === null) {
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
etag3 = weak ? `W/"${hash}"` : `"${hash}"`;
|
|
72
|
+
}
|
|
73
|
+
if (etagMatches(etag3, ifNoneMatch)) {
|
|
74
|
+
c.res = new Response(null, {
|
|
75
|
+
status: 304,
|
|
76
|
+
statusText: "Not Modified",
|
|
77
|
+
headers: {
|
|
78
|
+
ETag: etag3
|
|
79
|
+
}
|
|
80
|
+
});
|
|
81
|
+
c.res.headers.forEach((_, key) => {
|
|
82
|
+
if (retainedHeaders.indexOf(key.toLowerCase()) === -1) {
|
|
83
|
+
c.res.headers.delete(key);
|
|
84
|
+
}
|
|
85
|
+
});
|
|
86
|
+
} else {
|
|
87
|
+
c.res.headers.set("ETag", etag3);
|
|
88
|
+
}
|
|
89
|
+
};
|
|
90
|
+
};
|
|
91
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
92
|
+
0 && (module.exports = {
|
|
93
|
+
RETAINED_304_HEADERS,
|
|
94
|
+
etag
|
|
95
|
+
});
|
|
@@ -0,0 +1,124 @@
|
|
|
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 ip_restriction_exports = {};
|
|
19
|
+
__export(ip_restriction_exports, {
|
|
20
|
+
ipRestriction: () => ipRestriction
|
|
21
|
+
});
|
|
22
|
+
module.exports = __toCommonJS(ip_restriction_exports);
|
|
23
|
+
var import_http_exception = require("../../http-exception");
|
|
24
|
+
var import_ipaddr = require("../../utils/ipaddr");
|
|
25
|
+
const IS_CIDR_NOTATION_REGEX = /\/[0-9]{0,3}$/;
|
|
26
|
+
const buildMatcher = (rules) => {
|
|
27
|
+
const functionRules = [];
|
|
28
|
+
const staticRules = /* @__PURE__ */ new Set();
|
|
29
|
+
const cidrRules = [];
|
|
30
|
+
for (let rule of rules) {
|
|
31
|
+
if (rule === "*") {
|
|
32
|
+
return () => true;
|
|
33
|
+
} else if (typeof rule === "function") {
|
|
34
|
+
functionRules.push(rule);
|
|
35
|
+
} else {
|
|
36
|
+
if (IS_CIDR_NOTATION_REGEX.test(rule)) {
|
|
37
|
+
const separatedRule = rule.split("/");
|
|
38
|
+
const addrStr = separatedRule[0];
|
|
39
|
+
const type2 = (0, import_ipaddr.distinctRemoteAddr)(addrStr);
|
|
40
|
+
if (type2 === void 0) {
|
|
41
|
+
throw new TypeError(`Invalid rule: ${rule}`);
|
|
42
|
+
}
|
|
43
|
+
const isIPv4 = type2 === "IPv4";
|
|
44
|
+
const prefix = parseInt(separatedRule[1]);
|
|
45
|
+
if (isIPv4 ? prefix === 32 : prefix === 128) {
|
|
46
|
+
rule = addrStr;
|
|
47
|
+
} else {
|
|
48
|
+
const addr = (isIPv4 ? import_ipaddr.convertIPv4ToBinary : import_ipaddr.convertIPv6ToBinary)(addrStr);
|
|
49
|
+
const mask = (1n << BigInt(prefix)) - 1n << BigInt((isIPv4 ? 32 : 128) - prefix);
|
|
50
|
+
cidrRules.push([isIPv4, addr & mask, mask]);
|
|
51
|
+
continue;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
const type = (0, import_ipaddr.distinctRemoteAddr)(rule);
|
|
55
|
+
if (type === void 0) {
|
|
56
|
+
throw new TypeError(`Invalid rule: ${rule}`);
|
|
57
|
+
}
|
|
58
|
+
staticRules.add(
|
|
59
|
+
type === "IPv4" ? rule : (0, import_ipaddr.convertIPv6BinaryToString)((0, import_ipaddr.convertIPv6ToBinary)(rule))
|
|
60
|
+
// normalize IPv6 address (e.g. 0000:0000:0000:0000:0000:0000:0000:0001 => ::1)
|
|
61
|
+
);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
return (remote) => {
|
|
65
|
+
if (staticRules.has(remote.addr)) {
|
|
66
|
+
return true;
|
|
67
|
+
}
|
|
68
|
+
for (const [isIPv4, addr, mask] of cidrRules) {
|
|
69
|
+
if (isIPv4 !== remote.isIPv4) {
|
|
70
|
+
continue;
|
|
71
|
+
}
|
|
72
|
+
const remoteAddr = remote.binaryAddr ||= (isIPv4 ? import_ipaddr.convertIPv4ToBinary : import_ipaddr.convertIPv6ToBinary)(remote.addr);
|
|
73
|
+
if ((remoteAddr & mask) === addr) {
|
|
74
|
+
return true;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
for (const rule of functionRules) {
|
|
78
|
+
if (rule({ addr: remote.addr, type: remote.type })) {
|
|
79
|
+
return true;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
return false;
|
|
83
|
+
};
|
|
84
|
+
};
|
|
85
|
+
const ipRestriction = (getIP, { denyList = [], allowList = [] }, onError) => {
|
|
86
|
+
const allowLength = allowList.length;
|
|
87
|
+
const denyMatcher = buildMatcher(denyList);
|
|
88
|
+
const allowMatcher = buildMatcher(allowList);
|
|
89
|
+
const blockError = (c) => new import_http_exception.HTTPException(403, {
|
|
90
|
+
res: c.text("Forbidden", {
|
|
91
|
+
status: 403
|
|
92
|
+
})
|
|
93
|
+
});
|
|
94
|
+
return async function ipRestriction2(c, next) {
|
|
95
|
+
const connInfo = getIP(c);
|
|
96
|
+
const addr = typeof connInfo === "string" ? connInfo : connInfo.remote.address;
|
|
97
|
+
if (!addr) {
|
|
98
|
+
throw blockError(c);
|
|
99
|
+
}
|
|
100
|
+
const type = typeof connInfo !== "string" && connInfo.remote.addressType || (0, import_ipaddr.distinctRemoteAddr)(addr);
|
|
101
|
+
const remoteData = { addr, type, isIPv4: type === "IPv4" };
|
|
102
|
+
if (denyMatcher(remoteData)) {
|
|
103
|
+
if (onError) {
|
|
104
|
+
return onError({ addr, type }, c);
|
|
105
|
+
}
|
|
106
|
+
throw blockError(c);
|
|
107
|
+
}
|
|
108
|
+
if (allowMatcher(remoteData)) {
|
|
109
|
+
return await next();
|
|
110
|
+
}
|
|
111
|
+
if (allowLength === 0) {
|
|
112
|
+
return await next();
|
|
113
|
+
} else {
|
|
114
|
+
if (onError) {
|
|
115
|
+
return await onError({ addr, type }, c);
|
|
116
|
+
}
|
|
117
|
+
throw blockError(c);
|
|
118
|
+
}
|
|
119
|
+
};
|
|
120
|
+
};
|
|
121
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
122
|
+
0 && (module.exports = {
|
|
123
|
+
ipRestriction
|
|
124
|
+
});
|
|
@@ -0,0 +1,82 @@
|
|
|
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 jsx_renderer_exports = {};
|
|
19
|
+
__export(jsx_renderer_exports, {
|
|
20
|
+
RequestContext: () => RequestContext,
|
|
21
|
+
jsxRenderer: () => jsxRenderer,
|
|
22
|
+
useRequestContext: () => useRequestContext
|
|
23
|
+
});
|
|
24
|
+
module.exports = __toCommonJS(jsx_renderer_exports);
|
|
25
|
+
var import_html = require("../../helper/html");
|
|
26
|
+
var import_jsx = require("../../jsx");
|
|
27
|
+
var import_streaming = require("../../jsx/streaming");
|
|
28
|
+
const RequestContext = (0, import_jsx.createContext)(null);
|
|
29
|
+
const createRenderer = (c, Layout, component, options) => (children, props) => {
|
|
30
|
+
options = typeof options === "function" ? options(c) : options;
|
|
31
|
+
const docType = typeof options?.docType === "string" ? options.docType : options?.docType === false ? "" : "<!DOCTYPE html>";
|
|
32
|
+
const currentLayout = component ? (0, import_jsx.jsx)(
|
|
33
|
+
(props2) => component(props2, c),
|
|
34
|
+
{
|
|
35
|
+
Layout,
|
|
36
|
+
...props
|
|
37
|
+
},
|
|
38
|
+
children
|
|
39
|
+
) : children;
|
|
40
|
+
const body = import_html.html`${(0, import_html.raw)(docType)}${(0, import_jsx.jsx)(
|
|
41
|
+
RequestContext.Provider,
|
|
42
|
+
{ value: c },
|
|
43
|
+
currentLayout
|
|
44
|
+
)}`;
|
|
45
|
+
if (options?.stream) {
|
|
46
|
+
if (options.stream === true) {
|
|
47
|
+
c.header("Transfer-Encoding", "chunked");
|
|
48
|
+
c.header("Content-Type", "text/html; charset=UTF-8");
|
|
49
|
+
c.header("Content-Encoding", "Identity");
|
|
50
|
+
} else {
|
|
51
|
+
for (const [key, value] of Object.entries(options.stream)) {
|
|
52
|
+
c.header(key, value);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
return c.body((0, import_streaming.renderToReadableStream)(body));
|
|
56
|
+
} else {
|
|
57
|
+
return c.html(body);
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
const jsxRenderer = (component, options) => function jsxRenderer2(c, next) {
|
|
61
|
+
const Layout = c.getLayout() ?? import_jsx.Fragment;
|
|
62
|
+
if (component) {
|
|
63
|
+
c.setLayout((props) => {
|
|
64
|
+
return component({ ...props, Layout }, c);
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
c.setRenderer(createRenderer(c, Layout, component, options));
|
|
68
|
+
return next();
|
|
69
|
+
};
|
|
70
|
+
const useRequestContext = () => {
|
|
71
|
+
const c = (0, import_jsx.useContext)(RequestContext);
|
|
72
|
+
if (!c) {
|
|
73
|
+
throw new Error("RequestContext is not provided.");
|
|
74
|
+
}
|
|
75
|
+
return c;
|
|
76
|
+
};
|
|
77
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
78
|
+
0 && (module.exports = {
|
|
79
|
+
RequestContext,
|
|
80
|
+
jsxRenderer,
|
|
81
|
+
useRequestContext
|
|
82
|
+
});
|
|
@@ -0,0 +1,27 @@
|
|
|
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 jwk_exports = {};
|
|
19
|
+
__export(jwk_exports, {
|
|
20
|
+
jwk: () => import_jwk.jwk
|
|
21
|
+
});
|
|
22
|
+
module.exports = __toCommonJS(jwk_exports);
|
|
23
|
+
var import_jwk = require("./jwk");
|
|
24
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
25
|
+
0 && (module.exports = {
|
|
26
|
+
jwk
|
|
27
|
+
});
|
|
@@ -0,0 +1,134 @@
|
|
|
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 jwk_exports = {};
|
|
19
|
+
__export(jwk_exports, {
|
|
20
|
+
jwk: () => jwk
|
|
21
|
+
});
|
|
22
|
+
module.exports = __toCommonJS(jwk_exports);
|
|
23
|
+
var import_cookie = require("../../helper/cookie");
|
|
24
|
+
var import_http_exception = require("../../http-exception");
|
|
25
|
+
var import_jwt = require("../../utils/jwt");
|
|
26
|
+
var import_context = require("../../context");
|
|
27
|
+
const jwk = (options, init) => {
|
|
28
|
+
const verifyOpts = options.verification || {};
|
|
29
|
+
if (!options || !(options.keys || options.jwks_uri)) {
|
|
30
|
+
throw new Error('JWK auth middleware requires options for either "keys" or "jwks_uri" or both');
|
|
31
|
+
}
|
|
32
|
+
if (!crypto.subtle || !crypto.subtle.importKey) {
|
|
33
|
+
throw new Error("`crypto.subtle.importKey` is undefined. JWK auth middleware requires it.");
|
|
34
|
+
}
|
|
35
|
+
return async function jwk2(ctx, next) {
|
|
36
|
+
const headerName = options.headerName || "Authorization";
|
|
37
|
+
const credentials = ctx.req.raw.headers.get(headerName);
|
|
38
|
+
let token;
|
|
39
|
+
if (credentials) {
|
|
40
|
+
const parts = credentials.split(/\s+/);
|
|
41
|
+
if (parts.length !== 2) {
|
|
42
|
+
const errDescription = "invalid credentials structure";
|
|
43
|
+
throw new import_http_exception.HTTPException(401, {
|
|
44
|
+
message: errDescription,
|
|
45
|
+
res: unauthorizedResponse({
|
|
46
|
+
ctx,
|
|
47
|
+
error: "invalid_request",
|
|
48
|
+
errDescription
|
|
49
|
+
})
|
|
50
|
+
});
|
|
51
|
+
} else {
|
|
52
|
+
token = parts[1];
|
|
53
|
+
}
|
|
54
|
+
} else if (options.cookie) {
|
|
55
|
+
if (typeof options.cookie == "string") {
|
|
56
|
+
token = (0, import_cookie.getCookie)(ctx, options.cookie);
|
|
57
|
+
} else if (options.cookie.secret) {
|
|
58
|
+
if (options.cookie.prefixOptions) {
|
|
59
|
+
token = await (0, import_cookie.getSignedCookie)(
|
|
60
|
+
ctx,
|
|
61
|
+
options.cookie.secret,
|
|
62
|
+
options.cookie.key,
|
|
63
|
+
options.cookie.prefixOptions
|
|
64
|
+
);
|
|
65
|
+
} else {
|
|
66
|
+
token = await (0, import_cookie.getSignedCookie)(ctx, options.cookie.secret, options.cookie.key);
|
|
67
|
+
}
|
|
68
|
+
} else {
|
|
69
|
+
if (options.cookie.prefixOptions) {
|
|
70
|
+
token = (0, import_cookie.getCookie)(ctx, options.cookie.key, options.cookie.prefixOptions);
|
|
71
|
+
} else {
|
|
72
|
+
token = (0, import_cookie.getCookie)(ctx, options.cookie.key);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
if (!token) {
|
|
77
|
+
if (options.allow_anon) {
|
|
78
|
+
return next();
|
|
79
|
+
}
|
|
80
|
+
const errDescription = "no authorization included in request";
|
|
81
|
+
throw new import_http_exception.HTTPException(401, {
|
|
82
|
+
message: errDescription,
|
|
83
|
+
res: unauthorizedResponse({
|
|
84
|
+
ctx,
|
|
85
|
+
error: "invalid_request",
|
|
86
|
+
errDescription
|
|
87
|
+
})
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
let payload;
|
|
91
|
+
let cause;
|
|
92
|
+
try {
|
|
93
|
+
const keys = typeof options.keys === "function" ? await options.keys(ctx) : options.keys;
|
|
94
|
+
const jwks_uri = typeof options.jwks_uri === "function" ? await options.jwks_uri(ctx) : options.jwks_uri;
|
|
95
|
+
payload = await import_jwt.Jwt.verifyWithJwks(
|
|
96
|
+
token,
|
|
97
|
+
{ keys, jwks_uri, verification: verifyOpts, allowedAlgorithms: options.alg },
|
|
98
|
+
init
|
|
99
|
+
);
|
|
100
|
+
} catch (e) {
|
|
101
|
+
cause = e;
|
|
102
|
+
}
|
|
103
|
+
if (!payload) {
|
|
104
|
+
if (cause instanceof Error && cause.constructor === Error) {
|
|
105
|
+
throw cause;
|
|
106
|
+
}
|
|
107
|
+
throw new import_http_exception.HTTPException(401, {
|
|
108
|
+
message: "Unauthorized",
|
|
109
|
+
res: unauthorizedResponse({
|
|
110
|
+
ctx,
|
|
111
|
+
error: "invalid_token",
|
|
112
|
+
statusText: "Unauthorized",
|
|
113
|
+
errDescription: "token verification failure"
|
|
114
|
+
}),
|
|
115
|
+
cause
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
ctx.set("jwtPayload", payload);
|
|
119
|
+
await next();
|
|
120
|
+
};
|
|
121
|
+
};
|
|
122
|
+
function unauthorizedResponse(opts) {
|
|
123
|
+
return new Response("Unauthorized", {
|
|
124
|
+
status: 401,
|
|
125
|
+
statusText: opts.statusText,
|
|
126
|
+
headers: {
|
|
127
|
+
"WWW-Authenticate": `Bearer realm="${opts.ctx.req.url}",error="${opts.error}",error_description="${opts.errDescription}"`
|
|
128
|
+
}
|
|
129
|
+
});
|
|
130
|
+
}
|
|
131
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
132
|
+
0 && (module.exports = {
|
|
133
|
+
jwk
|
|
134
|
+
});
|
|
@@ -0,0 +1,38 @@
|
|
|
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 jwt_exports = {};
|
|
19
|
+
__export(jwt_exports, {
|
|
20
|
+
AlgorithmTypes: () => import_jwa.AlgorithmTypes,
|
|
21
|
+
decode: () => import_jwt.decode,
|
|
22
|
+
jwt: () => import_jwt.jwt,
|
|
23
|
+
sign: () => import_jwt.sign,
|
|
24
|
+
verify: () => import_jwt.verify,
|
|
25
|
+
verifyWithJwks: () => import_jwt.verifyWithJwks
|
|
26
|
+
});
|
|
27
|
+
module.exports = __toCommonJS(jwt_exports);
|
|
28
|
+
var import_jwt = require("./jwt");
|
|
29
|
+
var import_jwa = require("../../utils/jwt/jwa");
|
|
30
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
31
|
+
0 && (module.exports = {
|
|
32
|
+
AlgorithmTypes,
|
|
33
|
+
decode,
|
|
34
|
+
jwt,
|
|
35
|
+
sign,
|
|
36
|
+
verify,
|
|
37
|
+
verifyWithJwks
|
|
38
|
+
});
|