@theokit/http 2.0.0 → 2.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.
package/dist/app.js CHANGED
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  TheoApp
3
- } from "./chunk-6HVQHSPX.js";
4
- import "./chunk-R72YKDQ4.js";
5
- import "./chunk-AJOJXZRY.js";
3
+ } from "./chunk-HN73QCHT.js";
4
+ import "./chunk-ERQT6ZDN.js";
5
+ import "./chunk-CRTEMKW2.js";
6
6
  import "./chunk-BSS3KPGY.js";
7
7
  import "./chunk-Z4QWC7IK.js";
8
8
  export {
@@ -1,8 +1,9 @@
1
1
  import {
2
2
  CATCH_EXCEPTIONS,
3
3
  HttpException,
4
- getMeta
5
- } from "./chunk-AJOJXZRY.js";
4
+ getMeta,
5
+ httpExceptionToResponse
6
+ } from "./chunk-CRTEMKW2.js";
6
7
  import {
7
8
  resolveOrNew
8
9
  } from "./chunk-JP4J23TV.js";
@@ -37,12 +38,7 @@ function matchesException(exception, catchTypes) {
37
38
  __name(matchesException, "matchesException");
38
39
  function builtInResponse(exception) {
39
40
  if (exception instanceof HttpException) {
40
- return new Response(JSON.stringify(exception.toJSON()), {
41
- status: exception.statusCode,
42
- headers: {
43
- "content-type": "application/json"
44
- }
45
- });
41
+ return httpExceptionToResponse(exception);
46
42
  }
47
43
  return globalFallback(exception);
48
44
  }
@@ -68,4 +64,4 @@ __name(globalFallback, "globalFallback");
68
64
  export {
69
65
  runExceptionFilters
70
66
  };
71
- //# sourceMappingURL=chunk-HC47QXZV.js.map
67
+ //# sourceMappingURL=chunk-2HJYLH4O.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/bridge/exception-filter-chain.ts"],"mappings":";;;;;;;;;;;;;;AA0BA,eAAsBA,oBACpBC,WACAC,SACAC,SACAC,WAAuB;AAEvB,QAAMC,OAAsB;IAC1BC,YAAY,6BAAMH,SAAN;EACd;AAEA,aAAWI,cAAcL,SAAS;AAChC,UAAMM,aAAaC,QAAoBC,kBAAkBH,UAAAA,KAAe,CAAA;AACxE,QAAII,iBAAiBV,WAAWO,UAAAA,GAAa;AAC3C,YAAMI,SAASC,aAAaN,YAAYH,SAAAA;AACxC,UAAI;AACF,eAAO,MAAMQ,OAAOE,MAAMb,WAAWI,IAAAA;MACvC,SAASU,aAAa;AAEpBC,gBAAQC,MAAM,2CAA2CF,WAAAA;AACzD,eAAOG,eAAejB,SAAAA;MACxB;IACF;EACF;AAEA,SAAOkB,gBAAgBlB,SAAAA;AACzB;AAzBsBD;AA2BtB,SAASW,iBAAiBV,WAAoBO,YAAsB;AAClE,MAAIA,WAAWY,WAAW,EAAG,QAAO;AACpC,SAAOZ,WAAWa,KAAK,CAACC,SAASrB,qBAAqBqB,IAAAA;AACxD;AAHSX;AAKT,SAASQ,gBAAgBlB,WAAkB;AACzC,MAAIA,qBAAqBsB,eAAe;AAItC,WAAOC,wBAAwBvB,SAAAA;EACjC;AACA,SAAOiB,eAAejB,SAAAA;AACxB;AARSkB;AAUT,SAASD,eAAejB,WAAkB;AACxC,QAAMwB,UAAUxB,qBAAqByB,QAAQzB,UAAUwB,UAAU;AACjET,UAAQC,MAAM,wCAAwChB,SAAAA;AACtD,SAAO,IAAI0B,SACTC,KAAKC,UAAU;IAAEZ,OAAO;MAAEa,MAAM;MAAyBL;MAASM,YAAY;IAAI;EAAE,CAAA,GACpF;IAAEC,QAAQ;IAAKC,SAAS;MAAE,gBAAgB;IAAmB;EAAE,CAAA;AAEnE;AAPSf;","names":["runExceptionFilters","exception","filters","request","container","host","getRequest","FilterCtor","catchTypes","getMeta","CATCH_EXCEPTIONS","matchesException","filter","resolveOrNew","catch","filterError","console","error","globalFallback","builtInResponse","length","some","Type","HttpException","httpExceptionToResponse","message","Error","Response","JSON","stringify","code","statusCode","status","headers"]}
@@ -2,37 +2,6 @@ import {
2
2
  __name
3
3
  } from "./chunk-Z4QWC7IK.js";
4
4
 
5
- // src/metadata/keys.ts
6
- var CONTROLLER_PREFIX = /* @__PURE__ */ Symbol.for("theokit:http-decorators:controller-prefix");
7
- var ROUTE_METHODS = /* @__PURE__ */ Symbol.for("theokit:http-decorators:route-methods");
8
- var ROUTE_PARAMS = /* @__PURE__ */ Symbol.for("theokit:http-decorators:route-params");
9
- var ROUTE_STATUS = /* @__PURE__ */ Symbol.for("theokit:http-decorators:route-status");
10
- var ROUTE_HEADERS = /* @__PURE__ */ Symbol.for("theokit:http-decorators:route-headers");
11
- var ROUTE_REDIRECT = /* @__PURE__ */ Symbol.for("theokit:http-decorators:route-redirect");
12
- var USE_GUARDS = /* @__PURE__ */ Symbol.for("theokit:http-decorators:use-guards");
13
- var USE_INTERCEPTORS = /* @__PURE__ */ Symbol.for("theokit:http-decorators:use-interceptors");
14
- var USE_FILTERS = /* @__PURE__ */ Symbol.for("theokit:http-decorators:use-filters");
15
- var CATCH_EXCEPTIONS = /* @__PURE__ */ Symbol.for("theokit:http-decorators:catch-exceptions");
16
- var EXPOSE_AGENT = /* @__PURE__ */ Symbol.for("theokit:http-decorators:expose-agent");
17
-
18
- // src/metadata/storage.ts
19
- import "reflect-metadata";
20
- function setMeta(key, target, value, propertyKey) {
21
- if (propertyKey !== void 0) {
22
- Reflect.defineMetadata(key, value, target, propertyKey);
23
- } else {
24
- Reflect.defineMetadata(key, value, target);
25
- }
26
- }
27
- __name(setMeta, "setMeta");
28
- function getMeta(key, target, propertyKey) {
29
- if (propertyKey !== void 0) {
30
- return Reflect.getMetadata(key, target, propertyKey);
31
- }
32
- return Reflect.getMetadata(key, target);
33
- }
34
- __name(getMeta, "getMeta");
35
-
36
5
  // src/exceptions/http-exception.ts
37
6
  var STATUS_CODES = {
38
7
  400: "BAD_REQUEST",
@@ -64,6 +33,8 @@ var HttpException = class extends Error {
64
33
  statusCode;
65
34
  code;
66
35
  description;
36
+ /** Headers this refusal carries. Empty unless the thrower supplied some. See {@link HttpExceptionOptions.headers}. */
37
+ headers;
67
38
  constructor(message, statusCode, options) {
68
39
  super(message, options?.cause ? {
69
40
  cause: options.cause
@@ -72,6 +43,9 @@ var HttpException = class extends Error {
72
43
  this.statusCode = statusCode;
73
44
  this.code = STATUS_CODES[statusCode] ?? "INTERNAL_SERVER_ERROR";
74
45
  this.description = options?.description;
46
+ this.headers = Object.freeze({
47
+ ...options?.headers
48
+ });
75
49
  }
76
50
  toJSON() {
77
51
  return {
@@ -237,20 +211,53 @@ var HttpStatus = {
237
211
  GATEWAY_TIMEOUT: 504
238
212
  };
239
213
 
214
+ // src/exceptions/to-response.ts
215
+ function httpExceptionToResponse(exception) {
216
+ const headers = new Headers();
217
+ for (const [name, value] of Object.entries(exception.headers)) {
218
+ if (name.toLowerCase() === "content-type") continue;
219
+ headers.set(name, value);
220
+ }
221
+ headers.set("content-type", "application/json");
222
+ return new Response(JSON.stringify(exception.toJSON()), {
223
+ status: exception.statusCode,
224
+ headers
225
+ });
226
+ }
227
+ __name(httpExceptionToResponse, "httpExceptionToResponse");
228
+
229
+ // src/metadata/keys.ts
230
+ var CONTROLLER_PREFIX = /* @__PURE__ */ Symbol.for("theokit:http-decorators:controller-prefix");
231
+ var ROUTE_METHODS = /* @__PURE__ */ Symbol.for("theokit:http-decorators:route-methods");
232
+ var ROUTE_PARAMS = /* @__PURE__ */ Symbol.for("theokit:http-decorators:route-params");
233
+ var ROUTE_STATUS = /* @__PURE__ */ Symbol.for("theokit:http-decorators:route-status");
234
+ var ROUTE_HEADERS = /* @__PURE__ */ Symbol.for("theokit:http-decorators:route-headers");
235
+ var ROUTE_REDIRECT = /* @__PURE__ */ Symbol.for("theokit:http-decorators:route-redirect");
236
+ var USE_GUARDS = /* @__PURE__ */ Symbol.for("theokit:http-decorators:use-guards");
237
+ var USE_INTERCEPTORS = /* @__PURE__ */ Symbol.for("theokit:http-decorators:use-interceptors");
238
+ var USE_FILTERS = /* @__PURE__ */ Symbol.for("theokit:http-decorators:use-filters");
239
+ var CATCH_EXCEPTIONS = /* @__PURE__ */ Symbol.for("theokit:http-decorators:catch-exceptions");
240
+ var EXPOSE_AGENT = /* @__PURE__ */ Symbol.for("theokit:http-decorators:expose-agent");
241
+
242
+ // src/metadata/storage.ts
243
+ import "reflect-metadata";
244
+ function setMeta(key, target, value, propertyKey) {
245
+ if (propertyKey !== void 0) {
246
+ Reflect.defineMetadata(key, value, target, propertyKey);
247
+ } else {
248
+ Reflect.defineMetadata(key, value, target);
249
+ }
250
+ }
251
+ __name(setMeta, "setMeta");
252
+ function getMeta(key, target, propertyKey) {
253
+ if (propertyKey !== void 0) {
254
+ return Reflect.getMetadata(key, target, propertyKey);
255
+ }
256
+ return Reflect.getMetadata(key, target);
257
+ }
258
+ __name(getMeta, "getMeta");
259
+
240
260
  export {
241
- CONTROLLER_PREFIX,
242
- ROUTE_METHODS,
243
- ROUTE_PARAMS,
244
- ROUTE_STATUS,
245
- ROUTE_HEADERS,
246
- ROUTE_REDIRECT,
247
- USE_GUARDS,
248
- USE_INTERCEPTORS,
249
- USE_FILTERS,
250
- CATCH_EXCEPTIONS,
251
- EXPOSE_AGENT,
252
- setMeta,
253
- getMeta,
254
261
  HttpException,
255
262
  BadRequestException,
256
263
  UnauthorizedException,
@@ -273,6 +280,20 @@ export {
273
280
  GatewayTimeoutException,
274
281
  HttpVersionNotSupportedException,
275
282
  TooManyRequestsException,
276
- HttpStatus
283
+ HttpStatus,
284
+ httpExceptionToResponse,
285
+ CONTROLLER_PREFIX,
286
+ ROUTE_METHODS,
287
+ ROUTE_PARAMS,
288
+ ROUTE_STATUS,
289
+ ROUTE_HEADERS,
290
+ ROUTE_REDIRECT,
291
+ USE_GUARDS,
292
+ USE_INTERCEPTORS,
293
+ USE_FILTERS,
294
+ CATCH_EXCEPTIONS,
295
+ EXPOSE_AGENT,
296
+ setMeta,
297
+ getMeta
277
298
  };
278
- //# sourceMappingURL=chunk-AJOJXZRY.js.map
299
+ //# sourceMappingURL=chunk-CRTEMKW2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/exceptions/http-exception.ts","../src/exceptions/to-response.ts","../src/metadata/keys.ts","../src/metadata/storage.ts"],"mappings":"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","names":["STATUS_CODES","HttpException","Error","statusCode","code","description","headers","message","options","cause","undefined","name","Object","freeze","toJSON","error","factory","status","defaultMsg","BadRequestException","UnauthorizedException","ForbiddenException","NotFoundException","MethodNotAllowedException","NotAcceptableException","RequestTimeoutException","ConflictException","GoneException","PreconditionFailedException","PayloadTooLargeException","UnsupportedMediaTypeException","ImATeapotException","UnprocessableEntityException","InternalServerErrorException","NotImplementedException","BadGatewayException","ServiceUnavailableException","GatewayTimeoutException","HttpVersionNotSupportedException","TooManyRequestsException","HttpStatus","OK","CREATED","ACCEPTED","NO_CONTENT","MOVED_PERMANENTLY","FOUND","NOT_MODIFIED","TEMPORARY_REDIRECT","PERMANENT_REDIRECT","BAD_REQUEST","UNAUTHORIZED","PAYMENT_REQUIRED","FORBIDDEN","NOT_FOUND","METHOD_NOT_ALLOWED","NOT_ACCEPTABLE","REQUEST_TIMEOUT","CONFLICT","GONE","PRECONDITION_FAILED","PAYLOAD_TOO_LARGE","UNSUPPORTED_MEDIA_TYPE","IM_A_TEAPOT","UNPROCESSABLE_ENTITY","TOO_MANY_REQUESTS","INTERNAL_SERVER_ERROR","NOT_IMPLEMENTED","BAD_GATEWAY","SERVICE_UNAVAILABLE","GATEWAY_TIMEOUT","httpExceptionToResponse","exception","headers","Headers","name","value","Object","entries","toLowerCase","set","Response","JSON","stringify","toJSON","status","statusCode","CONTROLLER_PREFIX","Symbol","for","ROUTE_METHODS","ROUTE_PARAMS","ROUTE_STATUS","ROUTE_HEADERS","ROUTE_REDIRECT","USE_GUARDS","USE_INTERCEPTORS","USE_FILTERS","CATCH_EXCEPTIONS","EXPOSE_AGENT","setMeta","key","target","value","propertyKey","undefined","Reflect","defineMetadata","getMeta","getMetadata"]}
@@ -1,6 +1,7 @@
1
1
  import {
2
2
  CONTROLLER_PREFIX,
3
3
  EXPOSE_AGENT,
4
+ ForbiddenException,
4
5
  ROUTE_HEADERS,
5
6
  ROUTE_METHODS,
6
7
  ROUTE_PARAMS,
@@ -9,8 +10,9 @@ import {
9
10
  USE_FILTERS,
10
11
  USE_GUARDS,
11
12
  USE_INTERCEPTORS,
12
- getMeta
13
- } from "./chunk-AJOJXZRY.js";
13
+ getMeta,
14
+ httpExceptionToResponse
15
+ } from "./chunk-CRTEMKW2.js";
14
16
  import {
15
17
  __name
16
18
  } from "./chunk-Z4QWC7IK.js";
@@ -38,6 +40,19 @@ function createExecutionContext(request, controllerClass, methodName) {
38
40
  }
39
41
  __name(createExecutionContext, "createExecutionContext");
40
42
 
43
+ // src/bridge/guard-chain.ts
44
+ var constructGuard = /* @__PURE__ */ __name((Ctor) => new Ctor(), "constructGuard");
45
+ async function runGuards(guards, context, resolve = constructGuard) {
46
+ for (const GuardCtor of guards) {
47
+ const guard = resolve(GuardCtor);
48
+ if (!await guard.canActivate(context)) {
49
+ return httpExceptionToResponse(new ForbiddenException("Forbidden resource"));
50
+ }
51
+ }
52
+ return null;
53
+ }
54
+ __name(runGuards, "runGuards");
55
+
41
56
  // src/decorators/set-metadata.ts
42
57
  import "reflect-metadata";
43
58
  var decoratorKeyCounter = 0;
@@ -306,6 +321,7 @@ __name(walkControllerMetadata, "walkControllerMetadata");
306
321
  export {
307
322
  HttpDecoratorsConfigError,
308
323
  createExecutionContext,
324
+ runGuards,
309
325
  createDecorator,
310
326
  SetMetadata,
311
327
  Reflector,
@@ -318,4 +334,4 @@ export {
318
334
  joinPath,
319
335
  walkControllerMetadata
320
336
  };
321
- //# sourceMappingURL=chunk-R72YKDQ4.js.map
337
+ //# sourceMappingURL=chunk-ERQT6ZDN.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/bridge/errors.ts","../src/bridge/execution-context.ts","../src/bridge/guard-chain.ts","../src/decorators/set-metadata.ts","../src/decorators/public.ts","../src/route-access.ts","../src/bridge/dto-zod.ts","../src/bridge/walk-metadata.ts"],"mappings":"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","names":["HttpDecoratorsConfigError","Error","name","message","createExecutionContext","request","controllerClass","methodName","url","URL","getRequest","getUrl","getClass","getMethodName","constructGuard","Ctor","runGuards","guards","context","resolve","GuardCtor","guard","canActivate","httpExceptionToResponse","ForbiddenException","decoratorKeyCounter","createDecorator","key","Symbol","for","decorator","value","target","propertyKey","metaTarget","undefined","Reflect","defineMetadata","SetMetadata","metaKey","Reflector","get","getMetadata","getByKey","getAllAndOverride","methodLevel","getAllAndOverrideByKey","getAllAndMerge","result","Array","isArray","push","classLevel","PUBLIC_ROUTE_METADATA","Public","SetMetadata","classifyAccess","declared","access","undefined","guards","length","declareOpen","kind","undeclaredRouteWarning","route","undeclaredRouteRefusal","resolveDtoSchema","dtoClass","undefined","maybe","schema","safeParse","joinPath","prefix","path","replace","resolveBodySchema","paramEntries","ControllerClass","propertyKey","bodyParam","find","p","source","key","undefined","schema","paramTypes","Reflect","getMetadata","prototype","length","resolveDtoSchema","index","console","warn","String","name","declaredAccess","guards","isPublic","PUBLIC_ROUTE_METADATA","classifyAccess","access","walkCache","WeakMap","walkControllerMetadata","cached","get","controllerMeta","getMeta","CONTROLLER_PREFIX","HttpDecoratorsConfigError","host","methods","ROUTE_METHODS","paramsMap","ROUTE_PARAMS","Map","classGuards","USE_GUARDS","classInterceptors","USE_INTERCEPTORS","classFilters","USE_FILTERS","result","map","m","bodySchema","methodGuards","methodInterceptors","verb","fullPath","sort","a","b","status","ROUTE_STATUS","headers","ROUTE_HEADERS","redirect","ROUTE_REDIRECT","interceptors","filters","exposeEntries","EXPOSE_AGENT","agentResults","e","memberGuards","agent","module","opts","all","set"]}
@@ -2,14 +2,16 @@ import {
2
2
  HttpDecoratorsConfigError,
3
3
  classifyAccess,
4
4
  createExecutionContext,
5
+ runGuards,
5
6
  undeclaredRouteRefusal,
6
7
  undeclaredRouteWarning,
7
8
  walkControllerMetadata
8
- } from "./chunk-R72YKDQ4.js";
9
+ } from "./chunk-ERQT6ZDN.js";
9
10
  import {
10
11
  ForbiddenException,
11
- HttpException
12
- } from "./chunk-AJOJXZRY.js";
12
+ HttpException,
13
+ httpExceptionToResponse
14
+ } from "./chunk-CRTEMKW2.js";
13
15
  import {
14
16
  createNodeAdapter
15
17
  } from "./chunk-BSS3KPGY.js";
@@ -639,16 +641,16 @@ var TheoApp = class _TheoApp {
639
641
  if (request.method.toUpperCase() === route.method && route.pattern.test(pathname)) {
640
642
  if (route.access === "undeclared" && this.undeclaredRoutes === "deny") {
641
643
  const ex = new ForbiddenException(undeclaredRouteRefusal("agent", pathname));
642
- return jsonResponse(ex.statusCode, ex.toJSON());
644
+ return httpExceptionToResponse(ex);
643
645
  }
644
646
  if (route.guards.length > 0) {
645
647
  const ctx = createExecutionContext(request, route.agentClass, route.methodName);
646
- for (const GuardCtor of route.guards) {
647
- const guard = new GuardCtor();
648
- if (!await guard.canActivate(ctx)) {
649
- const ex = new ForbiddenException("Forbidden resource");
650
- return jsonResponse(ex.statusCode, ex.toJSON());
651
- }
648
+ try {
649
+ const refusal = await runGuards(route.guards, ctx);
650
+ if (refusal) return refusal;
651
+ } catch (err) {
652
+ if (err instanceof HttpException) return httpExceptionToResponse(err);
653
+ throw err;
652
654
  }
653
655
  }
654
656
  return route.handler(request);
@@ -669,7 +671,7 @@ var TheoApp = class _TheoApp {
669
671
  if (entry.walk.access === "undeclared") {
670
672
  if (this.undeclaredRoutes === "deny") {
671
673
  const ex = new ForbiddenException(undeclaredRouteRefusal("controller", url.pathname));
672
- return jsonResponse(ex.statusCode, ex.toJSON());
674
+ return httpExceptionToResponse(ex);
673
675
  }
674
676
  if (!this.warnedUndeclared.has(url.pathname)) {
675
677
  this.warnedUndeclared.add(url.pathname);
@@ -678,13 +680,8 @@ var TheoApp = class _TheoApp {
678
680
  }
679
681
  try {
680
682
  const ctx = createExecutionContext(request, entry.instance.constructor, entry.walk.propertyKey);
681
- for (const GuardCtor of entry.walk.guards) {
682
- const guard = new GuardCtor();
683
- if (!await guard.canActivate(ctx)) {
684
- const ex = new ForbiddenException("Forbidden resource");
685
- return jsonResponse(ex.statusCode, ex.toJSON());
686
- }
687
- }
683
+ const refusal = await runGuards(entry.walk.guards, ctx);
684
+ if (refusal) return refusal;
688
685
  let body;
689
686
  if (entry.needsBody && [
690
687
  "POST",
@@ -730,11 +727,11 @@ var TheoApp = class _TheoApp {
730
727
  return buildResponse(result, entry.walk, method);
731
728
  } catch (err) {
732
729
  if (entry.walk.filters.length > 0) {
733
- const { runExceptionFilters } = await import("./exception-filter-chain-AS6BB5PF.js");
730
+ const { runExceptionFilters } = await import("./exception-filter-chain-UXEVSDD3.js");
734
731
  return runExceptionFilters(err, entry.walk.filters, request);
735
732
  }
736
733
  if (err instanceof HttpException) {
737
- return jsonResponse(err.statusCode, err.toJSON());
734
+ return httpExceptionToResponse(err);
738
735
  }
739
736
  console.error("[theokit] Internal error:", err instanceof Error ? err.message : err);
740
737
  return jsonResponse(500, {
@@ -839,4 +836,4 @@ export {
839
836
  streamToResponse,
840
837
  TheoApp
841
838
  };
842
- //# sourceMappingURL=chunk-6HVQHSPX.js.map
839
+ //# sourceMappingURL=chunk-HN73QCHT.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/app.ts","../src/request-context.ts","../src/static.ts","../src/stream-renderer.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AACA,OAAO;;;ACaP,SAASA,yBAAyB;AAiBlC,IAAMC,UAAU,IAAIC,kBAAAA;AAmBb,SAASC,oBAAAA;AACd,QAAMC,MAAMH,QAAQI,SAAQ;AAC5B,MAAI,CAACD,KAAK;AACR,UAAM,IAAIE,MACR,qKAEE;EAEN;AACA,SAAOF;AACT;AAVgBD;AAgBT,SAASI,uBAAAA;AACd,SAAON,QAAQI,SAAQ,KAAM;AAC/B;AAFgBE;AAShB,eAAsBC,sBACpBJ,KACAK,IAAwB;AAExB,SAAOR,QAAQS,IAAIN,KAAKK,EAAAA;AAC1B;AALsBD;;;AC/DtB,IAAMG,aAAqC;;EAEzC,SAAS;EACT,QAAQ;EACR,QAAQ;EACR,OAAO;EACP,QAAQ;EACR,SAAS;EACT,QAAQ;EACR,QAAQ;EACR,QAAQ;EACR,OAAO;EACP,SAAS;EACT,QAAQ;EACR,OAAO;EACP,QAAQ;EACR,QAAQ;;EAGR,QAAQ;EACR,QAAQ;EACR,SAAS;EACT,QAAQ;EACR,QAAQ;EACR,QAAQ;EACR,SAAS;EACT,SAAS;EACT,QAAQ;EACR,SAAS;EACT,QAAQ;;EAGR,SAAS;EACT,UAAU;EACV,QAAQ;EACR,QAAQ;EACR,QAAQ;;EAGR,QAAQ;EACR,QAAQ;EACR,QAAQ;EACR,QAAQ;EACR,SAAS;EACT,QAAQ;;EAGR,QAAQ;EACR,QAAQ;EACR,OAAO;EACP,QAAQ;EACR,SAAS;;EAGT,QAAQ;EACR,WAAW;EACX,aAAa;EACb,gBAAgB;AAClB;AAUA,IAAMC,iBAAiB;AAehB,SAASC,YAAYC,UAAgB;AAC1C,QAAMC,MAAMD,SAASE,YAAY,GAAA;AACjC,MAAID,QAAQ,GAAI,QAAO;AACvB,QAAME,MAAMH,SAASI,MAAMH,GAAAA,EAAKI,YAAW;AAC3C,SAAOR,WAAWM,GAAAA,KAAQ;AAC5B;AALgBJ;AAUT,SAASO,WAAWC,UAAgB;AACzC,SAAO,CAACT,eAAeU,KAAKD,QAAAA;AAC9B;AAFgBD;AAWhB,eAAeG,YAAYC,UAAgB;AACzC,QAAMC,IAAIC;AACV,QAAMC,QAAQF,EAAEG;AAOhB,QAAMC,OAAOF,MAAME,KAAKL,QAAAA;AACxB,MAAI,CAAE,MAAMK,KAAKC,OAAM,EAAK,QAAO;AACnC,QAAMC,MAAM,MAAMF,KAAKG,YAAW;AAGlC,SAAO;IAAEC,SAAS,IAAIC,WAAWH,GAAAA;IAAMI,MAAMJ,IAAIK;EAAW;AAC9D;AAfeb;AAiBf,eAAec,aAAab,UAAgB;AAC1C,QAAMC,IAAIC;AACV,QAAMY,SAASb,EAAEc;AAIjB,MAAI;AACF,UAAMC,OAAO,MAAMF,OAAOE,KAAKhB,QAAAA;AAC/B,QAAIgB,KAAKC,YAAa,QAAO;AAC7B,UAAMR,UAAU,MAAMK,OAAOI,SAASlB,QAAAA;AACtC,WAAO;MAAES;MAASE,MAAMF,QAAQG;IAAW;EAC7C,QAAQ;AACN,WAAO;EACT;AACF;AAdeC;AAgBf,eAAeM,aAAanB,UAAgB;AAC1C,QAAMoB,KAAK,MAAM,OAAO,aAAA;AACxB,MAAIC;AACJ,MAAI;AACFA,aAAS,MAAMD,GAAGE,KAAKtB,UAAU,GAAA;EACnC,QAAQ;AACN,WAAO;EACT;AAGA,MAAI;AACF,SAAK,MAAMqB,OAAOL,KAAI,GAAIC,YAAW,EAAI,QAAO;AAChD,UAAMR,UAAU,MAAMY,OAAOH,SAAQ;AACrC,WAAO;MAAET,SAAS,IAAIC,WAAWD,OAAAA;MAAUE,MAAMF,QAAQG;IAAW;EACtE,QAAQ;AACN,WAAO;EACT,UAAA;AACE,UAAMS,OAAOE,MAAK;EACpB;AACF;AAnBeJ;AA8Bf,eAAeK,kBAAkBxB,UAAkByB,MAAY;AAC7D,QAAM,EAAEC,IAAG,IAAK,MAAM,OAAO,MAAA;AAC7B,QAAMN,KAAK,MAAM,OAAO,aAAA;AACxB,MAAI;AACF,UAAMO,WAAW,MAAMP,GAAGQ,SAAS5B,QAAAA;AACnC,UAAM6B,WAAW,MAAMT,GAAGQ,SAASH,IAAAA;AACnC,QAAIE,aAAaE,YAAY,CAACF,SAASG,WAAWD,WAAWH,GAAAA,EAAM,QAAO;AAC1E,WAAOC;EACT,QAAQ;AACN,WAAO;EACT;AACF;AAXeH;AAaf,eAAeN,SAASlB,UAAkByB,MAAY;AACpD,QAAMM,WAAW,MAAMP,kBAAkBxB,UAAUyB,IAAAA;AACnD,MAAIM,aAAa,KAAM,QAAO;AAC9B,QAAM9B,IAAIC;AACV,MAAID,EAAEG,IAAK,QAAOL,YAAYgC,QAAAA;AAC9B,MAAI9B,EAAEc,KAAM,QAAOF,aAAakB,QAAAA;AAChC,SAAOZ,aAAaY,QAAAA;AACtB;AAPeb;AAWf,eAAec,YAAYP,MAAY;AACrC,QAAMxB,IAAIC;AACV,MAAID,EAAEc,MAAM;AACV,UAAMD,SAASb,EAAEc;AACjB,UAAM,EAAEkB,KAAI,IAAK,MAAM,OAAO,MAAA;AAC9B,WAAOA,KAAKnB,OAAOoB,IAAG,GAAIT,IAAAA;EAC5B;AACA,QAAM,EAAEU,QAAO,IAAK,MAAM,OAAO,MAAA;AACjC,SAAOA,QAAQV,IAAAA;AACjB;AATeO;AAmBR,SAASI,oBACdC,SAAuB;AAEvB,QAAMZ,OAAOY,SAASZ,QAAQ;AAC9B,QAAMa,SAASD,SAASC,UAAU;AAElC,MAAIC;AAEJ,SAAO,OAAOC,YAAAA;AAEZ,UAAMC,SAASD,QAAQC,OAAOC,YAAW;AACzC,QAAID,WAAW,SAASA,WAAW,OAAQ,QAAO;AAGlD,UAAME,MAAM,IAAIC,IAAIJ,QAAQG,GAAG;AAC/B,QAAI9C;AACJ,QAAI;AACFA,iBAAWgD,mBAAmBF,IAAI9C,QAAQ;IAC5C,QAAQ;AACN,aAAO;IACT;AAGA,QAAIA,SAASiC,WAAW,OAAA,KAAYjC,SAASiC,WAAW,SAAA,EAAY,QAAO;AAG3E,QAAI,CAAClC,WAAWC,QAAAA,EAAW,QAAO;AAGlC0C,qBAAiB,MAAMP,YAAYP,IAAAA;AAGnC,UAAM,EAAEQ,KAAI,IAAK,MAAM,OAAO,MAAA;AAC9B,QAAIjC,WAAWiC,KAAKM,cAAc1C,QAAAA;AAGlC,QAAIiD,SAAS,MAAM5B,SAASlB,UAAUuC,YAAAA;AACtC,QAAI,CAACO,WAAWjD,SAASkD,SAAS,GAAA,KAAQ,CAAClD,SAASmD,SAAS,GAAA,IAAO;AAClEhD,iBAAWiC,KAAKjC,UAAU,YAAA;AAC1B8C,eAAS,MAAM5B,SAASlB,UAAUuC,YAAAA;IACpC;AAEA,QAAI,CAACO,OAAQ,QAAO;AAGpB,UAAMG,cAAc5D,YAAYW,QAAAA;AAChC,UAAMkD,UAAkC;MACtC,gBAAgBD;MAChB,kBAAkBE,OAAOL,OAAOnC,IAAI;IACtC;AACA,QAAI2B,SAAS,GAAG;AACdY,cAAQ,eAAA,IAAmB,mBAAmBC,OAAOb,MAAAA,CAAAA;IACvD;AAGA,QAAIG,WAAW,QAAQ;AACrB,aAAO,IAAIW,SAAS,MAAM;QAAEC,QAAQ;QAAKH;MAAQ,CAAA;IACnD;AAEA,WAAO,IAAIE,SAASN,OAAOrC,SAAgC;MAAE4C,QAAQ;MAAKH;IAAQ,CAAA;EACpF;AACF;AA7DgBd;;;AC3LhB,IAAMkB,UAAU;AAChB,IAAMC,UAAU,IAAIC,YAAAA;AAqBpB,eAAsBC,eAAeC,SAA4B;AAC/D,QAAM,EAAEC,MAAMC,aAAa,MAAK,IAAKF;AAGrC,QAAMG,iBAAiB,MAAM,OAAO,kBAAA;AAGpC,MAAI,OAAOA,eAAeC,2BAA2B,YAAY;AAC/D,WAAOC,yBAAyBF,eAAeC,wBAAwBH,MAAMC,UAAAA;EAC/E;AAGA,MAAI,OAAOC,eAAeG,mBAAmB,YAAY;AACvDC,YAAQC,KACN,uIACE;AAEJ,WAAOC,iBAAiBN,eAAeG,gBAAgBL,IAAAA;EACzD;AAEA,QAAM,IAAIS,MACR,2HACE;AAEN;AAxBsBX;AA8BtB,eAAeM,yBACbM,UAGAV,MACAC,YAAmB;AAEnB,QAAMU,cAAc,MAAMD,SAASV,IAAAA;AAGnC,MAAIC,YAAY;AACd,UAAMU,YAAYC;EACpB;AAGA,QAAMC,gBAAgBC,eAAeH,WAAAA;AAErC,SAAO;IACLI,QAAQF;IACRD,UAAUD,YAAYC;EACxB;AACF;AArBeR;AA2Bf,SAASI,iBACPE,UACAV,MAA6B;AAE7B,QAAMgB,OAAOrB,UAAUe,SAASV,IAAAA;AAChC,QAAMiB,QAAQrB,QAAQsB,OAAOF,IAAAA;AAE7B,QAAMD,SAAS,IAAII,eAA2B;IAC5CC,MAAMC,YAAU;AACdA,iBAAWC,QAAQL,KAAAA;AACnBI,iBAAWE,MAAK;IAClB;EACF,CAAA;AAEA,SAAO;IACLR;IACAH,UAAUY,QAAQC,QAAO;EAC3B;AACF;AAlBSjB;AA2BT,SAASM,eAAeY,QAAkC;AACxD,QAAMC,SAASD,OAAOE,UAAS;AAC/B,MAAIC,cAAc;AAElB,SAAO,IAAIV,eAA2B;IACpC,MAAMW,KAAKT,YAAU;AACnB,UAAI,CAACQ,aAAa;AAChBR,mBAAWC,QAAQ1B,QAAQsB,OAAOvB,OAAAA,CAAAA;AAClCkC,sBAAc;MAChB;AACA,YAAM,EAAEE,OAAOC,KAAI,IAAK,MAAML,OAAOM,KAAI;AACzC,UAAID,MAAM;AACRX,mBAAWE,MAAK;AAChB;MACF;AACAF,iBAAWC,QAAQS,KAAAA;IACrB;IACAG,SAAAA;AACE,WAAKP,OAAOO,OAAM;IACpB;EACF,CAAA;AACF;AArBSpB;AAoCF,SAASqB,iBAAiBC,QAA0B;AACzD,SAAO,IAAIC,SAASD,OAAOrB,QAAQ;IACjCuB,QAAQ;IACRC,SAAS;MAAE,gBAAgB;IAA2B;EACxD,CAAA;AACF;AALgBJ;;;AHsBT,IAAMK,UAAN,MAAMA,SAAAA;EAvMb,OAuMaA;;;EACHC;EACSC,SAAuB,CAAA;EAChCC;EACAC;EACAC;EACSC,YAAYC,KAAKC,IAAG;EACpBC;EACAC;EACAC;EAEjB,YACEC,MAIA;AAEA,SAAKC,mBAAmBD,MAAMC,oBAAoB;AAClD,UAAMC,KAAKF,MAAMH,cAAc;AAC/B,UAAMM,KAAKH,MAAMF,aAAa;AAE9B,QAAII,GAAGE,WAAW,OAAA,EAChB,OAAM,IAAIC,MACR,yBAAyBH,EAAAA,mEAAgE;AAE7F,QAAIC,GAAGC,WAAW,OAAA,EAChB,OAAM,IAAIC,MACR,wBAAwBF,EAAAA,mEAAgE;AAE5F,SAAKN,aAAaK;AAClB,SAAKJ,YAAYK;AACjB,SAAKJ,kBAAkBC,MAAMD,mBAAmB,CAAA;AAChD,UAAMO,UAAUC,kBAAAA;AAChB,SAAKlB,eAAeiB,QAAQE,aAAa,CAACC,YAAY,KAAKC,cAAcD,OAAAA,CAAAA;EAC3E;;;;;;;EAQA,aAAaE,OAAOX,MAAwC;AAC1D,UAAMY,MAAM,IAAIxB,SAAQY,IAAAA;AAKxB,UAAMa,WAAW,oBAAIC,IAAAA;AAGrB,QAAId,KAAKe,QAAQ;AACf,YAAMC,aAAaC,QAAQC,YAAY,qBAAqBlB,KAAKe,MAAM;AACvE,UAAIC,YAAY;AACd,cAAMG,aAAa;UAACnB,KAAKe;aAAYC,WAAWI,WAAW,CAAA;;AAC3D,mBAAWC,OAAOF,YAAY;AAC5B,gBAAMG,OAAOL,QAAQC,YAAY,qBAAqBG,GAAAA;AACtD,cAAI,CAACC,KAAM;AACX,qBAAWC,QAASD,KAAKE,aAAa,CAAA,GAAmB;AACvD,gBAAI,CAACX,SAASY,IAAIF,IAAAA,GAAO;AACvBV,uBAASa,IAAIH,MAAM,IAAKA,KAAAA,CAAAA;YAC1B;UACF;QACF;MACF;IACF;AAGA,QAAIvB,KAAKwB,WAAW;AAClB,iBAAWD,QAAQvB,KAAKwB,WAAW;AACjC,YAAI,CAACX,SAASY,IAAIF,IAAAA,GAAO;AACvBV,mBAASa,IAAIH,MAAM,IAAKA,KAAAA,CAAAA;QAC1B;MACF;IACF;AAGA,eAAWI,cAAc3B,KAAK4B,aAAa;AACzC,YAAMC,aAAyBZ,QAAQC,YAAY,qBAAqBS,UAAAA,KAAe,CAAA;AACvF,YAAMG,OAAOD,WAAWE,IAAI,CAACC,OAAAA;AAC3B,cAAMC,MAAMpB,SAASqB,IAAIF,EAAAA;AACzB,YAAI,CAACC,KAAK;AACR,gBAAM,IAAI5B,MACR,4BAA4B2B,GAAGG,IAAI,QAAQR,WAAWQ,IAAI,SACjDH,GAAGG,IAAI,sDAAsD;QAE1E;AACA,eAAOF;MACT,CAAA;AACA,YAAMG,WAAW,IAAKT,WAAAA,GAAkDG,IAAAA;AAGxE,YAAMO,gBAAgBpB,QAAQC,YAAY,6BAA6BS,UAAAA;AACvE,UACEU,iBACA,OAAQD,SAAsCC,aAAAA,MAAmB,YACjE;AACA,cAAMC,SAAUF,SAAsCC,aAAAA,EAAc;AACpE,YAAIC,kBAAkBC,QAAS,OAAMD;MACvC;AAEA,YAAME,QAAQC,uBAAuBd,UAAAA;AACrC,iBAAWe,KAAKF,OAAO;AACrB5B,YAAItB,OAAOqD,KAAK;UAAEC,MAAMF;UAAGN;QAAS,CAAA;MACtC;IACF;AAGAxB,QAAItB,OAAOuD,KAAK,CAACC,GAAGC,MAAAA;AAClB,YAAMC,KAAKF,EAAEF,KAAKK,SAASC,SAAS,GAAA;AACpC,YAAMC,KAAKJ,EAAEH,KAAKK,SAASC,SAAS,GAAA;AACpC,UAAIF,OAAOG,GAAI,QAAOH,KAAK,IAAI;AAC/B,aAAO;IACT,CAAA;AAGA,eAAWI,SAASxC,IAAItB,QAAQ;AAC9B,YAAM+D,aAAuB,CAAA;AAC7B,YAAMC,WAAWF,MAAMR,KAAKK,SAASM,QAAQ,WAAW,CAACC,IAAIrB,SAAAA;AAC3DkB,mBAAWV,KAAKR,IAAAA;AAChB,eAAO;MACT,CAAA;AACAiB,YAAMK,kBAAkB,IAAIC,OAAO,IAAIJ,QAAAA,GAAW;AAClDF,YAAMO,qBAAqBN;AAE3BD,YAAMQ,YAAYR,MAAMR,KAAKiB,aAAaC,KAAK,CAACC,MAAMA,EAAEC,WAAW,MAAA;IACrE;AAGA,QAAIhE,KAAKiE,QAAQjE,KAAKkE,WAAW;AAE/BtD,UAAIpB,gBAAgBQ,KAAKiE;IAC3B,WAAWjE,KAAKiE,MAAM;AACpB,YAAM,EAAEE,eAAc,IAAK,MAAM,OAAO,kBAAA;AACxCvD,UAAIrB,eAAe,oBAAoB4E,eAAenE,KAAKiE,IAAI;IACjE,WAAWjE,KAAKoE,MAAM;AACpBxD,UAAIrB,eAAeS,KAAKoE;IAC1B;AAGA,QAAIpE,KAAKqE,cAAc,OAAO;AAC5BzD,UAAInB,gBAAgB6E,oBAAoB;QAAEL,MAAMjE,KAAKqE,aAAa;MAAS,CAAA;IAC7E;AAKA,QAAIrE,KAAKuE,QAAQC,QAAQ;AACvB5D,UAAI6D,eAAezE,KAAKuE,QAAQ1D,UAAUb,IAAAA;IAC5C;AAEA,WAAOY;EACT;EAEA,MAAM8D,OAAOC,MAA6B;AACxC,WAAO,IAAIpC,QAAQ,CAACqC,YAAAA;AAClB,WAAKvF,aAAaqF,OAAOC,MAAM,MAAA;AAC7BE,gBAAQC,IAAI,6CAA6CH,IAAAA,EAAM;AAC/DC,gBAAAA;MACF,CAAA;IACF,CAAA;EACF;EAEAG,kBAAgC;AAC9B,WAAO,KAAK1F;EACd;EAEA,MAAM2F,QAAuB;AAC3B,WAAO,IAAIzC,QAAQ,CAACqC,YAAAA;AAClB,WAAKvF,aAAa2F,MAAM,MAAA;AACtBJ,gBAAAA;MACF,CAAA;IACF,CAAA;EACF;;EAIQK,cAUF,CAAA;;;;;;;;;EAUWC,mBAAmB,oBAAIC,IAAAA;;EAGvBlF;;;;;;;;;EAUTwE,eACNW,SACAC,WACArF,MACA;AAQA,UAAMsF,UAAUtF,KAAKuF;AACrB,QAAID,YAAYE,QAAW;AACzB,YAAM,IAAIC,0BACR,+bAKE;IAEN;AAEA,UAAMC,SAAS1F,KAAK2F,aAAaC,QAAQC,IAAIC,sBAAsB;AAEnE,eAAW1C,SAASgC,SAAS;AAC3B,YAAMW,WAAW3C,MAAM2C;AACvB,UAAIC;AACJ,UAAIhG,KAAKiG,oBAAoB;AAC3BD,oBAAYhG,KAAKiG,mBAAmB7C,MAAM2C,UAAUA,SAASG,OAAOR,QAAQ;UAC1ES,OAAOnG,KAAKoG;QACd,CAAA;MACF,WAAWV,UAAUJ,QAAQe,yBAAyBb,QAAW;AAC/DQ,oBAAYV,QAAQe,qBAAqBjD,MAAM2C,UAAUA,SAASG,OAAOR,QAAQ;UAC/ES,OAAOnG,KAAKoG;QACd,CAAA;MACF,OAAO;AAILJ,oBAAY,KAAKM,qBAAqBlD,MAAMjB,MAAMuD,MAAAA;MACpD;AAMA,YAAMa,gBAAgBnD,MAAMoD,cAAc,gCAASC,QAAAA;MAAS,GAAlB;AAI1C,YAAMC,SAASC,eAAevD,KAAAA;AAE9B,YAAM9D,SAASgG,QAAQsB,oBAAoB;QACzCC,YAAY;UAAEC,OAAO1D,MAAM0D;QAAM;QACjCC,iBAAiB3D,MAAM2C;QACvBC;MAIF,CAAA;AAEA,iBAAWc,SAASxH,QAAQ;AAC1B,cAAM+D,aAAuB,CAAA;AAC7B,cAAMC,WAAWwD,MAAME,KAAKzD,QAAQ,WAAW,CAACC,IAAYrB,SAAAA;AAC1DkB,qBAAWV,KAAKR,IAAAA;AAChB,iBAAO;QACT,CAAA;AACA,aAAK8C,YAAYtC,KAAK;UACpBsE,QAAQH,MAAMG;UACdC,SAAS,IAAIxD,OAAO,IAAIJ,QAAAA,GAAW;UACnCD;UACA8D,SAASL,MAAMK;UACfC,QAAQhE,MAAMgE,UAAU,CAAA;UACxBZ,YAAYD;UACZc,YAAYjE,MAAMiE,cAAc;UAChCX;QACF,CAAA;MACF;AASA,UAAIA,WAAW,cAAc;AAC3B,mBAAWI,SAASxH,QAAQ;AAI1B,cAAI,KAAKW,qBAAqB,QAAQ;AACpC4E,oBAAQyC,MAAM,aAAaC,uBAAuB,SAAST,MAAME,IAAI,CAAA,EAAG;UAC1E,OAAO;AACLnC,oBAAQ2C,KAAKC,uBAAuB,SAASX,MAAME,IAAI,CAAA;UACzD;QACF;MACF;AAEAnC,cAAQC,IACN,sBAAe1B,MAAMjB,IAAI,gBAAgBiB,MAAM0D,KAAK,UAAUf,SAASG,MAAM1B,MAAM,SAAS;IAEhG;EACF;EAEA,MAAckD,uBAA0C;AACtD,QAAI,KAAK3H,gBAAgByE,WAAW,GAAG;AACrC,aAAOmD,aAAa,KAAK;QAAEC,QAAQ;QAASC,QAAQ,CAAA;MAAG,CAAA;IACzD;AACA,UAAMC,UAAU,MAAMvF,QAAQwF,IAC5B,KAAKhI,gBAAgBgC,IAAI,OAAOiG,UAAAA;AAC9B,UAAI;AACF,eAAO,MAAMzF,QAAQ0F,KAAK;UACxBD,MAAAA;UACA,IAAIzF,QAA8D,CAACqC,YACjEsD,WACE,MACEtD,QAAQ;YACNzC,MAAM;YACNgG,SAAS;YACTC,SAAS;UACX,CAAA,GACF,GAAA,CAAA;SAGL;MACH,SAASC,KAAK;AACZ,eAAO;UACLlG,MAAM;UACNgG,SAAS;UACTC,SAASC,eAAehI,QAAQgI,IAAID,UAAU;QAChD;MACF;IACF,CAAA,CAAA;AAEF,UAAME,aAAaR,QAAQS,MAAM,CAACC,MAAMA,EAAEL,OAAO;AACjD,WAAOR,aAAaW,aAAa,MAAM,KAAK;MAC1CV,QAAQU,aAAa,UAAU;MAC/BT,QAAQC;IACV,CAAA;EACF;EAEQxB,qBAAqBmC,WAAmB/C,QAAgB;AAC9D,UAAMgD,MAAM,CAAChD,SACT,sFACA;AACJ,WAAO,CAACiD,UAAkBC,eAAAA;AACxB,YAAMC,SAAS;QACb;UAAEC,MAAM;UAAeC,OAAO,OAAOpJ,KAAKC,IAAG,CAAA;UAAM6I;QAAU;QAC7D;UAAEK,MAAM;UAASE,MAAM;UAAmBZ,SAASM;UAAKO,WAAW;QAAM;;AAE3E,aAAO;QACL,CAACC,OAAOC,aAAa,GAAG,MAAA;AACtB,cAAIC,IAAI;AACR,iBAAO;YACLC,MAAM,6BACJ9G,QAAQqC,QACNwE,IAAIP,OAAOrE,SACP;cAAE8E,OAAOT,OAAOO,GAAAA;cAAMG,MAAM;YAAe,IAC3C;cAAED,OAAO9D;cAAW+D,MAAM;YAAc,CAAA,GAJ1C;UAMR;QACF;MACF;IACF;EACF;;EAIA,MAAc7I,cAAcD,SAAqC;AAC/D,UAAM+I,WAAW,IAAIC,IAAIhJ,QAAQiJ,GAAG,EAAEF;AAGtC,UAAMG,SAA6B;MACjClJ;MACA+I;MACAvC,QAAQxG,QAAQwG;MAChB2C,QAAQ,CAAC;MACTC,WAAWlK,KAAKC,IAAG;IACrB;AACA,WAAOkK,sBAAsBH,QAAQ,MACnC,KAAKI,uBAAuBtJ,SAAS+I,UAAUG,MAAAA,CAAAA;EAEnD;EAEA,MAAcI,uBACZtJ,SACA+I,UACAQ,SACmB;AAEnB,QAAIvJ,QAAQwG,WAAW,OAAO;AAC5B,UAAIuC,aAAa,KAAK3J,YAAY;AAChC,eAAO8H,aAAa,KAAK;UACvBC,QAAQ;UACRqC,SAAStK,KAAKC,IAAG,IAAK,KAAKF,aAAa;UACxCwK,WAAWvK,KAAKC,IAAG;QACrB,CAAA;MACF;AACA,UAAI4J,aAAa,KAAK1J,WAAW;AAC/B,eAAO,KAAK4H,qBAAoB;MAClC;IACF;AAGA,QAAIjH,QAAQwG,WAAW,OAAO;AAC5B,WAAKuC,aAAa,OAAOA,aAAa,kBAAkB,KAAKhK,eAAe;AAC1E,cAAM8C,SAAS,MAAM6H,eAAe;UAClClG,MAAM,KAAKzE;QACb,CAAA;AACA,eAAO4K,iBAAiB9H,MAAAA;MAC1B;AACA,WAAKkH,aAAa,OAAOA,aAAa,kBAAkB,KAAKjK,cAAc;AACzE,eAAO,IAAI8K,SAAS,KAAK9K,cAAc;UACrCqI,QAAQ;UACR0C,SAAS;YAAE,gBAAgB;UAA2B;QACxD,CAAA;MACF;IACF;AAGA,QAAI,KAAK7K,kBAAkBgB,QAAQwG,WAAW,SAASxG,QAAQwG,WAAW,SAAS;AACjF,YAAMsD,iBAAiB,MAAM,KAAK9K,cAAcgB,OAAAA;AAChD,UAAI8J,eAAgB,QAAOA;IAC7B;AAGA,eAAWzD,SAAS,KAAK7B,aAAa;AACpC,UAAIxE,QAAQwG,OAAOuD,YAAW,MAAO1D,MAAMG,UAAUH,MAAMI,QAAQuD,KAAKjB,QAAAA,GAAW;AAIjF,YAAI1C,MAAMJ,WAAW,gBAAgB,KAAKzG,qBAAqB,QAAQ;AACrE,gBAAMyK,KAAK,IAAIC,mBAAmBpD,uBAAuB,SAASiC,QAAAA,CAAAA;AAClE,iBAAOoB,wBAAwBF,EAAAA;QACjC;AAGA,YAAI5D,MAAMM,OAAO5C,SAAS,GAAG;AAC3B,gBAAMqG,MAAMC,uBAAuBrK,SAASqG,MAAMN,YAAYM,MAAMO,UAAU;AAO9E,cAAI;AACF,kBAAM0D,UAAU,MAAMC,UAAUlE,MAAMM,QAAQyD,GAAAA;AAC9C,gBAAIE,QAAS,QAAOA;UACtB,SAAS1C,KAAK;AACZ,gBAAIA,eAAe4C,cAAe,QAAOL,wBAAwBvC,GAAAA;AACjE,kBAAMA;UACR;QACF;AACA,eAAOvB,MAAMK,QAAQ1G,OAAAA;MACvB;IACF;AAEA,UAAMiJ,MAAM,IAAID,IAAIhJ,QAAQiJ,GAAG;AAC/B,UAAMzC,SAASxG,QAAQwG,OAAOuD,YAAW;AAEzC,UAAMU,QAAQ,KAAKC,UAAUlE,QAAQyC,IAAIF,QAAQ;AACjD,QAAI,CAAC0B,OAAO;AACV,aAAOvD,aAAa,KAAK;QACvBL,OAAO;UAAE0B,MAAM;UAAaZ,SAAS,gBAAgBnB,MAAAA,IAAUyC,IAAIF,QAAQ;QAAG;MAChF,CAAA;IACF;AAEA,UAAM,EAAEpG,OAAOwG,OAAM,IAAKsB;AAS1B,QAAI9H,MAAMR,KAAK8D,WAAW,cAAc;AACtC,UAAI,KAAKzG,qBAAqB,QAAQ;AACpC,cAAMyK,KAAK,IAAIC,mBAAmBpD,uBAAuB,cAAcmC,IAAIF,QAAQ,CAAA;AACnF,eAAOoB,wBAAwBF,EAAAA;MACjC;AAGA,UAAI,CAAC,KAAKxF,iBAAiBzD,IAAIiI,IAAIF,QAAQ,GAAG;AAC5C,aAAKtE,iBAAiBkG,IAAI1B,IAAIF,QAAQ;AACtC3E,gBAAQ2C,KAAKC,uBAAuB,cAAciC,IAAIF,QAAQ,CAAA;MAChE;IACF;AAEA,QAAI;AAEF,YAAMqB,MAAMC,uBACVrK,SACA2C,MAAMhB,SAAS,aACfgB,MAAMR,KAAKyI,WAAW;AAKxB,YAAMN,UAAU,MAAMC,UAAU5H,MAAMR,KAAKwE,QAAQyD,GAAAA;AACnD,UAAIE,QAAS,QAAOA;AAGpB,UAAIO;AACJ,UAAIlI,MAAMQ,aAAa;QAAC;QAAQ;QAAO;QAASV,SAAS+D,MAAAA,GAAS;AAChE,YAAI;AAEF,gBAAMsE,OAAO,MAAM9K,QAAQ+K,MAAK,EAAGD,KAAI;AACvCD,iBAAOC,OAAOE,KAAKC,MAAMH,IAAAA,IAAQ/F;QACnC,QAAQ;AACN8F,iBAAO9F;QACT;AAEA,YAAIpC,MAAMR,KAAK+I,cAAcL,SAAS9F,QAAW;AAC/C,gBAAMlD,UAASc,MAAMR,KAAK+I,WAAWC,UAAUN,IAAAA;AAC/C,cAAI,CAAChJ,QAAOuJ,SAAS;AACnB,mBAAOlE,aAAa,KAAK;cACvBL,OAAO;gBAAE0B,MAAM;gBAAoB8C,QAAQxJ,QAAOgF,MAAMwE;cAAO;YACjE,CAAA;UACF;AACAR,iBAAOhJ,QAAOyJ;QAChB;MACF;AAGA,YAAMjK,OAAO,KAAKkK,UAChB5I,MAAMR,KAAKiB,cACXpD,SACA6K,MACA1B,QACAqC,OAAOC,YAAYxC,IAAIyC,YAAY,CAAA;AAIrC,UAAI/I,MAAMR,KAAKwJ,UAAU;AACvB,eAAO,IAAI/B,SAAS,MAAM;UACxBzC,QAAQxE,MAAMR,KAAKwJ,SAASxE;UAC5B0C,SAAS;YAAE+B,UAAUjJ,MAAMR,KAAKwJ,SAAS1C;UAAI;QAC/C,CAAA;MACF;AAGA,YAAM4C,YAAalJ,MAAMhB,SACvBgB,MAAMR,KAAKyI,WAAW;AAGxB,UAAI/I;AACJ,UAAIc,MAAMR,KAAK2J,aAAa/H,SAAS,GAAG;AAEtC,cAAM,EAAEgI,gBAAe,IAAK,MAAM,OAAO,iCAAA;AACzClK,iBAAS,MAAMkK,gBACbpJ,MAAMR,KAAK2J,cACX,MAAMD,UAAUG,MAAMrJ,MAAMhB,UAAUN,IAAAA,GACtCrB,OAAAA;MAEJ,OAAO;AACL6B,iBAAS,MAAMgK,UAAUG,MAAMrJ,MAAMhB,UAAUN,IAAAA;MACjD;AAEA,aAAO4K,cAAcpK,QAAQc,MAAMR,MAAMqE,MAAAA;IAC3C,SAASoB,KAAK;AAEZ,UAAIjF,MAAMR,KAAK+J,QAAQnI,SAAS,GAAG;AACjC,cAAM,EAAEoI,oBAAmB,IAAK,MAAM,OAAO,sCAAA;AAC7C,eAAOA,oBAAoBvE,KAAKjF,MAAMR,KAAK+J,SAASlM,OAAAA;MACtD;AAEA,UAAI4H,eAAe4C,eAAe;AAGhC,eAAOL,wBAAwBvC,GAAAA;MACjC;AAEAxD,cAAQyC,MAAM,6BAA6Be,eAAehI,QAAQgI,IAAID,UAAUC,GAAAA;AAChF,aAAOV,aAAa,KAAK;QACvBL,OAAO;UAAE0B,MAAM;UAAyBZ,SAAS;QAAwB;MAC3E,CAAA;IACF;EACF;EAEQ+C,UAAUlE,QAAgBuC,UAAkB;AAClD,eAAWpG,SAAS,KAAK9D,QAAQ;AAC/B,UAAI8D,MAAMR,KAAKiK,SAAS,SAASzJ,MAAMR,KAAKiK,SAAS5F,OAAQ;AAE7D,YAAMiE,QAAQ9H,MAAMK,gBAAiBqJ,KAAKtD,QAAAA;AAC1C,UAAI,CAAC0B,MAAO;AACZ,YAAMtB,SAAiC,CAAC;AACxCxG,YAAMO,mBAAoBoJ,QAAQ,CAAC5K,MAAMiH,MAAAA;AACvCQ,eAAOzH,IAAAA,IAAQ+I,MAAM9B,IAAI,CAAA;MAC3B,CAAA;AACA,aAAO;QAAEhG;QAAOwG;MAAO;IACzB;AACA,WAAO;EACT;EAEQoC,UACN5G,SACA3E,SACA6K,MACA1B,QACAoD,OACW;AACX,QAAI5H,QAAQZ,WAAW,EAAG,QAAO,CAAA;AACjC,UAAMyI,MAAMC,KAAKD,IAAG,GAAI7H,QAAQrD,IAAI,CAACgC,MAAMA,EAAEoJ,KAAK,CAAA;AAClD,UAAMrL,OAAkBsL,MAAMC,KAAK;MAAE7I,QAAQyI,MAAM;IAAE,GAAG,MAAMzH,MAAAA;AAC9D,eAAWzB,KAAKqB,SAAS;AACvB,cAAQrB,EAAEC,QAAM;QACd,KAAK;AACHlC,eAAKiC,EAAEoJ,KAAK,IAAI1M;AAChB;QACF,KAAK;AACHqB,eAAKiC,EAAEoJ,KAAK,IAAIpJ,EAAEuJ,MAAOhC,KAAiCvH,EAAEuJ,GAAG,IAAIhC;AACnE;QACF,KAAK;AACHxJ,eAAKiC,EAAEoJ,KAAK,IAAIpJ,EAAEuJ,MAAM1D,OAAO7F,EAAEuJ,GAAG,IAAI1D;AACxC;QACF,KAAK;AACH9H,eAAKiC,EAAEoJ,KAAK,IAAIpJ,EAAEuJ,MAAMN,MAAMjJ,EAAEuJ,GAAG,IAAIN;AACvC;QACF,KAAK;AACHlL,eAAKiC,EAAEoJ,KAAK,IAAIpJ,EAAEuJ,MACd7M,QAAQ6J,QAAQpI,IAAI6B,EAAEuJ,IAAIC,YAAW,CAAA,IACrCtB,OAAOC,YAAYzL,QAAQ6J,QAAQlF,QAAO,CAAA;AAC9C;QACF,KAAK;AACHtD,eAAKiC,EAAEoJ,KAAK,IAAI1M,QAAQ6J,QAAQpI,IAAI,iBAAA,KAAsB;AAC1D;QACF;AACEJ,eAAKiC,EAAEoJ,KAAK,IAAI3H;MACpB;IACF;AACA,WAAO1D;EACT;AACF;AAEA,SAAS6F,aAAaC,QAAgB0D,MAAa;AACjD,SAAO,IAAIjB,SAASoB,KAAK+B,UAAUlC,IAAAA,GAAO;IACxC1D;IACA0C,SAAS;MAAE,gBAAgB;IAAmB;EAChD,CAAA;AACF;AALS3C;AAOT,SAAS+E,cAAcpK,QAAiBM,MAAkBqE,QAAc;AACtE,QAAMW,SAAShF,KAAKgF,WAAWX,WAAW,SAAS,MAAM;AACzD,QAAMqD,UAAkC;IAAE,gBAAgB;EAAmB;AAC7E,aAAW,CAACmD,GAAGC,CAAAA,KAAM9K,KAAK0H,QAASA,SAAQmD,EAAEF,YAAW,CAAA,IAAMG;AAE9D,MAAIpL,WAAWkD,UAAalD,WAAW,MAAM;AAC3C,WAAO,IAAI+H,SAAS,MAAM;MAAEzC,QAAQA,WAAW,MAAM,MAAMA;MAAQ0C;IAAQ,CAAA;EAC7E;AACA,MAAI,OAAOhI,WAAW,UAAU;AAC9BgI,YAAQ,cAAA,IAAkB;AAC1B,WAAO,IAAID,SAAS/H,QAAQ;MAAEsF;MAAQ0C;IAAQ,CAAA;EAChD;AACA,SAAO,IAAID,SAASoB,KAAK+B,UAAUlL,MAAAA,GAAS;IAAEsF;IAAQ0C;EAAQ,CAAA;AAChE;AAbSoC;","names":["AsyncLocalStorage","storage","AsyncLocalStorage","getRequestContext","ctx","getStore","Error","tryGetRequestContext","runWithRequestContext","fn","run","MIME_TYPES","UNSAFE_PATH_RE","getMimeType","filePath","dot","lastIndexOf","ext","slice","toLowerCase","isSafePath","pathname","test","readFileBun","fullPath","g","globalThis","BunRT","Bun","file","exists","buf","arrayBuffer","content","Uint8Array","size","byteLength","readFileDeno","DenoRT","Deno","stat","isDirectory","readFile","readFileNode","fs","handle","open","close","containedRealPath","root","sep","realPath","realpath","realRoot","startsWith","safePath","resolveRoot","join","cwd","resolve","createStaticHandler","options","maxAge","resolvedRoot","request","method","toUpperCase","url","URL","decodeURIComponent","result","endsWith","includes","contentType","headers","String","Response","status","DOCTYPE","encoder","TextEncoder","renderToStream","options","root","waitForAll","reactDomServer","renderToReadableStream","renderWithReadableStream","renderToString","console","warn","renderWithString","Error","renderFn","reactStream","allReady","doctypeStream","prependDoctype","stream","html","bytes","encode","ReadableStream","start","controller","enqueue","close","Promise","resolve","source","reader","getReader","doctypeSent","pull","value","done","read","cancel","streamToResponse","result","Response","status","headers","TheoApp","serverHandle","routes","frontendHtml","streamingRoot","staticHandler","startTime","Date","now","healthPath","readyPath","readinessChecks","opts","undeclaredRoutes","hp","rp","startsWith","Error","adapter","createNodeAdapter","createServer","request","handleRequest","create","app","registry","Map","module","moduleMeta","Reflect","getMetadata","allModules","imports","Mod","meta","Prov","providers","has","set","Controller","controllers","paramTypes","args","map","pt","dep","get","name","instance","postConstruct","result","Promise","walks","walkControllerMetadata","w","push","walk","sort","a","b","aP","fullPath","includes","bP","entry","paramNames","regexStr","replace","_m","compiledPattern","RegExp","compiledParamNames","needsBody","paramEntries","some","p","source","root","streaming","renderToString","html","staticDir","createStaticHandler","agents","length","autoWireAgents","listen","port","resolve","console","log","getServerHandle","close","agentRoutes","warnedUndeclared","Set","entries","_registry","runtime","agentRuntime","undefined","HttpDecoratorsConfigError","apiKey","llmApiKey","process","env","OPENROUTER_API_KEY","compiled","createRun","agentStreamFactory","tools","model","llmModel","createSdkAgentStream","createFallbackStream","agentIdentity","agentClass","agent","access","classifyAccess","generateAgentRoutes","walkResult","route","compiledOptions","path","method","pattern","handler","guards","methodName","error","undeclaredRouteRefusal","warn","undeclaredRouteWarning","handleReadinessCheck","jsonResponse","status","checks","results","all","check","race","setTimeout","healthy","message","err","allHealthy","every","r","agentName","msg","_message","_sessionId","events","type","runId","code","retryable","Symbol","asyncIterator","i","next","value","done","pathname","URL","url","reqCtx","params","startedAt","runWithRequestContext","handleRequestInContext","_reqCtx","uptime","timestamp","renderToStream","streamToResponse","Response","headers","staticResponse","toUpperCase","test","ex","ForbiddenException","httpExceptionToResponse","ctx","createExecutionContext","refusal","runGuards","HttpException","match","findRoute","add","propertyKey","body","text","clone","JSON","parse","bodySchema","safeParse","success","issues","data","buildArgs","Object","fromEntries","searchParams","redirect","location","handlerFn","interceptors","runInterceptors","apply","buildResponse","filters","runExceptionFilters","verb","exec","forEach","query","max","Math","index","Array","from","key","toLowerCase","stringify","n","v"]}
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  HttpDecoratorsConfigError
3
- } from "./chunk-R72YKDQ4.js";
3
+ } from "./chunk-ERQT6ZDN.js";
4
4
  import {
5
5
  resolveOrNew
6
6
  } from "./chunk-JP4J23TV.js";
@@ -285,4 +285,4 @@ export {
285
285
  isControllerClass,
286
286
  resolveBody
287
287
  };
288
- //# sourceMappingURL=chunk-BXJBQ4EH.js.map
288
+ //# sourceMappingURL=chunk-JCCZ4PHK.js.map
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  runExceptionFilters
3
- } from "./chunk-HC47QXZV.js";
4
- import "./chunk-AJOJXZRY.js";
3
+ } from "./chunk-2HJYLH4O.js";
4
+ import "./chunk-CRTEMKW2.js";
5
5
  import "./chunk-JP4J23TV.js";
6
6
  import "./chunk-Z4QWC7IK.js";
7
7
  export {
8
8
  runExceptionFilters
9
9
  };
10
- //# sourceMappingURL=exception-filter-chain-AS6BB5PF.js.map
10
+ //# sourceMappingURL=exception-filter-chain-UXEVSDD3.js.map