exisjs 0.4.5 → 0.5.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 (53) hide show
  1. package/dist/decorators/index.d.ts +20 -0
  2. package/dist/decorators/index.d.ts.map +1 -1
  3. package/dist/decorators/index.js +82 -0
  4. package/dist/decorators/index.js.map +1 -1
  5. package/dist/di/container.d.ts +1 -0
  6. package/dist/di/container.d.ts.map +1 -1
  7. package/dist/di/container.js +3 -0
  8. package/dist/di/container.js.map +1 -1
  9. package/dist/exports/storage.d.ts +15 -0
  10. package/dist/exports/storage.d.ts.map +1 -0
  11. package/dist/exports/storage.js +7 -0
  12. package/dist/exports/storage.js.map +1 -0
  13. package/dist/middleware/compression.d.ts.map +1 -1
  14. package/dist/middleware/compression.js +21 -18
  15. package/dist/middleware/compression.js.map +1 -1
  16. package/dist/middleware/idempotency.d.ts +30 -0
  17. package/dist/middleware/idempotency.d.ts.map +1 -0
  18. package/dist/middleware/idempotency.js +84 -0
  19. package/dist/middleware/idempotency.js.map +1 -0
  20. package/dist/middleware/middleware.d.ts +2 -1
  21. package/dist/middleware/middleware.d.ts.map +1 -1
  22. package/dist/middleware/middleware.js +3 -2
  23. package/dist/middleware/middleware.js.map +1 -1
  24. package/dist/router/router.d.ts.map +1 -1
  25. package/dist/router/router.js +17 -11
  26. package/dist/router/router.js.map +1 -1
  27. package/dist/server/app.d.ts.map +1 -1
  28. package/dist/server/app.js +2 -1
  29. package/dist/server/app.js.map +1 -1
  30. package/dist/server/bootstrapper.d.ts.map +1 -1
  31. package/dist/server/bootstrapper.js +12 -2
  32. package/dist/server/bootstrapper.js.map +1 -1
  33. package/dist/server/hot-reload.d.ts +2 -0
  34. package/dist/server/hot-reload.d.ts.map +1 -1
  35. package/dist/server/hot-reload.js +2 -0
  36. package/dist/server/hot-reload.js.map +1 -1
  37. package/dist/server/request-handler.d.ts +1 -0
  38. package/dist/server/request-handler.d.ts.map +1 -1
  39. package/dist/server/request-handler.js +14 -5
  40. package/dist/server/request-handler.js.map +1 -1
  41. package/dist/server/request.d.ts +10 -0
  42. package/dist/server/request.d.ts.map +1 -1
  43. package/dist/server/request.js +88 -3
  44. package/dist/server/request.js.map +1 -1
  45. package/dist/server/response.d.ts +1 -0
  46. package/dist/server/response.d.ts.map +1 -1
  47. package/dist/server/response.js +11 -1
  48. package/dist/server/response.js.map +1 -1
  49. package/dist/server/uws-adapter.d.ts +2 -0
  50. package/dist/server/uws-adapter.d.ts.map +1 -1
  51. package/dist/server/uws-adapter.js +19 -10
  52. package/dist/server/uws-adapter.js.map +1 -1
  53. package/package.json +5 -5
@@ -81,6 +81,26 @@ export declare const Sse: (path?: string, schema?: RouteSchema<any, any, any, an
81
81
  * @public
82
82
  */
83
83
  export declare function Use(...middlewares: any[]): any;
84
+ /**
85
+ * Idempotency Decorator.
86
+ * Caches responses based on the provided Idempotency-Key header.
87
+ *
88
+ * Example:
89
+ * @Post('/checkout')
90
+ * @Idempotent()
91
+ * checkout() {}
92
+ */
93
+ export declare function Idempotent(options?: import('../middleware/idempotency').IdempotentOptions): any;
94
+ /**
95
+ * Cache Decorator.
96
+ * Caches responses for GET requests.
97
+ *
98
+ * Example:
99
+ * @Get('/popular')
100
+ * @Cache({ ttlMs: 60000 })
101
+ * getPopular() {}
102
+ */
103
+ export declare function Cache(options?: import('../middleware/cache').CacheOptions | number): any;
84
104
  /**
85
105
  * Defines a custom HTTP status code for a successful response.
86
106
  *
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/decorators/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/decorators/index.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,43 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
2
35
  Object.defineProperty(exports, "__esModule", { value: true });
3
36
  exports.GATEWAY_CONFIG = exports.SERVER_CONFIG = exports.Hosts = exports.Permissions = exports.Redirect = exports.Res = exports.UploadedFiles = exports.UploadedFile = exports.Ip = exports.Next = exports.Session = exports.Stream = exports.Socket = exports.Req = exports.HostParam = exports.Headers = exports.Body = exports.Param = exports.Sse = exports.Ws = exports.Trace = exports.Connect = exports.All = exports.Head = exports.Options = exports.Delete = exports.Patch = exports.Put = exports.Post = exports.Get = exports.PARAM_METADATA = exports.LIFECYCLE_METADATA = exports.ROUTE_METADATA = exports.MIDDLEWARE_REGISTRY = exports.CONTROLLER_HOST = exports.CONTROLLER_PREFIX = exports.ROUTE_REGISTRY = void 0;
4
37
  exports.Controller = Controller;
5
38
  exports.Use = Use;
39
+ exports.Idempotent = Idempotent;
40
+ exports.Cache = Cache;
6
41
  exports.HttpCode = HttpCode;
7
42
  exports.Header = Header;
8
43
  exports.Returns = Returns;
@@ -278,6 +313,53 @@ function Use(...middlewares) {
278
313
  }
279
314
  };
280
315
  }
316
+ /**
317
+ * Idempotency Decorator.
318
+ * Caches responses based on the provided Idempotency-Key header.
319
+ *
320
+ * Example:
321
+ * @Post('/checkout')
322
+ * @Idempotent()
323
+ * checkout() {}
324
+ */
325
+ function Idempotent(options = {}) {
326
+ return function (target, contextOrPropertyKey, descriptor) {
327
+ const isStandard = typeof contextOrPropertyKey === 'object' && contextOrPropertyKey !== null;
328
+ const fn = isStandard ? target : descriptor.value;
329
+ fn[METHOD_MIDDLEWARES] = fn[METHOD_MIDDLEWARES] || [];
330
+ // Defer import to avoid circular dependencies
331
+ const middlewareProxy = async (req, res, next) => {
332
+ const { Idempotent: IdempotentMiddleware } = await Promise.resolve().then(() => __importStar(require('../middleware/idempotency')));
333
+ const handler = IdempotentMiddleware(options);
334
+ return handler(req, res, next);
335
+ };
336
+ fn[METHOD_MIDDLEWARES].push(middlewareProxy);
337
+ };
338
+ }
339
+ /**
340
+ * Cache Decorator.
341
+ * Caches responses for GET requests.
342
+ *
343
+ * Example:
344
+ * @Get('/popular')
345
+ * @Cache({ ttlMs: 60000 })
346
+ * getPopular() {}
347
+ */
348
+ function Cache(options = {}) {
349
+ return function (target, contextOrPropertyKey, descriptor) {
350
+ const isStandard = typeof contextOrPropertyKey === 'object' && contextOrPropertyKey !== null;
351
+ const fn = isStandard ? target : descriptor.value;
352
+ fn[METHOD_MIDDLEWARES] = fn[METHOD_MIDDLEWARES] || [];
353
+ const opts = typeof options === 'number' ? { ttlMs: options } : options;
354
+ // Defer import to avoid circular dependencies
355
+ const middlewareProxy = async (req, res, next) => {
356
+ const { cacheMiddleware } = await Promise.resolve().then(() => __importStar(require('../middleware/cache')));
357
+ const handler = cacheMiddleware(opts);
358
+ return handler(req, res, next);
359
+ };
360
+ fn[METHOD_MIDDLEWARES].push(middlewareProxy);
361
+ };
362
+ }
281
363
  // ─── Custom HTTP Status / Header Response Decorators ────────────────────────
282
364
  /**
283
365
  * Defines a custom HTTP status code for a successful response.
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/decorators/index.ts"],"names":[],"mappings":";;;AA4CA,gCA0GC;AAsFD,kBAyEC;AAgBD,4BAaC;AAED,wBAcC;AAcD,0BAeC;AAID,8BA0CC;AAED,0CAgDC;AAED,gCA0CC;AA4DD,sBA6DC;AAoCD,gCAMC;AAeD,wBAIC;AAmBD,0BAIC;AAttBD,6EAA6E;AAChE,QAAA,cAAc,GAAG,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,CAAA;AAC5C,QAAA,iBAAiB,GAAG,MAAM,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAA;AAC1D,QAAA,eAAe,GAAG,MAAM,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAA;AACtD,QAAA,mBAAmB,GAAG,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAA;AACtD,QAAA,cAAc,GAAG,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAA;AACpD,QAAA,kBAAkB,GAAG,MAAM,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAA;AAC5D,QAAA,cAAc,GAAG,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAA;AAEjE,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAA;AAClD,MAAM,kBAAkB,GAAG,MAAM,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAA;AAClE,MAAM,mBAAmB,GAAG,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAA;AACpE,MAAM,uBAAuB,GAAG,MAAM,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAA;AAC5E,MAAM,mBAAmB,GAAG,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAA;AAcpE;;;;;;;;;;;;;;GAcG;AACH,SAAgB,UAAU,CAAC,eAA4C;IACrE,OAAO,UAAU,MAAW,EAAE,OAA+B;QAC3D,MAAM,MAAM,GACV,OAAO,eAAe,KAAK,QAAQ;YACjC,CAAC,CAAC,eAAe;YACjB,CAAC,CAAC,eAAe,EAAE,MAAM,IAAI,EAAE,CAAA;QACnC,MAAM,IAAI,GACR,OAAO,eAAe,KAAK,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAA;QAExE,MAAM,CAAC,SAAS,CAAC,yBAAiB,CAAC,GAAG,MAAM,CAAA;QAC5C,IAAI,IAAI;YAAE,MAAM,CAAC,SAAS,CAAC,uBAAe,CAAC,GAAG,IAAI,CAAA;QAElD,IAAI,OAAO,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YAChC,OAAO,CAAC,QAAQ,CAAC,yBAAiB,CAAC,GAAG,MAAM,CAAA;YAC5C,IAAI,IAAI;gBAAE,OAAO,CAAC,QAAQ,CAAC,uBAAe,CAAC,GAAG,IAAI,CAAA;QACpD,CAAC;QAED,4DAA4D;QAC5D,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAA;QAC9B,KAAK,CAAC,sBAAc,CAAC,GAAG,KAAK,CAAC,sBAAc,CAAC,IAAI,EAAE,CAAA;QAEnD,cAAc;QACd,MAAM,kBAAkB,GAAG,KAAK,CAAC,2BAAmB,CAAC,CAAA;QACrD,IAAI,KAAK,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE,CAAC;YACtC,KAAK,CAAC,2BAAmB,CAAC,GAAG;gBAC3B,iBAAiB,EAAE,kBAAkB;aACtC,CAAA;QACH,CAAC;aAAM,IACL,CAAC,KAAK,CAAC,2BAAmB,CAAC;YAC3B,OAAO,KAAK,CAAC,2BAAmB,CAAC,KAAK,QAAQ,EAC9C,CAAC;YACD,KAAK,CAAC,2BAAmB,CAAC,GAAG;gBAC3B,iBAAiB,EAAE,EAAE;aACtB,CAAA;QACH,CAAC;aAAM,IAAI,CAAC,KAAK,CAAC,2BAAmB,CAAC,CAAC,iBAAiB,EAAE,CAAC;YACzD,KAAK,CAAC,2BAAmB,CAAC,CAAC,iBAAiB,GAAG,EAAE,CAAA;QACnD,CAAC;QAED,yDAAyD;QACzD,MAAM,cAAc,GAAG,KAAK,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAAA;QAC3D,KAAK,CAAC,sBAAc,CAAC,GAAG,KAAK,CAAC,sBAAc,CAAC,IAAI,EAAE,CAAA;QACnD,KAAK,CAAC,0BAAkB,CAAC,GAAG,KAAK,CAAC,0BAAkB,CAAC,IAAI,EAAE,CAAA;QAC3D,KAAK,CAAC,sBAAc,CAAC,GAAG,KAAK,CAAC,sBAAc,CAAC,IAAI,EAAE,CAAA;QAEnD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC;YACpD,MAAM,UAAU,GAAG,MAAM,CAAC,wBAAwB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;YAC9D,IAAI,UAAU,IAAI,OAAO,UAAU,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;gBACzD,MAAM,EAAE,GAAG,UAAU,CAAC,KAAK,CAAA;gBAE3B,8BAA8B;gBAC9B,MAAM,SAAS,GAAG,EAAE,CAAC,UAAU,CAAC,CAAA;gBAChC,IAAI,SAAS,EAAE,CAAC;oBACd,KAAK,CAAC,sBAAc,CAAC,CAAC,IAAI,CAAC;wBACzB,MAAM,EAAE,SAAS,CAAC,MAAM;wBACxB,IAAI,EAAE,SAAS,CAAC,IAAI;wBACpB,MAAM,EAAE,SAAS,CAAC,MAAM;wBACxB,WAAW,EAAE,GAAG;qBACjB,CAAC,CAAA;gBACJ,CAAC;gBAED,gCAAgC;gBAChC,MAAM,iBAAiB,GAAG,EAAE,CAAC,kBAAkB,CAAC,CAAA;gBAChD,IAAI,iBAAiB,EAAE,CAAC;oBACtB,KAAK,CAAC,2BAAmB,CAAC,CAAC,GAAG,CAAC;wBAC7B,KAAK,CAAC,2BAAmB,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAA;oBACvC,KAAK,CAAC,2BAAmB,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,CAAA;gBAC5D,CAAC;gBAED,wDAAwD;gBACxD,MAAM,kBAAkB,GAAG,KAAK,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAA;gBAC3D,MAAM,aAAa,GAAG,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAA;gBACnD,IACE,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,GAAG,CAAC;oBAC1C,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,GAAG,CAAC,EACrC,CAAC;oBACD,KAAK,CAAC,sBAAc,CAAC,CAAC,GAAG,CAAC,GAAG;wBAC3B,GAAG,kBAAkB;wBACrB,GAAG,aAAa;qBACjB,CAAA;gBACH,CAAC;gBAED,4EAA4E;gBAC5E,MAAM,iBAAiB,GAAG,EAAE,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAAA;gBAC3D,KAAK,CAAC,0BAAkB,CAAC,CAAC,GAAG,CAAC,GAAG;oBAC/B,MAAM,EAAE;wBACN,GAAG,CAAC,cAAc,CAAC,YAAY,IAAI,EAAE,CAAC;wBACtC,GAAG,CAAC,iBAAiB,CAAC,MAAM,IAAI,EAAE,CAAC;qBACpC;oBACD,YAAY,EAAE;wBACZ,GAAG,CAAC,cAAc,CAAC,kBAAkB,IAAI,EAAE,CAAC;wBAC5C,GAAG,CAAC,iBAAiB,CAAC,YAAY,IAAI,EAAE,CAAC;qBAC1C;oBACD,OAAO,EAAE;wBACP,GAAG,CAAC,cAAc,CAAC,aAAa,IAAI,EAAE,CAAC;wBACvC,GAAG,CAAC,iBAAiB,CAAC,OAAO,IAAI,EAAE,CAAC;qBACrC;iBACF,CAAA;gBAED,0CAA0C;gBAC1C,MAAM,aAAa,GAAG,EAAE,CAAC,mBAAmB,CAAC,CAAA;gBAC7C,IAAI,aAAa,EAAE,CAAC;oBAClB,KAAK,CAAC,sBAAc,CAAC,CAAC,GAAG,CAAC,GAAG,aAAa,CAAA;gBAC5C,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC,CAAA;AACH,CAAC;AAED,SAAS,qBAAqB,CAAC,MAAkB;IAC/C,OAAO,UAAU,IAAI,GAAG,EAAE,EAAE,MAAwC;QAClE,OAAO,UACL,MAAW,EACX,oBAA4C,EAC5C,UAAqC;YAErC,IACE,OAAO,oBAAoB,KAAK,QAAQ;gBACxC,oBAAoB,KAAK,IAAI;gBAC7B,MAAM,IAAI,oBAAoB,EAC9B,CAAC;gBACD,mCAAmC;gBACnC,CAAC;gBAAC,MAAc,CAAC,UAAU,CAAC,GAAG;oBAC7B,MAAM;oBACN,IAAI;oBACJ,MAAM;iBACP,CAAA;YACH,CAAC;iBAAM,CAAC;gBACN,yCAAyC;gBACzC,MAAM,KAAK,GAAG,OAAO,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAA;gBACtE,MAAM,IAAI,GAAG,oBAAoB,IAAI,UAAU,EAAE,IAAI,CAAA;gBACrD,IAAI,CAAC,KAAK,CAAC,sBAAc,CAAC;oBAAE,KAAK,CAAC,sBAAc,CAAC,GAAG,EAAE,CAAA;gBACtD,KAAK,CAAC,sBAAc,CAAC,CAAC,IAAI,CAAC;oBACzB,MAAM;oBACN,IAAI;oBACJ,MAAM;oBACN,WAAW,EAAE,IAAI;iBAClB,CAAC,CAAA;YACJ,CAAC;QACH,CAAC,CAAA;IACH,CAAC,CAAA;AACH,CAAC;AAED;;;;;;;;;;;GAWG;AACU,QAAA,GAAG,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAA;AAE/C;;;;;;;;;;;GAWG;AACU,QAAA,IAAI,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAA;AACpC,QAAA,GAAG,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAA;AAClC,QAAA,KAAK,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAA;AACtC,QAAA,MAAM,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAA;AACxC,QAAA,OAAO,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAA;AAC1C,QAAA,IAAI,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAA;AACpC,QAAA,GAAG,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAA;AAClC,QAAA,OAAO,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAA;AAC1C,QAAA,KAAK,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAA;AACtC,QAAA,EAAE,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAA;AAChC,QAAA,GAAG,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAA;AAE/C;;;;;;;;;;;GAWG;AACH,SAAgB,GAAG,CAAC,GAAG,WAAkB;IACvC,OAAO,UACL,MAAW,EACX,oBAA4C,EAC5C,WAAsC;QAEtC,IACE,OAAO,oBAAoB,KAAK,QAAQ;YACxC,oBAAoB,KAAK,IAAI,EAC7B,CAAC;YACD,MAAM,OAAO,GAAG,oBAAoB,CAAA;YACpC,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBAC7B,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;oBACrB,IACE,CAAC,OAAO,CAAC,QAAQ,CAAC,2BAAmB,CAAC;wBACtC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,2BAAmB,CAAC,CAAC,EACpD,CAAC;wBACD,OAAO,CAAC,QAAQ,CAAC,2BAAmB,CAAC,GAAG;4BACtC,iBAAiB,EAAE,OAAO,CAAC,QAAQ,CAAC,2BAAmB,CAAC,IAAI,EAAE;yBAC/D,CAAA;oBACH,CAAC;yBAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,2BAAmB,CAAC,CAAC,iBAAiB,EAAE,CAAC;wBACpE,OAAO,CAAC,QAAQ,CAAC,2BAAmB,CAAC,CAAC,iBAAiB,GAAG,EAAE,CAAA;oBAC9D,CAAC;oBACD,OAAO,CAAC,QAAQ,CAAC,2BAAmB,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAC1D,GAAG,WAAW,CACf,CAAA;gBACH,CAAC;gBAED,IACE,CAAC,MAAM,CAAC,SAAS,CAAC,2BAAmB,CAAC;oBACtC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,2BAAmB,CAAC,CAAC,EACpD,CAAC;oBACD,MAAM,CAAC,SAAS,CAAC,2BAAmB,CAAC,GAAG;wBACtC,iBAAiB,EAAE,MAAM,CAAC,SAAS,CAAC,2BAAmB,CAAC,IAAI,EAAE;qBAC/D,CAAA;gBACH,CAAC;qBAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,2BAAmB,CAAC,CAAC,iBAAiB,EAAE,CAAC;oBACpE,MAAM,CAAC,SAAS,CAAC,2BAAmB,CAAC,CAAC,iBAAiB,GAAG,EAAE,CAAA;gBAC9D,CAAC;gBACD,MAAM,CAAC,SAAS,CAAC,2BAAmB,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAC1D,GAAG,WAAW,CACf,CAAA;YACH,CAAC;iBAAM,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACrC,mCAAmC;gBACnC,CAAC;gBAAC,MAAc,CAAC,kBAAkB,CAAC;oBACjC,MAAc,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAC1C;gBAAC,MAAc,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAA;YAC3D,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,OAAO,MAAM,KAAK,UAAU,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAC1D,yBAAyB;gBACzB,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAA;gBAC9B,IACE,CAAC,KAAK,CAAC,2BAAmB,CAAC;oBAC3B,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,2BAAmB,CAAC,CAAC,EACzC,CAAC;oBACD,KAAK,CAAC,2BAAmB,CAAC,GAAG;wBAC3B,iBAAiB,EAAE,KAAK,CAAC,2BAAmB,CAAC,IAAI,EAAE;qBACpD,CAAA;gBACH,CAAC;qBAAM,IAAI,CAAC,KAAK,CAAC,2BAAmB,CAAC,CAAC,iBAAiB,EAAE,CAAC;oBACzD,KAAK,CAAC,2BAAmB,CAAC,CAAC,iBAAiB,GAAG,EAAE,CAAA;gBACnD,CAAC;gBACD,KAAK,CAAC,2BAAmB,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAA;YACnE,CAAC;iBAAM,CAAC;gBACN,0BAA0B;gBAC1B,MAAM,KAAK,GAAG,MAAM,CAAA;gBACpB,MAAM,IAAI,GAAG,oBAAoB,CAAA;gBACjC,IAAI,CAAC,KAAK,CAAC,2BAAmB,CAAC;oBAAE,KAAK,CAAC,2BAAmB,CAAC,GAAG,EAAE,CAAA;gBAChE,IAAI,CAAC,KAAK,CAAC,2BAAmB,CAAC,CAAC,IAAI,CAAC;oBACnC,KAAK,CAAC,2BAAmB,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAA;gBACvC,KAAK,CAAC,2BAAmB,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAA;YACvD,CAAC;QACH,CAAC;IACH,CAAC,CAAA;AACH,CAAC;AAED,+EAA+E;AAE/E;;;;;;;;;;;GAWG;AACH,SAAgB,QAAQ,CAAC,IAAY;IACnC,OAAO,UACL,MAAW,EACX,oBAA4C,EAC5C,UAAqC;QAErC,MAAM,UAAU,GACd,OAAO,oBAAoB,KAAK,QAAQ,IAAI,oBAAoB,KAAK,IAAI,CAAA;QAC3E,MAAM,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAA;QAEjD,EAAE,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAA;QACvD,EAAE,CAAC,mBAAmB,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAA;IACzC,CAAC,CAAA;AACH,CAAC;AAED,SAAgB,MAAM,CAAC,IAAY,EAAE,KAAa;IAChD,OAAO,UACL,MAAW,EACX,oBAA4C,EAC5C,UAAqC;QAErC,MAAM,UAAU,GACd,OAAO,oBAAoB,KAAK,QAAQ,IAAI,oBAAoB,KAAK,IAAI,CAAA;QAC3E,MAAM,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAA;QAEjD,EAAE,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAA;QACvD,EAAE,CAAC,mBAAmB,CAAC,CAAC,OAAO,GAAG,EAAE,CAAC,mBAAmB,CAAC,CAAC,OAAO,IAAI,EAAE,CAAA;QACvE,EAAE,CAAC,mBAAmB,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAA;IAC/C,CAAC,CAAA;AACH,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAgB,OAAO,CACrB,MAAsE;IAEtE,OAAO,UACL,MAAW,EACX,oBAA4C,EAC5C,UAAqC;QAErC,MAAM,UAAU,GACd,OAAO,oBAAoB,KAAK,QAAQ,IAAI,oBAAoB,KAAK,IAAI,CAAA;QAC3E,MAAM,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAA;QAEjD,EAAE,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAA;QACvD,EAAE,CAAC,mBAAmB,CAAC,CAAC,cAAc,GAAG,MAAM,CAAA;IACjD,CAAC,CAAA;AACH,CAAC;AAED,+EAA+E;AAE/E,SAAgB,SAAS,CAAC,GAAG,MAAa;IACxC,OAAO,UACL,MAAW,EACX,oBAA4C,EAC5C,WAAsC;QAEtC,IACE,OAAO,oBAAoB,KAAK,QAAQ;YACxC,oBAAoB,KAAK,IAAI,EAC7B,CAAC;YACD,MAAM,OAAO,GAAG,oBAAoB,CAAA;YACpC,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBAC7B,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC;oBACvC,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAAA;gBACjD,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,YAAY;oBACpD,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,YAAY,IAAI,EAAE,CAAA;gBAC9D,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAA;YACxE,CAAC;iBAAM,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACrC,CAAC;gBAAC,MAAc,CAAC,uBAAuB,CAAC;oBACtC,MAAc,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAC/C;gBAAC,MAAc,CAAC,uBAAuB,CAAC,CAAC,MAAM;oBAC7C,MAAc,CAAC,uBAAuB,CAAC,CAAC,MAAM,IAAI,EAAE,CACtD;gBAAC,MAAc,CAAC,uBAAuB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAA;YAClE,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,OAAO,MAAM,KAAK,UAAU,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAC1D,yBAAyB;gBACzB,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC;oBACvC,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAAA;gBACjD,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,YAAY;oBACpD,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,YAAY,IAAI,EAAE,CAAA;gBAC9D,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAA;YACxE,CAAC;iBAAM,CAAC;gBACN,0BAA0B;gBAC1B,MAAM,EAAE,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAA;gBACvC,EAAE,CAAC,uBAAuB,CAAC,GAAG,EAAE,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAAA;gBAC/D,EAAE,CAAC,uBAAuB,CAAC,CAAC,MAAM;oBAChC,EAAE,CAAC,uBAAuB,CAAC,CAAC,MAAM,IAAI,EAAE,CAAA;gBAC1C,EAAE,CAAC,uBAAuB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAA;YACpD,CAAC;QACH,CAAC;IACH,CAAC,CAAA;AACH,CAAC;AAED,SAAgB,eAAe,CAAC,GAAG,YAAmB;IACpD,OAAO,UACL,MAAW,EACX,oBAA4C,EAC5C,WAAsC;QAEtC,IACE,OAAO,oBAAoB,KAAK,QAAQ;YACxC,oBAAoB,KAAK,IAAI,EAC7B,CAAC;YACD,MAAM,OAAO,GAAG,oBAAoB,CAAA;YACpC,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBAC7B,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC;oBACvC,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAAA;gBACjD,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,kBAAkB;oBAC1D,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,kBAAkB,IAAI,EAAE,CAAA;gBACpE,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAC/D,GAAG,YAAY,CAChB,CAAA;YACH,CAAC;iBAAM,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACrC,CAAC;gBAAC,MAAc,CAAC,uBAAuB,CAAC;oBACtC,MAAc,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAC/C;gBAAC,MAAc,CAAC,uBAAuB,CAAC,CAAC,YAAY;oBACnD,MAAc,CAAC,uBAAuB,CAAC,CAAC,YAAY,IAAI,EAAE,CAC5D;gBAAC,MAAc,CAAC,uBAAuB,CAAC,CAAC,YAAY,CAAC,IAAI,CACzD,GAAG,YAAY,CAChB,CAAA;YACH,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,OAAO,MAAM,KAAK,UAAU,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAC1D,yBAAyB;gBACzB,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC;oBACvC,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAAA;gBACjD,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,kBAAkB;oBAC1D,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,kBAAkB,IAAI,EAAE,CAAA;gBACpE,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAC/D,GAAG,YAAY,CAChB,CAAA;YACH,CAAC;iBAAM,CAAC;gBACN,0BAA0B;gBAC1B,MAAM,EAAE,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAA;gBACvC,EAAE,CAAC,uBAAuB,CAAC,GAAG,EAAE,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAAA;gBAC/D,EAAE,CAAC,uBAAuB,CAAC,CAAC,YAAY;oBACtC,EAAE,CAAC,uBAAuB,CAAC,CAAC,YAAY,IAAI,EAAE,CAAA;gBAChD,EAAE,CAAC,uBAAuB,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,CAAA;YAChE,CAAC;QACH,CAAC;IACH,CAAC,CAAA;AACH,CAAC;AAED,SAAgB,UAAU,CAAC,GAAG,OAAc;IAC1C,OAAO,UACL,MAAW,EACX,oBAA4C,EAC5C,WAAsC;QAEtC,IACE,OAAO,oBAAoB,KAAK,QAAQ;YACxC,oBAAoB,KAAK,IAAI,EAC7B,CAAC;YACD,MAAM,OAAO,GAAG,oBAAoB,CAAA;YACpC,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBAC7B,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC;oBACvC,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAAA;gBACjD,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,aAAa;oBACrD,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,aAAa,IAAI,EAAE,CAAA;gBAC/D,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAA;YAC1E,CAAC;iBAAM,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACrC,CAAC;gBAAC,MAAc,CAAC,uBAAuB,CAAC;oBACtC,MAAc,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAC/C;gBAAC,MAAc,CAAC,uBAAuB,CAAC,CAAC,OAAO;oBAC9C,MAAc,CAAC,uBAAuB,CAAC,CAAC,OAAO,IAAI,EAAE,CACvD;gBAAC,MAAc,CAAC,uBAAuB,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAA;YACpE,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,OAAO,MAAM,KAAK,UAAU,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAC1D,yBAAyB;gBACzB,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC;oBACvC,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAAA;gBACjD,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,aAAa;oBACrD,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,aAAa,IAAI,EAAE,CAAA;gBAC/D,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAA;YAC1E,CAAC;iBAAM,CAAC;gBACN,0BAA0B;gBAC1B,MAAM,EAAE,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAA;gBACvC,EAAE,CAAC,uBAAuB,CAAC,GAAG,EAAE,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAAA;gBAC/D,EAAE,CAAC,uBAAuB,CAAC,CAAC,OAAO;oBACjC,EAAE,CAAC,uBAAuB,CAAC,CAAC,OAAO,IAAI,EAAE,CAAA;gBAC3C,EAAE,CAAC,uBAAuB,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAA;YACtD,CAAC;QACH,CAAC;IACH,CAAC,CAAA;AACH,CAAC;AAED,kFAAkF;AAElF,SAAS,oBAAoB,CAC3B,IAAY,EACZ,UAAyB,EACzB,GAAG,KAAY;IAEf,OAAO,UACL,MAAW,EACX,WAA4B,EAC5B,cAAsB;QAEtB,MAAM,MAAM,GACV,OAAO,UAAU,KAAK,UAAU;YAChC,CAAC,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,KAAK,IAAI,CAAC,CAAA;QACzD,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAA;QAC5C,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;QAExD,MAAM,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC,CAAA;QAC9B,EAAE,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAA;QACvD,EAAE,CAAC,mBAAmB,CAAC,CAAC,cAAc,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAA;IAC3E,CAAC,CAAA;AACH,CAAC;AAEM,MAAM,KAAK,GAAG,CAAC,UAAyB,EAAE,GAAG,KAAY,EAAE,EAAE,CAClE,oBAAoB,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC,CAAA;AADxC,QAAA,KAAK,SACmC;AAC9C,MAAM,IAAI,GAAG,CAAC,UAAyB,EAAE,GAAG,KAAY,EAAE,EAAE,CACjE,oBAAoB,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC,CAAA;AADvC,QAAA,IAAI,QACmC;AAC7C,MAAM,OAAO,GAAG,CAAC,UAAyB,EAAE,GAAG,KAAY,EAAE,EAAE,CACpE,oBAAoB,CAAC,QAAQ,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC,CAAA;AADzC,QAAA,OAAO,WACkC;AAC/C,MAAM,SAAS,GAAG,CAAC,UAAyB,EAAE,GAAG,KAAY,EAAE,EAAE,CACtE,oBAAoB,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC,CAAA;AADvC,QAAA,SAAS,aAC8B;AAC7C,MAAM,GAAG,GAAG,GAAG,EAAE,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAA;AAAvC,QAAA,GAAG,OAAoC;AAC7C,MAAM,MAAM,GAAG,GAAG,EAAE,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAA;AAA7C,QAAA,MAAM,UAAuC;AACnD,MAAM,MAAM,GAAG,GAAG,EAAE,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAA;AAA7C,QAAA,MAAM,UAAuC;AACnD,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAA;AAA/C,QAAA,OAAO,WAAwC;AACrD,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAA;AAAzC,QAAA,IAAI,QAAqC;AAC/C,MAAM,EAAE,GAAG,GAAG,EAAE,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAA;AAArC,QAAA,EAAE,MAAmC;AAC3C,MAAM,YAAY,GAAG,CAAC,UAAyB,EAAE,GAAG,KAAY,EAAE,EAAE,CACzE,oBAAoB,CAAC,cAAc,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC,CAAA;AAD/C,QAAA,YAAY,gBACmC;AACrD,MAAM,aAAa,GAAG,CAAC,UAAyB,EAAE,GAAG,KAAY,EAAE,EAAE,CAC1E,oBAAoB,CAAC,eAAe,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC,CAAA;AADhD,QAAA,aAAa,iBACmC;AAEtD,MAAM,GAAG,GAAG,CAAC,OAAmC,EAAO,EAAE;IAC9D,OAAO,UACL,MAAW,EACX,WAA4B,EAC5B,cAAsB;QAEtB,MAAM,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC,CAAA;QAC9B,EAAE,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAA;QACvD,EAAE,CAAC,mBAAmB,CAAC,CAAC,cAAc,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;QAEzD,EAAE,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAA;QACvD,EAAE,CAAC,mBAAmB,CAAC,CAAC,SAAS,GAAG,CAAC,OAAO,EAAE,WAAW,CAAA;IAC3D,CAAC,CAAA;AACH,CAAC,CAAA;AAbY,QAAA,GAAG,OAaf;AAED,SAAgB,KAAK,CACnB,UAAyB,EACzB,YAAoD,EACpD,GAAG,KAAY;IAEf,OAAO,UACL,MAAW,EACX,oBAA4C,EAC5C,iBAAuB;QAEvB,MAAM,OAAO,GACX,OAAO,iBAAiB,KAAK,QAAQ;YACrC,CAAC,oBAAoB,IAAI,oBAAoB,CAAC,IAAI,KAAK,WAAW,CAAC,CAAA;QAErE,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,MAAM,GACV,OAAO,UAAU,KAAK,UAAU;gBAChC,CAAC,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,KAAK,IAAI,CAAC,CAAA;YACzD,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAA;YAC5C,MAAM,UAAU,GAAU,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;YACpD,IACE,YAAY;gBACZ,CAAC,OAAO,YAAY,KAAK,UAAU,IAAI,OAAO,YAAY,KAAK,QAAQ,CAAC,EACxE,CAAC;gBACD,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;YAC/B,CAAC;YACD,UAAU,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAA;YAEzB,MAAM,cAAc,GAAG,iBAAiB,CAAA;YACxC,MAAM,EAAE,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAA;YACvC,EAAE,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAA;YACvD,EAAE,CAAC,mBAAmB,CAAC,CAAC,cAAc,CAAC,GAAG;gBACxC,IAAI,EAAE,OAAO;gBACb,IAAI;gBACJ,KAAK,EAAE,UAAU;aAClB,CAAA;QACH,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,GAAG,UAAU,IAAI,EAAE,CAAA;YAC7B,IACE,OAAO,oBAAoB,KAAK,QAAQ;gBACxC,oBAAoB,KAAK,IAAI;gBAC7B,MAAM,IAAI,oBAAoB,EAC9B,CAAC;gBACD,CAAC;gBAAC,MAAc,CAAC,UAAU,CAAC,GAAG;oBAC7B,MAAM,EAAE,OAAO;oBACf,IAAI;oBACJ,MAAM,EAAE,YAAY;iBACrB,CAAA;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,KAAK,GAAG,OAAO,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAA;gBACtE,MAAM,IAAI,GAAG,oBAAoB,IAAI,iBAAiB,EAAE,IAAI,CAAA;gBAC5D,IAAI,CAAC,KAAK,CAAC,sBAAc,CAAC;oBAAE,KAAK,CAAC,sBAAc,CAAC,GAAG,EAAE,CAAA;gBACtD,KAAK,CAAC,sBAAc,CAAC,CAAC,IAAI,CAAC;oBACzB,MAAM,EAAE,OAAO;oBACf,IAAI;oBACJ,MAAM,EAAE,YAAY;oBACpB,WAAW,EAAE,IAAI;iBAClB,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;IACH,CAAC,CAAA;AACH,CAAC;AAEM,MAAM,QAAQ,GAAG,CAAC,GAAW,EAAE,UAAU,GAAG,GAAG,EAAO,EAAE;IAC7D,OAAO,UAAU,MAAW,EAAE,WAA4B;QACxD,MAAM,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC,CAAA;QAC9B,EAAE,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAA;QACvD,EAAE,CAAC,mBAAmB,CAAC,CAAC,QAAQ,GAAG,EAAE,GAAG,EAAE,UAAU,EAAE,CAAA;IACxD,CAAC,CAAA;AACH,CAAC,CAAA;AANY,QAAA,QAAQ,YAMpB;AAEM,MAAM,WAAW,GAAG,CAAC,GAAG,WAAqB,EAAO,EAAE;IAC3D,OAAO,UAAU,MAAW,EAAE,WAA6B;QACzD,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC,CAAA;YAC9B,EAAE,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAA;YACvD,EAAE,CAAC,mBAAmB,CAAC,CAAC,WAAW,GAAG,WAAW,CAAA;QACnD,CAAC;aAAM,CAAC;YACN,MAAM,KAAK,GAAG,OAAO,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAA;YACtE,KAAK,CAAC,mBAAmB,CAAC,GAAG,KAAK,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAA;YAC7D,KAAK,CAAC,mBAAmB,CAAC,CAAC,WAAW,GAAG,WAAW,CAAA;QACtD,CAAC;IACH,CAAC,CAAA;AACH,CAAC,CAAA;AAZY,QAAA,WAAW,eAYvB;AAEM,MAAM,KAAK,GAAG,CAAC,GAAG,KAAe,EAAO,EAAE;IAC/C,OAAO,UAAU,MAAW,EAAE,WAA6B;QACzD,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC,CAAA;YAC9B,EAAE,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAA;YACvD,EAAE,CAAC,mBAAmB,CAAC,CAAC,KAAK,GAAG,KAAK,CAAA;QACvC,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,SAAS,CAAC,uBAAe,CAAC,GAAG,KAAK,CAAA;QAC3C,CAAC;IACH,CAAC,CAAA;AACH,CAAC,CAAA;AAVY,QAAA,KAAK,SAUjB;AAED,SAAgB,UAAU,CAAC,OAA6C;IACtE,OAAO,UAAU,MAAW,EAAE,QAAgC;QAC5D,IAAI,OAAO,EAAE,KAAK,EAAE,CAAC;YACnB,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAA;QAC9D,CAAC;IACH,CAAC,CAAA;AACH,CAAC;AAEY,QAAA,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAA;AAClD,QAAA,cAAc,GAAG,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAA;AASjE;;GAEG;AACH,SAAgB,MAAM,CAAC,OAAsB;IAC3C,OAAO,UAAU,MAAW,EAAE,QAAgC;QAC5D,MAAM,CAAC,SAAS,CAAC,qBAAa,CAAC,GAAG,OAAO,IAAI,EAAE,CAAA;IACjD,CAAC,CAAA;AACH,CAAC;AAgBD;;GAEG;AACH,SAAgB,OAAO,CAAC,OAAuB;IAC7C,OAAO,UAAU,MAAW,EAAE,QAAgC;QAC5D,MAAM,CAAC,SAAS,CAAC,sBAAc,CAAC,GAAG,OAAO,IAAI,EAAE,CAAA;IAClD,CAAC,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/decorators/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4CA,gCA0GC;AAsFD,kBAyEC;AAWD,gCAwBC;AAWD,sBAyBC;AAgBD,4BAaC;AAED,wBAcC;AAcD,0BAeC;AAID,8BA0CC;AAED,0CAgDC;AAED,gCA0CC;AA4DD,sBA6DC;AAoCD,gCAMC;AAeD,wBAIC;AAmBD,0BAIC;AA7xBD,6EAA6E;AAChE,QAAA,cAAc,GAAG,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,CAAA;AAC5C,QAAA,iBAAiB,GAAG,MAAM,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAA;AAC1D,QAAA,eAAe,GAAG,MAAM,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAA;AACtD,QAAA,mBAAmB,GAAG,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAA;AACtD,QAAA,cAAc,GAAG,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAA;AACpD,QAAA,kBAAkB,GAAG,MAAM,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAA;AAC5D,QAAA,cAAc,GAAG,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAA;AAEjE,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAA;AAClD,MAAM,kBAAkB,GAAG,MAAM,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAA;AAClE,MAAM,mBAAmB,GAAG,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAA;AACpE,MAAM,uBAAuB,GAAG,MAAM,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAA;AAC5E,MAAM,mBAAmB,GAAG,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAA;AAcpE;;;;;;;;;;;;;;GAcG;AACH,SAAgB,UAAU,CAAC,eAA4C;IACrE,OAAO,UAAU,MAAW,EAAE,OAA+B;QAC3D,MAAM,MAAM,GACV,OAAO,eAAe,KAAK,QAAQ;YACjC,CAAC,CAAC,eAAe;YACjB,CAAC,CAAC,eAAe,EAAE,MAAM,IAAI,EAAE,CAAA;QACnC,MAAM,IAAI,GACR,OAAO,eAAe,KAAK,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAA;QAExE,MAAM,CAAC,SAAS,CAAC,yBAAiB,CAAC,GAAG,MAAM,CAAA;QAC5C,IAAI,IAAI;YAAE,MAAM,CAAC,SAAS,CAAC,uBAAe,CAAC,GAAG,IAAI,CAAA;QAElD,IAAI,OAAO,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YAChC,OAAO,CAAC,QAAQ,CAAC,yBAAiB,CAAC,GAAG,MAAM,CAAA;YAC5C,IAAI,IAAI;gBAAE,OAAO,CAAC,QAAQ,CAAC,uBAAe,CAAC,GAAG,IAAI,CAAA;QACpD,CAAC;QAED,4DAA4D;QAC5D,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAA;QAC9B,KAAK,CAAC,sBAAc,CAAC,GAAG,KAAK,CAAC,sBAAc,CAAC,IAAI,EAAE,CAAA;QAEnD,cAAc;QACd,MAAM,kBAAkB,GAAG,KAAK,CAAC,2BAAmB,CAAC,CAAA;QACrD,IAAI,KAAK,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE,CAAC;YACtC,KAAK,CAAC,2BAAmB,CAAC,GAAG;gBAC3B,iBAAiB,EAAE,kBAAkB;aACtC,CAAA;QACH,CAAC;aAAM,IACL,CAAC,KAAK,CAAC,2BAAmB,CAAC;YAC3B,OAAO,KAAK,CAAC,2BAAmB,CAAC,KAAK,QAAQ,EAC9C,CAAC;YACD,KAAK,CAAC,2BAAmB,CAAC,GAAG;gBAC3B,iBAAiB,EAAE,EAAE;aACtB,CAAA;QACH,CAAC;aAAM,IAAI,CAAC,KAAK,CAAC,2BAAmB,CAAC,CAAC,iBAAiB,EAAE,CAAC;YACzD,KAAK,CAAC,2BAAmB,CAAC,CAAC,iBAAiB,GAAG,EAAE,CAAA;QACnD,CAAC;QAED,yDAAyD;QACzD,MAAM,cAAc,GAAG,KAAK,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAAA;QAC3D,KAAK,CAAC,sBAAc,CAAC,GAAG,KAAK,CAAC,sBAAc,CAAC,IAAI,EAAE,CAAA;QACnD,KAAK,CAAC,0BAAkB,CAAC,GAAG,KAAK,CAAC,0BAAkB,CAAC,IAAI,EAAE,CAAA;QAC3D,KAAK,CAAC,sBAAc,CAAC,GAAG,KAAK,CAAC,sBAAc,CAAC,IAAI,EAAE,CAAA;QAEnD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC;YACpD,MAAM,UAAU,GAAG,MAAM,CAAC,wBAAwB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;YAC9D,IAAI,UAAU,IAAI,OAAO,UAAU,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;gBACzD,MAAM,EAAE,GAAG,UAAU,CAAC,KAAK,CAAA;gBAE3B,8BAA8B;gBAC9B,MAAM,SAAS,GAAG,EAAE,CAAC,UAAU,CAAC,CAAA;gBAChC,IAAI,SAAS,EAAE,CAAC;oBACd,KAAK,CAAC,sBAAc,CAAC,CAAC,IAAI,CAAC;wBACzB,MAAM,EAAE,SAAS,CAAC,MAAM;wBACxB,IAAI,EAAE,SAAS,CAAC,IAAI;wBACpB,MAAM,EAAE,SAAS,CAAC,MAAM;wBACxB,WAAW,EAAE,GAAG;qBACjB,CAAC,CAAA;gBACJ,CAAC;gBAED,gCAAgC;gBAChC,MAAM,iBAAiB,GAAG,EAAE,CAAC,kBAAkB,CAAC,CAAA;gBAChD,IAAI,iBAAiB,EAAE,CAAC;oBACtB,KAAK,CAAC,2BAAmB,CAAC,CAAC,GAAG,CAAC;wBAC7B,KAAK,CAAC,2BAAmB,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAA;oBACvC,KAAK,CAAC,2BAAmB,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,CAAA;gBAC5D,CAAC;gBAED,wDAAwD;gBACxD,MAAM,kBAAkB,GAAG,KAAK,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAA;gBAC3D,MAAM,aAAa,GAAG,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAA;gBACnD,IACE,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,GAAG,CAAC;oBAC1C,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,GAAG,CAAC,EACrC,CAAC;oBACD,KAAK,CAAC,sBAAc,CAAC,CAAC,GAAG,CAAC,GAAG;wBAC3B,GAAG,kBAAkB;wBACrB,GAAG,aAAa;qBACjB,CAAA;gBACH,CAAC;gBAED,4EAA4E;gBAC5E,MAAM,iBAAiB,GAAG,EAAE,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAAA;gBAC3D,KAAK,CAAC,0BAAkB,CAAC,CAAC,GAAG,CAAC,GAAG;oBAC/B,MAAM,EAAE;wBACN,GAAG,CAAC,cAAc,CAAC,YAAY,IAAI,EAAE,CAAC;wBACtC,GAAG,CAAC,iBAAiB,CAAC,MAAM,IAAI,EAAE,CAAC;qBACpC;oBACD,YAAY,EAAE;wBACZ,GAAG,CAAC,cAAc,CAAC,kBAAkB,IAAI,EAAE,CAAC;wBAC5C,GAAG,CAAC,iBAAiB,CAAC,YAAY,IAAI,EAAE,CAAC;qBAC1C;oBACD,OAAO,EAAE;wBACP,GAAG,CAAC,cAAc,CAAC,aAAa,IAAI,EAAE,CAAC;wBACvC,GAAG,CAAC,iBAAiB,CAAC,OAAO,IAAI,EAAE,CAAC;qBACrC;iBACF,CAAA;gBAED,0CAA0C;gBAC1C,MAAM,aAAa,GAAG,EAAE,CAAC,mBAAmB,CAAC,CAAA;gBAC7C,IAAI,aAAa,EAAE,CAAC;oBAClB,KAAK,CAAC,sBAAc,CAAC,CAAC,GAAG,CAAC,GAAG,aAAa,CAAA;gBAC5C,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC,CAAA;AACH,CAAC;AAED,SAAS,qBAAqB,CAAC,MAAkB;IAC/C,OAAO,UAAU,IAAI,GAAG,EAAE,EAAE,MAAwC;QAClE,OAAO,UACL,MAAW,EACX,oBAA4C,EAC5C,UAAqC;YAErC,IACE,OAAO,oBAAoB,KAAK,QAAQ;gBACxC,oBAAoB,KAAK,IAAI;gBAC7B,MAAM,IAAI,oBAAoB,EAC9B,CAAC;gBACD,mCAAmC;gBACnC,CAAC;gBAAC,MAAc,CAAC,UAAU,CAAC,GAAG;oBAC7B,MAAM;oBACN,IAAI;oBACJ,MAAM;iBACP,CAAA;YACH,CAAC;iBAAM,CAAC;gBACN,yCAAyC;gBACzC,MAAM,KAAK,GAAG,OAAO,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAA;gBACtE,MAAM,IAAI,GAAG,oBAAoB,IAAI,UAAU,EAAE,IAAI,CAAA;gBACrD,IAAI,CAAC,KAAK,CAAC,sBAAc,CAAC;oBAAE,KAAK,CAAC,sBAAc,CAAC,GAAG,EAAE,CAAA;gBACtD,KAAK,CAAC,sBAAc,CAAC,CAAC,IAAI,CAAC;oBACzB,MAAM;oBACN,IAAI;oBACJ,MAAM;oBACN,WAAW,EAAE,IAAI;iBAClB,CAAC,CAAA;YACJ,CAAC;QACH,CAAC,CAAA;IACH,CAAC,CAAA;AACH,CAAC;AAED;;;;;;;;;;;GAWG;AACU,QAAA,GAAG,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAA;AAE/C;;;;;;;;;;;GAWG;AACU,QAAA,IAAI,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAA;AACpC,QAAA,GAAG,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAA;AAClC,QAAA,KAAK,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAA;AACtC,QAAA,MAAM,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAA;AACxC,QAAA,OAAO,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAA;AAC1C,QAAA,IAAI,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAA;AACpC,QAAA,GAAG,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAA;AAClC,QAAA,OAAO,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAA;AAC1C,QAAA,KAAK,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAA;AACtC,QAAA,EAAE,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAA;AAChC,QAAA,GAAG,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAA;AAE/C;;;;;;;;;;;GAWG;AACH,SAAgB,GAAG,CAAC,GAAG,WAAkB;IACvC,OAAO,UACL,MAAW,EACX,oBAA4C,EAC5C,WAAsC;QAEtC,IACE,OAAO,oBAAoB,KAAK,QAAQ;YACxC,oBAAoB,KAAK,IAAI,EAC7B,CAAC;YACD,MAAM,OAAO,GAAG,oBAAoB,CAAA;YACpC,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBAC7B,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;oBACrB,IACE,CAAC,OAAO,CAAC,QAAQ,CAAC,2BAAmB,CAAC;wBACtC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,2BAAmB,CAAC,CAAC,EACpD,CAAC;wBACD,OAAO,CAAC,QAAQ,CAAC,2BAAmB,CAAC,GAAG;4BACtC,iBAAiB,EAAE,OAAO,CAAC,QAAQ,CAAC,2BAAmB,CAAC,IAAI,EAAE;yBAC/D,CAAA;oBACH,CAAC;yBAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,2BAAmB,CAAC,CAAC,iBAAiB,EAAE,CAAC;wBACpE,OAAO,CAAC,QAAQ,CAAC,2BAAmB,CAAC,CAAC,iBAAiB,GAAG,EAAE,CAAA;oBAC9D,CAAC;oBACD,OAAO,CAAC,QAAQ,CAAC,2BAAmB,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAC1D,GAAG,WAAW,CACf,CAAA;gBACH,CAAC;gBAED,IACE,CAAC,MAAM,CAAC,SAAS,CAAC,2BAAmB,CAAC;oBACtC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,2BAAmB,CAAC,CAAC,EACpD,CAAC;oBACD,MAAM,CAAC,SAAS,CAAC,2BAAmB,CAAC,GAAG;wBACtC,iBAAiB,EAAE,MAAM,CAAC,SAAS,CAAC,2BAAmB,CAAC,IAAI,EAAE;qBAC/D,CAAA;gBACH,CAAC;qBAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,2BAAmB,CAAC,CAAC,iBAAiB,EAAE,CAAC;oBACpE,MAAM,CAAC,SAAS,CAAC,2BAAmB,CAAC,CAAC,iBAAiB,GAAG,EAAE,CAAA;gBAC9D,CAAC;gBACD,MAAM,CAAC,SAAS,CAAC,2BAAmB,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAC1D,GAAG,WAAW,CACf,CAAA;YACH,CAAC;iBAAM,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACrC,mCAAmC;gBACnC,CAAC;gBAAC,MAAc,CAAC,kBAAkB,CAAC;oBACjC,MAAc,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAC1C;gBAAC,MAAc,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAA;YAC3D,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,OAAO,MAAM,KAAK,UAAU,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAC1D,yBAAyB;gBACzB,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAA;gBAC9B,IACE,CAAC,KAAK,CAAC,2BAAmB,CAAC;oBAC3B,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,2BAAmB,CAAC,CAAC,EACzC,CAAC;oBACD,KAAK,CAAC,2BAAmB,CAAC,GAAG;wBAC3B,iBAAiB,EAAE,KAAK,CAAC,2BAAmB,CAAC,IAAI,EAAE;qBACpD,CAAA;gBACH,CAAC;qBAAM,IAAI,CAAC,KAAK,CAAC,2BAAmB,CAAC,CAAC,iBAAiB,EAAE,CAAC;oBACzD,KAAK,CAAC,2BAAmB,CAAC,CAAC,iBAAiB,GAAG,EAAE,CAAA;gBACnD,CAAC;gBACD,KAAK,CAAC,2BAAmB,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAA;YACnE,CAAC;iBAAM,CAAC;gBACN,0BAA0B;gBAC1B,MAAM,KAAK,GAAG,MAAM,CAAA;gBACpB,MAAM,IAAI,GAAG,oBAAoB,CAAA;gBACjC,IAAI,CAAC,KAAK,CAAC,2BAAmB,CAAC;oBAAE,KAAK,CAAC,2BAAmB,CAAC,GAAG,EAAE,CAAA;gBAChE,IAAI,CAAC,KAAK,CAAC,2BAAmB,CAAC,CAAC,IAAI,CAAC;oBACnC,KAAK,CAAC,2BAAmB,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAA;gBACvC,KAAK,CAAC,2BAAmB,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAA;YACvD,CAAC;QACH,CAAC;IACH,CAAC,CAAA;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,SAAgB,UAAU,CACxB,UAAiE,EAAE;IAEnE,OAAO,UACL,MAAW,EACX,oBAA4C,EAC5C,UAAqC;QAErC,MAAM,UAAU,GACd,OAAO,oBAAoB,KAAK,QAAQ,IAAI,oBAAoB,KAAK,IAAI,CAAA;QAC3E,MAAM,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAA;QAEjD,EAAE,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAA;QAErD,8CAA8C;QAC9C,MAAM,eAAe,GAAG,KAAK,EAAE,GAAQ,EAAE,GAAQ,EAAE,IAAS,EAAE,EAAE;YAC9D,MAAM,EAAE,UAAU,EAAE,oBAAoB,EAAE,GACxC,wDAAa,2BAA2B,GAAC,CAAA;YAC3C,MAAM,OAAO,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAA;YAC7C,OAAO,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;QAChC,CAAC,CAAA;QAED,EAAE,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;IAC9C,CAAC,CAAA;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,SAAgB,KAAK,CACnB,UAA+D,EAAE;IAEjE,OAAO,UACL,MAAW,EACX,oBAA4C,EAC5C,UAAqC;QAErC,MAAM,UAAU,GACd,OAAO,oBAAoB,KAAK,QAAQ,IAAI,oBAAoB,KAAK,IAAI,CAAA;QAC3E,MAAM,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAA;QAEjD,EAAE,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAA;QAErD,MAAM,IAAI,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,CAAA;QAEvE,8CAA8C;QAC9C,MAAM,eAAe,GAAG,KAAK,EAAE,GAAQ,EAAE,GAAQ,EAAE,IAAS,EAAE,EAAE;YAC9D,MAAM,EAAE,eAAe,EAAE,GAAG,wDAAa,qBAAqB,GAAC,CAAA;YAC/D,MAAM,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,CAAA;YACrC,OAAO,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;QAChC,CAAC,CAAA;QAED,EAAE,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;IAC9C,CAAC,CAAA;AACH,CAAC;AAED,+EAA+E;AAE/E;;;;;;;;;;;GAWG;AACH,SAAgB,QAAQ,CAAC,IAAY;IACnC,OAAO,UACL,MAAW,EACX,oBAA4C,EAC5C,UAAqC;QAErC,MAAM,UAAU,GACd,OAAO,oBAAoB,KAAK,QAAQ,IAAI,oBAAoB,KAAK,IAAI,CAAA;QAC3E,MAAM,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAA;QAEjD,EAAE,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAA;QACvD,EAAE,CAAC,mBAAmB,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAA;IACzC,CAAC,CAAA;AACH,CAAC;AAED,SAAgB,MAAM,CAAC,IAAY,EAAE,KAAa;IAChD,OAAO,UACL,MAAW,EACX,oBAA4C,EAC5C,UAAqC;QAErC,MAAM,UAAU,GACd,OAAO,oBAAoB,KAAK,QAAQ,IAAI,oBAAoB,KAAK,IAAI,CAAA;QAC3E,MAAM,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAA;QAEjD,EAAE,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAA;QACvD,EAAE,CAAC,mBAAmB,CAAC,CAAC,OAAO,GAAG,EAAE,CAAC,mBAAmB,CAAC,CAAC,OAAO,IAAI,EAAE,CAAA;QACvE,EAAE,CAAC,mBAAmB,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAA;IAC/C,CAAC,CAAA;AACH,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAgB,OAAO,CACrB,MAAsE;IAEtE,OAAO,UACL,MAAW,EACX,oBAA4C,EAC5C,UAAqC;QAErC,MAAM,UAAU,GACd,OAAO,oBAAoB,KAAK,QAAQ,IAAI,oBAAoB,KAAK,IAAI,CAAA;QAC3E,MAAM,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAA;QAEjD,EAAE,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAA;QACvD,EAAE,CAAC,mBAAmB,CAAC,CAAC,cAAc,GAAG,MAAM,CAAA;IACjD,CAAC,CAAA;AACH,CAAC;AAED,+EAA+E;AAE/E,SAAgB,SAAS,CAAC,GAAG,MAAa;IACxC,OAAO,UACL,MAAW,EACX,oBAA4C,EAC5C,WAAsC;QAEtC,IACE,OAAO,oBAAoB,KAAK,QAAQ;YACxC,oBAAoB,KAAK,IAAI,EAC7B,CAAC;YACD,MAAM,OAAO,GAAG,oBAAoB,CAAA;YACpC,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBAC7B,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC;oBACvC,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAAA;gBACjD,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,YAAY;oBACpD,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,YAAY,IAAI,EAAE,CAAA;gBAC9D,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAA;YACxE,CAAC;iBAAM,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACrC,CAAC;gBAAC,MAAc,CAAC,uBAAuB,CAAC;oBACtC,MAAc,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAC/C;gBAAC,MAAc,CAAC,uBAAuB,CAAC,CAAC,MAAM;oBAC7C,MAAc,CAAC,uBAAuB,CAAC,CAAC,MAAM,IAAI,EAAE,CACtD;gBAAC,MAAc,CAAC,uBAAuB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAA;YAClE,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,OAAO,MAAM,KAAK,UAAU,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAC1D,yBAAyB;gBACzB,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC;oBACvC,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAAA;gBACjD,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,YAAY;oBACpD,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,YAAY,IAAI,EAAE,CAAA;gBAC9D,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAA;YACxE,CAAC;iBAAM,CAAC;gBACN,0BAA0B;gBAC1B,MAAM,EAAE,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAA;gBACvC,EAAE,CAAC,uBAAuB,CAAC,GAAG,EAAE,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAAA;gBAC/D,EAAE,CAAC,uBAAuB,CAAC,CAAC,MAAM;oBAChC,EAAE,CAAC,uBAAuB,CAAC,CAAC,MAAM,IAAI,EAAE,CAAA;gBAC1C,EAAE,CAAC,uBAAuB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAA;YACpD,CAAC;QACH,CAAC;IACH,CAAC,CAAA;AACH,CAAC;AAED,SAAgB,eAAe,CAAC,GAAG,YAAmB;IACpD,OAAO,UACL,MAAW,EACX,oBAA4C,EAC5C,WAAsC;QAEtC,IACE,OAAO,oBAAoB,KAAK,QAAQ;YACxC,oBAAoB,KAAK,IAAI,EAC7B,CAAC;YACD,MAAM,OAAO,GAAG,oBAAoB,CAAA;YACpC,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBAC7B,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC;oBACvC,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAAA;gBACjD,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,kBAAkB;oBAC1D,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,kBAAkB,IAAI,EAAE,CAAA;gBACpE,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAC/D,GAAG,YAAY,CAChB,CAAA;YACH,CAAC;iBAAM,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACrC,CAAC;gBAAC,MAAc,CAAC,uBAAuB,CAAC;oBACtC,MAAc,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAC/C;gBAAC,MAAc,CAAC,uBAAuB,CAAC,CAAC,YAAY;oBACnD,MAAc,CAAC,uBAAuB,CAAC,CAAC,YAAY,IAAI,EAAE,CAC5D;gBAAC,MAAc,CAAC,uBAAuB,CAAC,CAAC,YAAY,CAAC,IAAI,CACzD,GAAG,YAAY,CAChB,CAAA;YACH,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,OAAO,MAAM,KAAK,UAAU,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAC1D,yBAAyB;gBACzB,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC;oBACvC,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAAA;gBACjD,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,kBAAkB;oBAC1D,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,kBAAkB,IAAI,EAAE,CAAA;gBACpE,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAC/D,GAAG,YAAY,CAChB,CAAA;YACH,CAAC;iBAAM,CAAC;gBACN,0BAA0B;gBAC1B,MAAM,EAAE,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAA;gBACvC,EAAE,CAAC,uBAAuB,CAAC,GAAG,EAAE,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAAA;gBAC/D,EAAE,CAAC,uBAAuB,CAAC,CAAC,YAAY;oBACtC,EAAE,CAAC,uBAAuB,CAAC,CAAC,YAAY,IAAI,EAAE,CAAA;gBAChD,EAAE,CAAC,uBAAuB,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,CAAA;YAChE,CAAC;QACH,CAAC;IACH,CAAC,CAAA;AACH,CAAC;AAED,SAAgB,UAAU,CAAC,GAAG,OAAc;IAC1C,OAAO,UACL,MAAW,EACX,oBAA4C,EAC5C,WAAsC;QAEtC,IACE,OAAO,oBAAoB,KAAK,QAAQ;YACxC,oBAAoB,KAAK,IAAI,EAC7B,CAAC;YACD,MAAM,OAAO,GAAG,oBAAoB,CAAA;YACpC,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBAC7B,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC;oBACvC,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAAA;gBACjD,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,aAAa;oBACrD,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,aAAa,IAAI,EAAE,CAAA;gBAC/D,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAA;YAC1E,CAAC;iBAAM,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACrC,CAAC;gBAAC,MAAc,CAAC,uBAAuB,CAAC;oBACtC,MAAc,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAC/C;gBAAC,MAAc,CAAC,uBAAuB,CAAC,CAAC,OAAO;oBAC9C,MAAc,CAAC,uBAAuB,CAAC,CAAC,OAAO,IAAI,EAAE,CACvD;gBAAC,MAAc,CAAC,uBAAuB,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAA;YACpE,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,OAAO,MAAM,KAAK,UAAU,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAC1D,yBAAyB;gBACzB,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC;oBACvC,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAAA;gBACjD,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,aAAa;oBACrD,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,aAAa,IAAI,EAAE,CAAA;gBAC/D,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAA;YAC1E,CAAC;iBAAM,CAAC;gBACN,0BAA0B;gBAC1B,MAAM,EAAE,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAA;gBACvC,EAAE,CAAC,uBAAuB,CAAC,GAAG,EAAE,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAAA;gBAC/D,EAAE,CAAC,uBAAuB,CAAC,CAAC,OAAO;oBACjC,EAAE,CAAC,uBAAuB,CAAC,CAAC,OAAO,IAAI,EAAE,CAAA;gBAC3C,EAAE,CAAC,uBAAuB,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAA;YACtD,CAAC;QACH,CAAC;IACH,CAAC,CAAA;AACH,CAAC;AAED,kFAAkF;AAElF,SAAS,oBAAoB,CAC3B,IAAY,EACZ,UAAyB,EACzB,GAAG,KAAY;IAEf,OAAO,UACL,MAAW,EACX,WAA4B,EAC5B,cAAsB;QAEtB,MAAM,MAAM,GACV,OAAO,UAAU,KAAK,UAAU;YAChC,CAAC,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,KAAK,IAAI,CAAC,CAAA;QACzD,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAA;QAC5C,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;QAExD,MAAM,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC,CAAA;QAC9B,EAAE,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAA;QACvD,EAAE,CAAC,mBAAmB,CAAC,CAAC,cAAc,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAA;IAC3E,CAAC,CAAA;AACH,CAAC;AAEM,MAAM,KAAK,GAAG,CAAC,UAAyB,EAAE,GAAG,KAAY,EAAE,EAAE,CAClE,oBAAoB,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC,CAAA;AADxC,QAAA,KAAK,SACmC;AAC9C,MAAM,IAAI,GAAG,CAAC,UAAyB,EAAE,GAAG,KAAY,EAAE,EAAE,CACjE,oBAAoB,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC,CAAA;AADvC,QAAA,IAAI,QACmC;AAC7C,MAAM,OAAO,GAAG,CAAC,UAAyB,EAAE,GAAG,KAAY,EAAE,EAAE,CACpE,oBAAoB,CAAC,QAAQ,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC,CAAA;AADzC,QAAA,OAAO,WACkC;AAC/C,MAAM,SAAS,GAAG,CAAC,UAAyB,EAAE,GAAG,KAAY,EAAE,EAAE,CACtE,oBAAoB,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC,CAAA;AADvC,QAAA,SAAS,aAC8B;AAC7C,MAAM,GAAG,GAAG,GAAG,EAAE,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAA;AAAvC,QAAA,GAAG,OAAoC;AAC7C,MAAM,MAAM,GAAG,GAAG,EAAE,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAA;AAA7C,QAAA,MAAM,UAAuC;AACnD,MAAM,MAAM,GAAG,GAAG,EAAE,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAA;AAA7C,QAAA,MAAM,UAAuC;AACnD,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAA;AAA/C,QAAA,OAAO,WAAwC;AACrD,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAA;AAAzC,QAAA,IAAI,QAAqC;AAC/C,MAAM,EAAE,GAAG,GAAG,EAAE,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAA;AAArC,QAAA,EAAE,MAAmC;AAC3C,MAAM,YAAY,GAAG,CAAC,UAAyB,EAAE,GAAG,KAAY,EAAE,EAAE,CACzE,oBAAoB,CAAC,cAAc,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC,CAAA;AAD/C,QAAA,YAAY,gBACmC;AACrD,MAAM,aAAa,GAAG,CAAC,UAAyB,EAAE,GAAG,KAAY,EAAE,EAAE,CAC1E,oBAAoB,CAAC,eAAe,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC,CAAA;AADhD,QAAA,aAAa,iBACmC;AAEtD,MAAM,GAAG,GAAG,CAAC,OAAmC,EAAO,EAAE;IAC9D,OAAO,UACL,MAAW,EACX,WAA4B,EAC5B,cAAsB;QAEtB,MAAM,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC,CAAA;QAC9B,EAAE,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAA;QACvD,EAAE,CAAC,mBAAmB,CAAC,CAAC,cAAc,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;QAEzD,EAAE,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAA;QACvD,EAAE,CAAC,mBAAmB,CAAC,CAAC,SAAS,GAAG,CAAC,OAAO,EAAE,WAAW,CAAA;IAC3D,CAAC,CAAA;AACH,CAAC,CAAA;AAbY,QAAA,GAAG,OAaf;AAED,SAAgB,KAAK,CACnB,UAAyB,EACzB,YAAoD,EACpD,GAAG,KAAY;IAEf,OAAO,UACL,MAAW,EACX,oBAA4C,EAC5C,iBAAuB;QAEvB,MAAM,OAAO,GACX,OAAO,iBAAiB,KAAK,QAAQ;YACrC,CAAC,oBAAoB,IAAI,oBAAoB,CAAC,IAAI,KAAK,WAAW,CAAC,CAAA;QAErE,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,MAAM,GACV,OAAO,UAAU,KAAK,UAAU;gBAChC,CAAC,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,KAAK,IAAI,CAAC,CAAA;YACzD,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAA;YAC5C,MAAM,UAAU,GAAU,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;YACpD,IACE,YAAY;gBACZ,CAAC,OAAO,YAAY,KAAK,UAAU,IAAI,OAAO,YAAY,KAAK,QAAQ,CAAC,EACxE,CAAC;gBACD,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;YAC/B,CAAC;YACD,UAAU,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAA;YAEzB,MAAM,cAAc,GAAG,iBAAiB,CAAA;YACxC,MAAM,EAAE,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAA;YACvC,EAAE,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAA;YACvD,EAAE,CAAC,mBAAmB,CAAC,CAAC,cAAc,CAAC,GAAG;gBACxC,IAAI,EAAE,OAAO;gBACb,IAAI;gBACJ,KAAK,EAAE,UAAU;aAClB,CAAA;QACH,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,GAAG,UAAU,IAAI,EAAE,CAAA;YAC7B,IACE,OAAO,oBAAoB,KAAK,QAAQ;gBACxC,oBAAoB,KAAK,IAAI;gBAC7B,MAAM,IAAI,oBAAoB,EAC9B,CAAC;gBACD,CAAC;gBAAC,MAAc,CAAC,UAAU,CAAC,GAAG;oBAC7B,MAAM,EAAE,OAAO;oBACf,IAAI;oBACJ,MAAM,EAAE,YAAY;iBACrB,CAAA;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,KAAK,GAAG,OAAO,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAA;gBACtE,MAAM,IAAI,GAAG,oBAAoB,IAAI,iBAAiB,EAAE,IAAI,CAAA;gBAC5D,IAAI,CAAC,KAAK,CAAC,sBAAc,CAAC;oBAAE,KAAK,CAAC,sBAAc,CAAC,GAAG,EAAE,CAAA;gBACtD,KAAK,CAAC,sBAAc,CAAC,CAAC,IAAI,CAAC;oBACzB,MAAM,EAAE,OAAO;oBACf,IAAI;oBACJ,MAAM,EAAE,YAAY;oBACpB,WAAW,EAAE,IAAI;iBAClB,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;IACH,CAAC,CAAA;AACH,CAAC;AAEM,MAAM,QAAQ,GAAG,CAAC,GAAW,EAAE,UAAU,GAAG,GAAG,EAAO,EAAE;IAC7D,OAAO,UAAU,MAAW,EAAE,WAA4B;QACxD,MAAM,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC,CAAA;QAC9B,EAAE,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAA;QACvD,EAAE,CAAC,mBAAmB,CAAC,CAAC,QAAQ,GAAG,EAAE,GAAG,EAAE,UAAU,EAAE,CAAA;IACxD,CAAC,CAAA;AACH,CAAC,CAAA;AANY,QAAA,QAAQ,YAMpB;AAEM,MAAM,WAAW,GAAG,CAAC,GAAG,WAAqB,EAAO,EAAE;IAC3D,OAAO,UAAU,MAAW,EAAE,WAA6B;QACzD,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC,CAAA;YAC9B,EAAE,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAA;YACvD,EAAE,CAAC,mBAAmB,CAAC,CAAC,WAAW,GAAG,WAAW,CAAA;QACnD,CAAC;aAAM,CAAC;YACN,MAAM,KAAK,GAAG,OAAO,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAA;YACtE,KAAK,CAAC,mBAAmB,CAAC,GAAG,KAAK,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAA;YAC7D,KAAK,CAAC,mBAAmB,CAAC,CAAC,WAAW,GAAG,WAAW,CAAA;QACtD,CAAC;IACH,CAAC,CAAA;AACH,CAAC,CAAA;AAZY,QAAA,WAAW,eAYvB;AAEM,MAAM,KAAK,GAAG,CAAC,GAAG,KAAe,EAAO,EAAE;IAC/C,OAAO,UAAU,MAAW,EAAE,WAA6B;QACzD,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC,CAAA;YAC9B,EAAE,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAA;YACvD,EAAE,CAAC,mBAAmB,CAAC,CAAC,KAAK,GAAG,KAAK,CAAA;QACvC,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,SAAS,CAAC,uBAAe,CAAC,GAAG,KAAK,CAAA;QAC3C,CAAC;IACH,CAAC,CAAA;AACH,CAAC,CAAA;AAVY,QAAA,KAAK,SAUjB;AAED,SAAgB,UAAU,CAAC,OAA6C;IACtE,OAAO,UAAU,MAAW,EAAE,QAAgC;QAC5D,IAAI,OAAO,EAAE,KAAK,EAAE,CAAC;YACnB,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAA;QAC9D,CAAC;IACH,CAAC,CAAA;AACH,CAAC;AAEY,QAAA,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAA;AAClD,QAAA,cAAc,GAAG,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAA;AASjE;;GAEG;AACH,SAAgB,MAAM,CAAC,OAAsB;IAC3C,OAAO,UAAU,MAAW,EAAE,QAAgC;QAC5D,MAAM,CAAC,SAAS,CAAC,qBAAa,CAAC,GAAG,OAAO,IAAI,EAAE,CAAA;IACjD,CAAC,CAAA;AACH,CAAC;AAgBD;;GAEG;AACH,SAAgB,OAAO,CAAC,OAAuB;IAC7C,OAAO,UAAU,MAAW,EAAE,QAAgC;QAC5D,MAAM,CAAC,SAAS,CAAC,sBAAc,CAAC,GAAG,OAAO,IAAI,EAAE,CAAA;IAClD,CAAC,CAAA;AACH,CAAC"}
@@ -16,6 +16,7 @@ export declare class Container {
16
16
  private providers;
17
17
  private singletonCache;
18
18
  provide<T>(token: ProviderToken<T>, provider: ProviderDefinition<T>): void;
19
+ clearCache(): void;
19
20
  resolve<T>(token: ProviderToken<T>, requestCache?: Map<ProviderToken, any>): T;
20
21
  }
21
22
  //# sourceMappingURL=container.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"container.d.ts","sourceRoot":"","sources":["../../src/di/container.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,CAAC,CAAC,GAAG,GAAG,IAC7B,MAAM,GACN,MAAM,GACN,CAAC,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,CAAA;AAE/B,MAAM,WAAW,YAAY;IAC3B,KAAK,CAAC,EAAE,WAAW,GAAG,SAAS,CAAA;CAChC;AAED,MAAM,WAAW,aAAa,CAAC,CAAC,CAAE,SAAQ,YAAY;IACpD,QAAQ,EAAE,CAAC,CAAA;CACZ;AAED,MAAM,WAAW,eAAe,CAAC,CAAC,CAAE,SAAQ,YAAY;IACtD,UAAU,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;CACjC;AAED,MAAM,WAAW,aAAa,CAAC,CAAC,CAAE,SAAQ,YAAY;IACpD,QAAQ,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAA;CACpC;AAED,MAAM,MAAM,kBAAkB,CAAC,CAAC,IAC5B,aAAa,CAAC,CAAC,CAAC,GAChB,eAAe,CAAC,CAAC,CAAC,GAClB,aAAa,CAAC,CAAC,CAAC,GAChB,CAAC,CAAA;AAEL,qBAAa,SAAS;IACpB,OAAO,CAAC,SAAS,CAAgC;IACjD,OAAO,CAAC,cAAc,CAAgC;IAEtD,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG,IAAI;IAK1E,OAAO,CAAC,CAAC,EACP,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,EACvB,YAAY,CAAC,EAAE,GAAG,CAAC,aAAa,EAAE,GAAG,CAAC,GACrC,CAAC;CA2EL"}
1
+ {"version":3,"file":"container.d.ts","sourceRoot":"","sources":["../../src/di/container.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,CAAC,CAAC,GAAG,GAAG,IAC/B,MAAM,GAAG,MAAM,GAAG,CAAC,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,CAAA;AAE/C,MAAM,WAAW,YAAY;IAC3B,KAAK,CAAC,EAAE,WAAW,GAAG,SAAS,CAAA;CAChC;AAED,MAAM,WAAW,aAAa,CAAC,CAAC,CAAE,SAAQ,YAAY;IACpD,QAAQ,EAAE,CAAC,CAAA;CACZ;AAED,MAAM,WAAW,eAAe,CAAC,CAAC,CAAE,SAAQ,YAAY;IACtD,UAAU,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;CACjC;AAED,MAAM,WAAW,aAAa,CAAC,CAAC,CAAE,SAAQ,YAAY;IACpD,QAAQ,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAA;CACpC;AAED,MAAM,MAAM,kBAAkB,CAAC,CAAC,IAC9B,aAAa,CAAC,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;AAE9D,qBAAa,SAAS;IACpB,OAAO,CAAC,SAAS,CAAgC;IACjD,OAAO,CAAC,cAAc,CAAgC;IAEtD,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG,IAAI;IAK1E,UAAU,IAAI,IAAI;IAIlB,OAAO,CAAC,CAAC,EACP,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,EACvB,YAAY,CAAC,EAAE,GAAG,CAAC,aAAa,EAAE,GAAG,CAAC,GACrC,CAAC;CA2EL"}
@@ -10,6 +10,9 @@ class Container {
10
10
  this.providers.set(token, provider);
11
11
  this.singletonCache.delete(token);
12
12
  }
13
+ clearCache() {
14
+ this.singletonCache.clear();
15
+ }
13
16
  resolve(token, requestCache) {
14
17
  // 1. Check singleton cache
15
18
  if (this.singletonCache.has(token)) {
@@ -1 +1 @@
1
- {"version":3,"file":"container.js","sourceRoot":"","sources":["../../src/di/container.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"container.js","sourceRoot":"","sources":["../../src/di/container.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import type { ExisRequest } from '../server/request';
2
+ export interface StorageOptions {
3
+ dest: string;
4
+ }
5
+ export declare function streamUpload(req: ExisRequest<any, any, any>, options: StorageOptions): Promise<{
6
+ fields: Record<string, string>;
7
+ files: {
8
+ fieldname: string;
9
+ filename: string;
10
+ mimetype: string;
11
+ destPath: string;
12
+ size: number;
13
+ }[];
14
+ }>;
15
+ //# sourceMappingURL=storage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../src/exports/storage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAEpD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAA;CACb;AAED,wBAAsB,YAAY,CAChC,GAAG,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAC/B,OAAO,EAAE,cAAc;;;;;;;;;GAGxB"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.streamUpload = streamUpload;
4
+ async function streamUpload(req, options) {
5
+ return await req.streamUpload(options.dest);
6
+ }
7
+ //# sourceMappingURL=storage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage.js","sourceRoot":"","sources":["../../src/exports/storage.ts"],"names":[],"mappings":";;AAMA,oCAKC;AALM,KAAK,UAAU,YAAY,CAChC,GAA+B,EAC/B,OAAuB;IAEvB,OAAO,MAAM,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;AAC7C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"compression.d.ts","sourceRoot":"","sources":["../../src/middleware/compression.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAqB,MAAM,UAAU,CAAA;AAE1D,wBAAgB,WAAW,IAAI,OAAO,CA2JrC"}
1
+ {"version":3,"file":"compression.d.ts","sourceRoot":"","sources":["../../src/middleware/compression.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAqB,MAAM,UAAU,CAAA;AAE1D,wBAAgB,WAAW,IAAI,OAAO,CA8JrC"}
@@ -23,38 +23,41 @@ function compression() {
23
23
  const originalWrite = res.raw.write.bind(res.raw);
24
24
  const originalEnd = res.raw.end.bind(res.raw);
25
25
  const originalRawSetHeader = res.raw.setHeader.bind(res.raw);
26
- const originalRawWriteHead = res.raw.writeHead.bind(res.raw);
26
+ const originalRawWriteHead = res.raw.writeHead
27
+ ? res.raw.writeHead.bind(res.raw)
28
+ : undefined;
27
29
  res.raw.setHeader = function (name, value) {
28
30
  if (name.toLowerCase() === 'content-length') {
29
31
  return this;
30
32
  }
31
33
  return originalRawSetHeader(name, value);
32
34
  };
33
- res.raw.writeHead = function (statusCode, reasonOrHeaders, headers) {
34
- const actualHeaders = headers || reasonOrHeaders;
35
- if (actualHeaders && typeof actualHeaders === 'object') {
36
- const cleaned = {};
37
- for (const [k, v] of Object.entries(actualHeaders)) {
38
- if (k.toLowerCase() !== 'content-length') {
39
- cleaned[k] = v;
35
+ if (originalRawWriteHead) {
36
+ res.raw.writeHead = function (statusCode, reasonOrHeaders, headers) {
37
+ const actualHeaders = headers || reasonOrHeaders;
38
+ if (actualHeaders && typeof actualHeaders === 'object') {
39
+ const cleaned = {};
40
+ for (const [k, v] of Object.entries(actualHeaders)) {
41
+ if (k.toLowerCase() !== 'content-length') {
42
+ cleaned[k] = v;
43
+ }
44
+ }
45
+ if (headers) {
46
+ reasonOrHeaders = cleaned;
47
+ }
48
+ else {
49
+ reasonOrHeaders = cleaned;
40
50
  }
41
51
  }
42
- if (headers) {
43
- reasonOrHeaders = cleaned;
44
- }
45
- else {
46
- reasonOrHeaders = cleaned;
47
- }
48
- }
49
- return originalRawWriteHead(statusCode, reasonOrHeaders, headers);
50
- };
52
+ return originalRawWriteHead(statusCode, reasonOrHeaders, headers);
53
+ };
54
+ }
51
55
  let onFinishCallback;
52
56
  const startCompression = () => {
53
57
  if (stream)
54
58
  return; // already started
55
59
  originalRawSetHeader('Content-Encoding', encoding);
56
60
  originalRawSetHeader('Vary', 'Accept-Encoding');
57
- originalRawSetHeader('Transfer-Encoding', 'chunked');
58
61
  if (encoding === 'br') {
59
62
  stream = node_zlib_1.default.createBrotliCompress();
60
63
  }
@@ -1 +1 @@
1
- {"version":3,"file":"compression.js","sourceRoot":"","sources":["../../src/middleware/compression.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compression.js","sourceRoot":"","sources":["../../src/middleware/compression.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ import type { Handler } from '../types';
2
+ export interface IdempotencyStore {
3
+ get(key: string): Promise<{
4
+ statusCode: number;
5
+ headers: Record<string, string>;
6
+ body: any;
7
+ } | null>;
8
+ set(key: string, data: {
9
+ statusCode: number;
10
+ headers: Record<string, string>;
11
+ body: any;
12
+ }, ttl?: number): Promise<void>;
13
+ }
14
+ export declare class MemoryIdempotencyStore implements IdempotencyStore {
15
+ private cache;
16
+ get(key: string): Promise<any>;
17
+ set(key: string, data: any, ttl?: number): Promise<void>;
18
+ }
19
+ export interface IdempotentOptions {
20
+ store?: IdempotencyStore;
21
+ headerName?: string;
22
+ ttl?: number;
23
+ }
24
+ /**
25
+ * Idempotency Middleware.
26
+ * Caches responses based on the provided Idempotency-Key header.
27
+ * Ideal for preventing duplicate checkout charges or identical mutations.
28
+ */
29
+ export declare function Idempotent(options?: IdempotentOptions): Handler;
30
+ //# sourceMappingURL=idempotency.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"idempotency.d.ts","sourceRoot":"","sources":["../../src/middleware/idempotency.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAIvC,MAAM,WAAW,gBAAgB;IAC/B,GAAG,CACD,GAAG,EAAE,MAAM,GACV,OAAO,CAAC;QACT,UAAU,EAAE,MAAM,CAAA;QAClB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QAC/B,IAAI,EAAE,GAAG,CAAA;KACV,GAAG,IAAI,CAAC,CAAA;IACT,GAAG,CACD,GAAG,EAAE,MAAM,EACX,IAAI,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAAC,IAAI,EAAE,GAAG,CAAA;KAAE,EACxE,GAAG,CAAC,EAAE,MAAM,GACX,OAAO,CAAC,IAAI,CAAC,CAAA;CACjB;AAED,qBAAa,sBAAuB,YAAW,gBAAgB;IAC7D,OAAO,CAAC,KAAK,CAAmD;IAE1D,GAAG,CAAC,GAAG,EAAE,MAAM;IAUf,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,SAAW;CAGjD;AAID,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,gBAAgB,CAAA;IACxB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,GAAG,CAAC,EAAE,MAAM,CAAA;CACb;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAwEnE"}
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MemoryIdempotencyStore = void 0;
4
+ exports.Idempotent = Idempotent;
5
+ class MemoryIdempotencyStore {
6
+ constructor() {
7
+ this.cache = new Map();
8
+ }
9
+ async get(key) {
10
+ const item = this.cache.get(key);
11
+ if (!item)
12
+ return null;
13
+ if (Date.now() > item.expiry) {
14
+ this.cache.delete(key);
15
+ return null;
16
+ }
17
+ return item.data;
18
+ }
19
+ async set(key, data, ttl = 86400000) {
20
+ this.cache.set(key, { data, expiry: Date.now() + ttl });
21
+ }
22
+ }
23
+ exports.MemoryIdempotencyStore = MemoryIdempotencyStore;
24
+ const defaultStore = new MemoryIdempotencyStore();
25
+ /**
26
+ * Idempotency Middleware.
27
+ * Caches responses based on the provided Idempotency-Key header.
28
+ * Ideal for preventing duplicate checkout charges or identical mutations.
29
+ */
30
+ function Idempotent(options = {}) {
31
+ const store = options.store || defaultStore;
32
+ const headerName = (options.headerName || 'Idempotency-Key').toLowerCase();
33
+ const ttl = options.ttl || 86400000; // 24 hours
34
+ return async (req, res, next) => {
35
+ const key = req.header(headerName);
36
+ // If no key is provided, just continue normally
37
+ if (!key) {
38
+ return await next();
39
+ }
40
+ // Check if we have a cached response for this key
41
+ const cached = await store.get(key);
42
+ if (cached) {
43
+ res.status(cached.statusCode);
44
+ for (const [k, v] of Object.entries(cached.headers)) {
45
+ res.setHeader(k, v);
46
+ }
47
+ return res.json(cached.body);
48
+ }
49
+ // Intercept the response
50
+ const originalJson = res.json.bind(res);
51
+ const originalSend = res.send.bind(res);
52
+ let interceptedBody = undefined;
53
+ const cacheResponse = () => {
54
+ if ((res.statusCode >= 200 && res.statusCode < 400) ||
55
+ res.statusCode === undefined) {
56
+ if (interceptedBody !== undefined) {
57
+ store
58
+ .set(key, {
59
+ statusCode: res.statusCode || 200,
60
+ headers: { 'content-type': 'application/json; charset=utf-8' },
61
+ body: interceptedBody,
62
+ }, ttl)
63
+ .catch(console.error);
64
+ }
65
+ }
66
+ };
67
+ // Override json
68
+ res.json = (body) => {
69
+ interceptedBody = body;
70
+ const ret = originalJson(body);
71
+ cacheResponse();
72
+ return ret;
73
+ };
74
+ // Override send
75
+ res.send = (body) => {
76
+ interceptedBody = body;
77
+ const ret = originalSend(body);
78
+ cacheResponse();
79
+ return ret;
80
+ };
81
+ next();
82
+ };
83
+ }
84
+ //# sourceMappingURL=idempotency.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"idempotency.js","sourceRoot":"","sources":["../../src/middleware/idempotency.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ export declare function cors(config?: CorsConfig): Handler;
4
4
  export declare function requestId(): Handler;
5
5
  export declare function requestLogger(loggerOrConfig?: Logger | LoggerConfig): Handler;
6
6
  export declare const notFound: Handler;
7
- export { compression } from './compression';
7
+ export { compression as compress } from './compression';
8
8
  export { helmet, csrf, timeout, hpp, xss, mongoSanitize, sqlSanitize, dbSanitize, } from './security';
9
9
  export { cacheMiddleware as cache } from './cache';
10
10
  export { dedupeMiddleware as dedupe } from './dedupe';
@@ -24,4 +24,5 @@ export interface ValidateSchema {
24
24
  }
25
25
  export declare function validate(schema: ValidateSchema): Handler;
26
26
  export declare function conditionalGet(): Handler;
27
+ export * from './idempotency';
27
28
  //# sourceMappingURL=middleware.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../../src/middleware/middleware.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACzE,OAAO,EAAE,eAAe,EAAkB,MAAM,oBAAoB,CAAA;AAKpE,wBAAgB,IAAI,CAAC,MAAM,GAAE,UAAe,GAAG,OAAO,CAwFrD;AAMD,wBAAgB,SAAS,IAAI,OAAO,CAenC;AAID,wBAAgB,aAAa,CAC3B,cAAc,GAAE,MAAM,GAAG,YAAiB,GACzC,OAAO,CAoCT;AAID,eAAO,MAAM,QAAQ,EAAE,OAQtB,CAAA;AAID,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EACL,MAAM,EACN,IAAI,EACJ,OAAO,EACP,GAAG,EACH,GAAG,EACH,aAAa,EACb,WAAW,EACX,UAAU,GACX,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,eAAe,IAAI,KAAK,EAAE,MAAM,SAAS,CAAA;AAClD,OAAO,EAAE,gBAAgB,IAAI,MAAM,EAAE,MAAM,UAAU,CAAA;AACrD,OAAO,EAAE,sBAAsB,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAA;AACvE,OAAO,EAAE,kBAAkB,IAAI,QAAQ,EAAE,MAAM,aAAa,CAAA;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAC/C,cAAc,SAAS,CAAA;AACvB,cAAc,QAAQ,CAAA;AAEtB,wBAAgB,WAAW,CACzB,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAO,GAChC,OAAO,CA0ET;AAID,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,EAAE,eAAe,CAAC,GAAG,CAAC,CAAA;IAE3B,KAAK,CAAC,EAAE,eAAe,CAAC,GAAG,CAAC,CAAA;IAE5B,MAAM,CAAC,EAAE,eAAe,CAAC,GAAG,CAAC,CAAA;CAC9B;AAED,wBAAgB,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CA8BxD;AAID,wBAAgB,cAAc,IAAI,OAAO,CAKxC"}
1
+ {"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../../src/middleware/middleware.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACzE,OAAO,EAAE,eAAe,EAAkB,MAAM,oBAAoB,CAAA;AAKpE,wBAAgB,IAAI,CAAC,MAAM,GAAE,UAAe,GAAG,OAAO,CAwFrD;AAMD,wBAAgB,SAAS,IAAI,OAAO,CAenC;AAID,wBAAgB,aAAa,CAC3B,cAAc,GAAE,MAAM,GAAG,YAAiB,GACzC,OAAO,CAoCT;AAID,eAAO,MAAM,QAAQ,EAAE,OAQtB,CAAA;AAID,OAAO,EAAE,WAAW,IAAI,QAAQ,EAAE,MAAM,eAAe,CAAA;AACvD,OAAO,EACL,MAAM,EACN,IAAI,EACJ,OAAO,EACP,GAAG,EACH,GAAG,EACH,aAAa,EACb,WAAW,EACX,UAAU,GACX,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,eAAe,IAAI,KAAK,EAAE,MAAM,SAAS,CAAA;AAClD,OAAO,EAAE,gBAAgB,IAAI,MAAM,EAAE,MAAM,UAAU,CAAA;AACrD,OAAO,EAAE,sBAAsB,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAA;AACvE,OAAO,EAAE,kBAAkB,IAAI,QAAQ,EAAE,MAAM,aAAa,CAAA;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAC/C,cAAc,SAAS,CAAA;AACvB,cAAc,QAAQ,CAAA;AAEtB,wBAAgB,WAAW,CACzB,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAO,GAChC,OAAO,CA0ET;AAID,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,EAAE,eAAe,CAAC,GAAG,CAAC,CAAA;IAE3B,KAAK,CAAC,EAAE,eAAe,CAAC,GAAG,CAAC,CAAA;IAE5B,MAAM,CAAC,EAAE,eAAe,CAAC,GAAG,CAAC,CAAA;CAC9B;AAED,wBAAgB,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CA8BxD;AAID,wBAAgB,cAAc,IAAI,OAAO,CAKxC;AAED,cAAc,eAAe,CAAA"}
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.catchError = exports.intercept = exports.ipFilter = exports.backpressure = exports.dedupe = exports.cache = exports.dbSanitize = exports.sqlSanitize = exports.mongoSanitize = exports.xss = exports.hpp = exports.timeout = exports.csrf = exports.helmet = exports.compression = exports.notFound = void 0;
17
+ exports.catchError = exports.intercept = exports.ipFilter = exports.backpressure = exports.dedupe = exports.cache = exports.dbSanitize = exports.sqlSanitize = exports.mongoSanitize = exports.xss = exports.hpp = exports.timeout = exports.csrf = exports.helmet = exports.compress = exports.notFound = void 0;
18
18
  exports.cors = cors;
19
19
  exports.requestId = requestId;
20
20
  exports.requestLogger = requestLogger;
@@ -159,7 +159,7 @@ const notFound = (req, res) => {
159
159
  exports.notFound = notFound;
160
160
  // ─── Static File Serving ────────────────────────────────────────────────────────
161
161
  var compression_1 = require("./compression");
162
- Object.defineProperty(exports, "compression", { enumerable: true, get: function () { return compression_1.compression; } });
162
+ Object.defineProperty(exports, "compress", { enumerable: true, get: function () { return compression_1.compression; } });
163
163
  var security_1 = require("./security");
164
164
  Object.defineProperty(exports, "helmet", { enumerable: true, get: function () { return security_1.helmet; } });
165
165
  Object.defineProperty(exports, "csrf", { enumerable: true, get: function () { return security_1.csrf; } });
@@ -285,4 +285,5 @@ function conditionalGet() {
285
285
  next();
286
286
  };
287
287
  }
288
+ __exportStar(require("./idempotency"), exports);
288
289
  //# sourceMappingURL=middleware.js.map