@nifrajs/core 2.13.0 → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (177) hide show
  1. package/README.md +4 -0
  2. package/dist/assurance.d.ts +16 -8
  3. package/dist/assurance.d.ts.map +1 -1
  4. package/dist/assurance.js +33 -0
  5. package/dist/assurance.js.map +1 -1
  6. package/dist/binary.d.ts +32 -0
  7. package/dist/binary.d.ts.map +1 -1
  8. package/dist/binary.js +17 -0
  9. package/dist/binary.js.map +1 -1
  10. package/dist/durable-adapters.d.ts.map +1 -1
  11. package/dist/durable-adapters.js +21 -50
  12. package/dist/durable-adapters.js.map +1 -1
  13. package/dist/durable-execution.d.ts.map +1 -1
  14. package/dist/durable-execution.js +49 -69
  15. package/dist/durable-execution.js.map +1 -1
  16. package/dist/edge-kit.d.ts +27 -0
  17. package/dist/edge-kit.d.ts.map +1 -0
  18. package/dist/edge-kit.js +24 -0
  19. package/dist/edge-kit.js.map +1 -0
  20. package/dist/errors.d.ts +1 -1
  21. package/dist/errors.d.ts.map +1 -1
  22. package/dist/errors.js.map +1 -1
  23. package/dist/index.d.ts +1 -1
  24. package/dist/index.d.ts.map +1 -1
  25. package/dist/index.js +1 -1
  26. package/dist/index.js.map +1 -1
  27. package/dist/internal/durable-approval-protocol.d.ts +13 -0
  28. package/dist/internal/durable-approval-protocol.d.ts.map +1 -0
  29. package/dist/internal/durable-approval-protocol.js +66 -0
  30. package/dist/internal/durable-approval-protocol.js.map +1 -0
  31. package/dist/internal/durable-effect-protocol.d.ts +14 -0
  32. package/dist/internal/durable-effect-protocol.d.ts.map +1 -0
  33. package/dist/internal/durable-effect-protocol.js +16 -0
  34. package/dist/internal/durable-effect-protocol.js.map +1 -0
  35. package/dist/internal/durable-saga-protocol.d.ts +8 -0
  36. package/dist/internal/durable-saga-protocol.d.ts.map +1 -0
  37. package/dist/internal/durable-saga-protocol.js +21 -0
  38. package/dist/internal/durable-saga-protocol.js.map +1 -0
  39. package/dist/internal/route-catalog.d.ts +3 -0
  40. package/dist/internal/route-catalog.d.ts.map +1 -1
  41. package/dist/internal/route-catalog.js +5 -0
  42. package/dist/internal/route-catalog.js.map +1 -1
  43. package/dist/internal/route-execution.d.ts +11 -5
  44. package/dist/internal/route-execution.d.ts.map +1 -1
  45. package/dist/internal/route-execution.js +2 -1
  46. package/dist/internal/route-execution.js.map +1 -1
  47. package/dist/response-observer.d.ts +25 -0
  48. package/dist/response-observer.d.ts.map +1 -0
  49. package/dist/response-observer.js +40 -0
  50. package/dist/response-observer.js.map +1 -0
  51. package/dist/security/baseline.d.ts +68 -0
  52. package/dist/security/baseline.d.ts.map +1 -0
  53. package/dist/security/baseline.js +118 -0
  54. package/dist/security/baseline.js.map +1 -0
  55. package/dist/server/bare-error-lane.d.ts +26 -0
  56. package/dist/server/bare-error-lane.d.ts.map +1 -0
  57. package/dist/server/bare-error-lane.js +60 -0
  58. package/dist/server/bare-error-lane.js.map +1 -0
  59. package/dist/server/body.d.ts +7 -0
  60. package/dist/server/body.d.ts.map +1 -1
  61. package/dist/server/body.js +7 -0
  62. package/dist/server/body.js.map +1 -1
  63. package/dist/server/bridge-markers.d.ts +25 -0
  64. package/dist/server/bridge-markers.d.ts.map +1 -0
  65. package/dist/server/bridge-markers.js +25 -0
  66. package/dist/server/bridge-markers.js.map +1 -0
  67. package/dist/server/context.d.ts +6 -1
  68. package/dist/server/context.d.ts.map +1 -1
  69. package/dist/server/header-case.d.ts.map +1 -1
  70. package/dist/server/header-case.js +2 -1
  71. package/dist/server/header-case.js.map +1 -1
  72. package/dist/server/http.d.ts +36 -3
  73. package/dist/server/http.d.ts.map +1 -1
  74. package/dist/server/http.js +49 -3
  75. package/dist/server/http.js.map +1 -1
  76. package/dist/server/install.d.ts +6 -8
  77. package/dist/server/install.d.ts.map +1 -1
  78. package/dist/server/install.js +7 -0
  79. package/dist/server/install.js.map +1 -1
  80. package/dist/server/node-outcome-hook.d.ts +2 -1
  81. package/dist/server/node-outcome-hook.d.ts.map +1 -1
  82. package/dist/server/node-outcome-hook.js.map +1 -1
  83. package/dist/server/node-outcome.d.ts +17 -2
  84. package/dist/server/node-outcome.d.ts.map +1 -1
  85. package/dist/server/node-outcome.js +37 -3
  86. package/dist/server/node-outcome.js.map +1 -1
  87. package/dist/server/plugin.d.ts +1 -1
  88. package/dist/server/plugin.d.ts.map +1 -1
  89. package/dist/server/query.d.ts +7 -1
  90. package/dist/server/query.d.ts.map +1 -1
  91. package/dist/server/query.js +8 -3
  92. package/dist/server/query.js.map +1 -1
  93. package/dist/server/registry.d.ts +11 -2
  94. package/dist/server/registry.d.ts.map +1 -1
  95. package/dist/server/request-context.d.ts +17 -4
  96. package/dist/server/request-context.d.ts.map +1 -1
  97. package/dist/server/request-context.js +82 -45
  98. package/dist/server/request-context.js.map +1 -1
  99. package/dist/server/respond.d.ts.map +1 -1
  100. package/dist/server/respond.js +19 -2
  101. package/dist/server/respond.js.map +1 -1
  102. package/dist/server/response-contract-lane.d.ts.map +1 -1
  103. package/dist/server/response-contract-lane.js +5 -2
  104. package/dist/server/response-contract-lane.js.map +1 -1
  105. package/dist/server/response-observer-runtime.d.ts +20 -0
  106. package/dist/server/response-observer-runtime.d.ts.map +1 -0
  107. package/dist/server/response-observer-runtime.js +95 -0
  108. package/dist/server/response-observer-runtime.js.map +1 -0
  109. package/dist/server/runtime-core.d.ts +60 -0
  110. package/dist/server/runtime-core.d.ts.map +1 -1
  111. package/dist/server/runtime-core.js +65 -1
  112. package/dist/server/runtime-core.js.map +1 -1
  113. package/dist/server/server-types.d.ts +18 -1
  114. package/dist/server/server-types.d.ts.map +1 -1
  115. package/dist/server/server.d.ts +89 -48
  116. package/dist/server/server.d.ts.map +1 -1
  117. package/dist/server/server.js +397 -276
  118. package/dist/server/server.js.map +1 -1
  119. package/dist/server/websocket.d.ts +20 -4
  120. package/dist/server/websocket.d.ts.map +1 -1
  121. package/dist/server/websocket.js +81 -11
  122. package/dist/server/websocket.js.map +1 -1
  123. package/dist/server/ws-bun.d.ts +1 -1
  124. package/dist/server/ws-bun.d.ts.map +1 -1
  125. package/dist/server/ws-bun.js +12 -8
  126. package/dist/server/ws-bun.js.map +1 -1
  127. package/dist/server.d.ts +2 -1
  128. package/dist/server.d.ts.map +1 -1
  129. package/dist/server.js +2 -1
  130. package/dist/server.js.map +1 -1
  131. package/dist/single-copy-register.d.ts +2 -0
  132. package/dist/single-copy-register.d.ts.map +1 -0
  133. package/dist/single-copy-register.js +24 -0
  134. package/dist/single-copy-register.js.map +1 -0
  135. package/dist/single-copy.d.ts +156 -0
  136. package/dist/single-copy.d.ts.map +1 -0
  137. package/dist/single-copy.js +470 -0
  138. package/dist/single-copy.js.map +1 -0
  139. package/package.json +24 -2
  140. package/src/assurance.ts +58 -1
  141. package/src/binary.ts +35 -0
  142. package/src/durable-adapters.ts +26 -51
  143. package/src/durable-execution.ts +46 -88
  144. package/src/edge-kit.ts +27 -0
  145. package/src/errors.ts +1 -0
  146. package/src/index.ts +1 -1
  147. package/src/internal/durable-approval-protocol.ts +92 -0
  148. package/src/internal/durable-effect-protocol.ts +37 -0
  149. package/src/internal/durable-saga-protocol.ts +55 -0
  150. package/src/internal/route-catalog.ts +6 -0
  151. package/src/internal/route-execution.ts +23 -16
  152. package/src/response-observer.ts +64 -0
  153. package/src/security/baseline.ts +172 -0
  154. package/src/server/bare-error-lane.ts +76 -0
  155. package/src/server/body.ts +8 -0
  156. package/src/server/bridge-markers.ts +24 -0
  157. package/src/server/context.ts +6 -1
  158. package/src/server/header-case.ts +3 -1
  159. package/src/server/http.ts +53 -3
  160. package/src/server/install.ts +14 -0
  161. package/src/server/node-outcome-hook.ts +2 -1
  162. package/src/server/node-outcome.ts +44 -3
  163. package/src/server/plugin.ts +1 -1
  164. package/src/server/query.ts +10 -4
  165. package/src/server/registry.ts +19 -4
  166. package/src/server/request-context.ts +106 -51
  167. package/src/server/respond.ts +26 -1
  168. package/src/server/response-contract-lane.ts +6 -2
  169. package/src/server/response-observer-runtime.ts +135 -0
  170. package/src/server/runtime-core.ts +98 -1
  171. package/src/server/server-types.ts +18 -1
  172. package/src/server/server.ts +607 -376
  173. package/src/server/websocket.ts +127 -17
  174. package/src/server/ws-bun.ts +26 -7
  175. package/src/server.ts +2 -1
  176. package/src/single-copy-register.ts +24 -0
  177. package/src/single-copy.ts +524 -0
@@ -23,6 +23,27 @@ export declare const PRE_DECODED_BODY: unique symbol;
23
23
  export interface PreDecodedBody {
24
24
  readonly value: unknown;
25
25
  }
26
+ /**
27
+ * A response described as plain data - the status, any headers of its own, and a body still in value
28
+ * form. A `ResponseResult` carrying one is rendered on the SAME lane a handler's plain return takes:
29
+ * `JSON.stringify` straight into the node writer's `kind: "json"` outcome, or the web lane's prebuilt
30
+ * JSON init. No `Response` is constructed anywhere on the node path.
31
+ *
32
+ * That matters because building one is the dominant cost of answering early. Measured on the rig, one
33
+ * server per shape, all five answering the same 401: `c.set.status` + a plain object 82802 req/s,
34
+ * `beforeHandle` returning that same object 81819, `return new Response(...)` 49668, `throw new
35
+ * Response(...)` 47505, the same throw from a `derive` 48746. The `Response` costs 40%; the throw
36
+ * around it costs another 4%; unwinding a lifecycle stage instead of a handler costs nothing
37
+ * measurable. So the fix for a slow rejection is not a faster throw - it is not allocating the
38
+ * `Response`.
39
+ */
40
+ export interface PlainRender {
41
+ readonly status: number;
42
+ /** Headers belonging to this render. They win over anything the request left in `c.set.headers`. */
43
+ readonly headers?: Readonly<Record<string, string>>;
44
+ /** The body as a value, serialized by the lane that renders it. `undefined` means no body. */
45
+ readonly body: unknown;
46
+ }
26
47
  export interface ResponseResult {
27
48
  readonly [RESPONSE_RESULT]: true;
28
49
  toResponse(): Response;
@@ -31,8 +52,47 @@ export interface ResponseResult {
31
52
  readonly headers: Readonly<Record<string, string | readonly string[]>> | undefined;
32
53
  readonly body: string | Uint8Array;
33
54
  };
55
+ /** Present when this result can be rendered as plain data - see {@link PlainRender}. Every lane
56
+ * checks it before `toNodeBody`/`toResponse`, so a carrier that has one never builds a `Response`. */
57
+ readonly plain?: PlainRender;
34
58
  }
35
59
  export declare function isResponseResult(value: unknown): value is ResponseResult;
60
+ /**
61
+ * The headers a plain render ships: its own on top of whatever the request left in `c.set.headers`,
62
+ * so an ambient header (a request id, say) survives an early exit the way it survives an ordinary
63
+ * return, and a header named at the exit site still wins.
64
+ *
65
+ * Always a fresh object when the render has headers of its own: the node writers mutate the record
66
+ * they are handed (content-type, content-length, cookies), and a `status(...)` value is commonly
67
+ * hoisted to module scope and answered from on every request.
68
+ */
69
+ export declare function plainRenderHeaders(plain: PlainRender, set: CtxSet): Record<string, string> | undefined;
70
+ /**
71
+ * Finish the request here, with this status and body, without building a `Response`.
72
+ *
73
+ * Returned or thrown, from a handler or from any lifecycle stage:
74
+ *
75
+ * ```ts
76
+ * app.derive((c) => {
77
+ * const user = sessionOf(c)
78
+ * if (user === undefined) return status(401, { error: "unauthorized" })
79
+ * return { user }
80
+ * })
81
+ * ```
82
+ *
83
+ * A `derive` is the reason this exists as a value rather than as a rule about `beforeHandle`: a
84
+ * `beforeHandle` already short-circuits by returning a value, but a `derive`'s return IS the context
85
+ * extension, so before this its only exit was `throw new Response(...)` - the most expensive way to
86
+ * say 401 (see {@link PlainRender} for the measurements). Returning it is preferred; throwing it
87
+ * carries the same cost as any other throw and stays supported so a guard helper called for effect
88
+ * (`requireSession(c)`) can still end the request from inside a call it makes.
89
+ *
90
+ * The body is serialized by the lane that renders it, exactly like a handler's plain return, so the
91
+ * response carries a `content-length` rather than falling to chunked, and queued cookies still apply.
92
+ */
93
+ export declare function status(code: number, body?: unknown, init?: {
94
+ readonly headers?: Readonly<Record<string, string>>;
95
+ }): ResponseResult;
36
96
  /** The concrete `Request` for a source - itself when a real `Request` was passed (the Web path), or the
37
97
  * lazily-built one (the Node adapter). A real `Request` IS a `RequestSource`, so no wrapper is allocated
38
98
  * on the Web hot path. */
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-core.d.ts","sourceRoot":"","sources":["../../src/server/runtime-core.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAgC,KAAK,aAAa,EAAE,MAAM,cAAc,CAAA;AAC/E,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAExD,qFAAqF;AACrF,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,OAAO,CAAA;AAE9C,eAAO,MAAM,eAAe,eAAsC,CAAA;AAClE,eAAO,MAAM,WAAW,eAA8B,CAAA;AACtD,eAAO,MAAM,cAAc,eAAiC,CAAA;AAE5D;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,eAAkC,CAAA;AAE/D,sDAAsD;AACtD,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAA;CACxB;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,CAAC,eAAe,CAAC,EAAE,IAAI,CAAA;IAChC,UAAU,IAAI,QAAQ,CAAA;IACtB,UAAU,CAAC,IAAI;QACb,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;QACvB,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAC,CAAC,GAAG,SAAS,CAAA;QAClF,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CAAA;KACnC,CAAA;CACF;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,cAAc,CAOxE;AAED;;0BAE0B;AAC1B,wBAAgB,SAAS,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAExD;AAED;;;gFAGgF;AAChF,wBAAgB,QAAQ,CAAC,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAE3E;AAED;6FAC6F;AAC7F,eAAO,MAAM,iBAAiB,GAAI,SAAS,OAAO,CAAC,OAAO,CAAC,KAAG,IAE7D,CAAA;AAID,eAAO,MAAM,uBAAuB,EAAwB,MAAM,CAAA;AAElE,eAAO,MAAM,YAAY,aAAoB,CAAA;AAU7C,eAAO,MAAM,mBAAmB,QAAO,WAGtC,CAAA;AACD,eAAO,MAAM,yBAAyB,QAAO,aAG5C,CAAA"}
1
+ {"version":3,"file":"runtime-core.d.ts","sourceRoot":"","sources":["../../src/server/runtime-core.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAgC,KAAK,aAAa,EAAE,MAAM,cAAc,CAAA;AAE/E,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAExD,qFAAqF;AACrF,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,OAAO,CAAA;AAE9C,eAAO,MAAM,eAAe,eAAqD,CAAA;AACjF,eAAO,MAAM,WAAW,eAA8B,CAAA;AACtD,eAAO,MAAM,cAAc,eAAiC,CAAA;AAE5D;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,eAAkC,CAAA;AAE/D,sDAAsD;AACtD,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAA;CACxB;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,oGAAoG;IACpG,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IACnD,8FAA8F;IAC9F,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;CACvB;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,CAAC,eAAe,CAAC,EAAE,IAAI,CAAA;IAChC,UAAU,IAAI,QAAQ,CAAA;IACtB,UAAU,CAAC,IAAI;QACb,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;QACvB,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAC,CAAC,GAAG,SAAS,CAAA;QAClF,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CAAA;KACnC,CAAA;IACD;0GACsG;IACtG,QAAQ,CAAC,KAAK,CAAC,EAAE,WAAW,CAAA;CAC7B;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,cAAc,CAOxE;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,WAAW,EAClB,GAAG,EAAE,MAAM,GACV,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAIpC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,MAAM,CACpB,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,OAAO,EACd,IAAI,CAAC,EAAE;IAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;CAAE,GAC7D,cAAc,CAwBhB;AAED;;0BAE0B;AAC1B,wBAAgB,SAAS,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAExD;AAED;;;gFAGgF;AAChF,wBAAgB,QAAQ,CAAC,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAE3E;AAED;6FAC6F;AAC7F,eAAO,MAAM,iBAAiB,GAAI,SAAS,OAAO,CAAC,OAAO,CAAC,KAAG,IAE7D,CAAA;AAID,eAAO,MAAM,uBAAuB,EAAwB,MAAM,CAAA;AAElE,eAAO,MAAM,YAAY,aAAoB,CAAA;AAU7C,eAAO,MAAM,mBAAmB,QAAO,WAGtC,CAAA;AACD,eAAO,MAAM,yBAAyB,QAAO,aAG5C,CAAA"}
@@ -5,7 +5,8 @@
5
5
  * its values) so `request-context`, `respond`, `node-outcome`, and the kernel form a cycle-free graph.
6
6
  */
7
7
  import { createUnboundedRequestBudget } from "../budget.js";
8
- export const RESPONSE_RESULT = Symbol.for("nifra.response.result");
8
+ import { NODE_BRIDGE_MARKER_KEYS } from "./bridge-markers.js";
9
+ export const RESPONSE_RESULT = Symbol.for(NODE_BRIDGE_MARKER_KEYS.responseResult);
9
10
  export const CONTEXT_SET = Symbol("nifra.context.set");
10
11
  export const CONTEXT_SEARCH = Symbol("nifra.context.search");
11
12
  /**
@@ -22,6 +23,69 @@ export function isResponseResult(value) {
22
23
  value[RESPONSE_RESULT] === true &&
23
24
  typeof value.toResponse === "function");
24
25
  }
26
+ /**
27
+ * The headers a plain render ships: its own on top of whatever the request left in `c.set.headers`,
28
+ * so an ambient header (a request id, say) survives an early exit the way it survives an ordinary
29
+ * return, and a header named at the exit site still wins.
30
+ *
31
+ * Always a fresh object when the render has headers of its own: the node writers mutate the record
32
+ * they are handed (content-type, content-length, cookies), and a `status(...)` value is commonly
33
+ * hoisted to module scope and answered from on every request.
34
+ */
35
+ export function plainRenderHeaders(plain, set) {
36
+ const own = plain.headers;
37
+ if (own === undefined)
38
+ return set._headers;
39
+ return set._headers === undefined ? { ...own } : { ...set._headers, ...own };
40
+ }
41
+ /**
42
+ * Finish the request here, with this status and body, without building a `Response`.
43
+ *
44
+ * Returned or thrown, from a handler or from any lifecycle stage:
45
+ *
46
+ * ```ts
47
+ * app.derive((c) => {
48
+ * const user = sessionOf(c)
49
+ * if (user === undefined) return status(401, { error: "unauthorized" })
50
+ * return { user }
51
+ * })
52
+ * ```
53
+ *
54
+ * A `derive` is the reason this exists as a value rather than as a rule about `beforeHandle`: a
55
+ * `beforeHandle` already short-circuits by returning a value, but a `derive`'s return IS the context
56
+ * extension, so before this its only exit was `throw new Response(...)` - the most expensive way to
57
+ * say 401 (see {@link PlainRender} for the measurements). Returning it is preferred; throwing it
58
+ * carries the same cost as any other throw and stays supported so a guard helper called for effect
59
+ * (`requireSession(c)`) can still end the request from inside a call it makes.
60
+ *
61
+ * The body is serialized by the lane that renders it, exactly like a handler's plain return, so the
62
+ * response carries a `content-length` rather than falling to chunked, and queued cookies still apply.
63
+ */
64
+ export function status(code, body, init) {
65
+ // The range `Response` accepts, enforced HERE so the plain lane cannot outrun it. A plain render
66
+ // is written straight to the socket by the Node adapter, where `writeHead` takes 100-999 - so a
67
+ // status this rejects would otherwise ship on Node and throw on every Web runtime, from the same
68
+ // code. One integer comparison against the value already in a register; the divergence it closes
69
+ // is the kind that only shows up in the runtime an app did not test on.
70
+ if (!Number.isInteger(code) || code < 200 || code > 599) {
71
+ throw new RangeError(`[nifra] status(${String(code)}): HTTP status must be an integer 200-599`);
72
+ }
73
+ const headers = init?.headers;
74
+ const plain = headers === undefined ? { status: code, body } : { status: code, headers, body };
75
+ return {
76
+ [RESPONSE_RESULT]: true,
77
+ plain,
78
+ // Only the lanes that cannot take plain data reach this - an edge runtime handed the value by a
79
+ // caller outside the server, say. Built on demand, never on the lanes that matter.
80
+ toResponse() {
81
+ const headers = { ...init?.headers };
82
+ if (body === undefined)
83
+ return new Response(null, { status: code, headers });
84
+ headers["content-type"] ??= "application/json;charset=utf-8";
85
+ return new Response(JSON.stringify(body), { status: code, headers });
86
+ },
87
+ };
88
+ }
25
89
  /** The concrete `Request` for a source - itself when a real `Request` was passed (the Web path), or the
26
90
  * lazily-built one (the Node adapter). A real `Request` IS a `RequestSource`, so no wrapper is allocated
27
91
  * on the Web hot path. */
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-core.js","sourceRoot":"","sources":["../../src/server/runtime-core.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,4BAA4B,EAAsB,MAAM,cAAc,CAAA;AAM/E,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAA;AAClE,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC,mBAAmB,CAAC,CAAA;AACtD,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,sBAAsB,CAAC,CAAA;AAE5D;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,MAAM,CAAC,uBAAuB,CAAC,CAAA;AAiB/D,MAAM,UAAU,gBAAgB,CAAC,KAAc;IAC7C,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACb,KAAkD,CAAC,eAAe,CAAC,KAAK,IAAI;QAC7E,OAAQ,KAA2C,CAAC,UAAU,KAAK,UAAU,CAC9E,CAAA;AACH,CAAC;AAED;;0BAE0B;AAC1B,MAAM,UAAU,SAAS,CAAC,MAAqB;IAC7C,OAAO,MAAM,CAAC,OAAO,IAAK,MAA6B,CAAA;AACzD,CAAC;AAED;;;gFAGgF;AAChF,MAAM,UAAU,QAAQ,CAAC,MAAqB,EAAE,IAAY;IAC1D,OAAO,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;AACrF,CAAC;AAED;6FAC6F;AAC7F,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,OAAyB,EAAQ,EAAE;IACnE,KAAK,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;AAC9B,CAAC,CAAA;AAED,iGAAiG;AACjG,gGAAgG;AAChG,MAAM,CAAC,MAAM,uBAAuB,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,CAAW,CAAA;AAElE,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,WAAW,EAAE,CAAA;AAE7C;;;;;GAKG;AACH,IAAI,gBAAyC,CAAA;AAC7C,IAAI,sBAAiD,CAAA;AACrD,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAgB,EAAE;IACnD,gBAAgB,KAAK,IAAI,eAAe,EAAE,CAAC,MAAM,CAAA;IACjD,OAAO,gBAAgB,CAAA;AACzB,CAAC,CAAA;AACD,MAAM,CAAC,MAAM,yBAAyB,GAAG,GAAkB,EAAE;IAC3D,sBAAsB,KAAK,4BAA4B,CAAC,mBAAmB,EAAE,CAAC,CAAA;IAC9E,OAAO,sBAAsB,CAAA;AAC/B,CAAC,CAAA"}
1
+ {"version":3,"file":"runtime-core.js","sourceRoot":"","sources":["../../src/server/runtime-core.ts"],"names":[],"mappings":"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"}
@@ -140,6 +140,21 @@ export interface ServerOptions {
140
140
  * Fastify's `setErrorHandler`) instead of repeating a formatter per route.
141
141
  */
142
142
  readonly onValidationError?: RouteSchema["onValidationError"];
143
+ /**
144
+ * What to do when an order-scoped hook (`derive`/`beforeHandle`/`around`/`aroundCapability`/
145
+ * `afterHandle`/`onError`/`decorate`) covers no route because it was added after the last route was
146
+ * registered. `register()` snapshots the current chain into each route as it is declared, so a hook
147
+ * appended after every route reaches nothing and is silently dead. `"warn"` (default) logs once at
148
+ * seal (first `listen()`/`fetch`/`resolveNode`); `"error"` throws a `FrameworkError`
149
+ * (`UNUSED_SCOPED_HOOKS`); `"off"` skips the bookkeeping entirely, including the one-frame stack
150
+ * capture. App-global hooks (`onRequest`/`onResponse`/...) are unaffected in every mode.
151
+ *
152
+ * This is a development-time diagnostic: the whole audit is guarded by `process.env.NODE_ENV !==
153
+ * "production"`, so any bundler that defines `NODE_ENV` (vite/esbuild/webpack/next, `bun build
154
+ * --production`) dead-code-eliminates it, leaving zero bytes and zero per-request cost in the shipped
155
+ * bundle. It fires in development, test, and CI - where you catch the mistake - not in production.
156
+ */
157
+ readonly unusedScopedHooks?: "warn" | "error" | "off";
143
158
  }
144
159
  /** A fetch-compatible handler used by {@link Server.mountFetch}. */
145
160
  export type FetchHandler<Env = unknown> = (request: Request, platform?: Platform<Env>) => MaybePromise<Response>;
@@ -234,7 +249,9 @@ export interface RunningServer {
234
249
  /**
235
250
  * A bundle of lifecycle hooks applied together via {@link Server.use} - the unit
236
251
  * `@nifrajs/middleware` ships (cors, security headers, rate-limit). Every hook is
237
- * optional and wired to its lifecycle point. Middleware is context-agnostic (sees
252
+ * optional and wired to its lifecycle point. Middleware carrying a portable response tier must be
253
+ * marked with `withResponseObserver()` from `@nifrajs/core/response-observer`, or the server must
254
+ * install `responseObserver()` before the bundle is applied. Middleware is context-agnostic (sees
238
255
  * the base `Context`); `use` does no context-type merging - the full type-merging
239
256
  * plugin system is deferred, and `.use` is reserved as its future entry point.
240
257
  */
@@ -1 +1 @@
1
- {"version":3,"file":"server-types.d.ts","sourceRoot":"","sources":["../../src/server/server-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server-types.d.ts","sourceRoot":"","sources":["../../src/server/server-types.ts"],"names":[],"mappings":"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"}
@@ -2,22 +2,24 @@ import { type RequestBudget } from "../budget.js";
2
2
  import type { EffectLifecycleObserver } from "../effect-lifecycle.js";
3
3
  import type { Version } from "../index.js";
4
4
  import { type AroundCapabilityOptions, type CapabilityInterceptor } from "../internal/capability-runtime.js";
5
+ import type { ResponseObserverPlugin } from "../response-observer.js";
5
6
  import { type Method } from "../router/router.js";
6
- import type { InferOutput, StandardSchemaV1 } from "../schema/standard.js";
7
+ import type { InferOutput, StandardIssue, StandardSchemaV1 } from "../schema/standard.js";
7
8
  import { type RawBodyReaders } from "./body.js";
8
9
  import type { Context, Platform, ResponseControls, RouteSchema } from "./context.js";
9
10
  import { type UrlParts } from "./http.js";
10
11
  import { type NodeServeOutcome } from "./node-outcome.js";
11
- import { type NodeOutcomeRuntime, type NodeRequestContext, type NodeRequestHook, type NodeResponseContext, type NodeResponseHook, type ResponseBodyHook, type ResponseBodyReplacement, type ResponseHeadersHook, type ResponseHeadersView } from "./node-outcome-hook.js";
12
+ import type { NodeOutcomeRuntime, NodeRequestContext, NodeRequestHook, NodeResponseContext, NodeResponseHook, ResponseBodyHook, ResponseBodyReplacement, ResponseHeadersHook, ResponseHeadersView } from "./node-outcome-hook.js";
12
13
  import { type QueryValue, queryObjectOf, searchOf } from "./query.js";
13
14
  import type { ResponseContractRuntime } from "./response-contract-lane.js";
14
- import { CONTEXT_SEARCH, CONTEXT_SET, type HandlerResult } from "./runtime-core.js";
15
+ import type { ResponseObserverMethods, ResponseObserverRuntime } from "./response-observer-runtime.js";
16
+ import { CONTEXT_SEARCH, CONTEXT_SET, type HandlerResult, type ResponseResult } from "./runtime-core.js";
15
17
  export type { NodeRequestContext, NodeRequestHook, NodeResponseContext, NodeResponseHook, NodeServeOutcome, ResponseBodyHook, ResponseBodyReplacement, ResponseHeadersHook, ResponseHeadersView, };
16
18
  import type { IdempotencyRuntime } from "./idempotency-lane.js";
17
- import { INSTALL_EFFECT_LEDGER, INSTALL_IDEMPOTENCY, INSTALL_MCP, INSTALL_NODE_DIRECT, INSTALL_RESPONSE_CONTRACT, INSTALL_SSE, INSTALL_WS } from "./install.js";
19
+ import { INSTALL_EFFECT_LEDGER, INSTALL_IDEMPOTENCY, INSTALL_MCP, INSTALL_NODE_DIRECT, INSTALL_RESPONSE_CONTRACT, INSTALL_RESPONSE_OBSERVER, INSTALL_SSE, INSTALL_WS, RESOLVE_NODE_MOUNT } from "./install.js";
18
20
  import type { EffectLedgerRuntime } from "./ledger-lane.js";
19
21
  import type { McpRuntime } from "./mcp-hook.js";
20
- import type { ContextPlugin, IdentityPlugin } from "./plugin.js";
22
+ import type { ContextPlugin, IdentityPlugin, PluginTypeCollapsed, ServerTypeUnpinned } from "./plugin.js";
21
23
  import type { AddRoute, EmptyRegistry, OutputOf, Registry, RouteInfoFor, WsRouteInfoFor } from "./registry.js";
22
24
  import type { AdmissionController, AdmissionDecision, FetchHandler, McpPromptDescriptor, McpResourceDescriptor, Middleware, MountFetchOptions, PromptArgument, PromptMessage, ResponseFinalization, RouteDescriptor, RunningServer, ServerOptions, StopHook, ToolAnnotations } from "./server-types.js";
23
25
  import type { SSEInit, TypedSSEStream } from "./sse.js";
@@ -87,12 +89,23 @@ export interface RawContext {
87
89
  readonly boundedJson: <T = unknown>(maxBytes?: number) => Promise<T>;
88
90
  }
89
91
  export type OnRequestResult = Response | Request | undefined;
92
+ /** Structural native mount contract. The serving adapter owns the concrete Node request/response
93
+ * types; the kernel only selects a handler after proving that taking this lane cannot skip its
94
+ * global lifecycle. `false` means the capability was unavailable at runtime, so the adapter must
95
+ * retry the ordinary Web mount with the same untouched source. */
96
+ type NativeMountHandler = (request: unknown, response: unknown, platform?: Platform) => MaybePromise<undefined | false>;
97
+ interface NativeMountSelection {
98
+ readonly handler: NativeMountHandler;
99
+ readonly path: string;
100
+ readonly stripPrefix: boolean;
101
+ }
90
102
  /** The handler's permitted return type. When the route declares a `response` schema, the return is
91
- * constrained to the contract's type (or a raw `Response`) - so the implementation can't drift from the
92
- * declared contract. Without a `response` schema it's unconstrained (`HandlerResult`), exactly as before. */
103
+ * constrained to the contract's type (a raw `Response`, or a `status(...)` early exit - both are
104
+ * control flow, not the declared payload) - so the implementation can't drift from the declared
105
+ * contract. Without a `response` schema it's unconstrained (`HandlerResult`), exactly as before. */
93
106
  type ResponseOf<S extends RouteSchema> = S extends {
94
107
  response: infer R extends StandardSchemaV1;
95
- } ? InferOutput<R> | Response : HandlerResult;
108
+ } ? InferOutput<R> | Response | ResponseResult : HandlerResult;
96
109
  /**
97
110
  * Public handler shape: context typed from the path, the (optional) schema, and
98
111
  * any accumulated middleware context `Ctx` (from `derive`/`decorate`).
@@ -102,6 +115,10 @@ export type { AdmissionController, AdmissionDecision, FetchHandler, McpPromptDes
102
115
  export type AnyServer = Server<any, any>;
103
116
  export { type ContextPlugin, type DefinePluginResult, defineContextPlugin, defineIdentityPlugin, definePlugin, defineRouterPlugin, type NifraPlugin, type PluginTypeCollapsed, } from "./plugin.js";
104
117
  export type { IdentityPlugin };
118
+ /** The 422 as plain data - the shape every lane's response wrapper takes, so a rejected body costs
119
+ * what an accepted one costs: on Node it is written straight to the socket with a `content-length`
120
+ * instead of being built as a `Response` and drained back out. */
121
+ export declare function plainValidationError(issues: ReadonlyArray<StandardIssue>): ResponseResult;
105
122
  export { pathnameOf, urlPartsOf } from "./http.js";
106
123
  export { type QueryValue, queryObjectOf, searchOf };
107
124
  /** `ctx.set` carrying the lazy backings (`_headers`, `_cookies`) so `toResponse` can skip allocating
@@ -249,21 +266,42 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
249
266
  * Mounted responses are outside Nifra's typed route and response-contract checks.
250
267
  */
251
268
  mountFetch(path: string, handler: FetchHandler<EnvOf<Ctx>>, options?: MountFetchOptions): this;
252
- /** Add a per-request, computed context extension for subsequent routes. */
253
- derive<D extends object>(fn: (context: Context & Ctx) => MaybePromise<D>): Server<R, Ctx & D>;
254
- /** Add a static context value for subsequent routes. */
269
+ /**
270
+ * Add a per-request, computed context extension. Order-scoped: it is snapshotted into every route
271
+ * declared *after* this call, and reaches none declared before. One added after the last route
272
+ * (e.g. on the app returned by a route-registering factory) covers nothing - see
273
+ * {@link ServerOptions.unusedScopedHooks}.
274
+ *
275
+ * Returning a `status(...)` (or a `Response`) instead of an extension ends the request there - the
276
+ * guard shape, and the cheap one: it renders as plain data on the same lane a handler's return
277
+ * takes, where `throw new Response(...)` pays ~40% of the rejection lane to build the object. That
278
+ * branch is control flow, so it does not widen the derived context type.
279
+ */
280
+ derive<D extends object>(fn: (context: Context & Ctx) => MaybePromise<D | ResponseResult | Response>): Server<R, Ctx & D>;
281
+ /**
282
+ * Add a static context value. Order-scoped: captured by every route declared *after* this call, and
283
+ * by none before; one added after the last route reaches nothing
284
+ * (see {@link ServerOptions.unusedScopedHooks}).
285
+ */
255
286
  decorate<const K extends string, V>(key: K, value: V): Server<R, Ctx & Record<K, V>>;
256
287
  /**
257
288
  * Run before routing on the raw request. Return a `Response` to short-circuit, or a replacement
258
289
  * `Request` to continue routing with a rewritten method/URL/headers. Global.
259
290
  */
260
291
  onRequest(fn: (req: Request, platform?: Platform<EnvOf<Ctx>>) => MaybePromise<OnRequestResult>): this;
261
- /** Run after validation, before the handler; a non-`undefined` return short-circuits. Order-scoped. */
292
+ /**
293
+ * Run after validation, before the handler; a non-`undefined` return short-circuits. Order-scoped:
294
+ * it is snapshotted into every route declared *after* this call and covers none declared before, so
295
+ * one added after the last route reaches nothing (see {@link ServerOptions.unusedScopedHooks}).
296
+ */
262
297
  beforeHandle(fn: (context: Context & Ctx) => MaybePromise<unknown>): this;
263
298
  /**
264
299
  * Wrap the matched route lifecycle for subsequent routes. This is intentionally generic over the
265
300
  * route output, so wrappers like async context storage do not force Node's direct JSON path through
266
301
  * a Web `Response`. The first registered wrapper is outermost.
302
+ *
303
+ * Order-scoped: captured by every route declared *after* this call, none before; one added after the
304
+ * last route reaches nothing (see {@link ServerOptions.unusedScopedHooks}).
267
305
  */
268
306
  around(fn: <T>(context: Context & Ctx, next: () => MaybePromise<T>) => MaybePromise<T>): this;
269
307
  /**
@@ -274,9 +312,13 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
274
312
  aroundCapability(interceptor: CapabilityInterceptor, options?: AroundCapabilityOptions): this;
275
313
  /** Observe token-only admission/execution lifecycle events for subsequent capability routes. */
276
314
  observeCapability(observer: EffectLifecycleObserver): this;
277
- /** Transform the handler's result before it is serialized. Order-scoped. */
315
+ /** Transform the handler's result before it is serialized. Order-scoped: captured by routes declared
316
+ * *after* this call, none before; one added after the last route reaches nothing (see
317
+ * {@link ServerOptions.unusedScopedHooks}). */
278
318
  afterHandle(fn: (result: unknown, context: Context & Ctx) => MaybePromise<unknown>): this;
279
- /** Handle a thrown error; a non-`undefined` return becomes the response (else the default 500). Order-scoped. */
319
+ /** Handle a thrown error; a non-`undefined` return becomes the response (else the default 500).
320
+ * Order-scoped: captured by routes declared *after* this call, none before; one added after the last
321
+ * route reaches nothing (see {@link ServerOptions.unusedScopedHooks}). */
280
322
  onError(fn: (error: unknown, context: Context & Ctx) => MaybePromise<unknown>): this;
281
323
  /** Transform every outgoing response - success, error, 404, 405, short-circuit. Global. */
282
324
  onResponse(fn: (response: Response, req: Request) => MaybePromise<Response>): this;
@@ -308,39 +350,15 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
308
350
  * hook owns part of the header state - into a hook that runs in the right order. */
309
351
  private addStaticResponseHeaders;
310
352
  private enableResponseBodyTagging;
311
- /**
312
- * Register a response transform for raw/streamed Responses. Framework-serialized payloads stay on
313
- * the body tier; this hook is only entered for untagged Responses (streams, proxied fetches, and
314
- * framework-generated error responses). A no-op native twin keeps buffered JSON on the direct lane.
315
- */
316
- onResponseRaw(fn: (response: Response, req: Request) => MaybePromise<Response>): this;
317
- /**
318
- * Register a PORTABLE header-only response hook - one implementation, fast on every runtime.
319
- *
320
- * The hook receives a mutable case-insensitive header view, a minimal request view, and the
321
- * status. On the Web serving paths it runs inside the normal `onResponse` walk against the
322
- * response's own `Headers` (mutating in place - no clone). On Node it self-pairs as a native
323
- * response hook against the outcome's plain header record, so registering one NEVER forces the
324
- * Node adapter off its direct socket writer the way a full `onResponse(res: Response)` hook does.
325
- * Prefer this over `onResponse` whenever the middleware only reads/writes headers.
326
- */
327
- onResponseHeaders(fn: ResponseHeadersHook): this;
328
- /**
329
- * Register a PORTABLE post-serialization body hook - the payload tier. The hook receives the
330
- * FINAL framework-serialized bytes (plus the mutable header view and status) and may return
331
- * replacement bytes; `undefined` keeps the body. On the Node direct writer the bytes come
332
- * straight off the outcome record; on the Web serving paths they ride the framework-built
333
- * Response as a tag, so no body stream is ever drained on any runtime. A handler-returned raw
334
- * `Response` (proxied fetch, SSE, streamed SSR) is skipped by contract - transforming those is
335
- * what the full `onResponse` hook is for.
336
- */
337
- onResponseBody(fn: ResponseBodyHook): this;
353
+ private responseObserverMethods;
338
354
  /** Observe the terminal response after all transformations. Observers are ordered and fail-open. */
339
355
  onResponseFinalized(fn: (outcome: ResponseFinalization, req: Request) => MaybePromise<void>): this;
356
+ /** Enable the opt-in portable response observer methods. */
357
+ use(plugin: ResponseObserverPlugin): this & ResponseObserverMethods;
340
358
  /**
341
359
  * Apply a type-**identity** plugin ({@link IdentityPlugin}, from {@link defineIdentityPlugin}) - it
342
360
  * registers routes/hooks but doesn't change the types, so this returns `this` with the route registry
343
- * and context fully intact. This overload exists specifically so a *named* identity plugin (e.g.
361
+ * and context fully intact. This overload exists specifically so a named identity plugin (e.g.
344
362
  * `@nifrajs/better-auth`) threads the registry: its `& { pluginName }` intersection would otherwise
345
363
  * defeat the generic inference of the transforming overload below and collapse the result to `any`.
346
364
  */
@@ -358,13 +376,21 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
358
376
  * called with `this` and its result is returned, so an inline plugin's `derive`/`decorate` thread
359
377
  * the added context to handlers defined after `use` (the overload is generic over the concrete
360
378
  * `this`). A named plugin already applied is skipped (idempotent dedupe).
379
+ *
380
+ * If the plugin's return type is unpinned - `Server<any, any>`, as a hand-rolled `(app) => app` or a
381
+ * `NifraPlugin<AnyServer, AnyServer>` infers (e.g. an auth plugin whose own types collapsed) - this
382
+ * returns the non-callable {@link PluginTypeCollapsed} instead of silently widening the whole typed
383
+ * client to `any`. `.get()`/`.post()` then fail right here rather than surfacing as `any` hundreds of
384
+ * lines away. Fix at the plugin: build it with {@link defineIdentityPlugin}/{@link defineContextPlugin},
385
+ * or pin its input server type. This mirrors the guard {@link definePlugin} already applies.
361
386
  */
362
- use<Out extends AnyServer>(plugin: (app: this) => Out): Out;
387
+ use<Out extends AnyServer>(plugin: (app: this) => Out): [ServerTypeUnpinned<Out>] extends [true] ? PluginTypeCollapsed : Out;
363
388
  /**
364
389
  * Apply a {@link Middleware} bundle - wire each hook it provides to its lifecycle point. Returns
365
390
  * `this` (no context-type merging); call it before the routes its `beforeHandle`/`afterHandle`
366
- * should cover (those are order-scoped; `onRequest`/`onResponse` are global). A named bundle already
367
- * applied is skipped (idempotent).
391
+ * should cover (those are order-scoped; `onRequest`/`onResponse` are global). A bundle applied after
392
+ * the last route reaches nothing - {@link ServerOptions.unusedScopedHooks} logs that at seal. A named
393
+ * bundle already applied is skipped (idempotent).
368
394
  */
369
395
  use(mw: Middleware): this;
370
396
  get<Path extends string, S extends RouteSchema, H extends Handler<Path, S, Ctx>>(path: Path, schema: S, handler: H): Server<AddRoute<R, "GET", Path, RouteInfoFor<Path, S, OutputOf<H>>>, Ctx>;
@@ -491,6 +517,8 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
491
517
  private idempotencyRunLanes;
492
518
  /** @internal Symbol-keyed install seam for the `responseContract()` plugin. Off the public typed surface. */
493
519
  [INSTALL_RESPONSE_CONTRACT](runtime: ResponseContractRuntime): void;
520
+ /** @internal Symbol-keyed install seam for the response observer plugin. */
521
+ [INSTALL_RESPONSE_OBSERVER](runtime: ResponseObserverRuntime): ResponseObserverMethods;
494
522
  /** @internal Symbol-keyed install seam for the `idempotency()` plugin. Off the public typed surface. */
495
523
  [INSTALL_IDEMPOTENCY](runtime: IdempotencyRuntime): void;
496
524
  /** @internal Symbol-keyed install seam for the `mcp()` plugin. Off the public typed surface. */
@@ -555,6 +583,14 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
555
583
  */
556
584
  private admitGated;
557
585
  private runAdmitted;
586
+ /**
587
+ * Select a mounted handler's native Node lane without materializing a Web Request. This is an
588
+ * adapter seam, not a second lifecycle: any app-wide behavior that the ordinary mount path would
589
+ * run makes the capability ineligible and the caller falls back to `resolveNodeSource`. Typed
590
+ * routes keep precedence exactly as `routeAndRun` does, including the existing mount behavior for
591
+ * a path whose registered route rejects this method.
592
+ */
593
+ [RESOLVE_NODE_MOUNT](source: RequestSource): NativeMountSelection | undefined;
558
594
  /**
559
595
  * Like {@link fetch}, but renders a plain-data result **without** building a Web `Response` - the
560
596
  * `@nifrajs/node` adapter serializes the returned primitives straight to the socket, skipping the undici
@@ -681,9 +717,6 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
681
717
  private runWithAround;
682
718
  private runAround;
683
719
  private runBodyOnly;
684
- /** Shared bounded body framing/parser. Both body lanes use the same trust-boundary checks; only
685
- * the validation + handler continuation differs. */
686
- private readBodyInput;
687
720
  /** Validate + run the handler for the bodyOnly path - shared by the inline fast path and the
688
721
  * streaming fallback. A method (not per-request closures) so the hot path allocates nothing
689
722
  * beyond the one `.then` continuation. */
@@ -753,7 +786,15 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
753
786
  private continueLifecycleAfterHandle;
754
787
  private finishLifecycleContract;
755
788
  private finishContractOutcome;
789
+ /** Synchronous by design, and `MaybePromise` rather than `Promise` for the same reason: control flow
790
+ * out of a lifecycle stage must not cost a promise. An `async` method allocates one and defers the
791
+ * result a microtask even when every branch it takes returns immediately, which is the common case
792
+ * here - a thrown `status(...)`/`Response`, or a route with no `onError` hook at all. Only the hook
793
+ * loop, which may await, drops into {@link runErrorHooks}. */
756
794
  private handleLifecycleError;
795
+ /** The `onError` chain, split off {@link handleLifecycleError} so its `await` costs only the routes
796
+ * that registered a hook. A hook may return a custom response; otherwise the default 500 stands. */
797
+ private runErrorHooks;
757
798
  /** Log an unhandled request error to the (redacting) logger - shared by {@link runLifecycle} and the
758
799
  * bare fast path ({@link bareError}) so both record the same fields. Never throws; never leaks. */
759
800
  private logRequestError;
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/server/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,aAAa,EACnB,MAAM,cAAc,CAAA;AACrB,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAA;AAGrE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAC1C,OAAO,EACL,KAAK,uBAAuB,EAE5B,KAAK,qBAAqB,EAM3B,MAAM,mCAAmC,CAAA;AAuB1C,OAAO,EAAgB,KAAK,MAAM,EAAU,MAAM,qBAAqB,CAAA;AACvE,OAAO,KAAK,EACV,WAAW,EAGX,gBAAgB,EACjB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAIL,KAAK,cAAc,EACpB,MAAM,WAAW,CAAA;AAElB,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAOpF,OAAO,EAAyB,KAAK,QAAQ,EAAc,MAAM,WAAW,CAAA;AAC5E,OAAO,EAAE,KAAK,gBAAgB,EAAyB,MAAM,mBAAmB,CAAA;AAChF,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,uBAAuB,EAC5B,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EAEzB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAEL,KAAK,UAAU,EACf,aAAa,EAEb,QAAQ,EACT,MAAM,YAAY,CAAA;AAcnB,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAA;AAE1E,OAAO,EACL,cAAc,EACd,WAAW,EAIX,KAAK,aAAa,EAGnB,MAAM,mBAAmB,CAAA;AAK1B,YAAY,EACV,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EACnB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,uBAAuB,EACvB,mBAAmB,EACnB,mBAAmB,GACpB,CAAA;AA4FD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AAC/D,OAAO,EACL,qBAAqB,EACrB,mBAAmB,EACnB,WAAW,EACX,mBAAmB,EACnB,yBAAyB,EACzB,WAAW,EACX,UAAU,EACX,MAAM,cAAc,CAAA;AACrB,OAAO,KAAK,EAAE,mBAAmB,EAAwB,MAAM,kBAAkB,CAAA;AAEjF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC/C,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAChE,OAAO,KAAK,EACV,QAAQ,EACR,aAAa,EACb,QAAQ,EACR,QAAQ,EACR,YAAY,EACZ,cAAc,EACf,MAAM,eAAe,CAAA;AACtB,OAAO,KAAK,EACV,mBAAmB,EACnB,iBAAiB,EACjB,YAAY,EACZ,mBAAmB,EACnB,qBAAqB,EACrB,UAAU,EACV,iBAAiB,EACjB,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,eAAe,EACf,aAAa,EACb,aAAa,EACb,QAAQ,EACR,eAAe,EAChB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AACvD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC/C,OAAO,KAAK,EAGV,gBAAgB,EAChB,uBAAuB,EACxB,MAAM,gBAAgB,CAAA;AAEvB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAE7C,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;AAE5C;;;;;;GAMG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IACzB,MAAM,CAAC,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;IACpC;uFACmF;IACnF,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAA;IAC5B,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC,UAAU,CAAC,GAAG,IAAI,CAAA;IAChD,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC,CAAA;IACnC,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC,CAAA;IACxB,uFAAuF;IACvF,KAAK,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,CAAA;IAC7B;qGACiG;IACjG,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;IAC1B;;;uGAGmG;IACnG,cAAc,CAAC,IAAI,cAAc,CAAA;CAClC;AAED,kGAAkG;AAClG,KAAK,YAAY,GAAG,WAAW,CAAC,OAAO,CAAC,CAAA;AAExC;;;;GAIG;AACH,KAAK,KAAK,CAAC,GAAG,IAAI,GAAG,SAAS;IAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;CAAE,GAAG,CAAC,GAAG,OAAO,CAAA;AAOrE,wGAAwG;AACxG,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAA;IACrB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,YAAY,GAAG,MAAM,KAAK,QAAQ,CAAA;IACxE,QAAQ,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,YAAY,GAAG,MAAM,KAAK,QAAQ,CAAA;IAGvE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC9B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC/B,KAAK,EAAE,OAAO,CAAA;IACd,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IAClD,IAAI,EAAE,OAAO,CAAA;IACb,QAAQ,CAAC,GAAG,EAAE,gBAAgB,CAAA;IAC9B,QAAQ,CAAC,CAAC,WAAW,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,CAAA;IAChD,QAAQ,CAAC,CAAC,cAAc,CAAC,EAAE,MAAM,CAAA;IACjC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAA;IAC5B,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAA;IAC9B,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAA;IACrB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAA;IACrC,QAAQ,CAAC,SAAS,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,IAAI,CAAA;IACvD,QAAQ,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,CAAA;IAChE,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC,GAAG,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,CAAA;CACrE;AAKD,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,CAAA;AAsF5D;;6GAE6G;AAC7G,KAAK,UAAU,CAAC,CAAC,SAAS,WAAW,IAAI,CAAC,SAAS;IAAE,QAAQ,EAAE,MAAM,CAAC,SAAS,gBAAgB,CAAA;CAAE,GAC7F,WAAW,CAAC,CAAC,CAAC,GAAG,QAAQ,GACzB,aAAa,CAAA;AAEjB;;;GAGG;AACH,MAAM,MAAM,OAAO,CACjB,IAAI,SAAS,MAAM,EACnB,CAAC,SAAS,WAAW,GAAG,WAAW,EACnC,GAAG,GAAG,YAAY,IAChB,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,GAAG,KAAK,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;AAIhE,YAAY,EACV,mBAAmB,EACnB,iBAAiB,EACjB,YAAY,EACZ,mBAAmB,EACnB,qBAAqB,EACrB,UAAU,EACV,iBAAiB,EACjB,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,eAAe,EACf,aAAa,EACb,aAAa,EACb,QAAQ,EACR,eAAe,GAChB,CAAA;AAKD,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;AAIxC,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,mBAAmB,EACnB,oBAAoB,EACpB,YAAY,EACZ,kBAAkB,EAClB,KAAK,WAAW,EAChB,KAAK,mBAAmB,GACzB,MAAM,aAAa,CAAA;AACpB,YAAY,EAAE,cAAc,EAAE,CAAA;AAsB9B,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAGlD,OAAO,EAAE,KAAK,UAAU,EAAE,aAAa,EAAE,QAAQ,EAAE,CAAA;AAmCnD;kEACkE;AAClE,MAAM,MAAM,MAAM,GAAG,gBAAgB,GAAG;IACtC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACjC,kGAAkG;IAClG,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;CACpB,CAAA;AAeD,+FAA+F;AAC/F,KAAK,gBAAgB,CAAC,CAAC,SAAS,MAAM,IAAI,CAAC,SAAS,GAAG,MAAM,KAAK,IAAI,MAAM,KAAK,IAAI,MAAM,EAAE,GACzF,GAAG,KAAK,IAAI,KAAK,EAAE,GACnB,CAAC,CAAA;AAEL;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAA;AAM3D;;;;;;;GAOG;AACH,qBAAa,MAAM,CAAC,CAAC,SAAS,QAAQ,GAAG,aAAa,EAAE,GAAG,GAAG,YAAY;IACxE;;;;;;;;OAQG;IACH,SAAiB,kBAAkB,EAAE,mBAAmB,CAAA;IACxD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAc;IACtC,2FAA2F;IAC3F,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAiB;IAC1C,OAAO,CAAC,YAAY,CAAQ;IAC5B;;4DAEwD;IACxD,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAQ;IACrC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA+B;IAC9D,gGAAgG;IAChG,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAQ;IAC1C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAQ;IACzC;iGAC6F;IAC7F,OAAO,CAAC,uBAAuB,CAAqC;IACpE,wGAAwG;IACxG,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA2B;IACzD,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAS;IAChD,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAQ;IAC7C,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAA0B;IACnE,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;IACzC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAY;IACtC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAc;IAC1C,kFAAkF;IAClF,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAiC;IAC9D,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAmD;IACnF,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAmC;IAC1E,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAA2B;IAC/D;qEACiE;IACjE,OAAO,CAAC,mBAAmB,CAAiC;IAC5D;mEAC+D;IAC/D,OAAO,CAAC,kBAAkB,CAAgC;IAC1D,yGAAyG;IACzG,OAAO,CAAC,UAAU,CAAwB;IAC1C,iHAAiH;IACjH,OAAO,CAAC,kBAAkB,CAAgC;IAC1D,8FAA8F;IAC9F,OAAO,CAAC,UAAU,CAAwB;IAC1C,6FAA6F;IAC7F,OAAO,CAAC,SAAS,CAAuB;IACxC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAQ;IAC/B,0GAA0G;IAC1G,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA6B;IAC5D,qGAAqG;IACrG,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAkC;IAC5E,OAAO,CAAC,SAAS,CAA2B;IAC5C,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAa;IACrC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAyB;IACrD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAmB;IACrD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAkB;IACnD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAmB;IAChD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAa;IACzC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAgB;IAC/C,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAoC;IACvE,oEAAoE;IACpE,OAAO,CAAC,wBAAwB,CAAS;IACzC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAiB;IACjD,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAqC;IACzE,qEAAqE;IACrE,OAAO,CAAC,yBAAyB,CAAS;IAC1C;;;;;OAKG;IACH,OAAO,CAAC,sBAAsB,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAA0B;IACnE;;;;;OAKG;IACH,OAAO,CAAC,qBAAqB,CAAmC;IAChE;6FACyF;IACzF,OAAO,CAAC,eAAe,CAAkC;IACzD,OAAO,CAAC,kBAAkB,CAAgB;IAC1C,2FAA2F;IAC3F,OAAO,CAAC,eAAe,CAAoB;IAC3C,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAa;IAChD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAC2D;IAC5F,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA2B;IAC5D,iGAAiG;IACjG,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA0B;IAC1D,iGAAiG;IACjG,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAqC;IAClE,qFAAqF;IACrF,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAa;IAC5C,mFAAmF;IACnF,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAwB;IACxD,iFAAiF;IACjF,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAwB;IACxD,yGAAyG;IACzG,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAyB;IACzD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAuB;gBACzC,OAAO,GAAE,aAAkB;IA2EvC,OAAO,CAAC,kBAAkB;IAS1B,oGAAoG;IACpG,MAAM,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI;IAO1B;;;;OAIG;IACH,UAAU,CACR,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EACjC,OAAO,GAAE,iBAAsB,GAC9B,IAAI;IAaP,2EAA2E;IAC3E,MAAM,CAAC,CAAC,SAAS,MAAM,EAAE,EAAE,EAAE,CAAC,OAAO,EAAE,OAAO,GAAG,GAAG,KAAK,YAAY,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC;IAM7F,wDAAwD;IACxD,QAAQ,CAAC,KAAK,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,EAAE,GAAG,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAMpF;;;OAGG;IACH,SAAS,CACP,EAAE,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,YAAY,CAAC,eAAe,CAAC,GACnF,IAAI;IAQP,uGAAuG;IACvG,YAAY,CAAC,EAAE,EAAE,CAAC,OAAO,EAAE,OAAO,GAAG,GAAG,KAAK,YAAY,CAAC,OAAO,CAAC,GAAG,IAAI;IAMzE;;;;OAIG;IACH,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,GAAG,GAAG,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC,CAAC,CAAC,KAAK,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI;IAM7F;;;;OAIG;IACH,gBAAgB,CACd,WAAW,EAAE,qBAAqB,EAClC,OAAO,GAAE,uBAA4B,GACpC,IAAI;IAgBP,gGAAgG;IAChG,iBAAiB,CAAC,QAAQ,EAAE,uBAAuB,GAAG,IAAI;IAS1D,4EAA4E;IAC5E,WAAW,CAAC,EAAE,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,GAAG,GAAG,KAAK,YAAY,CAAC,OAAO,CAAC,GAAG,IAAI;IAMzF,iHAAiH;IACjH,OAAO,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,GAAG,GAAG,KAAK,YAAY,CAAC,OAAO,CAAC,GAAG,IAAI;IAMpF,2FAA2F;IAC3F,UAAU,CAAC,EAAE,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,GAAG,EAAE,OAAO,KAAK,YAAY,CAAC,QAAQ,CAAC,GAAG,IAAI;IAQlF;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,eAAe,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,IAAI;IAK/D;wFACoF;IACpF,OAAO,CAAC,wBAAwB;IAmBhC,OAAO,CAAC,yBAAyB;IAQjC;;;;OAIG;IACH,aAAa,CAAC,EAAE,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,GAAG,EAAE,OAAO,KAAK,YAAY,CAAC,QAAQ,CAAC,GAAG,IAAI;IAQrF;;;;;;;;;OASG;IACH,iBAAiB,CAAC,EAAE,EAAE,mBAAmB,GAAG,IAAI;IAShD;;;;;;;;OAQG;IACH,cAAc,CAAC,EAAE,EAAE,gBAAgB,GAAG,IAAI;IAgB1C,oGAAoG;IACpG,mBAAmB,CACjB,EAAE,EAAE,CAAC,OAAO,EAAE,oBAAoB,EAAE,GAAG,EAAE,OAAO,KAAK,YAAY,CAAC,IAAI,CAAC,GACtE,IAAI;IAMP;;;;;;OAMG;IACH,GAAG,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI;IACjC;;;;;;OAMG;IACH,GAAG,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC;IACnE;;;;;OAKG;IACH,GAAG,CAAC,GAAG,SAAS,SAAS,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,GAAG,GAAG,GAAG;IAC3D;;;;;OAKG;IACH,GAAG,CAAC,EAAE,EAAE,UAAU,GAAG,IAAI;IAkEzB,GAAG,CAAC,IAAI,SAAS,MAAM,EAAE,CAAC,SAAS,WAAW,EAAE,CAAC,SAAS,OAAO,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,EAC7E,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,CAAC,EACT,OAAO,EAAE,CAAC,GACT,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC;IAC5E,GAAG,CAAC,IAAI,SAAS,MAAM,EAAE,CAAC,SAAS,OAAO,CAAC,IAAI,EAAE,WAAW,EAAE,GAAG,CAAC,EAChE,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,CAAC,GACT,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC;IAS/F;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,GAAG,CAAC,IAAI,SAAS,MAAM,EAAE,CAAC,SAAS,WAAW,GAAG;QAAE,GAAG,EAAE,gBAAgB,CAAA;KAAE,EACxE,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,CAAC,EACT,GAAG,EAAE,CACH,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,GAAG,EAC/B,MAAM,EAAE,cAAc,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAC1C,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,EACzB,IAAI,CAAC,EAAE,OAAO,GACb,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;IASzE,IAAI,CAAC,IAAI,SAAS,MAAM,EAAE,CAAC,SAAS,WAAW,EAAE,CAAC,SAAS,OAAO,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,EAC9E,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,CAAC,EACT,OAAO,EAAE,CAAC,GACT,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC;IAC7E,IAAI,CAAC,IAAI,SAAS,MAAM,EAAE,CAAC,SAAS,OAAO,CAAC,IAAI,EAAE,WAAW,EAAE,GAAG,CAAC,EACjE,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,CAAC,GACT,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC;IAShG,GAAG,CAAC,IAAI,SAAS,MAAM,EAAE,CAAC,SAAS,WAAW,EAAE,CAAC,SAAS,OAAO,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,EAC7E,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,CAAC,EACT,OAAO,EAAE,CAAC,GACT,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC;IAC5E,GAAG,CAAC,IAAI,SAAS,MAAM,EAAE,CAAC,SAAS,OAAO,CAAC,IAAI,EAAE,WAAW,EAAE,GAAG,CAAC,EAChE,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,CAAC,GACT,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC;IAS/F,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,CAAC,SAAS,WAAW,EAAE,CAAC,SAAS,OAAO,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,EAC/E,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,CAAC,EACT,OAAO,EAAE,CAAC,GACT,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC;IAC9E,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,CAAC,SAAS,OAAO,CAAC,IAAI,EAAE,WAAW,EAAE,GAAG,CAAC,EAClE,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,CAAC,GACT,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC;IASjG,MAAM,CAAC,IAAI,SAAS,MAAM,EAAE,CAAC,SAAS,WAAW,EAAE,CAAC,SAAS,OAAO,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,EAChF,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,CAAC,EACT,OAAO,EAAE,CAAC,GACT,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC;IAC/E,MAAM,CAAC,IAAI,SAAS,MAAM,EAAE,CAAC,SAAS,OAAO,CAAC,IAAI,EAAE,WAAW,EAAE,GAAG,CAAC,EACnE,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,CAAC,GACT,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC;IASlG;;;;;;;;;;;;OAYG;IACH,IAAI,CACF,IAAI,SAAS,MAAM,EACnB,CAAC,SAAS;QACR,WAAW,EAAE,MAAM,CAAA;QACnB,KAAK,EAAE,gBAAgB,CAAA;QACvB,MAAM,CAAC,EAAE,gBAAgB,CAAA;QACzB,WAAW,CAAC,EAAE,eAAe,CAAA;KAC9B,EACD,CAAC,SAAS,CACR,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAC9B,GAAG,EAAE,OAAO,GAAG,GAAG,KACf,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,gBAAgB,GAAG,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,OAAO,CAAC,EAE5F,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,CAAC,EACT,OAAO,EAAE,CAAC,GACT,MAAM,CACP,QAAQ,CACN,CAAC,EACD,MAAM,EACN,gBAAgB,IAAI,EAAE,EACtB,YAAY,CACV,gBAAgB,IAAI,EAAE,EACtB,CAAC,CAAC,QAAQ,CAAC,SAAS,gBAAgB,GAChC;QAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;QAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAA;KAAE,GAC3C;QAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAA;KAAE,EACxB,QAAQ,CAAC,CAAC,CAAC,CACZ,CACF,EACD,GAAG,CACJ;IA0BD;;;;;OAKG;IACH,QAAQ,CACN,GAAG,EAAE,MAAM,EACX,MAAM,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,EAC5F,IAAI,EAAE,qBAAqB,CAAC,MAAM,CAAC,GAClC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC;IAMjB;;;OAGG;IACH,MAAM,CACJ,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE;QAAE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,cAAc,EAAE,CAAA;KAAE,EACxF,OAAO,EAAE,mBAAmB,CAAC,SAAS,CAAC,GACtC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC;IAMjB,mFAAmF;IACnF,YAAY,IAAI,SAAS,qBAAqB,EAAE;IAIhD,+EAA+E;IAC/E,UAAU,IAAI,SAAS,mBAAmB,EAAE;IAI5C;;;;;;;;;;;;;;OAcG;IACH,EAAE,CACA,IAAI,GAAG,OAAO,EACd,MAAM,SAAS,gBAAgB,GAAG,SAAS,GAAG,SAAS,EACvD,IAAI,SAAS,gBAAgB,GAAG,SAAS,GAAG,SAAS,EACrD,IAAI,SAAS,MAAM,GAAG,MAAM,EAE5B,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,gBAAgB,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,GACxD,MAAM,SAAS,IAAI,GAClB,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,GACd,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC;IAe5E;;;;OAIG;IACH,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,WAAW,GAAG,IAAI;IAK1E,OAAO,CAAC,KAAK;IAqBb;;;;OAIG;IACH,QAAQ,CACN,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,WAAW,GAAG,SAAS,EAC/B,OAAO,EAAE,CAAC,OAAO,EAAE,KAAK,KAAK,OAAO,GACnC,IAAI;IAKP;2GACuG;IACvG,aAAa,CACX,MAAM,EAAE,SAAS;QACf,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;QACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;QACrB,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,SAAS,CAAA;QACxC,QAAQ,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,KAAK,KAAK,OAAO,CAAA;KAC9C,EAAE,GACF,IAAI;IAQP,OAAO,CAAC,YAAY;IAuTpB;qGACiG;IACjG,OAAO,CAAC,mBAAmB;IAsB3B,6GAA6G;IAC7G,CAAC,yBAAyB,CAAC,CAAC,OAAO,EAAE,uBAAuB,GAAG,IAAI;IAKnE,wGAAwG;IACxG,CAAC,mBAAmB,CAAC,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI;IAKxD,gGAAgG;IAChG,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI;IAKxC,uGAAuG;IACvG,CAAC,mBAAmB,CAAC,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI;IAKxD,sGAAsG;IACtG,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI;IAKxC,sGAAsG;IACtG,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,SAAS,GAAG,IAAI;IAKtC;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,KAAK,CAAC,EAAE,SAAS,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC;IAwF9E;uGACmG;IACnG,OAAO,CAAC,gBAAgB;IAuCxB;;;;OAIG;IACH,MAAM,IAAI,aAAa,CAAC,eAAe,CAAC;IAYxC;;;;OAIG;IACH,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC;IAS5E,OAAO,CAAC,WAAW;IASnB,OAAO,CAAC,gBAAgB;IA4BxB;wGACoG;IACpG,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,iBAAiB;IAwBzB;;;;;OAKG;IACH,OAAO,CAAC,UAAU;IAOlB,OAAO,CAAC,WAAW;IA0BnB;;;;;;;OAOG;IACH,WAAW,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,YAAY,CAAC,gBAAgB,CAAC;IAI1F,iBAAiB,CACf,MAAM,EAAE,aAAa,EACrB,QAAQ,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAC/B,eAAe,CAAC,EAAE,kBAAkB,GACnC,YAAY,CAAC,gBAAgB,CAAC;IAqEjC,uGAAuG;IACvG,OAAO,CAAC,qBAAqB;IAa7B,6FAA6F;IAC7F,OAAO,CAAC,uBAAuB;IAI/B,iHAAiH;IACjH,OAAO,CAAC,kBAAkB;IAiE1B,OAAO,CAAC,uBAAuB;IAsD/B,2EAA2E;IAC3E,OAAO,CAAC,sBAAsB;YAYhB,yBAAyB;IAWvC;;;;;;;OAOG;IACH,uBAAuB,CACrB,GAAG,EAAE,OAAO,EACZ,QAAQ,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAC9B,YAAY,CAAC,uBAAuB,CAAC;IA4ExC;;2FAEuF;IACvF,OAAO,CAAC,qBAAqB;IAgB7B;;;;;;OAMG;IACH;qGACiG;IACjG,OAAO,CAAC,cAAc;IAQtB,OAAO,CAAC,QAAQ;IA0BhB;oGACgG;IAChG,OAAO,CAAC,kBAAkB;YA+BZ,mBAAmB;IAoBjC,OAAO,CAAC,sBAAsB;IAI9B;;;;;;OAMG;IACH,OAAO,CAAC,gBAAgB;IA0CxB;2EACuE;YACzD,iBAAiB;IA6B/B,OAAO,CAAC,mBAAmB;IAkB3B;;;;;;OAMG;IACH,OAAO,CAAC,oBAAoB;IAe5B,gGAAgG;IAChG,OAAO,CAAC,uBAAuB;IAsB/B;;;;OAIG;IACH,OAAO,CAAC,WAAW;IAkFnB,OAAO,CAAC,UAAU;IAgBlB,2FAA2F;IAC3F,OAAO,CAAC,UAAU;IAyDlB,wFAAwF;IACxF,OAAO,CAAC,eAAe;IAoGvB,yGAAyG;IACzG,CAAC,qBAAqB,CAAC,CAAC,OAAO,EAAE,mBAAmB,GAAG,IAAI;IAK3D;0GACsG;IAGtG,OAAO,CAAC,kBAAkB;IA6C1B,OAAO,CAAC,oBAAoB;IAyB5B;;;;;;;OAOG;IAGH,OAAO,CAAC,OAAO;IAuBf;0GACsG;IACtG;;;;;;OAMG;IACH,OAAO,CAAC,aAAa;IAkIrB;;sGAEkG;IAClG,OAAO,CAAC,oBAAoB;IAoH5B;iGAC6F;IAC7F,OAAO,CAAC,iBAAiB;IAsBzB;;;;;;oDAMgD;IAChD,OAAO,CAAC,kBAAkB;IA6E1B,OAAO,CAAC,SAAS;IAQjB,OAAO,CAAC,aAAa;IAkBrB,OAAO,CAAC,SAAS;IAoBjB,OAAO,CAAC,WAAW;IAgBnB;wDACoD;IACpD,OAAO,CAAC,aAAa;IAiCrB;;8CAE0C;IAC1C,OAAO,CAAC,cAAc;IAoCtB,OAAO,CAAC,cAAc;IAsBtB,OAAO,CAAC,6BAA6B;IA8CrC,OAAO,CAAC,mBAAmB;IA0C3B,OAAO,CAAC,YAAY;IAmCpB;wDACoD;IACpD,OAAO,CAAC,oBAAoB;IAwC5B;;;;;;OAMG;IACH,OAAO,CAAC,eAAe;IAavB,OAAO,CAAC,0BAA0B;IAclC,OAAO,CAAC,4BAA4B;IAQpC,OAAO,CAAC,wBAAwB;IAkBhC,uFAAuF;IACvF,OAAO,CAAC,uBAAuB;IAuB/B,+FAA+F;YACjF,kBAAkB;IAahC;;;;OAIG;YACW,WAAW;IAoBzB;;;;OAIG;IACH,4GAA4G;IAG5G,OAAO,CAAC,YAAY;IAyEpB,OAAO,CAAC,8BAA8B;IA2BtC,OAAO,CAAC,wBAAwB;IA+BhC,+FAA+F;IAC/F,OAAO,CAAC,iBAAiB;IA8BzB,qGAAqG;IAGrG,OAAO,CAAC,gBAAgB;IAgBxB,2GAA2G;IAG3G,OAAO,CAAC,qBAAqB;IAgB7B,iGAAiG;IACjG,OAAO,CAAC,oBAAoB;IAY5B,OAAO,CAAC,0BAA0B;IAqBlC,OAAO,CAAC,6BAA6B;IAsBrC,OAAO,CAAC,uBAAuB;IAyB/B,OAAO,CAAC,8BAA8B;IAkBtC,OAAO,CAAC,qBAAqB;IAoB7B,OAAO,CAAC,4BAA4B;IAqBpC,OAAO,CAAC,sBAAsB;IAW9B,OAAO,CAAC,iBAAiB;IAsCzB,oEAAoE;IACpE,OAAO,CAAC,wBAAwB;IAiChC,2FAA2F;IAC3F,OAAO,CAAC,2BAA2B;YAcrB,4BAA4B;YAoB5B,sBAAsB;YAsBtB,4BAA4B;YAsB5B,wBAAwB;IAetC,OAAO,CAAC,qBAAqB;YA6Bf,4BAA4B;IAoB1C,OAAO,CAAC,uBAAuB;IAuB/B,OAAO,CAAC,qBAAqB;YA4Bf,oBAAoB;IA0BlC;uGACmG;IACnG,OAAO,CAAC,eAAe;YAkBT,mBAAmB;IAyBjC;iGAC6F;IAC7F,OAAO,CAAC,wBAAwB;IA2BhC,OAAO,CAAC,iCAAiC;IA8BzC;;;;;;OAMG;IACH,OAAO,CAAC,eAAe;IAoBvB;uGACmG;IACnG,OAAO,CAAC,uBAAuB;IA2E/B;;;6EAGyE;IACzE,OAAO,CAAC,oBAAoB;IAqD5B;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,MAAM,CACJ,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE;QACR,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;QAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;QAC1B,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAA;KACjC,GACA,aAAa;IAmEhB;;;;;;;;;;OAUG;IACG,IAAI,CAAC,EAAE,OAA0B,EAAE,GAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBpF,OAAO,CAAC,qBAAqB;CAU9B;AAED;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,GAAG,GAAG,OAAO,EAClC,OAAO,CAAC,EAAE,aAAa,GACtB,MAAM,CAAC,aAAa,EAAE;IAAE,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAA;CAAE,CAAC,CAK9C"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/server/server.ts"],"names":[],"mappings":"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"}