@daloyjs/core 0.32.0 → 0.34.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 (152) hide show
  1. package/README.md +37 -2
  2. package/dist/adapters/bun.d.ts +4 -0
  3. package/dist/adapters/bun.d.ts.map +1 -1
  4. package/dist/adapters/bun.js +6 -1
  5. package/dist/adapters/bun.js.map +1 -1
  6. package/dist/adapters/cloudflare.d.ts +2 -0
  7. package/dist/adapters/cloudflare.d.ts.map +1 -1
  8. package/dist/adapters/cloudflare.js +1 -0
  9. package/dist/adapters/cloudflare.js.map +1 -1
  10. package/dist/adapters/deno.d.ts +3 -0
  11. package/dist/adapters/deno.d.ts.map +1 -1
  12. package/dist/adapters/deno.js +1 -0
  13. package/dist/adapters/deno.js.map +1 -1
  14. package/dist/adapters/fastly.d.ts +2 -0
  15. package/dist/adapters/fastly.d.ts.map +1 -1
  16. package/dist/adapters/fastly.js +2 -0
  17. package/dist/adapters/fastly.js.map +1 -1
  18. package/dist/adapters/lambda.d.ts +7 -0
  19. package/dist/adapters/lambda.d.ts.map +1 -1
  20. package/dist/adapters/lambda.js +1 -0
  21. package/dist/adapters/lambda.js.map +1 -1
  22. package/dist/adapters/node.d.ts +3 -0
  23. package/dist/adapters/node.d.ts.map +1 -1
  24. package/dist/adapters/node.js +8 -2
  25. package/dist/adapters/node.js.map +1 -1
  26. package/dist/adapters/vercel.d.ts +4 -0
  27. package/dist/adapters/vercel.d.ts.map +1 -1
  28. package/dist/adapters/vercel.js +1 -0
  29. package/dist/adapters/vercel.js.map +1 -1
  30. package/dist/app.d.ts +37 -37
  31. package/dist/app.d.ts.map +1 -1
  32. package/dist/app.js +103 -63
  33. package/dist/app.js.map +1 -1
  34. package/dist/banner.d.ts +2 -0
  35. package/dist/banner.d.ts.map +1 -1
  36. package/dist/banner.js.map +1 -1
  37. package/dist/cli.d.ts +12 -0
  38. package/dist/cli.d.ts.map +1 -1
  39. package/dist/cli.js +38 -31
  40. package/dist/cli.js.map +1 -1
  41. package/dist/client.d.ts +10 -0
  42. package/dist/client.d.ts.map +1 -1
  43. package/dist/client.js.map +1 -1
  44. package/dist/compression.d.ts +2 -2
  45. package/dist/compression.js +2 -2
  46. package/dist/config.d.ts +2 -1
  47. package/dist/config.d.ts.map +1 -1
  48. package/dist/config.js +2 -1
  49. package/dist/config.js.map +1 -1
  50. package/dist/conn-info.d.ts +5 -5
  51. package/dist/conn-info.js +4 -4
  52. package/dist/contract.d.ts +19 -0
  53. package/dist/contract.d.ts.map +1 -1
  54. package/dist/contract.js +10 -0
  55. package/dist/contract.js.map +1 -1
  56. package/dist/cookie.d.ts +15 -1
  57. package/dist/cookie.d.ts.map +1 -1
  58. package/dist/cookie.js +24 -4
  59. package/dist/cookie.js.map +1 -1
  60. package/dist/dependency.d.ts +2 -1
  61. package/dist/dependency.d.ts.map +1 -1
  62. package/dist/dependency.js +1 -1
  63. package/dist/dependency.js.map +1 -1
  64. package/dist/discriminator.d.ts +9 -0
  65. package/dist/discriminator.d.ts.map +1 -1
  66. package/dist/discriminator.js.map +1 -1
  67. package/dist/docs.d.ts +49 -2
  68. package/dist/docs.d.ts.map +1 -1
  69. package/dist/docs.js +26 -2
  70. package/dist/docs.js.map +1 -1
  71. package/dist/errors.d.ts +5 -5
  72. package/dist/errors.js +7 -7
  73. package/dist/errors.js.map +1 -1
  74. package/dist/etag.d.ts +1 -1
  75. package/dist/etag.js +1 -1
  76. package/dist/fetch-guard.d.ts +163 -0
  77. package/dist/fetch-guard.d.ts.map +1 -0
  78. package/dist/fetch-guard.js +265 -0
  79. package/dist/fetch-guard.js.map +1 -0
  80. package/dist/index.d.ts +4 -2
  81. package/dist/index.d.ts.map +1 -1
  82. package/dist/index.js +3 -2
  83. package/dist/index.js.map +1 -1
  84. package/dist/ip-restriction.d.ts +17 -0
  85. package/dist/ip-restriction.d.ts.map +1 -1
  86. package/dist/ip-restriction.js +6 -3
  87. package/dist/ip-restriction.js.map +1 -1
  88. package/dist/jwk.d.ts +1 -1
  89. package/dist/jwk.d.ts.map +1 -1
  90. package/dist/jwk.js +3 -3
  91. package/dist/jwt.d.ts +3 -3
  92. package/dist/jwt.d.ts.map +1 -1
  93. package/dist/jwt.js +19 -7
  94. package/dist/jwt.js.map +1 -1
  95. package/dist/load-shedding.d.ts +1 -1
  96. package/dist/load-shedding.js +1 -1
  97. package/dist/logger.d.ts +19 -0
  98. package/dist/logger.d.ts.map +1 -1
  99. package/dist/logger.js +66 -4
  100. package/dist/logger.js.map +1 -1
  101. package/dist/middleware.d.ts +48 -15
  102. package/dist/middleware.d.ts.map +1 -1
  103. package/dist/middleware.js +26 -14
  104. package/dist/middleware.js.map +1 -1
  105. package/dist/multipart.d.ts +23 -0
  106. package/dist/multipart.d.ts.map +1 -1
  107. package/dist/multipart.js +70 -0
  108. package/dist/multipart.js.map +1 -1
  109. package/dist/openapi.d.ts +13 -0
  110. package/dist/openapi.d.ts.map +1 -1
  111. package/dist/openapi.js +5 -0
  112. package/dist/openapi.js.map +1 -1
  113. package/dist/router.d.ts +9 -0
  114. package/dist/router.d.ts.map +1 -1
  115. package/dist/router.js +6 -0
  116. package/dist/router.js.map +1 -1
  117. package/dist/sbom.cdx.json +60 -0
  118. package/dist/sbom.spdx.json +42 -0
  119. package/dist/security-schemes.d.ts +29 -0
  120. package/dist/security-schemes.d.ts.map +1 -1
  121. package/dist/security-schemes.js +11 -0
  122. package/dist/security-schemes.js.map +1 -1
  123. package/dist/security.d.ts +53 -2
  124. package/dist/security.d.ts.map +1 -1
  125. package/dist/security.js +67 -2
  126. package/dist/security.js.map +1 -1
  127. package/dist/session.d.ts +7 -2
  128. package/dist/session.d.ts.map +1 -1
  129. package/dist/session.js +2 -2
  130. package/dist/session.js.map +1 -1
  131. package/dist/streaming.d.ts +8 -0
  132. package/dist/streaming.d.ts.map +1 -1
  133. package/dist/streaming.js.map +1 -1
  134. package/dist/subdomains.d.ts +2 -1
  135. package/dist/subdomains.d.ts.map +1 -1
  136. package/dist/subdomains.js +2 -1
  137. package/dist/subdomains.js.map +1 -1
  138. package/dist/time-claims.d.ts +1 -2
  139. package/dist/time-claims.d.ts.map +1 -1
  140. package/dist/time-claims.js +1 -2
  141. package/dist/time-claims.js.map +1 -1
  142. package/dist/tracing.d.ts +10 -0
  143. package/dist/tracing.d.ts.map +1 -1
  144. package/dist/tracing.js +5 -0
  145. package/dist/tracing.js.map +1 -1
  146. package/dist/types.d.ts +3 -1
  147. package/dist/types.d.ts.map +1 -1
  148. package/dist/websocket.d.ts +71 -2
  149. package/dist/websocket.d.ts.map +1 -1
  150. package/dist/websocket.js +82 -0
  151. package/dist/websocket.js.map +1 -1
  152. package/package.json +13 -1
@@ -35,8 +35,11 @@ export declare const WS_CLOSE_CODE: {
35
35
  };
36
36
  /** Maximum payload length permitted on a single control frame (RFC 6455 §5.5). */
37
37
  export declare const WS_MAX_CONTROL_PAYLOAD = 125;
38
+ /** Default ceiling for queued outbound bytes before backpressure handling triggers (1 MiB). */
38
39
  export declare const DEFAULT_WS_BACKPRESSURE_LIMIT: number;
40
+ /** Default maximum inbound frame/message payload length (1 MiB). */
39
41
  export declare const DEFAULT_WS_MAX_PAYLOAD_LENGTH: number;
42
+ /** Default idle timeout applied to WebSocket routes (seconds). */
40
43
  export declare const DEFAULT_WS_IDLE_TIMEOUT_SECONDS = 120;
41
44
  /**
42
45
  * Live, server-side view of a WebSocket connection. Implementations are
@@ -106,7 +109,7 @@ export interface WebSocketHandler<P extends string = string, S = AppState, TData
106
109
  /** Maximum inbound message payload length in bytes. Default: 1 MiB. */
107
110
  maxPayloadLength?: number;
108
111
  /**
109
- * Wave 11 — explicitly mark this WebSocket route as intentionally public.
112
+ * Explicitly mark this WebSocket route as intentionally public.
110
113
  * In production with `secureDefaults` enabled, routes without a
111
114
  * `beforeUpgrade` decision hook are refused at registration unless this is
112
115
  * `true`, so an authenticated WebSocket cannot accidentally perform auth in
@@ -116,7 +119,7 @@ export interface WebSocketHandler<P extends string = string, S = AppState, TData
116
119
  */
117
120
  acknowledgeUnauthenticated?: boolean;
118
121
  /**
119
- * Wave 11 — acknowledge that a header-mutating middleware (CORS,
122
+ * Acknowledge that a header-mutating middleware (CORS,
120
123
  * `secureHeaders`, `etag`, `compression`, CSRF) is mounted on a path that
121
124
  * matches this WebSocket route. By default the framework refuses at
122
125
  * registration because once the RFC 6455 upgrade response is sent, no
@@ -127,6 +130,43 @@ export interface WebSocketHandler<P extends string = string, S = AppState, TData
127
130
  * @since 0.32.0
128
131
  */
129
132
  acknowledgeHeaderMutatingMiddleware?: boolean;
133
+ /**
134
+ * Allowlist for the upgrade request's `Origin` header. Daloy validates
135
+ * this **before** {@link WebSocketHandler.beforeUpgrade} runs, closing the
136
+ * Cross-Site WebSocket Hijacking (CSWSH) class of bug — including the
137
+ * Storybook dev-server upgrade hijack disclosed as
138
+ * [CVE-2026-27148](https://www.aikido.dev/blog/storybooks-websockets-attack)
139
+ * — where a malicious site triggers `new WebSocket(...)` in a victim's
140
+ * browser. Browsers always attach cookies on a WS handshake; without
141
+ * Origin validation the upgrade succeeds and the attacker can speak the
142
+ * protocol on the user's behalf.
143
+ *
144
+ * Accepted forms:
145
+ * - `"same-origin"` — when an `Origin` header is present, it must match
146
+ * the request's own origin (scheme + host + port). When absent (a
147
+ * non-browser client), the upgrade is allowed.
148
+ * - `readonly string[]` — when an `Origin` header is present, it must
149
+ * equal one of the listed origins exactly. When absent, allowed.
150
+ * - `(origin, request) => boolean` — full control. The function is
151
+ * invoked with the `Origin` header (string or `null`) and the upgrade
152
+ * `Request`; returning `false` rejects the handshake with `403`.
153
+ *
154
+ * @since 0.33.0
155
+ */
156
+ allowedOrigins?: "same-origin" | readonly string[] | ((origin: string | null, request: Request) => boolean);
157
+ /**
158
+ * Acknowledge that this WebSocket route is intentionally exposed to
159
+ * upgrade requests from any browser origin. In production with
160
+ * `secureDefaults` enabled, registration refuses to add a WS route
161
+ * unless either {@link WebSocketHandler.allowedOrigins} is set or this
162
+ * flag is `true`, mirroring the Storybook / CSWSH lesson: the
163
+ * `beforeUpgrade` hook authenticates the user, but CSWSH attaches the
164
+ * user's own cookies, so authentication alone does not stop the
165
+ * cross-site handshake.
166
+ *
167
+ * @since 0.33.0
168
+ */
169
+ acknowledgeCrossOriginUpgrade?: boolean;
130
170
  beforeUpgrade?(request: Request, ctx: WebSocketContext<P, S>): Response | string | undefined | Promise<Response | string | undefined>;
131
171
  open?(conn: WebSocketConnection<TData>, ctx: WebSocketContext<P, S>): void | Promise<void>;
132
172
  message?(conn: WebSocketConnection<TData>, data: string | Uint8Array | ArrayBuffer, isBinary: boolean): void | Promise<void>;
@@ -134,6 +174,7 @@ export interface WebSocketHandler<P extends string = string, S = AppState, TData
134
174
  error?(conn: WebSocketConnection<TData>, err: unknown): void | Promise<void>;
135
175
  drain?(conn: WebSocketConnection<TData>): void | Promise<void>;
136
176
  }
177
+ /** Result of {@link normalizeWebSocketOptions}: fully resolved limits applied by the adapter. */
137
178
  export interface NormalizedWebSocketOptions {
138
179
  closeOnBackpressureLimit: boolean;
139
180
  backpressureLimit: number;
@@ -141,10 +182,16 @@ export interface NormalizedWebSocketOptions {
141
182
  idleTimeout: number;
142
183
  maxPayloadLength: number;
143
184
  }
185
+ /**
186
+ * Resolve a user-supplied {@link WebSocketHandler} into the strict
187
+ * {@link NormalizedWebSocketOptions} the adapter consumes. Applies defaults,
188
+ * runs production safety checks, and throws on invalid values.
189
+ */
144
190
  export declare function normalizeWebSocketOptions(handler: WebSocketHandler<any, any, any>, context: {
145
191
  production: boolean;
146
192
  secureDefaults: boolean;
147
193
  }): NormalizedWebSocketOptions;
194
+ /** Non-nullable `beforeUpgrade` hook type from {@link WebSocketHandler}, useful for adapter authors composing upgrade gates. */
148
195
  export type WebSocketBeforeUpgrade<P extends string = string, S = AppState> = NonNullable<WebSocketHandler<P, S>["beforeUpgrade"]>;
149
196
  /**
150
197
  * Adapt `rateLimit({ groupId })` to the WebSocket upgrade boundary. Use it as
@@ -156,6 +203,7 @@ export type WebSocketBeforeUpgrade<P extends string = string, S = AppState> = No
156
203
  export declare function wsRateLimit<P extends string = string, S = AppState>(options: RateLimitOptions): WebSocketBeforeUpgrade<P, S>;
157
204
  /** Helper for declaring a handler with full type-inference. */
158
205
  export declare function defineWebSocket<P extends string, S = AppState, TData = unknown>(handler: WebSocketHandler<P, S, TData>): WebSocketHandler<P, S, TData>;
206
+ /** Entry stored inside {@link WebSocketRegistry} for a single WS route. */
159
207
  export interface WebSocketRouteEntry {
160
208
  path: PathString;
161
209
  handler: WebSocketHandler<any, any, any>;
@@ -219,6 +267,25 @@ export type HandshakeResult = {
219
267
  export declare function validateUpgrade(headers: {
220
268
  get(name: string): string | null;
221
269
  }): Promise<HandshakeResult>;
270
+ /**
271
+ * Validate the `Origin` header on a WebSocket upgrade request against the
272
+ * route's `allowedOrigins` policy. Adapters call this **before** invoking
273
+ * the route's `beforeUpgrade` hook so a Cross-Site WebSocket Hijacking
274
+ * attempt is rejected with `403` before any authenticated handler runs.
275
+ *
276
+ * Returns `{ ok: true }` when the upgrade is permitted, otherwise
277
+ * `{ ok: false, reason }` with a short human-readable reason suitable for
278
+ * the upgrade-error body.
279
+ *
280
+ * @since 0.33.0
281
+ */
282
+ export declare function checkWebSocketOrigin(request: Request, policy: WebSocketHandler<any, any, any>["allowedOrigins"]): {
283
+ ok: true;
284
+ } | {
285
+ ok: false;
286
+ reason: string;
287
+ };
288
+ /** A single decoded RFC 6455 frame, as returned by {@link parseFrame}. */
222
289
  export interface ParsedFrame {
223
290
  fin: boolean;
224
291
  opcode: number;
@@ -262,6 +329,7 @@ export declare function decodeClosePayload(payload: Uint8Array): {
262
329
  export declare class WebSocketProtocolError extends Error {
263
330
  constructor(message: string);
264
331
  }
332
+ /** Specialization of {@link WebSocketProtocolError} thrown when an inbound message exceeds the configured `maxPayloadLength`. */
265
333
  export declare class WebSocketPayloadTooLargeError extends WebSocketProtocolError {
266
334
  readonly limit: number;
267
335
  readonly actual: number;
@@ -278,6 +346,7 @@ export interface MessageEvent {
278
346
  /** True when the message was assembled from binary frames. */
279
347
  isBinary: boolean;
280
348
  }
349
+ /** Callbacks supplied to a {@link FrameSink} by an adapter to receive decoded frames and protocol events. */
281
350
  export interface FrameSinkEvents {
282
351
  onMessage(ev: MessageEvent): void;
283
352
  onPing(payload: Uint8Array): void;
@@ -1 +1 @@
1
- {"version":3,"file":"websocket.d.ts","sourceRoot":"","sources":["../src/websocket.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"websocket.d.ts","sourceRoot":"","sources":["../src/websocket.ts"],"names":[],"mappings":"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"}
package/dist/websocket.js CHANGED
@@ -68,14 +68,29 @@ export const WS_CLOSE_CODE = {
68
68
  };
69
69
  /** Maximum payload length permitted on a single control frame (RFC 6455 §5.5). */
70
70
  export const WS_MAX_CONTROL_PAYLOAD = 125;
71
+ /** Default ceiling for queued outbound bytes before backpressure handling triggers (1 MiB). */
71
72
  export const DEFAULT_WS_BACKPRESSURE_LIMIT = 1024 * 1024;
73
+ /** Default maximum inbound frame/message payload length (1 MiB). */
72
74
  export const DEFAULT_WS_MAX_PAYLOAD_LENGTH = 1024 * 1024;
75
+ /** Default idle timeout applied to WebSocket routes (seconds). */
73
76
  export const DEFAULT_WS_IDLE_TIMEOUT_SECONDS = 120;
74
77
  function assertPositiveWebSocketInteger(name, value) {
75
78
  if (!Number.isInteger(value) || value <= 0) {
76
79
  throw new Error(`app.ws(): ${name} must be a positive integer.`);
77
80
  }
78
81
  }
82
+ function assertWebSocketOriginPolicy(policy) {
83
+ if (policy === undefined || policy === "same-origin" || typeof policy === "function")
84
+ return;
85
+ if (!Array.isArray(policy)) {
86
+ throw new Error('app.ws(): allowedOrigins must be "same-origin", an array of origin strings, or a predicate function.');
87
+ }
88
+ for (const origin of policy) {
89
+ if (typeof origin !== "string" || origin.length === 0) {
90
+ throw new Error("app.ws(): allowedOrigins entries must be non-empty origin strings.");
91
+ }
92
+ }
93
+ }
79
94
  function schemaToJson(schema) {
80
95
  const converter = schema?.toJSONSchema;
81
96
  if (typeof converter !== "function")
@@ -105,6 +120,11 @@ function declaredSchemaMaxBytes(schema) {
105
120
  }
106
121
  return undefined;
107
122
  }
123
+ /**
124
+ * Resolve a user-supplied {@link WebSocketHandler} into the strict
125
+ * {@link NormalizedWebSocketOptions} the adapter consumes. Applies defaults,
126
+ * runs production safety checks, and throws on invalid values.
127
+ */
108
128
  export function normalizeWebSocketOptions(handler, context) {
109
129
  const closeOnBackpressureLimit = handler.closeOnBackpressureLimit ?? true;
110
130
  const backpressureLimit = handler.backpressureLimit ?? DEFAULT_WS_BACKPRESSURE_LIMIT;
@@ -120,6 +140,7 @@ export function normalizeWebSocketOptions(handler, context) {
120
140
  if (typeof perMessageDeflate !== "boolean") {
121
141
  throw new Error("app.ws(): perMessageDeflate must be a boolean.");
122
142
  }
143
+ assertWebSocketOriginPolicy(handler.allowedOrigins);
123
144
  if (perMessageDeflate && context.secureDefaults && context.production) {
124
145
  throw new Error("app.ws(): perMessageDeflate: true is refused in production under secureDefaults. " +
125
146
  "Leave it false or pass app({ secureDefaults: false }) only for a reviewed deployment.");
@@ -334,6 +355,66 @@ function isValidWebSocketKey(key) {
334
355
  return false;
335
356
  }
336
357
  }
358
+ /**
359
+ * Validate the `Origin` header on a WebSocket upgrade request against the
360
+ * route's `allowedOrigins` policy. Adapters call this **before** invoking
361
+ * the route's `beforeUpgrade` hook so a Cross-Site WebSocket Hijacking
362
+ * attempt is rejected with `403` before any authenticated handler runs.
363
+ *
364
+ * Returns `{ ok: true }` when the upgrade is permitted, otherwise
365
+ * `{ ok: false, reason }` with a short human-readable reason suitable for
366
+ * the upgrade-error body.
367
+ *
368
+ * @since 0.33.0
369
+ */
370
+ export function checkWebSocketOrigin(request, policy) {
371
+ if (policy === undefined)
372
+ return { ok: true };
373
+ const origin = request.headers.get("origin");
374
+ if (typeof policy === "function") {
375
+ let allowed;
376
+ try {
377
+ allowed = policy(origin, request) === true;
378
+ }
379
+ catch {
380
+ return { ok: false, reason: "WebSocket origin check failed" };
381
+ }
382
+ return allowed
383
+ ? { ok: true }
384
+ : { ok: false, reason: "WebSocket upgrade rejected by origin policy" };
385
+ }
386
+ // For string-list and "same-origin" policies, a missing Origin header
387
+ // means the client is not a browser (browsers always attach Origin on
388
+ // a WS handshake) and the CSWSH class of attack is not reachable, so we
389
+ // allow it through. Callers that want to reject non-browser clients can
390
+ // pass a predicate function.
391
+ if (origin === null)
392
+ return { ok: true };
393
+ if (policy === "same-origin") {
394
+ try {
395
+ const requestOrigin = new URL(request.url).origin;
396
+ return origin === requestOrigin
397
+ ? { ok: true }
398
+ : {
399
+ ok: false,
400
+ reason: "WebSocket upgrade rejected: cross-origin handshake",
401
+ };
402
+ }
403
+ catch {
404
+ return { ok: false, reason: "WebSocket origin check failed" };
405
+ }
406
+ }
407
+ if (!Array.isArray(policy)) {
408
+ return { ok: false, reason: "WebSocket origin policy is invalid" };
409
+ }
410
+ // string[] allowlist
411
+ return policy.includes(origin)
412
+ ? { ok: true }
413
+ : {
414
+ ok: false,
415
+ reason: "WebSocket upgrade rejected: origin not allowlisted",
416
+ };
417
+ }
337
418
  /** Returned from `parseFrame` when the buffer doesn't yet hold a full frame. */
338
419
  export const FRAME_INCOMPLETE = Symbol("daloy.ws.frameIncomplete");
339
420
  /**
@@ -514,6 +595,7 @@ export class WebSocketProtocolError extends Error {
514
595
  this.name = "WebSocketProtocolError";
515
596
  }
516
597
  }
598
+ /** Specialization of {@link WebSocketProtocolError} thrown when an inbound message exceeds the configured `maxPayloadLength`. */
517
599
  export class WebSocketPayloadTooLargeError extends WebSocketProtocolError {
518
600
  limit;
519
601
  actual;
@@ -1 +1 @@
1
- {"version":3,"file":"websocket.js","sourceRoot":"","sources":["../src/websocket.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"websocket.js","sourceRoot":"","sources":["../src/websocket.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,SAAS,EAAyB,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAmB,MAAM,aAAa,CAAC;AAGtD,kEAAkE;AAClE,MAAM,CAAC,MAAM,OAAO,GAAG,sCAAsC,CAAC;AAE9D,+CAA+C;AAC/C,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,UAAU,EAAE,CAAC;IACb,IAAI,EAAE,CAAC;IACP,OAAO,EAAE,CAAC;IACV,MAAM,EAAE,CAAC;CACD,CAAC;AAEX,wBAAwB;AACxB,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,YAAY,EAAE,GAAG;IACjB,IAAI,EAAE,GAAG;IACT,MAAM,EAAE,GAAG;IACX,KAAK,EAAE,GAAG;IACV,IAAI,EAAE,GAAG;IACT,IAAI,EAAE,GAAG;CACD,CAAC;AAEX,0CAA0C;AAC1C,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,cAAc,EAAE,IAAI;IACpB,UAAU,EAAE,IAAI;IAChB,cAAc,EAAE,IAAI;IACpB,gBAAgB,EAAE,IAAI;IACtB,kBAAkB,EAAE,IAAI;IACxB,gBAAgB,EAAE,IAAI;IACtB,eAAe,EAAE,IAAI;IACrB,gBAAgB,EAAE,IAAI;IACtB,eAAe,EAAE,IAAI;IACrB,cAAc,EAAE,IAAI;CACZ,CAAC;AAEX,kFAAkF;AAClF,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,CAAC;AAC1C,+FAA+F;AAC/F,MAAM,CAAC,MAAM,6BAA6B,GAAG,IAAI,GAAG,IAAI,CAAC;AACzD,oEAAoE;AACpE,MAAM,CAAC,MAAM,6BAA6B,GAAG,IAAI,GAAG,IAAI,CAAC;AACzD,kEAAkE;AAClE,MAAM,CAAC,MAAM,+BAA+B,GAAG,GAAG,CAAC;AAwKnD,SAAS,8BAA8B,CAAC,IAAY,EAAE,KAAa;IACjE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;QAC3C,MAAM,IAAI,KAAK,CAAC,aAAa,IAAI,8BAA8B,CAAC,CAAC;IACnE,CAAC;AACH,CAAC;AAED,SAAS,2BAA2B,CAClC,MAAyD;IAEzD,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,aAAa,IAAI,OAAO,MAAM,KAAK,UAAU;QAAE,OAAO;IAC7F,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CACb,sGAAsG,CACvG,CAAC;IACJ,CAAC;IACD,KAAK,MAAM,MAAM,IAAI,MAAM,EAAE,CAAC;QAC5B,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtD,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;QACxF,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,YAAY,CAAC,MAAoC;IACxD,MAAM,SAAS,GAAI,MAAkE,EAAE,YAAY,CAAC;IACpG,IAAI,OAAO,SAAS,KAAK,UAAU;QAAE,OAAO,SAAS,CAAC;IACtD,IAAI,CAAC;QACH,OAAO,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,SAAS,sBAAsB,CAAC,MAAoC;IAClE,MAAM,WAAW,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;IAChD,IAAI,WAAW,EAAE,QAAQ,KAAK,SAAS;QAAE,OAAO,WAAW,CAAC,QAAQ,CAAC;IACrE,MAAM,UAAU,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACxC,IAAI,CAAC,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IACpE,MAAM,MAAM,GAAG,UAAqC,CAAC;IACrD,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;IACnC,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;QAClF,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC/B,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,CAAC,aAAa,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC;IAC1D,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,QAAQ,IAAI,CAAC,EAAE,CAAC;QAC/E,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC9B,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,yBAAyB,CACvC,OAAwC,EACxC,OAAyD;IAEzD,MAAM,wBAAwB,GAAG,OAAO,CAAC,wBAAwB,IAAI,IAAI,CAAC;IAC1E,MAAM,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,IAAI,6BAA6B,CAAC;IACrF,MAAM,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,IAAI,KAAK,CAAC;IAC7D,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,+BAA+B,CAAC;IAC3E,MAAM,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,IAAI,6BAA6B,CAAC;IAEnF,8BAA8B,CAAC,mBAAmB,EAAE,iBAAiB,CAAC,CAAC;IACvE,8BAA8B,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;IAC3D,8BAA8B,CAAC,kBAAkB,EAAE,gBAAgB,CAAC,CAAC;IACrE,IAAI,OAAO,wBAAwB,KAAK,SAAS,EAAE,CAAC;QAClD,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC3E,CAAC;IACD,IAAI,OAAO,iBAAiB,KAAK,SAAS,EAAE,CAAC;QAC3C,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACpE,CAAC;IACD,2BAA2B,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IACpD,IAAI,iBAAiB,IAAI,OAAO,CAAC,cAAc,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;QACtE,MAAM,IAAI,KAAK,CACb,mFAAmF;YACjF,uFAAuF,CAC1F,CAAC;IACJ,CAAC;IACD,MAAM,cAAc,GAAG,sBAAsB,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACrE,IAAI,cAAc,KAAK,SAAS,IAAI,gBAAgB,GAAG,cAAc,EAAE,CAAC;QACtE,MAAM,IAAI,KAAK,CACb,+BAA+B,gBAAgB,4CAA4C,cAAc,IAAI,CAC9G,CAAC;IACJ,CAAC;IACD,OAAO;QACL,wBAAwB;QACxB,iBAAiB;QACjB,iBAAiB;QACjB,WAAW;QACX,gBAAgB;KACjB,CAAC;AACJ,CAAC;AAOD;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CACzB,OAAyB;IAEzB,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;IACjC,OAAO,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE;QAClC,MAAM,UAAU,GAAG,IAAI,OAAO,EAAE,CAAC;QACjC,MAAM,GAAG,GAA0B;YACjC,OAAO;YACP,MAAM,EAAE,SAAS,CAAC,MAAM;YACxB,KAAK,EAAE,SAAS,CAAC,KAAK;YACtB,OAAO,EAAE,SAAS,CAAC,OAAO;YAC1B,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,SAAS,CAAC,KAA2C;YAC5D,GAAG,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE;SAC7B,CAAC;QACF,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,YAAY,EAAE,CAAC,GAAG,CAAC,CAAC;YAC/C,IAAI,MAAM,YAAY,QAAQ,EAAE,CAAC;gBAC/B,sBAAsB,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;gBAC3C,OAAO,MAAM,CAAC;YAChB,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,QAAQ,GAAG,GAAG,YAAY,SAAS;gBACvC,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE;gBAClB,CAAC,CAAC,IAAI,aAAa,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,UAAU,EAAE,CAAC;YACvG,sBAAsB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;YAC7C,OAAO,QAAQ,CAAC;QAClB,CAAC;IACH,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAAC,OAAgB,EAAE,QAAkB;IAClE,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QAC7B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACnE,CAAC,CAAC,CAAC;AACL,CAAC;AAED,+DAA+D;AAC/D,MAAM,UAAU,eAAe,CAI7B,OAAsC;IACtC,OAAO,OAAO,CAAC;AACjB,CAAC;AAcD;;;;;;GAMG;AACH,MAAM,OAAO,iBAAiB;IACpB,MAAM,GAAG,IAAI,MAAM,EAAuB,CAAC;IAAS,KAAK,GAAG,CAAC,CAAC;IAC9D,OAAO,GAA0B,EAAE,CAAC;IAC5C,GAAG,CACD,IAAgB,EAChB,OAAwC,EACxC,cAAqC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAC/C,UAAsC,yBAAyB,CAAC,OAAO,EAAE;QACvE,UAAU,EAAE,KAAK;QACjB,cAAc,EAAE,IAAI;KACrB,CAAC;QAEF,MAAM,KAAK,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC;QACtD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QACpC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzB,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,CAAC,QAAgB;QACnB,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IAC3C,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,cAAc;QACZ,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,OAAO;gBACL,wBAAwB,EAAE,IAAI;gBAC9B,iBAAiB,EAAE,6BAA6B;gBAChD,iBAAiB,EAAE,KAAK;gBACxB,WAAW,EAAE,+BAA+B;gBAC5C,gBAAgB,EAAE,6BAA6B;aAChD,CAAC;QACJ,CAAC;QACD,OAAO;YACL,wBAAwB,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAC1C,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,wBAAwB,CAClD;YACD,iBAAiB,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;YAC5F,iBAAiB,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC;YAChF,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YAChF,gBAAgB,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;SAC3F,CAAC;IACJ,CAAC;CACF;AAED,0CAA0C;AAE1C,MAAM,GAAG,GAAG,IAAI,WAAW,EAAE,CAAC;AAE9B,SAAS,aAAa,CAAC,KAAiB;IACtC,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE;QAAE,GAAG,IAAI,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC;IAC7E,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;AACnB,CAAC;AAED,SAAS,SAAS;IAChB,MAAM,CAAC,GAAwB,UAAkC,CAAC,MAAM,CAAC;IACzE,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CACb,oFAAoF,CACrF,CAAC;IACJ,CAAC;IACD,OAAO,CAAC,CAAC,MAAM,CAAC;AAClB,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,GAAW;IAChD,MAAM,MAAM,GAAG,MAAM,SAAS,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC;IAC5E,OAAO,aAAa,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;AAC/C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAiC;IACjE,IAAI,CAAC,MAAM;QAAE,OAAO,EAAE,CAAC;IACvB,OAAO,MAAM;SACV,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;SACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACjC,CAAC;AAED,MAAM,WAAW,GAAG,gCAAgC,CAAC;AAErD;;;;GAIG;AACH,MAAM,UAAU,2BAA2B,CACzC,QAAgB,EAChB,OAA0B;IAE1B,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QAChC,MAAM,IAAI,sBAAsB,CAC9B,2DAA2D,CAC5D,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAChC,MAAM,IAAI,sBAAsB,CAC9B,8DAA8D,CAC/D,CAAC;IACJ,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAWD;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,OAErC;IACC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACvC,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,WAAW,EAAE,KAAK,WAAW,EAAE,CAAC;QACtD,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,GAAG;YACX,MAAM,EAAE,mCAAmC;SAC5C,CAAC;IACJ,CAAC;IACD,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAC7C,IAAI,CAAC,UAAU,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QACpD,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,GAAG;YACX,MAAM,EAAE,sCAAsC;SAC/C,CAAC;IACJ,CAAC;IACD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;IACrD,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACrB,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,GAAG;YACX,MAAM,EAAE,mCAAmC;SAC5C,CAAC;IACJ,CAAC;IACD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;IAC7C,IAAI,CAAC,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,EAAE,CAAC;QACtC,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,GAAG;YACX,MAAM,EAAE,sCAAsC;SAC/C,CAAC;IACJ,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,gBAAgB,CAAC,GAAG,CAAC,CAAC;IAC9C,OAAO;QACL,EAAE,EAAE,IAAI;QACR,SAAS;QACT,SAAS,EAAE,iBAAiB,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;KACpE,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,GAAW;IACtC,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QACvE,OAAO,KAAK,CAAC,MAAM,KAAK,EAAE,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,oBAAoB,CAClC,OAAgB,EAChB,MAAyD;IAEzD,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;IAC9C,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC7C,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE,CAAC;QACjC,IAAI,OAAgB,CAAC;QACrB,IAAI,CAAC;YACH,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;QAC7C,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,+BAA+B,EAAE,CAAC;QAChE,CAAC;QACD,OAAO,OAAO;YACZ,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE;YACd,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,6CAA6C,EAAE,CAAC;IAC3E,CAAC;IACD,sEAAsE;IACtE,sEAAsE;IACtE,wEAAwE;IACxE,wEAAwE;IACxE,6BAA6B;IAC7B,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;IACzC,IAAI,MAAM,KAAK,aAAa,EAAE,CAAC;QAC7B,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;YAClD,OAAO,MAAM,KAAK,aAAa;gBAC7B,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE;gBACd,CAAC,CAAC;oBACE,EAAE,EAAE,KAAK;oBACT,MAAM,EAAE,oDAAoD;iBAC7D,CAAC;QACR,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,+BAA+B,EAAE,CAAC;QAChE,CAAC;IACH,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3B,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,oCAAoC,EAAE,CAAC;IACrE,CAAC;IACD,qBAAqB;IACrB,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC5B,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE;QACd,CAAC,CAAC;YACE,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,oDAAoD;SAC7D,CAAC;AACR,CAAC;AAaD,gFAAgF;AAChF,MAAM,CAAC,MAAM,gBAAgB,GAAG,MAAM,CAAC,0BAA0B,CAAC,CAAC;AAEnE;;;;;;;;GAQG;AACH,MAAM,UAAU,UAAU,CACxB,GAAe,EACf,OAAkC,EAAE;IAEpC,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,gBAAgB,CAAC;IAC5C,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,CAAE,CAAC;IACnB,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,CAAE,CAAC;IACnB,MAAM,GAAG,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9B,MAAM,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC;IACtB,IAAI,GAAG,KAAK,CAAC;QACX,MAAM,IAAI,sBAAsB,CAC9B,kDAAkD,CACnD,CAAC;IACJ,MAAM,MAAM,GAAG,EAAE,GAAG,IAAI,CAAC;IACzB,MAAM,MAAM,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;IACjC,IAAI,UAAU,GAAG,EAAE,GAAG,IAAI,CAAC;IAC3B,IAAI,MAAM,GAAG,CAAC,CAAC;IAEf,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,IAAI,CAAC,GAAG;YACN,MAAM,IAAI,sBAAsB,CAAC,uCAAuC,CAAC,CAAC;QAC5E,IAAI,UAAU,GAAG,sBAAsB;YACrC,MAAM,IAAI,sBAAsB,CAC9B,yCAAyC,CAC1C,CAAC;QACJ,IACE,MAAM,KAAK,SAAS,CAAC,KAAK;YAC1B,MAAM,KAAK,SAAS,CAAC,IAAI;YACzB,MAAM,KAAK,SAAS,CAAC,IAAI;YAEzB,MAAM,IAAI,sBAAsB,CAC9B,4BAA4B,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAClD,CAAC;IACN,CAAC;SAAM,IACL,MAAM,KAAK,SAAS,CAAC,YAAY;QACjC,MAAM,KAAK,SAAS,CAAC,IAAI;QACzB,MAAM,KAAK,SAAS,CAAC,MAAM,EAC3B,CAAC;QACD,MAAM,IAAI,sBAAsB,CAC9B,yBAAyB,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAC/C,CAAC;IACJ,CAAC;IAED,IAAI,UAAU,KAAK,GAAG,EAAE,CAAC;QACvB,IAAI,GAAG,CAAC,MAAM,GAAG,MAAM,GAAG,CAAC;YAAE,OAAO,gBAAgB,CAAC;QACrD,UAAU,GAAG,CAAC,GAAG,CAAC,MAAM,CAAE,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC;QACpD,MAAM,IAAI,CAAC,CAAC;IACd,CAAC;SAAM,IAAI,UAAU,KAAK,GAAG,EAAE,CAAC;QAC9B,IAAI,GAAG,CAAC,MAAM,GAAG,MAAM,GAAG,CAAC;YAAE,OAAO,gBAAgB,CAAC;QACrD,0EAA0E;QAC1E,MAAM,EAAE,GACN,GAAG,CAAC,MAAM,CAAE,GAAG,CAAC,IAAI,EAAE;YACtB,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAE,IAAI,EAAE,CAAC;YACxB,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAE,IAAI,CAAC,CAAC;YACvB,GAAG,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC;QACnB,MAAM,EAAE,GACN,GAAG,CAAC,MAAM,GAAG,CAAC,CAAE,GAAG,CAAC,IAAI,EAAE;YAC1B,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAE,IAAI,EAAE,CAAC;YACxB,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAE,IAAI,CAAC,CAAC;YACvB,GAAG,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC;QACnB,IAAI,EAAE,GAAG,QAAQ;YACf,MAAM,IAAI,sBAAsB,CAC9B,+CAA+C,CAChD,CAAC;QACJ,UAAU,GAAG,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC;QAC/B,MAAM,IAAI,CAAC,CAAC;IACd,CAAC;IAED,IAAI,IAAI,CAAC,WAAW,IAAI,CAAC,MAAM,EAAE,CAAC;QAChC,MAAM,IAAI,sBAAsB,CAAC,8BAA8B,CAAC,CAAC;IACnE,CAAC;IAED,IAAI,IAA4B,CAAC;IACjC,IAAI,MAAM,EAAE,CAAC;QACX,IAAI,GAAG,CAAC,MAAM,GAAG,MAAM,GAAG,CAAC;YAAE,OAAO,gBAAgB,CAAC;QACrD,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC;QACxC,MAAM,IAAI,CAAC,CAAC;IACd,CAAC;IAED,IAAI,GAAG,CAAC,MAAM,GAAG,MAAM,GAAG,UAAU;QAAE,OAAO,gBAAgB,CAAC;IAE9D,MAAM,OAAO,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,CAAC,CAAC;IAC1D,IAAI,IAAI,EAAE,CAAC;QACT,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAE,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAE,CAAC;QAC1C,CAAC;IACH,CAAC;IAED,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,UAAU,EAAE,CAAC;AACjE,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,WAAW,CAAC,IAK3B;IACC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,KAAK,KAAK,CAAC;IAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;IAClC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC;IAClD,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC;IAElC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,MAAM,GAAG,sBAAsB,EAAE,CAAC;QACpE,MAAM,IAAI,sBAAsB,CAAC,yCAAyC,CAAC,CAAC;IAC9E,CAAC;IAED,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,IAAI,MAAM,GAAc,CAAC,CAAC;IAC1B,IAAI,OAAO,CAAC,MAAM,IAAI,KAAK;QAAE,MAAM,GAAG,CAAC,CAAC;SACnC,IAAI,OAAO,CAAC,MAAM,GAAG,GAAG;QAAE,MAAM,GAAG,CAAC,CAAC;IAC1C,SAAS,IAAI,MAAM,CAAC;IACpB,IAAI,MAAM;QAAE,SAAS,IAAI,CAAC,CAAC;IAE3B,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACvD,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;IACnC,IAAI,MAAM,KAAK,CAAC;QAAE,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;SAC3D,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;QACnC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;QACtC,GAAG,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IACjC,CAAC;SAAM,CAAC;QACN,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;QACnC,kEAAkE;QAClE,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC;QAC3B,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACX,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACX,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACX,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACX,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;QAC1C,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;QAC5B,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;QAC3B,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC;QACpB,iFAAiF;QACjF,IAAI,GAAG,GAAG,UAAU,EAAE,CAAC;YACrB,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;YAC1C,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;YAC1C,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;YAC1C,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;QAC5C,CAAC;IACH,CAAC;IAED,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,OAAO,GAAG,CAAC,GAAG,MAAM,CAAC;QAC3B,MAAM,CAAC,GAAI,UAAkC,CAAC,MAAM,CAAC;QACrD,IAAI,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CACb,+DAA+D,CAChE,CAAC;QACJ,CAAC;QACD,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC;QACtD,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC;QAChD,MAAM,OAAO,GAAG,OAAO,GAAG,CAAC,CAAC;QAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAE,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAE,CAAC;QAChD,CAAC;IACH,CAAC;SAAM,CAAC;QACN,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC;IAC/B,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED,4EAA4E;AAC5E,MAAM,UAAU,kBAAkB,CAAC,IAAY,EAAE,MAAM,GAAG,EAAE;IAC1D,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACvC,IAAI,WAAW,CAAC,MAAM,GAAG,sBAAsB,GAAG,CAAC,EAAE,CAAC;QACpD,MAAM,IAAI,sBAAsB,CAAC,gCAAgC,CAAC,CAAC;IACrE,CAAC;IACD,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IACnD,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;IAC5B,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;IACrB,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IACxB,OAAO,GAAG,CAAC;AACb,CAAC;AAED,qFAAqF;AACrF,MAAM,UAAU,kBAAkB,CAAC,OAAmB;IAIpD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QACtB,OAAO,EAAE,IAAI,EAAE,aAAa,CAAC,kBAAkB,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IAChE,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QACtB,MAAM,IAAI,sBAAsB,CAAC,yCAAyC,CAAC,CAAC;IAC9E,MAAM,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,CAAE,IAAI,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAE,CAAC;IAC9C,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAC7D,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CACpB,CAAC;IACF,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;AAC1B,CAAC;AAED,gFAAgF;AAChF,MAAM,OAAO,sBAAuB,SAAQ,KAAK;IAC/C,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,wBAAwB,CAAC;IACvC,CAAC;CACF;AAED,iIAAiI;AACjI,MAAM,OAAO,6BAA8B,SAAQ,sBAAsB;IAE5D;IACA;IAFX,YACW,KAAa,EACb,MAAc;QAEvB,KAAK,CAAC,+CAA+C,MAAM,MAAM,KAAK,GAAG,CAAC,CAAC;QAHlE,UAAK,GAAL,KAAK,CAAQ;QACb,WAAM,GAAN,MAAM,CAAQ;QAGvB,IAAI,CAAC,IAAI,GAAG,+BAA+B,CAAC;IAC9C,CAAC;CACF;AAyBD;;;;GAIG;AACH,MAAM,OAAO,SAAS;IAQD;IAPX,MAAM,GAAe,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC;IACvC,SAAS,GAAiB,EAAE,CAAC;IAC7B,cAAc,GAAG,CAAC,CAAC,CAAC;IACpB,aAAa,GAAG,CAAC,CAAC;IAClB,MAAM,GAAG,KAAK,CAAC;IAEvB,YACmB,IAGhB;QAHgB,SAAI,GAAJ,IAAI,CAGpB;IACA,CAAC;IAEJ,IAAI,CAAC,KAAiB;QACpB,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO;QACxB,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;QAC9B,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;YAC/D,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YACzB,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACpC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACrB,CAAC;QACD,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9B,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE;oBACpC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW;iBACnC,CAAC,CAAC;gBACH,IAAI,KAAK,KAAK,gBAAgB;oBAAE,OAAO;gBACvC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBACnD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACnB,IAAI,IAAI,CAAC,MAAM;oBAAE,OAAO;YAC1B,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,GAAG,YAAY,sBAAsB,EAAE,CAAC;gBAC1C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;gBACnB,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;YACjC,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,CAAC;YACZ,CAAC;QACH,CAAC;IACH,CAAC;IAEO,MAAM,CAAC,KAAkB;QAC/B,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/B,uEAAuE;YACvE,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACnC,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,KAAK,EAAE,CAAC;gBACrC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;gBAClD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;gBACnB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAClC,CAAC;iBAAM,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,IAAI,EAAE,CAAC;gBAC3C,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACzB,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACzB,CAAC;YACD,OAAO;QACT,CAAC;QAED,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,YAAY,EAAE,CAAC;YAC5C,IAAI,IAAI,CAAC,cAAc,KAAK,CAAC,CAAC,EAAE,CAAC;gBAC/B,MAAM,IAAI,sBAAsB,CAC9B,kDAAkD,CACnD,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAC7C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;QAC7C,CAAC;aAAM,CAAC;YACN,IAAI,IAAI,CAAC,cAAc,KAAK,CAAC,CAAC,EAAE,CAAC;gBAC/B,MAAM,IAAI,sBAAsB,CAC9B,mEAAmE,CACpE,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC;YACnC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAC7C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;QAC7C,CAAC;QAED,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;YACd,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YAC/D,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC;YACrC,IAAI,MAAM,GAAG,CAAC,CAAC;YACf,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBAC/B,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;gBACtB,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC;YACrB,CAAC;YACD,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,KAAK,SAAS,CAAC,MAAM,CAAC;YAC1D,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;YACpB,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC;YACzB,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;YACvB,IAAI,QAAQ,EAAE,CAAC;gBACb,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;YACxD,CAAC;iBAAM,CAAC;gBACN,IAAI,IAAY,CAAC;gBACjB,IAAI,CAAC;oBACH,IAAI,GAAG,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAClE,CAAC;gBAAC,MAAM,CAAC;oBACP,MAAM,IAAI,sBAAsB,CAAC,+BAA+B,CAAC,CAAC;gBACpE,CAAC;gBACD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;YACvD,CAAC;QACH,CAAC;IACH,CAAC;IAEO,iBAAiB,CAAC,iBAAyB;QACjD,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC;QACzC,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,GAAG,iBAAiB,CAAC;QACzD,IAAI,KAAK,KAAK,SAAS,IAAI,SAAS,GAAG,KAAK,EAAE,CAAC;YAC7C,MAAM,IAAI,6BAA6B,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAC5D,CAAC;QACD,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;IACjC,CAAC;CACF;AAED,mDAAmD;AAEnD,0EAA0E;AAC1E,MAAM,UAAU,iBAAiB,CAC/B,IAAgD;IAEhD,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC7B,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;IAC/D,CAAC;IACD,IAAI,IAAI,YAAY,UAAU,EAAE,CAAC;QAC/B,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACrD,CAAC;IACD,IAAI,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7B,OAAO;YACL,MAAM,EAAE,SAAS,CAAC,MAAM;YACxB,OAAO,EAAE,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC;SACvE,CAAC;IACJ,CAAC;IACD,OAAO;QACL,MAAM,EAAE,SAAS,CAAC,MAAM;QACxB,OAAO,EAAE,IAAI,UAAU,CAAC,IAAuB,CAAC;KACjD,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@daloyjs/core",
3
- "version": "0.32.0",
3
+ "version": "0.34.1",
4
4
  "description": "DaloyJS is a runtime-portable, contract-first TypeScript web framework with built-in OpenAPI (Hey API), typed client generation, large-scale maintainability, and security-first defaults. Hono-grade portability, Elysia-grade DX, FastAPI-grade docs, Fastify-grade ops — distributed via pnpm.",
5
5
  "type": "module",
6
6
  "publishConfig": {
@@ -175,14 +175,26 @@
175
175
  "typecheck": "tsc --noEmit",
176
176
  "gen:openapi": "node --import tsx scripts/dump-openapi.ts",
177
177
  "gen:client": "openapi-ts",
178
+ "gen:sbom": "node --import tsx scripts/generate-sbom.ts --package-json ./package.json --out-cyclonedx ./dist/sbom.cdx.json --out-spdx ./dist/sbom.spdx.json && node --import tsx scripts/generate-sbom.ts --package-json ./packages/create-daloy/package.json --out-cyclonedx ./packages/create-daloy/sbom.cdx.json --out-spdx ./packages/create-daloy/sbom.spdx.json",
178
179
  "gen": "pnpm gen:openapi && pnpm gen:client",
179
180
  "verify:lockfile": "node --import tsx scripts/verify-lockfile-sources.ts",
180
181
  "verify:no-runtime-deps": "node --import tsx scripts/verify-no-runtime-deps.ts",
182
+ "verify:no-lifecycle-scripts": "node --import tsx scripts/verify-no-lifecycle-scripts.ts",
183
+ "verify:no-bin-shadowing": "node --import tsx scripts/verify-no-bin-shadowing.ts",
181
184
  "verify:secret-comparisons": "node --import tsx scripts/verify-secret-comparisons.ts",
185
+ "verify:no-unsafe-buffer": "node --import tsx scripts/verify-no-unsafe-buffer.ts",
186
+ "verify:no-remote-exec": "node --import tsx scripts/verify-no-remote-exec.ts",
187
+ "verify:no-vulnerable-sandboxes": "node --import tsx scripts/verify-no-vulnerable-sandboxes.ts",
188
+ "verify:no-leaked-credentials": "node --import tsx scripts/verify-no-leaked-credentials.ts",
189
+ "verify:no-invisible-unicode": "node --import tsx scripts/verify-no-invisible-unicode.ts",
190
+ "verify:no-encoded-payloads": "node --import tsx scripts/verify-no-encoded-payloads.ts",
191
+ "verify:no-registry-exfiltration": "node --import tsx scripts/verify-no-registry-exfiltration.ts",
192
+ "verify:actions-pinned": "node --import tsx scripts/verify-actions-pinned.ts",
182
193
  "verify:wave9-audits": "node --import tsx scripts/verify-wave9-audits.ts",
183
194
  "verify:wave10-audits": "node --import tsx scripts/verify-wave10-audits.ts",
184
195
  "verify:wave11-audits": "node --import tsx scripts/verify-wave11-audits.ts",
185
196
  "verify:wave12-audits": "node --import tsx scripts/verify-wave12-audits.ts",
197
+ "verify:sbom": "node --import tsx scripts/verify-sbom.ts",
186
198
  "audit": "pnpm audit --prod"
187
199
  }
188
200
  }