hono 4.13.13 → 5.0.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (516) hide show
  1. package/README.md +2 -2
  2. package/dist/client/fetch-result-please.js +0 -22
  3. package/dist/client/utils.js +0 -7
  4. package/dist/{types/compose.d.ts → compose.d.ts} +5 -3
  5. package/dist/compose.js +18 -31
  6. package/dist/context/constants.d.ts +3 -0
  7. package/dist/context/constants.js +4 -0
  8. package/dist/{types/context.d.ts → context.d.ts} +56 -15
  9. package/dist/context.js +83 -277
  10. package/dist/helper/accepts/accepts.js +0 -13
  11. package/dist/helper/css/common.js +0 -10
  12. package/dist/helper/css/index.js +0 -38
  13. package/dist/{types/helper → helper}/dev/index.d.ts +5 -2
  14. package/dist/helper/dev/index.js +3 -3
  15. package/dist/helper/factory/define-handler.d.ts +150 -0
  16. package/dist/helper/factory/define-handler.js +117 -0
  17. package/dist/{types/helper → helper}/factory/index.d.ts +30 -1
  18. package/dist/helper/factory/index.js +7 -7
  19. package/dist/helper/html/index.js +0 -4
  20. package/dist/helper/proxy/index.js +0 -49
  21. package/dist/helper/route/index.js +0 -90
  22. package/dist/{types/helper → helper}/ssg/middleware.d.ts +0 -6
  23. package/dist/helper/ssg/middleware.js +1 -34
  24. package/dist/helper/ssg/plugins.js +0 -24
  25. package/dist/{types/helper → helper}/ssg/ssg.d.ts +0 -12
  26. package/dist/helper/ssg/ssg.js +0 -18
  27. package/dist/helper/ssg/utils.js +0 -5
  28. package/dist/helper/testing/index.js +0 -4
  29. package/dist/helper/websocket/index.js +0 -6
  30. package/dist/{types/hono-base.d.ts → hono-base.d.ts} +47 -95
  31. package/dist/hono-base.js +63 -228
  32. package/dist/{types/hono.d.ts → hono.d.ts} +1 -1
  33. package/dist/hono.js +0 -13
  34. package/dist/http-exception.js +0 -36
  35. package/dist/index.js +0 -15
  36. package/dist/jsx/components.js +0 -5
  37. package/dist/jsx/context.js +0 -34
  38. package/dist/jsx/dom/client.js +0 -14
  39. package/dist/jsx/dom/css.js +0 -34
  40. package/dist/jsx/dom/hooks/index.js +0 -21
  41. package/dist/jsx/dom/index.js +0 -4
  42. package/dist/jsx/dom/server.js +0 -12
  43. package/dist/jsx/index.js +0 -4
  44. package/dist/jsx/streaming.js +0 -26
  45. package/dist/{types/middleware → middleware}/basic-auth/index.d.ts +4 -3
  46. package/dist/middleware/basic-auth/index.js +0 -49
  47. package/dist/{types/middleware → middleware}/bearer-auth/index.d.ts +4 -27
  48. package/dist/middleware/bearer-auth/index.js +3 -39
  49. package/dist/middleware/body-limit/index.js +0 -32
  50. package/dist/middleware/cache/index.js +0 -31
  51. package/dist/middleware/combine/index.js +0 -80
  52. package/dist/middleware/compress/index.js +0 -24
  53. package/dist/middleware/context-storage/index.js +0 -35
  54. package/dist/middleware/cors/index.js +0 -39
  55. package/dist/middleware/csrf/index.js +0 -62
  56. package/dist/middleware/etag/index.js +0 -29
  57. package/dist/middleware/ip-restriction/index.js +0 -41
  58. package/dist/middleware/jsx-renderer/index.js +0 -58
  59. package/dist/middleware/jwk/jwk.js +0 -31
  60. package/dist/middleware/jwt/jwt.js +0 -32
  61. package/dist/middleware/language/language.js +0 -60
  62. package/dist/middleware/logger/index.js +6 -24
  63. package/dist/middleware/method-not-allowed/index.js +1 -36
  64. package/dist/middleware/method-override/index.js +0 -25
  65. package/dist/middleware/mount/index.js +0 -32
  66. package/dist/middleware/powered-by/index.js +0 -15
  67. package/dist/middleware/pretty-json/index.js +0 -18
  68. package/dist/middleware/request-id/request-id.js +0 -22
  69. package/dist/middleware/secure-headers/secure-headers.js +0 -32
  70. package/dist/{types/middleware → middleware}/serve-static/index.d.ts +0 -4
  71. package/dist/middleware/serve-static/index.js +0 -3
  72. package/dist/middleware/serve-static/path.js +0 -4
  73. package/dist/middleware/timeout/index.js +0 -22
  74. package/dist/middleware/timing/timing.js +0 -95
  75. package/dist/middleware/trailing-slash/index.js +0 -50
  76. package/dist/{types/preset → preset}/quick.d.ts +1 -1
  77. package/dist/preset/quick.js +0 -4
  78. package/dist/{types/preset → preset}/tiny.d.ts +1 -1
  79. package/dist/preset/tiny.js +0 -4
  80. package/dist/{types/request.d.ts → request.d.ts} +3 -48
  81. package/dist/request.js +0 -205
  82. package/dist/router/linear-router/router.js +19 -13
  83. package/dist/router/pattern-router/router.js +3 -3
  84. package/dist/router/reg-exp-router/node.js +9 -11
  85. package/dist/router/reg-exp-router/trie.js +0 -5
  86. package/dist/router/trie-router/node.js +5 -5
  87. package/dist/router.js +0 -19
  88. package/dist/{types/types.d.ts → types.d.ts} +33 -2
  89. package/dist/utils/body.js +0 -30
  90. package/dist/utils/buffer.d.ts +11 -0
  91. package/dist/utils/buffer.js +1 -12
  92. package/dist/utils/color.d.ts +16 -0
  93. package/dist/utils/color.js +4 -33
  94. package/dist/utils/compress.js +0 -7
  95. package/dist/utils/concurrent.js +0 -4
  96. package/dist/utils/constants.js +0 -3
  97. package/dist/utils/cookie.js +0 -4
  98. package/dist/utils/encode.js +0 -4
  99. package/dist/utils/handler.js +0 -4
  100. package/dist/utils/html.js +0 -4
  101. package/dist/{types/utils → utils}/http-status.d.ts +1 -9
  102. package/dist/utils/ipaddr.js +0 -39
  103. package/dist/utils/jwt/index.js +0 -4
  104. package/dist/utils/jwt/jwa.js +0 -5
  105. package/dist/utils/jwt/jws.js +0 -5
  106. package/dist/utils/jwt/jwt.js +0 -5
  107. package/dist/utils/jwt/types.js +0 -4
  108. package/dist/utils/jwt/utf8.js +0 -4
  109. package/dist/utils/mime.js +0 -4
  110. package/dist/utils/stream.js +0 -14
  111. package/dist/{types/utils → utils}/url.d.ts +0 -5
  112. package/dist/utils/url.js +1 -30
  113. package/dist/{types/validator → validator}/validator.d.ts +5 -0
  114. package/dist/validator/validator.js +42 -49
  115. package/package.json +142 -488
  116. package/dist/adapter/aws-lambda/conninfo.js +0 -43
  117. package/dist/adapter/aws-lambda/handler.js +0 -342
  118. package/dist/adapter/aws-lambda/index.js +0 -3
  119. package/dist/adapter/aws-lambda/types.js +0 -1
  120. package/dist/adapter/bun/conninfo.js +0 -22
  121. package/dist/adapter/bun/index.js +0 -6
  122. package/dist/adapter/bun/serve-static.js +0 -30
  123. package/dist/adapter/bun/server.js +0 -11
  124. package/dist/adapter/bun/ssg.js +0 -27
  125. package/dist/adapter/bun/websocket.js +0 -66
  126. package/dist/adapter/cloudflare-pages/conninfo.js +0 -24
  127. package/dist/adapter/cloudflare-pages/handler.js +0 -64
  128. package/dist/adapter/cloudflare-pages/index.js +0 -3
  129. package/dist/adapter/cloudflare-workers/conninfo.js +0 -7
  130. package/dist/adapter/cloudflare-workers/index.js +0 -4
  131. package/dist/adapter/cloudflare-workers/serve-static-module.js +0 -7
  132. package/dist/adapter/cloudflare-workers/serve-static.js +0 -28
  133. package/dist/adapter/cloudflare-workers/utils.js +0 -22
  134. package/dist/adapter/cloudflare-workers/websocket.js +0 -33
  135. package/dist/adapter/deno/conninfo.js +0 -17
  136. package/dist/adapter/deno/deno.d.js +0 -1
  137. package/dist/adapter/deno/index.js +0 -5
  138. package/dist/adapter/deno/serve-static.js +0 -35
  139. package/dist/adapter/deno/ssg.js +0 -29
  140. package/dist/adapter/deno/websocket.js +0 -32
  141. package/dist/adapter/lambda-edge/conninfo.js +0 -7
  142. package/dist/adapter/lambda-edge/handler.js +0 -111
  143. package/dist/adapter/lambda-edge/index.js +0 -3
  144. package/dist/adapter/netlify/conninfo.js +0 -24
  145. package/dist/adapter/netlify/handler.js +0 -11
  146. package/dist/adapter/netlify/index.js +0 -3
  147. package/dist/adapter/netlify/mod.js +0 -3
  148. package/dist/adapter/service-worker/handler.js +0 -16
  149. package/dist/adapter/service-worker/index.js +0 -25
  150. package/dist/adapter/service-worker/types.js +0 -1
  151. package/dist/adapter/vercel/conninfo.js +0 -7
  152. package/dist/adapter/vercel/handler.js +0 -9
  153. package/dist/adapter/vercel/index.js +0 -3
  154. package/dist/cjs/_virtual/_rolldown/runtime.js +0 -33
  155. package/dist/cjs/adapter/aws-lambda/conninfo.js +0 -44
  156. package/dist/cjs/adapter/aws-lambda/handler.js +0 -352
  157. package/dist/cjs/adapter/aws-lambda/index.js +0 -7
  158. package/dist/cjs/adapter/aws-lambda/types.js +0 -0
  159. package/dist/cjs/adapter/bun/conninfo.js +0 -23
  160. package/dist/cjs/adapter/bun/index.js +0 -14
  161. package/dist/cjs/adapter/bun/serve-static.js +0 -31
  162. package/dist/cjs/adapter/bun/server.js +0 -12
  163. package/dist/cjs/adapter/bun/ssg.js +0 -29
  164. package/dist/cjs/adapter/bun/websocket.js +0 -70
  165. package/dist/cjs/adapter/cloudflare-pages/conninfo.js +0 -25
  166. package/dist/cjs/adapter/cloudflare-pages/handler.js +0 -67
  167. package/dist/cjs/adapter/cloudflare-pages/index.js +0 -7
  168. package/dist/cjs/adapter/cloudflare-workers/conninfo.js +0 -8
  169. package/dist/cjs/adapter/cloudflare-workers/index.js +0 -7
  170. package/dist/cjs/adapter/cloudflare-workers/serve-static-module.js +0 -8
  171. package/dist/cjs/adapter/cloudflare-workers/serve-static.js +0 -29
  172. package/dist/cjs/adapter/cloudflare-workers/utils.js +0 -23
  173. package/dist/cjs/adapter/cloudflare-workers/websocket.js +0 -34
  174. package/dist/cjs/adapter/deno/conninfo.js +0 -18
  175. package/dist/cjs/adapter/deno/deno.d.js +0 -0
  176. package/dist/cjs/adapter/deno/index.js +0 -10
  177. package/dist/cjs/adapter/deno/serve-static.js +0 -36
  178. package/dist/cjs/adapter/deno/ssg.js +0 -31
  179. package/dist/cjs/adapter/deno/websocket.js +0 -33
  180. package/dist/cjs/adapter/lambda-edge/conninfo.js +0 -8
  181. package/dist/cjs/adapter/lambda-edge/handler.js +0 -116
  182. package/dist/cjs/adapter/lambda-edge/index.js +0 -5
  183. package/dist/cjs/adapter/netlify/conninfo.js +0 -25
  184. package/dist/cjs/adapter/netlify/handler.js +0 -12
  185. package/dist/cjs/adapter/netlify/index.js +0 -5
  186. package/dist/cjs/adapter/netlify/mod.js +0 -5
  187. package/dist/cjs/adapter/service-worker/handler.js +0 -17
  188. package/dist/cjs/adapter/service-worker/index.js +0 -27
  189. package/dist/cjs/adapter/service-worker/types.js +0 -0
  190. package/dist/cjs/adapter/vercel/conninfo.js +0 -8
  191. package/dist/cjs/adapter/vercel/handler.js +0 -10
  192. package/dist/cjs/adapter/vercel/index.js +0 -5
  193. package/dist/cjs/client/client.js +0 -145
  194. package/dist/cjs/client/fetch-result-please.js +0 -67
  195. package/dist/cjs/client/index.js +0 -7
  196. package/dist/cjs/client/types.js +0 -0
  197. package/dist/cjs/client/utils.js +0 -70
  198. package/dist/cjs/compose.js +0 -51
  199. package/dist/cjs/context.js +0 -383
  200. package/dist/cjs/helper/accepts/accepts.js +0 -54
  201. package/dist/cjs/helper/accepts/index.js +0 -3
  202. package/dist/cjs/helper/adapter/index.js +0 -41
  203. package/dist/cjs/helper/conninfo/index.js +0 -0
  204. package/dist/cjs/helper/conninfo/types.js +0 -0
  205. package/dist/cjs/helper/cookie/index.js +0 -89
  206. package/dist/cjs/helper/css/common.js +0 -194
  207. package/dist/cjs/helper/css/index.js +0 -142
  208. package/dist/cjs/helper/dev/index.js +0 -53
  209. package/dist/cjs/helper/factory/index.js +0 -33
  210. package/dist/cjs/helper/html/index.js +0 -34
  211. package/dist/cjs/helper/proxy/index.js +0 -122
  212. package/dist/cjs/helper/route/index.js +0 -128
  213. package/dist/cjs/helper/ssg/index.js +0 -19
  214. package/dist/cjs/helper/ssg/middleware.js +0 -65
  215. package/dist/cjs/helper/ssg/plugins.js +0 -68
  216. package/dist/cjs/helper/ssg/ssg.js +0 -220
  217. package/dist/cjs/helper/ssg/utils.js +0 -70
  218. package/dist/cjs/helper/streaming/index.js +0 -8
  219. package/dist/cjs/helper/streaming/sse.js +0 -59
  220. package/dist/cjs/helper/streaming/stream.js +0 -26
  221. package/dist/cjs/helper/streaming/text.js +0 -12
  222. package/dist/cjs/helper/streaming/utils.js +0 -16
  223. package/dist/cjs/helper/testing/index.js +0 -18
  224. package/dist/cjs/helper/websocket/index.js +0 -56
  225. package/dist/cjs/hono-base.js +0 -351
  226. package/dist/cjs/hono.js +0 -29
  227. package/dist/cjs/http-exception.js +0 -56
  228. package/dist/cjs/index.js +0 -22
  229. package/dist/cjs/jsx/base.js +0 -266
  230. package/dist/cjs/jsx/children.js +0 -19
  231. package/dist/cjs/jsx/components.js +0 -147
  232. package/dist/cjs/jsx/constants.js +0 -15
  233. package/dist/cjs/jsx/context.js +0 -170
  234. package/dist/cjs/jsx/dom/client.js +0 -56
  235. package/dist/cjs/jsx/dom/components.js +0 -26
  236. package/dist/cjs/jsx/dom/context.js +0 -43
  237. package/dist/cjs/jsx/dom/css.js +0 -153
  238. package/dist/cjs/jsx/dom/hooks/index.js +0 -65
  239. package/dist/cjs/jsx/dom/index.js +0 -122
  240. package/dist/cjs/jsx/dom/intrinsic-element/components.js +0 -306
  241. package/dist/cjs/jsx/dom/jsx-dev-runtime.js +0 -17
  242. package/dist/cjs/jsx/dom/jsx-runtime.js +0 -5
  243. package/dist/cjs/jsx/dom/render.js +0 -525
  244. package/dist/cjs/jsx/dom/server.js +0 -44
  245. package/dist/cjs/jsx/dom/utils.js +0 -9
  246. package/dist/cjs/jsx/hooks/index.js +0 -280
  247. package/dist/cjs/jsx/index.js +0 -89
  248. package/dist/cjs/jsx/intrinsic-element/common.js +0 -27
  249. package/dist/cjs/jsx/intrinsic-element/components.js +0 -138
  250. package/dist/cjs/jsx/intrinsic-elements.js +0 -0
  251. package/dist/cjs/jsx/jsx-dev-runtime.js +0 -16
  252. package/dist/cjs/jsx/jsx-runtime.js +0 -37
  253. package/dist/cjs/jsx/streaming.js +0 -135
  254. package/dist/cjs/jsx/types.js +0 -0
  255. package/dist/cjs/jsx/utils.js +0 -116
  256. package/dist/cjs/middleware/basic-auth/index.js +0 -100
  257. package/dist/cjs/middleware/bearer-auth/index.js +0 -97
  258. package/dist/cjs/middleware/body-limit/index.js +0 -69
  259. package/dist/cjs/middleware/cache/index.js +0 -173
  260. package/dist/cjs/middleware/combine/index.js +0 -141
  261. package/dist/cjs/middleware/compress/index.js +0 -82
  262. package/dist/cjs/middleware/context-storage/index.js +0 -55
  263. package/dist/cjs/middleware/cors/index.js +0 -109
  264. package/dist/cjs/middleware/csrf/index.js +0 -106
  265. package/dist/cjs/middleware/etag/digest.js +0 -62
  266. package/dist/cjs/middleware/etag/index.js +0 -79
  267. package/dist/cjs/middleware/ip-restriction/index.js +0 -168
  268. package/dist/cjs/middleware/jsx-renderer/index.js +0 -104
  269. package/dist/cjs/middleware/jwk/index.js +0 -3
  270. package/dist/cjs/middleware/jwk/jwk.js +0 -122
  271. package/dist/cjs/middleware/jwt/index.js +0 -9
  272. package/dist/cjs/middleware/jwt/jwt.js +0 -124
  273. package/dist/cjs/middleware/language/index.js +0 -7
  274. package/dist/cjs/middleware/language/language.js +0 -208
  275. package/dist/cjs/middleware/logger/index.js +0 -51
  276. package/dist/cjs/middleware/method-not-allowed/index.js +0 -84
  277. package/dist/cjs/middleware/method-override/index.js +0 -105
  278. package/dist/cjs/middleware/mount/index.js +0 -71
  279. package/dist/cjs/middleware/powered-by/index.js +0 -25
  280. package/dist/cjs/middleware/pretty-json/index.js +0 -41
  281. package/dist/cjs/middleware/request-id/index.js +0 -3
  282. package/dist/cjs/middleware/request-id/request-id.js +0 -35
  283. package/dist/cjs/middleware/secure-headers/index.js +0 -4
  284. package/dist/cjs/middleware/secure-headers/permissions-policy.js +0 -0
  285. package/dist/cjs/middleware/secure-headers/secure-headers.js +0 -166
  286. package/dist/cjs/middleware/serve-static/index.js +0 -62
  287. package/dist/cjs/middleware/serve-static/path.js +0 -17
  288. package/dist/cjs/middleware/timeout/index.js +0 -42
  289. package/dist/cjs/middleware/timing/index.js +0 -7
  290. package/dist/cjs/middleware/timing/timing.js +0 -189
  291. package/dist/cjs/middleware/trailing-slash/index.js +0 -89
  292. package/dist/cjs/package.json +0 -3
  293. package/dist/cjs/preset/quick.js +0 -19
  294. package/dist/cjs/preset/tiny.js +0 -16
  295. package/dist/cjs/request/constants.js +0 -5
  296. package/dist/cjs/request.js +0 -337
  297. package/dist/cjs/router/linear-router/index.js +0 -3
  298. package/dist/cjs/router/linear-router/router.js +0 -97
  299. package/dist/cjs/router/pattern-router/index.js +0 -3
  300. package/dist/cjs/router/pattern-router/router.js +0 -42
  301. package/dist/cjs/router/reg-exp-router/index.js +0 -7
  302. package/dist/cjs/router/reg-exp-router/matcher.js +0 -21
  303. package/dist/cjs/router/reg-exp-router/node.js +0 -96
  304. package/dist/cjs/router/reg-exp-router/prepared-router.js +0 -97
  305. package/dist/cjs/router/reg-exp-router/router.js +0 -102
  306. package/dist/cjs/router/reg-exp-router/trie.js +0 -74
  307. package/dist/cjs/router/smart-router/index.js +0 -3
  308. package/dist/cjs/router/smart-router/router.js +0 -50
  309. package/dist/cjs/router/trie-router/index.js +0 -3
  310. package/dist/cjs/router/trie-router/node.js +0 -135
  311. package/dist/cjs/router/trie-router/router.js +0 -16
  312. package/dist/cjs/router/utils.js +0 -5
  313. package/dist/cjs/router.js +0 -40
  314. package/dist/cjs/types.js +0 -5
  315. package/dist/cjs/utils/accept.js +0 -194
  316. package/dist/cjs/utils/basic-auth.js +0 -21
  317. package/dist/cjs/utils/body.js +0 -97
  318. package/dist/cjs/utils/buffer.js +0 -55
  319. package/dist/cjs/utils/color.js +0 -39
  320. package/dist/cjs/utils/compress.js +0 -12
  321. package/dist/cjs/utils/concurrent.js +0 -31
  322. package/dist/cjs/utils/constants.js +0 -8
  323. package/dist/cjs/utils/cookie.js +0 -129
  324. package/dist/cjs/utils/crypto.js +0 -38
  325. package/dist/cjs/utils/encode.js +0 -37
  326. package/dist/cjs/utils/filepath.js +0 -27
  327. package/dist/cjs/utils/handler.js +0 -14
  328. package/dist/cjs/utils/headers.js +0 -0
  329. package/dist/cjs/utils/html.js +0 -109
  330. package/dist/cjs/utils/http-status.js +0 -0
  331. package/dist/cjs/utils/ipaddr.js +0 -247
  332. package/dist/cjs/utils/jwt/index.js +0 -15
  333. package/dist/cjs/utils/jwt/jwa.js +0 -25
  334. package/dist/cjs/utils/jwt/jws.js +0 -135
  335. package/dist/cjs/utils/jwt/jwt.js +0 -136
  336. package/dist/cjs/utils/jwt/types.js +0 -124
  337. package/dist/cjs/utils/jwt/utf8.js +0 -11
  338. package/dist/cjs/utils/mime.js +0 -80
  339. package/dist/cjs/utils/stream.js +0 -89
  340. package/dist/cjs/utils/types.js +0 -0
  341. package/dist/cjs/utils/url.js +0 -215
  342. package/dist/cjs/validator/index.js +0 -3
  343. package/dist/cjs/validator/utils.js +0 -0
  344. package/dist/cjs/validator/validator.js +0 -65
  345. package/dist/types/adapter/aws-lambda/conninfo.d.ts +0 -30
  346. package/dist/types/adapter/aws-lambda/handler.d.ts +0 -230
  347. package/dist/types/adapter/aws-lambda/index.d.ts +0 -4
  348. package/dist/types/adapter/aws-lambda/types.d.ts +0 -183
  349. package/dist/types/adapter/bun/conninfo.d.ts +0 -10
  350. package/dist/types/adapter/bun/index.d.ts +0 -6
  351. package/dist/types/adapter/bun/serve-static.d.ts +0 -8
  352. package/dist/types/adapter/bun/server.d.ts +0 -11
  353. package/dist/types/adapter/bun/ssg.d.ts +0 -17
  354. package/dist/types/adapter/bun/websocket.d.ts +0 -54
  355. package/dist/types/adapter/cloudflare-pages/conninfo.d.ts +0 -24
  356. package/dist/types/adapter/cloudflare-pages/handler.d.ts +0 -45
  357. package/dist/types/adapter/cloudflare-pages/index.d.ts +0 -3
  358. package/dist/types/adapter/cloudflare-workers/conninfo.d.ts +0 -7
  359. package/dist/types/adapter/cloudflare-workers/index.d.ts +0 -4
  360. package/dist/types/adapter/cloudflare-workers/serve-static-module.d.ts +0 -7
  361. package/dist/types/adapter/cloudflare-workers/serve-static.d.ts +0 -21
  362. package/dist/types/adapter/cloudflare-workers/utils.d.ts +0 -13
  363. package/dist/types/adapter/cloudflare-workers/websocket.d.ts +0 -7
  364. package/dist/types/adapter/deno/conninfo.d.ts +0 -10
  365. package/dist/types/adapter/deno/deno.d.ts +0 -1
  366. package/dist/types/adapter/deno/index.d.ts +0 -5
  367. package/dist/types/adapter/deno/serve-static.d.ts +0 -8
  368. package/dist/types/adapter/deno/ssg.d.ts +0 -17
  369. package/dist/types/adapter/deno/websocket.d.ts +0 -7
  370. package/dist/types/adapter/lambda-edge/conninfo.d.ts +0 -7
  371. package/dist/types/adapter/lambda-edge/handler.d.ts +0 -113
  372. package/dist/types/adapter/lambda-edge/index.d.ts +0 -3
  373. package/dist/types/adapter/netlify/conninfo.d.ts +0 -24
  374. package/dist/types/adapter/netlify/handler.d.ts +0 -7
  375. package/dist/types/adapter/netlify/index.d.ts +0 -3
  376. package/dist/types/adapter/netlify/mod.d.ts +0 -3
  377. package/dist/types/adapter/service-worker/handler.d.ts +0 -18
  378. package/dist/types/adapter/service-worker/index.d.ts +0 -26
  379. package/dist/types/adapter/service-worker/types.d.ts +0 -17
  380. package/dist/types/adapter/vercel/conninfo.d.ts +0 -7
  381. package/dist/types/adapter/vercel/handler.d.ts +0 -7
  382. package/dist/types/adapter/vercel/index.d.ts +0 -3
  383. package/dist/types/package.json +0 -3
  384. package/dist/types/utils/buffer.d.ts +0 -19
  385. package/dist/types/utils/color.d.ts +0 -23
  386. package/dist/{types/client → client}/client.d.ts +0 -0
  387. package/dist/{types/client → client}/fetch-result-please.d.ts +0 -0
  388. package/dist/{types/client → client}/index.d.ts +0 -0
  389. package/dist/{types/client → client}/types.d.ts +1 -1
  390. /package/dist/{types/client → client}/utils.d.ts +0 -0
  391. /package/dist/{types/helper → helper}/accepts/accepts.d.ts +0 -0
  392. /package/dist/{types/helper → helper}/accepts/index.d.ts +0 -0
  393. /package/dist/{types/helper → helper}/adapter/index.d.ts +0 -0
  394. /package/dist/{types/helper → helper}/conninfo/index.d.ts +0 -0
  395. /package/dist/{types/helper → helper}/conninfo/types.d.ts +0 -0
  396. /package/dist/{types/helper → helper}/cookie/index.d.ts +0 -0
  397. /package/dist/{types/helper → helper}/css/common.d.ts +0 -0
  398. /package/dist/{types/helper → helper}/css/index.d.ts +0 -0
  399. /package/dist/{types/helper → helper}/html/index.d.ts +0 -0
  400. /package/dist/{types/helper → helper}/proxy/index.d.ts +0 -0
  401. /package/dist/{types/helper → helper}/route/index.d.ts +0 -0
  402. /package/dist/{types/helper → helper}/ssg/index.d.ts +0 -0
  403. /package/dist/{types/helper → helper}/ssg/plugins.d.ts +0 -0
  404. /package/dist/{types/helper → helper}/ssg/utils.d.ts +0 -0
  405. /package/dist/{types/helper → helper}/streaming/index.d.ts +0 -0
  406. /package/dist/{types/helper → helper}/streaming/sse.d.ts +0 -0
  407. /package/dist/{types/helper → helper}/streaming/stream.d.ts +0 -0
  408. /package/dist/{types/helper → helper}/streaming/text.d.ts +0 -0
  409. /package/dist/{types/helper → helper}/streaming/utils.d.ts +0 -0
  410. /package/dist/{types/helper → helper}/testing/index.d.ts +0 -0
  411. /package/dist/{types/helper → helper}/websocket/index.d.ts +0 -0
  412. /package/dist/{types/http-exception.d.ts → http-exception.d.ts} +0 -0
  413. /package/dist/{types/index.d.ts → index.d.ts} +0 -0
  414. /package/dist/{types/jsx → jsx}/base.d.ts +0 -0
  415. /package/dist/{types/jsx → jsx}/children.d.ts +0 -0
  416. /package/dist/{types/jsx → jsx}/components.d.ts +0 -0
  417. /package/dist/{types/jsx → jsx}/constants.d.ts +0 -0
  418. /package/dist/{types/jsx → jsx}/context.d.ts +0 -0
  419. /package/dist/{types/jsx → jsx}/dom/client.d.ts +0 -0
  420. /package/dist/{types/jsx → jsx}/dom/components.d.ts +0 -0
  421. /package/dist/{types/jsx → jsx}/dom/context.d.ts +0 -0
  422. /package/dist/{types/jsx → jsx}/dom/css.d.ts +0 -0
  423. /package/dist/{types/jsx → jsx}/dom/hooks/index.d.ts +0 -0
  424. /package/dist/{types/jsx → jsx}/dom/index.d.ts +0 -0
  425. /package/dist/{types/jsx → jsx}/dom/intrinsic-element/components.d.ts +0 -0
  426. /package/dist/{types/jsx → jsx}/dom/jsx-dev-runtime.d.ts +0 -0
  427. /package/dist/{types/jsx → jsx}/dom/jsx-runtime.d.ts +0 -0
  428. /package/dist/{types/jsx → jsx}/dom/render.d.ts +0 -0
  429. /package/dist/{types/jsx → jsx}/dom/server.d.ts +0 -0
  430. /package/dist/{types/jsx → jsx}/dom/utils.d.ts +0 -0
  431. /package/dist/{types/jsx → jsx}/hooks/index.d.ts +0 -0
  432. /package/dist/{types/jsx → jsx}/index.d.ts +0 -0
  433. /package/dist/{types/jsx → jsx}/intrinsic-element/common.d.ts +0 -0
  434. /package/dist/{types/jsx → jsx}/intrinsic-element/components.d.ts +0 -0
  435. /package/dist/{types/jsx → jsx}/intrinsic-elements.d.ts +0 -0
  436. /package/dist/{types/jsx → jsx}/jsx-dev-runtime.d.ts +0 -0
  437. /package/dist/{types/jsx → jsx}/jsx-runtime.d.ts +0 -0
  438. /package/dist/{types/jsx → jsx}/streaming.d.ts +0 -0
  439. /package/dist/{types/jsx → jsx}/types.d.ts +0 -0
  440. /package/dist/{types/jsx → jsx}/utils.d.ts +0 -0
  441. /package/dist/{types/middleware → middleware}/body-limit/index.d.ts +0 -0
  442. /package/dist/{types/middleware → middleware}/cache/index.d.ts +0 -0
  443. /package/dist/{types/middleware → middleware}/combine/index.d.ts +0 -0
  444. /package/dist/{types/middleware → middleware}/compress/index.d.ts +0 -0
  445. /package/dist/{types/middleware → middleware}/context-storage/index.d.ts +0 -0
  446. /package/dist/{types/middleware → middleware}/cors/index.d.ts +0 -0
  447. /package/dist/{types/middleware → middleware}/csrf/index.d.ts +0 -0
  448. /package/dist/{types/middleware → middleware}/etag/digest.d.ts +0 -0
  449. /package/dist/{types/middleware → middleware}/etag/index.d.ts +0 -0
  450. /package/dist/{types/middleware → middleware}/ip-restriction/index.d.ts +0 -0
  451. /package/dist/{types/middleware → middleware}/jsx-renderer/index.d.ts +0 -0
  452. /package/dist/{types/middleware → middleware}/jwk/index.d.ts +0 -0
  453. /package/dist/{types/middleware → middleware}/jwk/jwk.d.ts +0 -0
  454. /package/dist/{types/middleware → middleware}/jwt/index.d.ts +0 -0
  455. /package/dist/{types/middleware → middleware}/jwt/jwt.d.ts +0 -0
  456. /package/dist/{types/middleware → middleware}/language/index.d.ts +0 -0
  457. /package/dist/{types/middleware → middleware}/language/language.d.ts +0 -0
  458. /package/dist/{types/middleware → middleware}/logger/index.d.ts +0 -0
  459. /package/dist/{types/middleware → middleware}/method-not-allowed/index.d.ts +0 -0
  460. /package/dist/{types/middleware → middleware}/method-override/index.d.ts +0 -0
  461. /package/dist/{types/middleware → middleware}/mount/index.d.ts +0 -0
  462. /package/dist/{types/middleware → middleware}/powered-by/index.d.ts +0 -0
  463. /package/dist/{types/middleware → middleware}/pretty-json/index.d.ts +0 -0
  464. /package/dist/{types/middleware → middleware}/request-id/index.d.ts +0 -0
  465. /package/dist/{types/middleware → middleware}/request-id/request-id.d.ts +0 -0
  466. /package/dist/{types/middleware → middleware}/secure-headers/index.d.ts +0 -0
  467. /package/dist/{types/middleware → middleware}/secure-headers/permissions-policy.d.ts +0 -0
  468. /package/dist/{types/middleware → middleware}/secure-headers/secure-headers.d.ts +0 -0
  469. /package/dist/{types/middleware → middleware}/serve-static/path.d.ts +0 -0
  470. /package/dist/{types/middleware → middleware}/timeout/index.d.ts +0 -0
  471. /package/dist/{types/middleware → middleware}/timing/index.d.ts +0 -0
  472. /package/dist/{types/middleware → middleware}/timing/timing.d.ts +0 -0
  473. /package/dist/{types/middleware → middleware}/trailing-slash/index.d.ts +0 -0
  474. /package/dist/{types/request → request}/constants.d.ts +0 -0
  475. /package/dist/{types/router → router}/linear-router/index.d.ts +0 -0
  476. /package/dist/{types/router → router}/linear-router/router.d.ts +0 -0
  477. /package/dist/{types/router → router}/pattern-router/index.d.ts +0 -0
  478. /package/dist/{types/router → router}/pattern-router/router.d.ts +0 -0
  479. /package/dist/{types/router → router}/reg-exp-router/index.d.ts +0 -0
  480. /package/dist/{types/router → router}/reg-exp-router/matcher.d.ts +0 -0
  481. /package/dist/{types/router → router}/reg-exp-router/node.d.ts +0 -0
  482. /package/dist/{types/router → router}/reg-exp-router/prepared-router.d.ts +0 -0
  483. /package/dist/{types/router → router}/reg-exp-router/router.d.ts +0 -0
  484. /package/dist/{types/router → router}/reg-exp-router/trie.d.ts +0 -0
  485. /package/dist/{types/router → router}/smart-router/index.d.ts +0 -0
  486. /package/dist/{types/router → router}/smart-router/router.d.ts +0 -0
  487. /package/dist/{types/router → router}/trie-router/index.d.ts +0 -0
  488. /package/dist/{types/router → router}/trie-router/node.d.ts +0 -0
  489. /package/dist/{types/router → router}/trie-router/router.d.ts +0 -0
  490. /package/dist/{types/router → router}/utils.d.ts +0 -0
  491. /package/dist/{types/router.d.ts → router.d.ts} +0 -0
  492. /package/dist/{types/utils → utils}/accept.d.ts +0 -0
  493. /package/dist/{types/utils → utils}/basic-auth.d.ts +0 -0
  494. /package/dist/{types/utils → utils}/body.d.ts +0 -0
  495. /package/dist/{types/utils → utils}/compress.d.ts +0 -0
  496. /package/dist/{types/utils → utils}/concurrent.d.ts +0 -0
  497. /package/dist/{types/utils → utils}/constants.d.ts +0 -0
  498. /package/dist/{types/utils → utils}/cookie.d.ts +0 -0
  499. /package/dist/{types/utils → utils}/crypto.d.ts +0 -0
  500. /package/dist/{types/utils → utils}/encode.d.ts +0 -0
  501. /package/dist/{types/utils → utils}/filepath.d.ts +0 -0
  502. /package/dist/{types/utils → utils}/handler.d.ts +0 -0
  503. /package/dist/{types/utils → utils}/headers.d.ts +0 -0
  504. /package/dist/{types/utils → utils}/html.d.ts +0 -0
  505. /package/dist/{types/utils → utils}/ipaddr.d.ts +0 -0
  506. /package/dist/{types/utils → utils}/jwt/index.d.ts +0 -0
  507. /package/dist/{types/utils → utils}/jwt/jwa.d.ts +0 -0
  508. /package/dist/{types/utils → utils}/jwt/jws.d.ts +0 -0
  509. /package/dist/{types/utils → utils}/jwt/jwt.d.ts +0 -0
  510. /package/dist/{types/utils → utils}/jwt/types.d.ts +0 -0
  511. /package/dist/{types/utils → utils}/jwt/utf8.d.ts +0 -0
  512. /package/dist/{types/utils → utils}/mime.d.ts +0 -0
  513. /package/dist/{types/utils → utils}/stream.d.ts +0 -0
  514. /package/dist/{types/utils → utils}/types.d.ts +0 -0
  515. /package/dist/{types/validator → validator}/index.d.ts +0 -0
  516. /package/dist/{types/validator → validator}/utils.d.ts +0 -0
@@ -1,136 +0,0 @@
1
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_utils_encode = require("../encode.js");
3
- const require_utils_jwt_jwa = require("./jwa.js");
4
- const require_utils_jwt_types = require("./types.js");
5
- const require_utils_jwt_utf8 = require("./utf8.js");
6
- const require_utils_jwt_jws = require("./jws.js");
7
- //#region src/utils/jwt/jwt.ts
8
- /**
9
- * @module
10
- * JSON Web Token (JWT)
11
- * https://datatracker.ietf.org/doc/html/rfc7519
12
- */
13
- const encodeJwtPart = (part) => require_utils_encode.encodeBase64Url(require_utils_jwt_utf8.utf8Encoder.encode(JSON.stringify(part)).buffer).replace(/=/g, "");
14
- const encodeSignaturePart = (buf) => require_utils_encode.encodeBase64Url(buf).replace(/=/g, "");
15
- const decodeJwtPart = (part) => JSON.parse(require_utils_jwt_utf8.utf8Decoder.decode(require_utils_encode.decodeBase64Url(part)));
16
- function isTokenHeader(obj) {
17
- if (typeof obj === "object" && obj !== null) {
18
- const objWithAlg = obj;
19
- return "alg" in objWithAlg && Object.values(require_utils_jwt_jwa.AlgorithmTypes).includes(objWithAlg.alg) && (!("typ" in objWithAlg) || objWithAlg.typ === "JWT");
20
- }
21
- return false;
22
- }
23
- const sign = async (payload, privateKey, alg = "HS256") => {
24
- const encodedPayload = encodeJwtPart(payload);
25
- let encodedHeader;
26
- if (typeof privateKey === "object" && "alg" in privateKey) {
27
- alg = privateKey.alg;
28
- encodedHeader = encodeJwtPart({
29
- alg,
30
- typ: "JWT",
31
- kid: privateKey.kid
32
- });
33
- } else encodedHeader = encodeJwtPart({
34
- alg,
35
- typ: "JWT"
36
- });
37
- const partialToken = `${encodedHeader}.${encodedPayload}`;
38
- const signaturePart = await require_utils_jwt_jws.signing(privateKey, alg, require_utils_jwt_utf8.utf8Encoder.encode(partialToken));
39
- return `${partialToken}.${encodeSignaturePart(signaturePart)}`;
40
- };
41
- const verify = async (token, publicKey, algOrOptions) => {
42
- if (!algOrOptions) throw new require_utils_jwt_types.JwtAlgorithmRequired();
43
- const { alg, iss, nbf = true, exp = true, iat = true, aud } = typeof algOrOptions === "string" ? { alg: algOrOptions } : algOrOptions;
44
- if (!alg) throw new require_utils_jwt_types.JwtAlgorithmRequired();
45
- const tokenParts = token.split(".");
46
- if (tokenParts.length !== 3) throw new require_utils_jwt_types.JwtTokenInvalid(token);
47
- const { header, payload } = decode(token);
48
- if (!isTokenHeader(header)) throw new require_utils_jwt_types.JwtHeaderInvalid(header);
49
- if (header.alg !== alg) throw new require_utils_jwt_types.JwtAlgorithmMismatch(alg, header.alg);
50
- const now = Math.floor(Date.now() / 1e3);
51
- if (nbf && payload.nbf !== void 0) {
52
- if (typeof payload.nbf !== "number" || !Number.isFinite(payload.nbf) || payload.nbf > now) throw new require_utils_jwt_types.JwtTokenNotBefore(token);
53
- }
54
- if (exp && payload.exp !== void 0) {
55
- if (typeof payload.exp !== "number" || !Number.isFinite(payload.exp) || payload.exp <= now) throw new require_utils_jwt_types.JwtTokenExpired(token);
56
- }
57
- if (iat && payload.iat !== void 0) {
58
- if (typeof payload.iat !== "number" || !Number.isFinite(payload.iat) || now < payload.iat) throw new require_utils_jwt_types.JwtTokenIssuedAt(now, payload.iat);
59
- }
60
- if (iss) {
61
- if (!payload.iss) throw new require_utils_jwt_types.JwtTokenIssuer(iss, null);
62
- if (typeof iss === "string" && payload.iss !== iss) throw new require_utils_jwt_types.JwtTokenIssuer(iss, payload.iss);
63
- if (iss instanceof RegExp && !iss.test(payload.iss)) throw new require_utils_jwt_types.JwtTokenIssuer(iss, payload.iss);
64
- }
65
- if (aud) {
66
- if (!payload.aud) throw new require_utils_jwt_types.JwtPayloadRequiresAud(payload);
67
- if (!(Array.isArray(payload.aud) ? payload.aud : [payload.aud]).some((payloadAud) => aud instanceof RegExp ? aud.test(payloadAud) : typeof aud === "string" ? payloadAud === aud : Array.isArray(aud) && aud.includes(payloadAud))) throw new require_utils_jwt_types.JwtTokenAudience(aud, payload.aud);
68
- }
69
- const headerPayload = token.substring(0, token.lastIndexOf("."));
70
- let signature;
71
- try {
72
- signature = require_utils_encode.decodeBase64Url(tokenParts[2]);
73
- } catch {
74
- throw new require_utils_jwt_types.JwtTokenInvalid(token);
75
- }
76
- if (!await require_utils_jwt_jws.verifying(publicKey, alg, signature, require_utils_jwt_utf8.utf8Encoder.encode(headerPayload))) throw new require_utils_jwt_types.JwtTokenSignatureMismatched(token);
77
- return payload;
78
- };
79
- const symmetricAlgorithms = [
80
- "HS256",
81
- "HS384",
82
- "HS512"
83
- ];
84
- const verifyWithJwks = async (token, options, init) => {
85
- const verifyOpts = options.verification || {};
86
- const header = decodeHeader(token);
87
- if (!isTokenHeader(header)) throw new require_utils_jwt_types.JwtHeaderInvalid(header);
88
- if (!header.kid) throw new require_utils_jwt_types.JwtHeaderRequiresKid(header);
89
- if (symmetricAlgorithms.includes(header.alg)) throw new require_utils_jwt_types.JwtSymmetricAlgorithmNotAllowed(header.alg);
90
- if (!options.allowedAlgorithms.includes(header.alg)) throw new require_utils_jwt_types.JwtAlgorithmNotAllowed(header.alg, options.allowedAlgorithms);
91
- let verifyKeys = options.keys ? [...options.keys] : void 0;
92
- if (options.jwks_uri) {
93
- const response = await fetch(options.jwks_uri, init);
94
- if (!response.ok) throw new Error(`failed to fetch JWKS from ${options.jwks_uri}`);
95
- const data = await response.json();
96
- if (!data.keys) throw new Error("invalid JWKS response. \"keys\" field is missing");
97
- if (!Array.isArray(data.keys)) throw new Error("invalid JWKS response. \"keys\" field is not an array");
98
- verifyKeys ??= [];
99
- verifyKeys.push(...data.keys);
100
- } else if (!verifyKeys) throw new Error("verifyWithJwks requires options for either \"keys\" or \"jwks_uri\" or both");
101
- const matchingKey = verifyKeys.find((key) => key.kid === header.kid);
102
- if (!matchingKey) throw new require_utils_jwt_types.JwtTokenInvalid(token);
103
- if (matchingKey.alg && matchingKey.alg !== header.alg) throw new require_utils_jwt_types.JwtAlgorithmMismatch(matchingKey.alg, header.alg);
104
- return await verify(token, matchingKey, {
105
- alg: header.alg,
106
- ...verifyOpts
107
- });
108
- };
109
- const decode = (token) => {
110
- const parts = token.split(".");
111
- if (parts.length !== 3) throw new require_utils_jwt_types.JwtTokenInvalid(token);
112
- try {
113
- return {
114
- header: decodeJwtPart(parts[0]),
115
- payload: decodeJwtPart(parts[1])
116
- };
117
- } catch {
118
- throw new require_utils_jwt_types.JwtTokenInvalid(token);
119
- }
120
- };
121
- const decodeHeader = (token) => {
122
- const parts = token.split(".");
123
- if (parts.length !== 3) throw new require_utils_jwt_types.JwtTokenInvalid(token);
124
- try {
125
- return decodeJwtPart(parts[0]);
126
- } catch {
127
- throw new require_utils_jwt_types.JwtTokenInvalid(token);
128
- }
129
- };
130
- //#endregion
131
- exports.decode = decode;
132
- exports.decodeHeader = decodeHeader;
133
- exports.isTokenHeader = isTokenHeader;
134
- exports.sign = sign;
135
- exports.verify = verify;
136
- exports.verifyWithJwks = verifyWithJwks;
@@ -1,124 +0,0 @@
1
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- //#region src/utils/jwt/types.ts
3
- /**
4
- * @module
5
- * Type definitions for JWT utilities.
6
- */
7
- var JwtAlgorithmNotImplemented = class extends Error {
8
- constructor(alg) {
9
- super(`${alg} is not an implemented algorithm`);
10
- this.name = "JwtAlgorithmNotImplemented";
11
- }
12
- };
13
- var JwtAlgorithmRequired = class extends Error {
14
- constructor() {
15
- super("JWT verification requires \"alg\" option to be specified");
16
- this.name = "JwtAlgorithmRequired";
17
- }
18
- };
19
- var JwtAlgorithmMismatch = class extends Error {
20
- constructor(expected, actual) {
21
- super(`JWT algorithm mismatch: expected "${expected}", got "${actual}"`);
22
- this.name = "JwtAlgorithmMismatch";
23
- }
24
- };
25
- var JwtTokenInvalid = class extends Error {
26
- constructor(token) {
27
- super(`invalid JWT token: ${token}`);
28
- this.name = "JwtTokenInvalid";
29
- }
30
- };
31
- var JwtTokenNotBefore = class extends Error {
32
- constructor(token) {
33
- super(`token (${token}) is being used before it's valid`);
34
- this.name = "JwtTokenNotBefore";
35
- }
36
- };
37
- var JwtTokenExpired = class extends Error {
38
- constructor(token) {
39
- super(`token (${token}) expired`);
40
- this.name = "JwtTokenExpired";
41
- }
42
- };
43
- var JwtTokenIssuedAt = class extends Error {
44
- constructor(currentTimestamp, iat) {
45
- super(`Invalid "iat" claim, must be a valid number lower than "${currentTimestamp}" (iat: "${iat}")`);
46
- this.name = "JwtTokenIssuedAt";
47
- }
48
- };
49
- var JwtTokenIssuer = class extends Error {
50
- constructor(expected, iss) {
51
- super(`expected issuer "${expected}", got ${iss ? `"${iss}"` : "none"} `);
52
- this.name = "JwtTokenIssuer";
53
- }
54
- };
55
- var JwtHeaderInvalid = class extends Error {
56
- constructor(header) {
57
- super(`jwt header is invalid: ${JSON.stringify(header)}`);
58
- this.name = "JwtHeaderInvalid";
59
- }
60
- };
61
- var JwtHeaderRequiresKid = class extends Error {
62
- constructor(header) {
63
- super(`required "kid" in jwt header: ${JSON.stringify(header)}`);
64
- this.name = "JwtHeaderRequiresKid";
65
- }
66
- };
67
- var JwtSymmetricAlgorithmNotAllowed = class extends Error {
68
- constructor(alg) {
69
- super(`symmetric algorithm "${alg}" is not allowed for JWK verification`);
70
- this.name = "JwtSymmetricAlgorithmNotAllowed";
71
- }
72
- };
73
- var JwtAlgorithmNotAllowed = class extends Error {
74
- constructor(alg, allowedAlgorithms) {
75
- super(`algorithm "${alg}" is not in the allowed list: [${allowedAlgorithms.join(", ")}]`);
76
- this.name = "JwtAlgorithmNotAllowed";
77
- }
78
- };
79
- var JwtTokenSignatureMismatched = class extends Error {
80
- constructor(token) {
81
- super(`token(${token}) signature mismatched`);
82
- this.name = "JwtTokenSignatureMismatched";
83
- }
84
- };
85
- var JwtPayloadRequiresAud = class extends Error {
86
- constructor(payload) {
87
- super(`required "aud" in jwt payload: ${JSON.stringify(payload)}`);
88
- this.name = "JwtPayloadRequiresAud";
89
- }
90
- };
91
- var JwtTokenAudience = class extends Error {
92
- constructor(expected, aud) {
93
- super(`expected audience "${Array.isArray(expected) ? expected.join(", ") : expected}", got "${aud}"`);
94
- this.name = "JwtTokenAudience";
95
- }
96
- };
97
- let CryptoKeyUsage = /* @__PURE__ */ function(CryptoKeyUsage) {
98
- CryptoKeyUsage["Encrypt"] = "encrypt";
99
- CryptoKeyUsage["Decrypt"] = "decrypt";
100
- CryptoKeyUsage["Sign"] = "sign";
101
- CryptoKeyUsage["Verify"] = "verify";
102
- CryptoKeyUsage["DeriveKey"] = "deriveKey";
103
- CryptoKeyUsage["DeriveBits"] = "deriveBits";
104
- CryptoKeyUsage["WrapKey"] = "wrapKey";
105
- CryptoKeyUsage["UnwrapKey"] = "unwrapKey";
106
- return CryptoKeyUsage;
107
- }({});
108
- //#endregion
109
- exports.CryptoKeyUsage = CryptoKeyUsage;
110
- exports.JwtAlgorithmMismatch = JwtAlgorithmMismatch;
111
- exports.JwtAlgorithmNotAllowed = JwtAlgorithmNotAllowed;
112
- exports.JwtAlgorithmNotImplemented = JwtAlgorithmNotImplemented;
113
- exports.JwtAlgorithmRequired = JwtAlgorithmRequired;
114
- exports.JwtHeaderInvalid = JwtHeaderInvalid;
115
- exports.JwtHeaderRequiresKid = JwtHeaderRequiresKid;
116
- exports.JwtPayloadRequiresAud = JwtPayloadRequiresAud;
117
- exports.JwtSymmetricAlgorithmNotAllowed = JwtSymmetricAlgorithmNotAllowed;
118
- exports.JwtTokenAudience = JwtTokenAudience;
119
- exports.JwtTokenExpired = JwtTokenExpired;
120
- exports.JwtTokenInvalid = JwtTokenInvalid;
121
- exports.JwtTokenIssuedAt = JwtTokenIssuedAt;
122
- exports.JwtTokenIssuer = JwtTokenIssuer;
123
- exports.JwtTokenNotBefore = JwtTokenNotBefore;
124
- exports.JwtTokenSignatureMismatched = JwtTokenSignatureMismatched;
@@ -1,11 +0,0 @@
1
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- //#region src/utils/jwt/utf8.ts
3
- /**
4
- * @module
5
- * Functions for encoding/decoding UTF8.
6
- */
7
- const utf8Encoder = new TextEncoder();
8
- const utf8Decoder = new TextDecoder();
9
- //#endregion
10
- exports.utf8Decoder = utf8Decoder;
11
- exports.utf8Encoder = utf8Encoder;
@@ -1,80 +0,0 @@
1
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- //#region src/utils/mime.ts
3
- /**
4
- * @module
5
- * MIME utility.
6
- */
7
- const getMimeType = (filename, mimes = baseMimes) => {
8
- const match = filename.match(/\.([a-zA-Z0-9]+?)$/);
9
- if (!match) return;
10
- return mimes[match[1].toLowerCase()];
11
- };
12
- const getExtension = (mimeType) => {
13
- const baseType = mimeType.split(";", 1)[0].trim();
14
- for (const ext in baseMimes) {
15
- const stored = baseMimes[ext];
16
- if (stored === mimeType || stored.split(";", 1)[0].trim() === baseType) return ext;
17
- }
18
- };
19
- const baseMimes = {
20
- aac: "audio/aac",
21
- avi: "video/x-msvideo",
22
- avif: "image/avif",
23
- av1: "video/av1",
24
- bin: "application/octet-stream",
25
- bmp: "image/bmp",
26
- css: "text/css; charset=utf-8",
27
- csv: "text/csv; charset=utf-8",
28
- eot: "application/vnd.ms-fontobject",
29
- epub: "application/epub+zip",
30
- gif: "image/gif",
31
- gz: "application/gzip",
32
- htm: "text/html; charset=utf-8",
33
- html: "text/html; charset=utf-8",
34
- ico: "image/x-icon",
35
- ics: "text/calendar; charset=utf-8",
36
- jpeg: "image/jpeg",
37
- jpg: "image/jpeg",
38
- js: "text/javascript; charset=utf-8",
39
- json: "application/json",
40
- jsonld: "application/ld+json",
41
- map: "application/json",
42
- mid: "audio/x-midi",
43
- midi: "audio/x-midi",
44
- mjs: "text/javascript; charset=utf-8",
45
- mp3: "audio/mpeg",
46
- mp4: "video/mp4",
47
- mpeg: "video/mpeg",
48
- oga: "audio/ogg",
49
- ogv: "video/ogg",
50
- ogx: "application/ogg",
51
- opus: "audio/opus",
52
- otf: "font/otf",
53
- pdf: "application/pdf",
54
- png: "image/png",
55
- rtf: "application/rtf",
56
- svg: "image/svg+xml; charset=utf-8",
57
- tif: "image/tiff",
58
- tiff: "image/tiff",
59
- ts: "video/mp2t",
60
- ttf: "font/ttf",
61
- txt: "text/plain; charset=utf-8",
62
- wasm: "application/wasm",
63
- webm: "video/webm",
64
- weba: "audio/webm",
65
- webmanifest: "application/manifest+json",
66
- webp: "image/webp",
67
- woff: "font/woff",
68
- woff2: "font/woff2",
69
- xhtml: "application/xhtml+xml; charset=utf-8",
70
- xml: "application/xml; charset=utf-8",
71
- zip: "application/zip",
72
- "3gp": "video/3gpp",
73
- "3g2": "video/3gpp2",
74
- gltf: "model/gltf+json",
75
- glb: "model/gltf-binary"
76
- };
77
- //#endregion
78
- exports.getExtension = getExtension;
79
- exports.getMimeType = getMimeType;
80
- exports.mimes = baseMimes;
@@ -1,89 +0,0 @@
1
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- //#region src/utils/stream.ts
3
- /**
4
- * @module
5
- * Stream utility.
6
- */
7
- var StreamingApi = class {
8
- writer;
9
- encoder;
10
- writable;
11
- abortSubscribers = [];
12
- responseReadable;
13
- /**
14
- * Whether the stream has been aborted.
15
- */
16
- aborted = false;
17
- /**
18
- * Whether the stream has been closed normally.
19
- */
20
- closed = false;
21
- constructor(writable, _readable) {
22
- this.writable = writable;
23
- this.writer = writable.getWriter();
24
- this.encoder = new TextEncoder();
25
- const reader = _readable.getReader();
26
- this.abortSubscribers.push(async () => {
27
- await reader.cancel();
28
- });
29
- this.responseReadable = new ReadableStream({
30
- async pull(controller) {
31
- const { done, value } = await reader.read();
32
- done ? controller.close() : controller.enqueue(value);
33
- },
34
- cancel: () => {
35
- if (!this.closed) this.abort();
36
- }
37
- });
38
- }
39
- async write(input) {
40
- try {
41
- if (typeof input === "string") input = this.encoder.encode(input);
42
- await this.writer.write(input);
43
- } catch {}
44
- return this;
45
- }
46
- async writeln(input) {
47
- await this.write(input + "\n");
48
- return this;
49
- }
50
- sleep(ms) {
51
- return new Promise((res) => setTimeout(res, ms));
52
- }
53
- async close() {
54
- this.closed = true;
55
- try {
56
- await this.writer.close();
57
- } catch {}
58
- }
59
- async pipe(body) {
60
- this.writer.releaseLock();
61
- try {
62
- await body.pipeTo(this.writable, {
63
- preventClose: true,
64
- preventAbort: true
65
- });
66
- } finally {
67
- this.writer = this.writable.getWriter();
68
- }
69
- }
70
- onAbort(listener) {
71
- this.abortSubscribers.push(listener);
72
- }
73
- /**
74
- * Abort the stream.
75
- * You can call this method when stream is aborted by external event.
76
- */
77
- abort() {
78
- if (!this.aborted) {
79
- this.aborted = true;
80
- this.abortSubscribers.forEach((subscriber) => {
81
- try {
82
- Promise.resolve(subscriber()).catch(() => {});
83
- } catch {}
84
- });
85
- }
86
- }
87
- };
88
- //#endregion
89
- exports.StreamingApi = StreamingApi;
File without changes
@@ -1,215 +0,0 @@
1
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- //#region src/utils/url.ts
3
- const splitPath = (path) => {
4
- const paths = path.split("/");
5
- if (paths[0] === "") paths.shift();
6
- return paths;
7
- };
8
- const splitRoutingPath = (routePath) => {
9
- const { groups, path } = extractGroupsFromPath(routePath);
10
- const paths = splitPath(path);
11
- return replaceGroupMarks(paths, groups);
12
- };
13
- const extractGroupsFromPath = (path) => {
14
- const groups = [];
15
- path = path.replace(/\{[^}]+\}/g, (match, index) => {
16
- const mark = `@${index}`;
17
- groups.push([mark, match]);
18
- return mark;
19
- });
20
- return {
21
- groups,
22
- path
23
- };
24
- };
25
- const replaceGroupMarks = (paths, groups) => {
26
- for (let i = groups.length - 1; i >= 0; i--) {
27
- const [mark] = groups[i];
28
- for (let j = paths.length - 1; j >= 0; j--) if (paths[j].includes(mark)) {
29
- paths[j] = paths[j].replace(mark, groups[i][1]);
30
- break;
31
- }
32
- }
33
- return paths;
34
- };
35
- const patternCache = {};
36
- const getPattern = (label, next) => {
37
- if (label === "*") return "*";
38
- const match = label.match(/^\:([^\{\}]+)(?:\{(.+)\})?$/);
39
- if (match) {
40
- const cacheKey = `${label}#${next}`;
41
- if (!patternCache[cacheKey]) {
42
- if (match[2]) patternCache[cacheKey] = next && next[0] !== ":" && next[0] !== "*" ? [
43
- cacheKey,
44
- match[1],
45
- new RegExp(`^${match[2]}(?=/${next})`)
46
- ] : [
47
- label,
48
- match[1],
49
- new RegExp(`^${match[2]}$`)
50
- ];
51
- else patternCache[cacheKey] = [
52
- label,
53
- match[1],
54
- true
55
- ];
56
- }
57
- return patternCache[cacheKey];
58
- }
59
- return null;
60
- };
61
- const tryDecode = (str, decoder) => {
62
- try {
63
- return decoder(str);
64
- } catch {
65
- return str.replace(/(?:%[0-9A-Fa-f]{2})+/g, (match) => {
66
- try {
67
- return decoder(match);
68
- } catch {
69
- return match;
70
- }
71
- });
72
- }
73
- };
74
- /**
75
- * Try to apply decodeURI() to given string.
76
- * If it fails, skip invalid percent encoding or invalid UTF-8 sequences, and apply decodeURI() to the rest as much as possible.
77
- * @param str The string to decode.
78
- * @returns The decoded string that sometimes contains undecodable percent encoding.
79
- * @example
80
- * tryDecodeURI('Hello%20World') // 'Hello World'
81
- * tryDecodeURI('Hello%20World/%A4%A2') // 'Hello World/%A4%A2'
82
- */
83
- const tryDecodeURI = (str) => tryDecode(str, decodeURI);
84
- const getPath = (request) => {
85
- const url = request.url;
86
- const start = url.indexOf("/", url.indexOf(":") + 4);
87
- let i = start;
88
- for (; i < url.length; i++) {
89
- const charCode = url.charCodeAt(i);
90
- if (charCode === 37) {
91
- const queryIndex = url.indexOf("?", i);
92
- const hashIndex = url.indexOf("#", i);
93
- const end = queryIndex === -1 ? hashIndex === -1 ? void 0 : hashIndex : hashIndex === -1 ? queryIndex : Math.min(queryIndex, hashIndex);
94
- const path = url.slice(start, end);
95
- return tryDecodeURI(path.includes("%25") ? path.replace(/%25/g, "%2525") : path);
96
- } else if (charCode === 63 || charCode === 35) break;
97
- }
98
- return url.slice(start, i);
99
- };
100
- /**
101
- * @deprecated
102
- * Use the `URL` API instead.
103
- */
104
- const getQueryStrings = (url) => {
105
- const queryIndex = url.indexOf("?", 8);
106
- if (queryIndex === -1) return "";
107
- const hashIndex = url.indexOf("#", 8);
108
- return hashIndex === -1 ? url.slice(queryIndex) : queryIndex < hashIndex ? url.slice(queryIndex, hashIndex) : "";
109
- };
110
- const getPathNoStrict = (request) => {
111
- const result = getPath(request);
112
- return result.length > 1 && result.at(-1) === "/" ? result.slice(0, -1) : result;
113
- };
114
- /**
115
- * Merge paths.
116
- * @param {string[]} ...paths - The paths to merge.
117
- * @returns {string} The merged path.
118
- * @example
119
- * mergePath('/api', '/users') // '/api/users'
120
- * mergePath('/api/', '/users') // '/api/users'
121
- * mergePath('/api', '/') // '/api'
122
- * mergePath('/api/', '/') // '/api/'
123
- */
124
- const mergePath = (base, sub, ...rest) => {
125
- if (rest.length) sub = mergePath(sub, ...rest);
126
- return `${base?.[0] === "/" ? "" : "/"}${base}${sub === "/" ? "" : `${base?.at(-1) === "/" ? "" : "/"}${sub?.[0] === "/" ? sub.slice(1) : sub}`}`;
127
- };
128
- const checkOptionalParameter = (path) => {
129
- if (path.charCodeAt(path.length - 1) !== 63 || !path.includes(":")) return null;
130
- const segments = path.split("/");
131
- const results = [];
132
- let basePath = "";
133
- segments.forEach((segment) => {
134
- if (segment !== "" && !/\:/.test(segment)) basePath += "/" + segment;
135
- else if (/\:/.test(segment)) {
136
- if (segment.charCodeAt(segment.length - 1) === 63) {
137
- if (results.length === 0 && basePath === "") results.push("/");
138
- else results.push(basePath);
139
- const optionalSegment = segment.slice(0, -1);
140
- basePath += "/" + optionalSegment;
141
- results.push(basePath);
142
- } else basePath += "/" + segment;
143
- }
144
- });
145
- return results.filter((v, i, a) => a.indexOf(v) === i);
146
- };
147
- const tryDecodeURIComponent = (str) => str.indexOf("%") !== -1 ? tryDecode(str, decodeURIComponent_) : str;
148
- const _decodeURI = (value) => {
149
- if (value.indexOf("+") !== -1) value = value.replace(/\+/g, " ");
150
- return tryDecodeURIComponent(value);
151
- };
152
- const _getQueryParam = (url, key, multiple) => {
153
- const hashIndex = url.indexOf("#", 8);
154
- if (hashIndex !== -1) url = url.slice(0, hashIndex);
155
- let encoded;
156
- if (!multiple && key && key.indexOf("%") === -1 && key.indexOf("+") === -1) {
157
- let keyIndex = url.indexOf("?", 8);
158
- if (keyIndex === -1) return;
159
- if (!url.startsWith(key, keyIndex + 1)) keyIndex = url.indexOf(`&${key}`, keyIndex + 1);
160
- while (keyIndex !== -1) {
161
- const trailingKeyCode = url.charCodeAt(keyIndex + key.length + 1);
162
- if (trailingKeyCode === 61) {
163
- const valueIndex = keyIndex + key.length + 2;
164
- const endIndex = url.indexOf("&", valueIndex);
165
- return _decodeURI(url.slice(valueIndex, endIndex === -1 ? void 0 : endIndex));
166
- } else if (trailingKeyCode == 38 || isNaN(trailingKeyCode)) return "";
167
- keyIndex = url.indexOf(`&${key}`, keyIndex + 1);
168
- }
169
- encoded = /[%+]/.test(url);
170
- if (!encoded) return;
171
- }
172
- const results = Object.create(null);
173
- encoded ??= /[%+]/.test(url);
174
- let keyIndex = url.indexOf("?", 8);
175
- while (keyIndex !== -1) {
176
- const nextKeyIndex = url.indexOf("&", keyIndex + 1);
177
- let valueIndex = url.indexOf("=", keyIndex);
178
- if (valueIndex > nextKeyIndex && nextKeyIndex !== -1) valueIndex = -1;
179
- let name = url.slice(keyIndex + 1, valueIndex === -1 ? nextKeyIndex === -1 ? void 0 : nextKeyIndex : valueIndex);
180
- if (encoded) name = _decodeURI(name);
181
- keyIndex = nextKeyIndex;
182
- if (name === "") continue;
183
- let value;
184
- if (valueIndex === -1) value = "";
185
- else {
186
- value = url.slice(valueIndex + 1, nextKeyIndex === -1 ? void 0 : nextKeyIndex);
187
- if (encoded) value = _decodeURI(value);
188
- }
189
- if (multiple) {
190
- if (!(results[name] && Array.isArray(results[name]))) results[name] = [];
191
- results[name].push(value);
192
- } else results[name] ??= value;
193
- }
194
- return key ? results[key] : results;
195
- };
196
- const getQueryParam = _getQueryParam;
197
- const getQueryParams = (url, key) => {
198
- return _getQueryParam(url, key, true);
199
- };
200
- const decodeURIComponent_ = decodeURIComponent;
201
- //#endregion
202
- exports.checkOptionalParameter = checkOptionalParameter;
203
- exports.decodeURIComponent_ = decodeURIComponent_;
204
- exports.getPath = getPath;
205
- exports.getPathNoStrict = getPathNoStrict;
206
- exports.getPattern = getPattern;
207
- exports.getQueryParam = getQueryParam;
208
- exports.getQueryParams = getQueryParams;
209
- exports.getQueryStrings = getQueryStrings;
210
- exports.mergePath = mergePath;
211
- exports.splitPath = splitPath;
212
- exports.splitRoutingPath = splitRoutingPath;
213
- exports.tryDecode = tryDecode;
214
- exports.tryDecodeURI = tryDecodeURI;
215
- exports.tryDecodeURIComponent = tryDecodeURIComponent;
@@ -1,3 +0,0 @@
1
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_validator_validator = require("./validator.js");
3
- exports.validator = require_validator_validator.validator;
File without changes