@forinda/kickjs 6.4.0 → 6.5.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 (218) hide show
  1. package/dist/{adapter-BjxEv8oW.d.mts → adapter-CbMq-NBf.d.mts} +95 -341
  2. package/dist/adapter-CbMq-NBf.d.mts.map +1 -0
  3. package/dist/{app-module-BwYtACD6.d.mts → app-module-DtoySG6l.d.mts} +153 -31
  4. package/dist/app-module-DtoySG6l.d.mts.map +1 -0
  5. package/dist/application-Cl0JlmNY.mjs +12 -0
  6. package/dist/application-Cl0JlmNY.mjs.map +1 -0
  7. package/dist/{application-Bo3jSfmL.d.mts → application-zlzYGgKD.d.mts} +6 -6
  8. package/dist/application-zlzYGgKD.d.mts.map +1 -0
  9. package/dist/{bootstrap-DW2yzKh6.mjs → bootstrap-DzyWLYpU.mjs} +3 -3
  10. package/dist/{bootstrap-DW2yzKh6.mjs.map → bootstrap-DzyWLYpU.mjs.map} +1 -1
  11. package/dist/{bootstrap-DUUxZXvF.d.mts → bootstrap-Nzgi7K2d.d.mts} +2 -3
  12. package/dist/bootstrap-Nzgi7K2d.d.mts.map +1 -0
  13. package/dist/{cache-CwZzIH0D.d.mts → cache-C0qL0NSD.d.mts} +2 -1
  14. package/dist/cache-C0qL0NSD.d.mts.map +1 -0
  15. package/dist/config/index.d.mts +1 -1
  16. package/dist/config/index.mjs +2 -2
  17. package/dist/{config-BTDTXaeZ.mjs → config-CwFPFwsN.mjs} +3 -3
  18. package/dist/{config-BTDTXaeZ.mjs.map → config-CwFPFwsN.mjs.map} +1 -1
  19. package/dist/{container-iED1swkd.d.mts → container-BW_MlgLj.d.mts} +3 -2
  20. package/dist/container-BW_MlgLj.d.mts.map +1 -0
  21. package/dist/{container-Da9BLMHy.mjs → container-C7kmdVwh.mjs} +3 -3
  22. package/dist/{container-Da9BLMHy.mjs.map → container-C7kmdVwh.mjs.map} +1 -1
  23. package/dist/context-DQaUwwQM.mjs +12 -0
  24. package/dist/context-DQaUwwQM.mjs.map +1 -0
  25. package/dist/context-errors-97x9siRx.mjs +13 -0
  26. package/dist/context-errors-97x9siRx.mjs.map +1 -0
  27. package/dist/core/adapter.d.mts +1 -1
  28. package/dist/core/adapter.mjs +1 -1
  29. package/dist/core/app-module.d.mts +1 -1
  30. package/dist/core/app-module.mjs +1 -1
  31. package/dist/core/cache.d.mts +1 -1
  32. package/dist/core/cache.mjs +1 -1
  33. package/dist/core/container.d.mts +1 -1
  34. package/dist/core/container.mjs +2 -2
  35. package/dist/core/cron.mjs +2 -2
  36. package/dist/core/decorators.d.mts +1 -1
  37. package/dist/core/decorators.mjs +2 -2
  38. package/dist/core/errors.d.mts +1 -1
  39. package/dist/core/errors.mjs +1 -1
  40. package/dist/core/interfaces.d.mts +1 -1
  41. package/dist/core/interfaces.mjs +1 -1
  42. package/dist/core/logger.d.mts +2 -2
  43. package/dist/core/logger.mjs +2 -2
  44. package/dist/core/logger.mjs.map +1 -1
  45. package/dist/core/path.mjs +1 -1
  46. package/dist/core/plugin.d.mts +1 -1
  47. package/dist/core/plugin.mjs +1 -1
  48. package/dist/core/reactivity.d.mts +1 -1
  49. package/dist/core/reactivity.mjs +1 -1
  50. package/dist/core-CLmwVWlw.mjs +12 -0
  51. package/dist/core-CLmwVWlw.mjs.map +1 -0
  52. package/dist/{cors-C4aSCD3J.d.mts → cors-BuDU9CpA.d.mts} +1 -2
  53. package/dist/cors-BuDU9CpA.d.mts.map +1 -0
  54. package/dist/cron-DOOtTY4q.d.mts.map +1 -1
  55. package/dist/{csrf-Dlo-P8Il.mjs → csrf-BsrsObK-.mjs} +2 -2
  56. package/dist/{csrf-Dlo-P8Il.mjs.map → csrf-BsrsObK-.mjs.map} +1 -1
  57. package/dist/{csrf-7nUXGTuz.d.mts → csrf-vR23CJas.d.mts} +1 -2
  58. package/dist/csrf-vR23CJas.d.mts.map +1 -0
  59. package/dist/{decorators-wEJBqXHg.d.mts → decorators-Bks7cgBJ.d.mts} +12 -7
  60. package/dist/decorators-Bks7cgBJ.d.mts.map +1 -0
  61. package/dist/{disposables-rPSyh69r.mjs → disposables-D46xX96x.mjs} +2 -2
  62. package/dist/{disposables-rPSyh69r.mjs.map → disposables-D46xX96x.mjs.map} +1 -1
  63. package/dist/env-Biq_60jq.mjs +13 -0
  64. package/dist/{env-Ce-aYRxQ.mjs.map → env-Biq_60jq.mjs.map} +1 -1
  65. package/dist/{error-handler-3ih4E-QZ.d.mts → error-handler-Cr6Yt9as.d.mts} +5 -2
  66. package/dist/error-handler-Cr6Yt9as.d.mts.map +1 -0
  67. package/dist/{errors-n0H96eEz.d.mts → errors-By6UueCm.d.mts} +18 -9
  68. package/dist/errors-By6UueCm.d.mts.map +1 -0
  69. package/dist/handler-Ci1NMv-9.mjs +13 -0
  70. package/dist/handler-Ci1NMv-9.mjs.map +1 -0
  71. package/dist/{helmet-CKzZzeNl.d.mts → helmet-CFQUTVig.d.mts} +1 -2
  72. package/dist/helmet-CFQUTVig.d.mts.map +1 -0
  73. package/dist/http/application.d.mts +1 -1
  74. package/dist/http/application.mjs +2 -2
  75. package/dist/http/bootstrap.d.mts +1 -1
  76. package/dist/http/bootstrap.mjs +2 -2
  77. package/dist/http/context.d.mts +2 -2
  78. package/dist/http/context.mjs +2 -2
  79. package/dist/http/middleware/cors.d.mts +1 -1
  80. package/dist/http/middleware/cors.mjs +1 -1
  81. package/dist/http/middleware/csrf.d.mts +1 -1
  82. package/dist/http/middleware/csrf.mjs +2 -2
  83. package/dist/http/middleware/error-handler.d.mts +1 -1
  84. package/dist/http/middleware/error-handler.mjs +3 -2
  85. package/dist/http/middleware/error-handler.mjs.map +1 -1
  86. package/dist/http/middleware/helmet.d.mts +1 -1
  87. package/dist/http/middleware/helmet.mjs +1 -1
  88. package/dist/http/middleware/rate-limit.d.mts +1 -1
  89. package/dist/http/middleware/rate-limit.mjs +2 -2
  90. package/dist/http/middleware/request-id.d.mts +1 -1
  91. package/dist/http/middleware/request-id.mjs +1 -1
  92. package/dist/http/middleware/request-logger.d.mts +1 -1
  93. package/dist/http/middleware/request-logger.mjs +2 -2
  94. package/dist/http/middleware/session.d.mts +1 -1
  95. package/dist/http/middleware/session.mjs +2 -2
  96. package/dist/http/middleware/spa.d.mts +1 -1
  97. package/dist/http/middleware/spa.mjs +2 -2
  98. package/dist/http/middleware/spa.mjs.map +1 -1
  99. package/dist/http/middleware/upload.d.mts +1 -1
  100. package/dist/http/middleware/upload.mjs +2 -2
  101. package/dist/http/middleware/upload.mjs.map +1 -1
  102. package/dist/http/middleware/validate.d.mts +1 -1
  103. package/dist/http/middleware/validate.mjs +1 -1
  104. package/dist/http/middleware/views.d.mts +1 -1
  105. package/dist/http/middleware/views.mjs +2 -3
  106. package/dist/http/query/index.d.mts +1 -1
  107. package/dist/http/query/index.mjs +2 -2
  108. package/dist/http/router-builder.d.mts +1 -1
  109. package/dist/http/router-builder.mjs +2 -3
  110. package/dist/http/runtimes/fastify.d.mts +1 -2
  111. package/dist/http/runtimes/fastify.d.mts.map +1 -1
  112. package/dist/http/runtimes/fastify.mjs +3 -3
  113. package/dist/http/runtimes/fastify.mjs.map +1 -1
  114. package/dist/http/runtimes/h3-web.d.mts +1 -2
  115. package/dist/http/runtimes/h3-web.d.mts.map +1 -1
  116. package/dist/http/runtimes/h3-web.mjs +2 -2
  117. package/dist/http/runtimes/h3-web.mjs.map +1 -1
  118. package/dist/http/runtimes/h3.d.mts +1 -2
  119. package/dist/http/runtimes/h3.d.mts.map +1 -1
  120. package/dist/http/runtimes/h3.mjs +2 -2
  121. package/dist/{index-BtWJ9SLP.d.mts → index-BfT5KZ-M.d.mts} +2 -2
  122. package/dist/index-BfT5KZ-M.d.mts.map +1 -0
  123. package/dist/{index-D98NLfS5.d.mts → index-M6TF75MS.d.mts} +2 -3
  124. package/dist/index-M6TF75MS.d.mts.map +1 -0
  125. package/dist/index.d.mts +28 -28
  126. package/dist/index.mjs +2 -2
  127. package/dist/index.mjs.map +1 -1
  128. package/dist/{interfaces-CayXPOAf.d.mts → interfaces-BTTBdkvG.d.mts} +3 -2
  129. package/dist/interfaces-BTTBdkvG.d.mts.map +1 -0
  130. package/dist/{kv-stores-CAYc5VKm.mjs → kv-stores-BLJdf3Fn.mjs} +2 -2
  131. package/dist/{kv-stores-CAYc5VKm.mjs.map → kv-stores-BLJdf3Fn.mjs.map} +1 -1
  132. package/dist/{kv-stores-gQrfH0KQ.d.mts → kv-stores-CHowq8VP.d.mts} +5 -6
  133. package/dist/kv-stores-CHowq8VP.d.mts.map +1 -0
  134. package/dist/{logger-COlEkn_C.d.mts → logger-DA43DvNY.d.mts} +18 -3
  135. package/dist/logger-DA43DvNY.d.mts.map +1 -0
  136. package/dist/{metadata-BhKXlN2F.mjs → metadata-DUBbuHqY.mjs} +2 -2
  137. package/dist/{metadata-BhKXlN2F.mjs.map → metadata-DUBbuHqY.mjs.map} +1 -1
  138. package/dist/{module-registry-CvP9mee-.mjs → module-registry-aIt66if2.mjs} +2 -2
  139. package/dist/{module-registry-CvP9mee-.mjs.map → module-registry-aIt66if2.mjs.map} +1 -1
  140. package/dist/path-BVA9MfN1.d.mts.map +1 -1
  141. package/dist/query-CXN52dzy.mjs +12 -0
  142. package/dist/{query-Cs_Llg77.mjs.map → query-CXN52dzy.mjs.map} +1 -1
  143. package/dist/{rate-limit-oLL5EPUf.d.mts → rate-limit-Dme747JJ.d.mts} +1 -2
  144. package/dist/rate-limit-Dme747JJ.d.mts.map +1 -0
  145. package/dist/{reactivity-XL0fFDvG.d.mts → reactivity-BkMNA0kp.d.mts} +2 -2
  146. package/dist/reactivity-BkMNA0kp.d.mts.map +1 -0
  147. package/dist/{reply-edT8RGBB.mjs → reply-C1ljl6xS.mjs} +3 -3
  148. package/dist/{reply-edT8RGBB.mjs.map → reply-C1ljl6xS.mjs.map} +1 -1
  149. package/dist/{request-id-IDobbxU-.d.mts → request-id-CVzJ1uHD.d.mts} +1 -2
  150. package/dist/request-id-CVzJ1uHD.d.mts.map +1 -0
  151. package/dist/{request-logger-DZVW6VNI.d.mts → request-logger-BU4ulKLp.d.mts} +1 -2
  152. package/dist/request-logger-BU4ulKLp.d.mts.map +1 -0
  153. package/dist/router-builder-BbgVXuy3.mjs +12 -0
  154. package/dist/router-builder-BbgVXuy3.mjs.map +1 -0
  155. package/dist/{router-builder-CiS2ASTJ.d.mts → router-builder-CMGhEBU2.d.mts} +2 -3
  156. package/dist/router-builder-CMGhEBU2.d.mts.map +1 -0
  157. package/dist/{session-DSRA-PUX.d.mts → session-z9iewOXA.d.mts} +1 -2
  158. package/dist/session-z9iewOXA.d.mts.map +1 -0
  159. package/dist/{spa-Dp9onKJt.d.mts → spa-DsRUrm69.d.mts} +4 -9
  160. package/dist/spa-DsRUrm69.d.mts.map +1 -0
  161. package/dist/{upload-CIZc803m.d.mts → upload-XVTyQcNN.d.mts} +3 -3
  162. package/dist/upload-XVTyQcNN.d.mts.map +1 -0
  163. package/dist/{upload-config-C3MSF7RF.mjs → upload-config-Dd_QvlpC.mjs} +2 -2
  164. package/dist/{upload-config-C3MSF7RF.mjs.map → upload-config-Dd_QvlpC.mjs.map} +1 -1
  165. package/dist/{validate-DoZDOhCi.d.mts → validate-DMYpUnrf.d.mts} +1 -2
  166. package/dist/validate-DMYpUnrf.d.mts.map +1 -0
  167. package/dist/views-Dj6XFaca.mjs +12 -0
  168. package/dist/views-Dj6XFaca.mjs.map +1 -0
  169. package/dist/views-DsfBT1fR.d.mts +659 -0
  170. package/dist/views-DsfBT1fR.d.mts.map +1 -0
  171. package/dist/web.d.mts +4 -5
  172. package/dist/web.d.mts.map +1 -1
  173. package/dist/web.mjs +2 -2
  174. package/dist/web.mjs.map +1 -1
  175. package/package.json +10 -10
  176. package/dist/adapter-BjxEv8oW.d.mts.map +0 -1
  177. package/dist/app-module-BwYtACD6.d.mts.map +0 -1
  178. package/dist/application-Bo3jSfmL.d.mts.map +0 -1
  179. package/dist/application-TiHVcGRL.mjs +0 -12
  180. package/dist/application-TiHVcGRL.mjs.map +0 -1
  181. package/dist/bootstrap-DUUxZXvF.d.mts.map +0 -1
  182. package/dist/cache-CwZzIH0D.d.mts.map +0 -1
  183. package/dist/container-iED1swkd.d.mts.map +0 -1
  184. package/dist/context-Cs0939u1.mjs +0 -12
  185. package/dist/context-Cs0939u1.mjs.map +0 -1
  186. package/dist/contributor-runner-B3Z3Q7J5.mjs +0 -13
  187. package/dist/contributor-runner-B3Z3Q7J5.mjs.map +0 -1
  188. package/dist/core-CQ6u5kOq.mjs +0 -12
  189. package/dist/core-CQ6u5kOq.mjs.map +0 -1
  190. package/dist/cors-C4aSCD3J.d.mts.map +0 -1
  191. package/dist/csrf-7nUXGTuz.d.mts.map +0 -1
  192. package/dist/decorators-wEJBqXHg.d.mts.map +0 -1
  193. package/dist/env-Ce-aYRxQ.mjs +0 -13
  194. package/dist/error-handler-3ih4E-QZ.d.mts.map +0 -1
  195. package/dist/errors-n0H96eEz.d.mts.map +0 -1
  196. package/dist/handler-D8Zyie-B.mjs +0 -12
  197. package/dist/handler-D8Zyie-B.mjs.map +0 -1
  198. package/dist/helmet-CKzZzeNl.d.mts.map +0 -1
  199. package/dist/http/middleware/views.mjs.map +0 -1
  200. package/dist/http/router-builder.mjs.map +0 -1
  201. package/dist/index-BtWJ9SLP.d.mts.map +0 -1
  202. package/dist/index-D98NLfS5.d.mts.map +0 -1
  203. package/dist/interfaces-CayXPOAf.d.mts.map +0 -1
  204. package/dist/kv-stores-gQrfH0KQ.d.mts.map +0 -1
  205. package/dist/logger-COlEkn_C.d.mts.map +0 -1
  206. package/dist/query-Cs_Llg77.mjs +0 -12
  207. package/dist/rate-limit-oLL5EPUf.d.mts.map +0 -1
  208. package/dist/reactivity-XL0fFDvG.d.mts.map +0 -1
  209. package/dist/request-id-IDobbxU-.d.mts.map +0 -1
  210. package/dist/request-logger-DZVW6VNI.d.mts.map +0 -1
  211. package/dist/rolldown-runtime-Bzotz84Y.mjs +0 -11
  212. package/dist/router-builder-CiS2ASTJ.d.mts.map +0 -1
  213. package/dist/session-DSRA-PUX.d.mts.map +0 -1
  214. package/dist/spa-Dp9onKJt.d.mts.map +0 -1
  215. package/dist/upload-CIZc803m.d.mts.map +0 -1
  216. package/dist/validate-DoZDOhCi.d.mts.map +0 -1
  217. package/dist/views-DjgUXRdu.d.mts +0 -275
  218. package/dist/views-DjgUXRdu.d.mts.map +0 -1
@@ -1,13 +1,14 @@
1
1
 
2
- import { i as Constructor, o as MaybePromise } from "./interfaces-CayXPOAf.mjs";
3
- import { s as InjectionToken, t as Container } from "./container-iED1swkd.mjs";
4
- import { g as FileUploadConfig, k as RouteDefinition, x as MiddlewareHandler } from "./decorators-wEJBqXHg.mjs";
5
- import { _ as ExecutionContext, a as AnyContributorRegistration, d as ContributorRegistrations, r as AppModuleEntry, t as AppModule, v as MetaValue } from "./app-module-BwYtACD6.mjs";
6
- import { i as ProblemDetails } from "./errors-n0H96eEz.mjs";
7
- import { S as QueryFieldConfig, T as TypedParsedQuery, t as ParseQueryOptions } from "./index-BtWJ9SLP.mjs";
2
+ import { i as Constructor, o as MaybePromise } from "./interfaces-BTTBdkvG.mjs";
3
+ import { s as InjectionToken, t as Container } from "./container-BW_MlgLj.mjs";
4
+ import { g as FileUploadConfig, k as RouteDefinition, x as MiddlewareHandler } from "./decorators-Bks7cgBJ.mjs";
5
+ import { _ as ExecutionContext, a as AnyContributorRegistration, d as ContributorRegistrations, r as AppModuleEntry, t as AppModule, v as MetaValue } from "./app-module-DtoySG6l.mjs";
6
+ import "./cache-C0qL0NSD.mjs";
7
+ import { i as ProblemDetails } from "./errors-By6UueCm.mjs";
8
+ import { S as QueryFieldConfig, T as TypedParsedQuery, t as ParseQueryOptions } from "./index-BfT5KZ-M.mjs";
9
+ import "reflect-metadata";
8
10
  import http, { IncomingMessage, ServerResponse } from "node:http";
9
11
  import { ErrorRequestHandler, Express as Express$1, NextFunction, Request, RequestHandler, Response } from "express";
10
-
11
12
  //#region src/core/introspect.d.ts
12
13
  /**
13
14
  * Per-primitive introspection snapshot — the JSON shape an adapter or
@@ -688,81 +689,6 @@ declare class ModuleList extends Array<AppModuleEntry> {
688
689
  */
689
690
  declare function defineModules(...initial: AppModuleEntry[]): ModuleList;
690
691
  //#endregion
691
- //#region src/core/disposables.d.ts
692
- /**
693
- * Registry for framework-owned resources that hold timers or other handles
694
- * outside the adapter/plugin lifecycle — e.g. the in-memory session and
695
- * rate-limit stores' cleanup intervals. `Application.shutdown()` drains it so
696
- * startup and shutdown stay symmetric even for resources created lazily by
697
- * middleware factories.
698
- *
699
- * Intervals are `.unref()`'d so they never wedge process exit — this registry
700
- * exists for IN-PROCESS teardown (test suites, HMR, multi-app hosts) where
701
- * each un-disposed store would otherwise leak a live interval + backing Map
702
- * per app instance.
703
- */
704
- type Disposable = () => void | Promise<void>;
705
- /** Register a cleanup callback. Returns an unregister function. */
706
- declare function registerDisposable(fn: Disposable): () => void;
707
- /** Run and clear all registered disposables. Errors are swallowed per-entry. */
708
- declare function disposeAll(): Promise<void>;
709
- //#endregion
710
- //#region src/core/kick-error.d.ts
711
- /**
712
- * Structured framework error with code, cause, and actionable fix hint.
713
- *
714
- * The goal is "the developer who hits this knows what to do next." A
715
- * cryptic `Error('No binding found for: UserService')` becomes a
716
- * multi-line explanation pointing at the likely cause, the exact code
717
- * change to apply, and a docs link.
718
- *
719
- * `.message` carries the full multi-line plain-text body so Node's
720
- * default `Error.toString()` and unhandled-exception printing still
721
- * surface the helpful version. Call {@link formatKickError} to render a
722
- * colorized version for terminals.
723
- *
724
- * Per-error factories live in `kick-errors.ts` — those are the public
725
- * entry points framework code uses. `KickError` is exported so adopters
726
- * can build their own structured errors using the same shape.
727
- */
728
- interface KickErrorInit {
729
- /** Short stable identifier (e.g. `KICK001`, `NO_PROVIDER`). */
730
- code: string;
731
- /** One-line headline. */
732
- summary: string;
733
- /** Multi-line explanation of why this happened. */
734
- cause?: string;
735
- /** Multi-line actionable fix — show exact code if possible. */
736
- fix?: string;
737
- /** Absolute URL to the docs page that covers this error. */
738
- docsUrl?: string;
739
- /** Arbitrary structured fields for log consumers / debug tooling. */
740
- context?: Record<string, unknown>;
741
- }
742
- declare class KickError extends Error {
743
- readonly code: string;
744
- readonly summary: string;
745
- readonly cause?: string;
746
- readonly fix?: string;
747
- readonly docsUrl?: string;
748
- readonly context?: Record<string, unknown>;
749
- constructor(init: KickErrorInit);
750
- }
751
- interface FormatKickErrorOptions {
752
- /**
753
- * Render ANSI colour codes. Defaults to TTY detection (`NO_COLOR` /
754
- * `FORCE_COLOR` env vars honoured). Pass `false` for log files,
755
- * structured loggers, or HTTP response bodies.
756
- */
757
- color?: boolean;
758
- }
759
- /**
760
- * Render a {@link KickErrorInit} (or {@link KickError} instance) into a
761
- * multi-line human-readable string. Identical layout regardless of
762
- * colour — the colour flag only toggles ANSI codes.
763
- */
764
- declare function formatKickError(err: KickErrorInit | KickError, options?: FormatKickErrorOptions): string;
765
- //#endregion
766
692
  //#region src/core/metadata.d.ts
767
693
  /**
768
694
  * Typed utilities for reflect-metadata operations.
@@ -803,139 +729,6 @@ declare function setInMetaRecord<V>(key: MetaKey, target: object, recKey: string
803
729
  /** Get a Record from class metadata (returns empty object if absent) */
804
730
  declare function getMetaRecord<V>(key: MetaKey, target: object): Record<string | number, V>;
805
731
  //#endregion
806
- //#region src/core/circuit-breaker.d.ts
807
- /**
808
- * Circuit Breaker pattern for external service calls.
809
- *
810
- * Protects your application from cascading failures when downstream
811
- * services are unhealthy by short-circuiting requests after a
812
- * configurable failure threshold.
813
- *
814
- * @example
815
- * ```ts
816
- * const breaker = new CircuitBreaker('payment-api', {
817
- * failureThreshold: 5,
818
- * resetTimeout: 30_000,
819
- * })
820
- *
821
- * const result = await breaker.execute(() => fetch('https://payment.example.com/charge'))
822
- * ```
823
- */
824
- type CircuitBreakerState = 'closed' | 'open' | 'half_open';
825
- interface CircuitBreakerOptions {
826
- /** Number of consecutive failures before the circuit opens. */
827
- failureThreshold: number;
828
- /** Milliseconds to wait before transitioning from OPEN to HALF_OPEN. */
829
- resetTimeout: number;
830
- /** Max requests allowed in HALF_OPEN state before deciding (default 1). */
831
- halfOpenMax?: number;
832
- }
833
- interface CircuitBreakerStats {
834
- failures: number;
835
- successes: number;
836
- state: CircuitBreakerState;
837
- lastFailure?: Date;
838
- }
839
- /**
840
- * Error thrown when the circuit is open and calls are being rejected.
841
- */
842
- declare class CircuitOpenError extends Error {
843
- readonly breakerName: string;
844
- constructor(breakerName: string);
845
- }
846
- declare class CircuitBreaker {
847
- readonly name: string;
848
- private state;
849
- private failures;
850
- private successes;
851
- private halfOpenAttempts;
852
- private lastFailure?;
853
- private openedAt?;
854
- private readonly failureThreshold;
855
- private readonly resetTimeout;
856
- private readonly halfOpenMax;
857
- constructor(name: string, options: CircuitBreakerOptions);
858
- /**
859
- * Execute an async function through the circuit breaker.
860
- * Throws `CircuitOpenError` if the circuit is open.
861
- */
862
- execute<T>(fn: () => Promise<T>): Promise<T>;
863
- /** Returns the current circuit state. */
864
- getState(): CircuitBreakerState;
865
- /** Returns current statistics. */
866
- getStats(): CircuitBreakerStats;
867
- /** Manually reset the circuit breaker to CLOSED state. */
868
- reset(): void;
869
- private onSuccess;
870
- private onFailure;
871
- private maybeTransitionToHalfOpen;
872
- }
873
- //#endregion
874
- //#region src/core/context-errors.d.ts
875
- /**
876
- * Errors thrown by the Context Contributor pipeline.
877
- *
878
- * All three are startup-time errors raised during pipeline build (topo-sort
879
- * + validation), not per-request — a misconfigured app fails to boot rather
880
- * than fails a request. Per the locked design in `architecture.md` §20.4,
881
- * the pipeline is validated once when each route is mounted and the
882
- * resolved order is cached on the route.
883
- */
884
- /**
885
- * A contributor declared `dependsOn: ['<key>']` but no other contributor
886
- * (at any precedence level) produces that key for the same route.
887
- *
888
- * @example
889
- * ```text
890
- * MissingContributorError: Missing context contributor 'tenant' required by 'project' on route GET /projects/:id
891
- * declared at src/contributors/load-project.ts:42:18
892
- * ```
893
- */
894
- declare class MissingContributorError extends Error {
895
- readonly key: string;
896
- readonly dependent: string;
897
- readonly route?: string;
898
- readonly dependentDefinedAt?: string;
899
- constructor(key: string, dependent: string, route?: string, dependentDefinedAt?: string);
900
- }
901
- /**
902
- * Topo-sort detected a cycle in `dependsOn` declarations. The `cycle` field
903
- * lists the keys in the order they form the loop, with the first key
904
- * repeated at the end so the path reads naturally.
905
- *
906
- * @example
907
- * ```text
908
- * ContributorCycleError: Cycle in context contributors on route GET /projects/:id: tenant → project → tenant
909
- * ```
910
- */
911
- declare class ContributorCycleError extends Error {
912
- readonly cycle: readonly string[];
913
- readonly route?: string;
914
- constructor(cycle: readonly string[], route?: string);
915
- }
916
- /**
917
- * Two contributors at the same precedence level both produce the same key
918
- * for the same route. Precedence resolution (method > class > module >
919
- * adapter > global, per architecture.md §20.4) silently drops
920
- * lower-precedence duplicates; this error fires only when ties occur
921
- * within a single level — e.g., two method-level decorators declaring
922
- * `key: 'tenant'`.
923
- *
924
- * `sources` is best-effort identifying labels for each conflicting
925
- * registration (typically the decorator's call site or registering
926
- * module/adapter name).
927
- *
928
- * @example
929
- * ```text
930
- * DuplicateContributorError: Duplicate context contributor for key 'tenant' at the same precedence level. Sources: LoadTenantFromHeader, LoadTenantFromSubdomain
931
- * ```
932
- */
933
- declare class DuplicateContributorError extends Error {
934
- readonly key: string;
935
- readonly sources: readonly string[];
936
- constructor(key: string, sources: readonly string[]);
937
- }
938
- //#endregion
939
732
  //#region src/core/contributor-pipeline.d.ts
940
733
  /**
941
734
  * Where a contributor was registered, ordered by precedence
@@ -1042,83 +835,6 @@ interface RunContributorsOptions {
1042
835
  */
1043
836
  declare function runContributors(options: RunContributorsOptions): Promise<void>;
1044
837
  //#endregion
1045
- //#region src/core/mount-sort.d.ts
1046
- /**
1047
- * Topological sort for plugins and adapters with `dependsOn` declarations.
1048
- *
1049
- * Mirrors the algorithm used by the Context Contributor pipeline
1050
- * (`contributor-pipeline.ts:topoSort`) but operates on a name-keyed
1051
- * `MountSortItem` shape rather than a `ContributorRegistration`. Kept
1052
- * standalone instead of factored generic so that:
1053
- *
1054
- * 1. The contributor pipeline doesn't need refactoring (risk reduction).
1055
- * 2. The error classes can carry plugin/adapter-specific diagnostic
1056
- * fields (`kind`, `dependent`) without bending the contributor types.
1057
- */
1058
- /**
1059
- * A plugin or adapter that participates in dependency-ordered mounting.
1060
- * Both `KickPlugin` and `AppAdapter` satisfy this shape via their `name`
1061
- * and `dependsOn` fields.
1062
- */
1063
- interface MountSortItem {
1064
- /** Unique mount name within the plugin/adapter set being sorted. */
1065
- name: string;
1066
- /**
1067
- * Other plugin/adapter names that must mount before this one. Cycles
1068
- * and missing names fail at boot — same fail-fast contract as the
1069
- * Context Contributor pipeline (architecture.md §20.4).
1070
- */
1071
- dependsOn?: readonly string[];
1072
- }
1073
- /** What kind of mount set the sort is operating on — surfaces in error messages. */
1074
- type MountKind = 'plugin' | 'adapter';
1075
- /**
1076
- * Two items in the same mount set declared the same `name`. Plugin/adapter
1077
- * names must be unique so `dependsOn` references resolve unambiguously.
1078
- */
1079
- declare class DuplicateMountNameError extends Error {
1080
- readonly kind: MountKind;
1081
- readonly mountName: string;
1082
- constructor(kind: MountKind, mountName: string);
1083
- }
1084
- /**
1085
- * A `dependsOn` entry references a plugin/adapter that isn't in the
1086
- * current set. The dependency might not be installed, might be misspelled,
1087
- * or might live in a different mount set (plugin referencing an adapter,
1088
- * or vice versa — they sort independently).
1089
- */
1090
- declare class MissingMountDepError extends Error {
1091
- readonly kind: MountKind;
1092
- readonly missing: string;
1093
- readonly dependent: string;
1094
- constructor(kind: MountKind, missing: string, dependent: string);
1095
- }
1096
- /**
1097
- * The `dependsOn` declarations form a cycle. Boot fails so the cycle
1098
- * can't poison live traffic. The `cycle` field reports one path through
1099
- * the offending nodes for diagnostics — formatted `A → B → C → A`.
1100
- */
1101
- declare class MountCycleError extends Error {
1102
- readonly kind: MountKind;
1103
- readonly cycle: readonly string[];
1104
- constructor(kind: MountKind, cycle: readonly string[]);
1105
- }
1106
- /**
1107
- * Topologically sort `items` so every item with `dependsOn: ['X']` mounts
1108
- * after `X`. Items without `dependsOn` keep their input order via Kahn's
1109
- * algorithm with a FIFO queue seeded in input order — preserves the
1110
- * historical "plugins/adapters mount in declaration order" behaviour for
1111
- * any set that doesn't use `dependsOn`.
1112
- *
1113
- * @param items - mountable items, e.g. plugins or adapters
1114
- * @param kind - 'plugin' | 'adapter', used in error messages
1115
- * @returns a new array in valid mount order
1116
- * @throws {DuplicateMountNameError} two items share a name
1117
- * @throws {MissingMountDepError} a `dependsOn` references an unknown name
1118
- * @throws {MountCycleError} the dep graph contains a cycle
1119
- */
1120
- declare function mountSort<T extends MountSortItem>(items: readonly T[], kind: MountKind): T[];
1121
- //#endregion
1122
838
  //#region src/core/define-adapter.d.ts
1123
839
  /**
1124
840
  * Options passed to {@link defineAdapter}. Mirrors {@link DefinePluginOptions}
@@ -1196,49 +912,6 @@ interface AdapterFactory<TConfig, TExtra = unknown> {
1196
912
  */
1197
913
  declare function defineAdapter<TConfig = Record<string, unknown>, TExtra = unknown>(options: DefineAdapterOptions<TConfig, TExtra>): AdapterFactory<TConfig, TExtra>;
1198
914
  //#endregion
1199
- //#region src/core/asset-keys.d.ts
1200
- type AssetKeyStrategy = 'auto' | 'strip' | 'with-extension';
1201
- interface AssetKeyPair {
1202
- /** Source-relative path the file was discovered at. */
1203
- rel: string;
1204
- /** Final logical key for the manifest, including the namespace prefix. */
1205
- key: string;
1206
- }
1207
- interface GroupAssetKeysOptions {
1208
- /**
1209
- * Strategy applied to this namespace. Default `'auto'`.
1210
- *
1211
- * Adopters override per-namespace via `assetMap.<ns>.keys` in
1212
- * kick.config.ts when they want uniform behaviour (e.g. always
1213
- * include the extension regardless of collisions).
1214
- */
1215
- strategy?: AssetKeyStrategy;
1216
- }
1217
- interface GroupAssetKeysResult {
1218
- pairs: AssetKeyPair[];
1219
- /**
1220
- * Number of collision groups resolved by keeping extensions.
1221
- * Surfaces as an informational log ("auto-resolved N collisions")
1222
- * so adopters know whether they're relying on auto-mode or not.
1223
- * Always 0 for `'strip'` (overwrites) and `'with-extension'`
1224
- * (extensions always preserved, no collision possible).
1225
- */
1226
- collisionGroupsResolved: number;
1227
- }
1228
- /**
1229
- * Compute final manifest keys for a namespace's discovered paths,
1230
- * given the chosen strategy. Pure function — no fs / config / globals
1231
- * involved.
1232
- *
1233
- * @param namespace assetMap key — e.g. `'mails'`, `'pages'`.
1234
- * @param paths source-relative file paths (POSIX separators) discovered
1235
- * under the namespace's `src` directory.
1236
- * @param opts grouping options.
1237
- */
1238
- declare function groupAssetKeys(namespace: string, paths: readonly string[], opts?: GroupAssetKeysOptions): GroupAssetKeysResult;
1239
- /** Strip the final extension from a path. `'mails/welcome.ejs'` → `'mails/welcome'`. */
1240
- declare function stripExt(path: string): string;
1241
- //#endregion
1242
915
  //#region src/http/context.d.ts
1243
916
  /**
1244
917
  * Input shape for the typed problem-detail convenience methods on
@@ -1313,7 +986,7 @@ interface ProblemSender {
1313
986
  * Type-only. No runtime cost. `DeepReadonly<any>` is `any` (TS
1314
987
  * distributes conditional types over `any`).
1315
988
  */
1316
- type DeepReadonly<T> = T extends ((...args: never[]) => unknown) ? T : T extends Date | RegExp ? T : T extends Map<infer K, infer V> ? ReadonlyMap<DeepReadonly<K>, DeepReadonly<V>> : T extends Set<infer V> ? ReadonlySet<DeepReadonly<V>> : T extends readonly (infer U)[] ? number extends T['length'] ? ReadonlyArray<DeepReadonly<U>> : { readonly [K in keyof T]: DeepReadonly<T[K]> } : T extends object ? { readonly [K in keyof T]: DeepReadonly<T[K]> } : T;
989
+ type DeepReadonly<T> = T extends ((...args: never[]) => unknown) ? T : T extends Date | RegExp ? T : T extends Map<infer K, infer V> ? ReadonlyMap<DeepReadonly<K>, DeepReadonly<V>> : T extends Set<infer V> ? ReadonlySet<DeepReadonly<V>> : T extends readonly (infer U)[] ? number extends T['length'] ? ReadonlyArray<DeepReadonly<U>> : { readonly [K in keyof T]: DeepReadonly<T[K]>; } : T extends object ? { readonly [K in keyof T]: DeepReadonly<T[K]>; } : T;
1317
990
  /**
1318
991
  * The shape of a single route entry in `KickRoutes`. Generated by
1319
992
  * `kick typegen` and consumed via the `Ctx<T>` helper. Each field is
@@ -1326,6 +999,21 @@ interface RouteShape {
1326
999
  body?: unknown;
1327
1000
  query?: unknown;
1328
1001
  response?: unknown;
1002
+ /**
1003
+ * Union of context keys `kick typegen` proved are populated for this
1004
+ * route — the keys of every context contributor applied at method or
1005
+ * class level. Drives {@link RequestContext.require} narrowing, so
1006
+ * calling `ctx.require()` for a key this route doesn't carry is a
1007
+ * compile error instead of a request-time throw.
1008
+ *
1009
+ * `string` (the default) means "not proven", not "no keys". Typegen
1010
+ * emits `string` whenever it cannot see the full picture — a
1011
+ * contributor registered at module / adapter / bootstrap level, or an
1012
+ * unrecognised decorator that might bundle contributors of its own.
1013
+ * Narrowing an unprovable route would produce compile errors for keys
1014
+ * that really are present.
1015
+ */
1016
+ contextKeys?: string;
1329
1017
  }
1330
1018
  /**
1331
1019
  * Unified request/response abstraction passed to every controller method.
@@ -1335,7 +1023,14 @@ interface RouteShape {
1335
1023
  * Contributor pipeline (#107) can run against this concrete HTTP context
1336
1024
  * the same way it will run against future WS / queue / cron contexts.
1337
1025
  */
1338
- declare class RequestContext<TBody = any, TParams = any, TQuery = any> implements ExecutionContext {
1026
+ declare class RequestContext<TBody = any, TParams = any, TQuery = any,
1027
+ /**
1028
+ * Context keys proven present for this route. Defaults to `string`, so
1029
+ * a handler typed as plain `RequestContext` keeps today's unnarrowed
1030
+ * behaviour — which is also the deliberate escape hatch when typegen's
1031
+ * view is incomplete.
1032
+ */
1033
+ TKeys extends string = string> implements ExecutionContext<TKeys> {
1339
1034
  readonly req: ActiveRuntime['request'];
1340
1035
  readonly res: ActiveRuntime['response'];
1341
1036
  readonly next: NextFunction;
@@ -1523,6 +1218,50 @@ declare class RequestContext<TBody = any, TParams = any, TQuery = any> implement
1523
1218
  * `ctx.get<MyType>('custom')`.
1524
1219
  */
1525
1220
  get<K extends string>(key: K): MetaValue<K> | undefined;
1221
+ /**
1222
+ * Read a value that a contributor is expected to have produced, and
1223
+ * throw {@link MissingContextValueError} when it hasn't.
1224
+ *
1225
+ * Use this instead of `ctx.get(key)!` anywhere the value is a
1226
+ * precondition rather than an optional extra — permissions, tenants,
1227
+ * the resolved subject of the route. The non-null assertion compiles
1228
+ * whether or not the producing contributor is actually applied to the
1229
+ * route, so a dropped `@LoadTenant` turns into `undefined` flowing
1230
+ * silently into an auth check. `require()` fails loudly at that point
1231
+ * instead, naming the key.
1232
+ *
1233
+ * ```ts
1234
+ * // before — compiles even if @OperatorPerm was never applied
1235
+ * const perm = ctx.get('operatorPerm')!
1236
+ *
1237
+ * // after — throws MissingContextValueError naming the key + route
1238
+ * const perm = ctx.require('operatorPerm')
1239
+ * ```
1240
+ *
1241
+ * When `TKeys` is narrowed — which it is for a handler typed as
1242
+ * `Ctx<KickRoutes…>`, from typegen's per-route `contextKeys` — asking
1243
+ * for a key the route doesn't carry is a compile error, so a dropped
1244
+ * decorator fails the build. `TKeys` stays `string` (no narrowing) for
1245
+ * a plain `RequestContext` and for any route typegen couldn't prove
1246
+ * complete; there this is a runtime guarantee only.
1247
+ * See `architecture.md` §20.14.
1248
+ *
1249
+ * `null` counts as present; only `undefined` (or a missing entry)
1250
+ * throws. A contributor that deliberately resolves to `null` is
1251
+ * expressing "looked, found nothing", which is a real value — which
1252
+ * is why the return type is `Exclude<…, undefined>` and NOT
1253
+ * `NonNullable<…>`. The latter would strip `null` from the type while
1254
+ * the runtime still hands it back, so a caller would be told a value
1255
+ * is non-null and then get `null`.
1256
+ */
1257
+ require<K extends TKeys>(key: K): Exclude<MetaValue<K>, undefined>;
1258
+ /**
1259
+ * Best-effort `"GET /path"` label for error messages. Runtime-agnostic:
1260
+ * express/fastify requests and web-standard `Request` all expose
1261
+ * `method` + `url`, but none of them are guaranteed here, so every
1262
+ * access is defensive and the whole thing is optional.
1263
+ */
1264
+ private routeLabel;
1526
1265
  /**
1527
1266
  * Write a value to the per-request metadata store. Throws when no
1528
1267
  * AsyncLocalStorage frame is active — see {@link metadataForWrite}
@@ -1582,6 +1321,19 @@ declare class RequestContext<TBody = any, TParams = any, TQuery = any> implement
1582
1321
  */
1583
1322
  get problem(): ProblemSender;
1584
1323
  private sendProblem;
1324
+ /**
1325
+ * Send an HTML response.
1326
+ *
1327
+ * Passes the full MIME type rather than the `'html'` shorthand. The
1328
+ * shorthand is an Express affordance — `res.type()` runs it through a MIME
1329
+ * lookup — but the Fastify and h3 drivers forward the string to their own
1330
+ * `type()` / `setHeader()` verbatim, so `'html'` reached the wire as a
1331
+ * malformed `Content-Type: html` on those engines. Fastify 5.10 started
1332
+ * normalising that invalid value to `text/plain`, which is what surfaced it.
1333
+ *
1334
+ * Express produces `text/html; charset=utf-8` for `.type('html')`, so
1335
+ * spelling it out here is byte-identical there and correct everywhere else.
1336
+ */
1585
1337
  html(content: string, status?: number): RuntimeResponse;
1586
1338
  download(buffer: Buffer, filename: string, contentType?: string): RuntimeResponse;
1587
1339
  /**
@@ -1699,7 +1451,9 @@ type Ctx<TRoute extends RouteShape = RouteShape> = RequestContext<TRoute extends
1699
1451
  params: infer P;
1700
1452
  } ? P : any, TRoute extends {
1701
1453
  query: infer Q;
1702
- } ? Q : any>;
1454
+ } ? Q : any, TRoute extends {
1455
+ contextKeys: infer K;
1456
+ } ? (K extends string ? K : string) : string>;
1703
1457
  /**
1704
1458
  * Global ambient registry of typed routes, populated by `kick typegen`.
1705
1459
  *
@@ -1714,7 +1468,7 @@ type Ctx<TRoute extends RouteShape = RouteShape> = RequestContext<TRoute extends
1714
1468
  */
1715
1469
  declare global {
1716
1470
  namespace KickRoutes {}
1717
- } //# sourceMappingURL=context.d.ts.map
1471
+ }
1718
1472
  //#endregion
1719
1473
  //#region src/http/runtime.d.ts
1720
1474
  /** HTTP verbs the router emits. Mirrors the decorator surface (@Get/@Post/...). */
@@ -2169,5 +1923,5 @@ interface AppAdapter {
2169
1923
  /** Constructor type for AppAdapter classes */
2170
1924
  type AppAdapterClass = new () => AppAdapter;
2171
1925
  //#endregion
2172
- export { MissingContributorError as $, GroupAssetKeysOptions as A, BuildContext as At, MountCycleError as B, KickJsPluginRegistry as Bt, Ctx as C, disposeAll as Ct, SseHandler as D, DefineModuleOptions as Dt, RouteShape as E, defineModules as Et, AdapterFactory as F, KickPlugin as Ft, runContributors as G, MountSortItem as H, IntrospectFn as Ht, DefineAdapterOptions as I, ModuleRegistry as It, ContributorSource as J, BuildPipelineOptions as K, defineAdapter as L, MutableModuleRegistry as Lt, groupAssetKeys as M, PluginAsyncOptions as Mt, stripExt as N, PluginFactory as Nt, AssetKeyPair as O, ModuleFactory as Ot, AdapterAsyncOptions as P, definePlugin as Pt, DuplicateContributorError as Q, DuplicateMountNameError as R, AugmentationMeta as Rt, UseConnectOptions as S, Disposable as St, RequestContext as T, ModuleList as Tt, mountSort as U, IntrospectionKind as Ut, MountKind as V, defineAugmentation as Vt, RunContributorsOptions as W, IntrospectionSnapshot as Wt, buildPipeline as X, SourcedRegistration as Y, ContributorCycleError as Z, RouteTable as _, setMethodMeta as _t, MiddlewarePath as a, getClassMeta as at, RuntimeResponse as b, KickErrorInit as bt, AdapterHttp as c, getMetaRecord as ct, ExpressRuntimeTypes as d, hasClassMeta as dt, CircuitBreaker as et, HttpRuntime as f, pushClassMeta as ft, RouteMethod as g, setInMetaRecord as gt, RouteMeta as h, setInMetaMap as ht, AppAdapterClass as i, CircuitOpenError as it, GroupAssetKeysResult as j, DefinePluginOptions as jt, AssetKeyStrategy as k, defineModule as kt, ConnectMiddleware as l, getMethodMeta as lt, RouteEntry as m, setClassMeta as mt, AdapterMiddleware as n, CircuitBreakerState as nt, MiddlewarePhase as o, getClassMetaOrUndefined as ot, KickRuntimeRegister as p, pushMethodMeta as pt, ContributorPipeline as q, AppAdapter as r, CircuitBreakerStats as rt, ActiveRuntime as s, getMetaMap as st, AdapterContext as t, CircuitBreakerOptions as tt, CtxHandler as u, getMethodMetaOrUndefined as ut, RuntimeAppOptions as v, FormatKickErrorOptions as vt, DeepReadonly as w, registerDisposable as wt, RuntimeTypeMap as x, formatKickError as xt, RuntimeCapabilities as y, KickError as yt, MissingMountDepError as z, KickJsPluginName as zt };
2173
- //# sourceMappingURL=adapter-BjxEv8oW.d.mts.map
1926
+ export { defineModules as $, DefineAdapterOptions as A, getClassMetaOrUndefined as B, Ctx as C, SseHandler as D, RouteShape as E, ContributorPipeline as F, hasClassMeta as G, getMetaRecord as H, ContributorSource as I, setClassMeta as J, pushClassMeta as K, SourcedRegistration as L, RunContributorsOptions as M, runContributors as N, AdapterAsyncOptions as O, BuildPipelineOptions as P, ModuleList as Q, buildPipeline as R, UseConnectOptions as S, RequestContext as T, getMethodMeta as U, getMetaMap as V, getMethodMetaOrUndefined as W, setInMetaRecord as X, setInMetaMap as Y, setMethodMeta as Z, RouteTable as _, IntrospectionSnapshot as _t, MiddlewarePath as a, PluginAsyncOptions as at, RuntimeResponse as b, AdapterHttp as c, KickPlugin as ct, ExpressRuntimeTypes as d, AugmentationMeta as dt, DefineModuleOptions as et, HttpRuntime as f, KickJsPluginName as ft, RouteMethod as g, IntrospectionKind as gt, RouteMeta as h, IntrospectFn as ht, AppAdapterClass as i, DefinePluginOptions as it, defineAdapter as j, AdapterFactory as k, ConnectMiddleware as l, ModuleRegistry as lt, RouteEntry as m, defineAugmentation as mt, AdapterMiddleware as n, defineModule as nt, MiddlewarePhase as o, PluginFactory as ot, KickRuntimeRegister as p, KickJsPluginRegistry as pt, pushMethodMeta as q, AppAdapter as r, BuildContext as rt, ActiveRuntime as s, definePlugin as st, AdapterContext as t, ModuleFactory as tt, CtxHandler as u, MutableModuleRegistry as ut, RuntimeAppOptions as v, DeepReadonly as w, RuntimeTypeMap as x, RuntimeCapabilities as y, getClassMeta as z };
1927
+ //# sourceMappingURL=adapter-CbMq-NBf.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter-CbMq-NBf.d.mts","names":[],"sources":["../src/core/introspect.ts","../src/core/augmentation.ts","../src/core/module-registry.ts","../src/core/plugin.ts","../src/core/define-plugin.ts","../src/core/define-module.ts","../src/core/define-modules.ts","../src/core/metadata.ts","../src/core/contributor-pipeline.ts","../src/core/contributor-runner.ts","../src/core/define-adapter.ts","../src/http/context.ts","../src/http/runtime.ts","../src/core/adapter.ts"],"mappings":"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"}