@spinajs/http 2.0.474 → 2.0.475

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 (103) hide show
  1. package/lib/cjs/cache.d.ts +9 -10
  2. package/lib/cjs/cache.d.ts.map +1 -1
  3. package/lib/cjs/cache.js +41 -86
  4. package/lib/cjs/cache.js.map +1 -1
  5. package/lib/cjs/controllers.d.ts +3 -33
  6. package/lib/cjs/controllers.d.ts.map +1 -1
  7. package/lib/cjs/controllers.js +70 -97
  8. package/lib/cjs/controllers.js.map +1 -1
  9. package/lib/cjs/decorators.d.ts.map +1 -1
  10. package/lib/cjs/decorators.js +0 -55
  11. package/lib/cjs/decorators.js.map +1 -1
  12. package/lib/cjs/index.d.ts +0 -7
  13. package/lib/cjs/index.d.ts.map +1 -1
  14. package/lib/cjs/index.js +0 -7
  15. package/lib/cjs/index.js.map +1 -1
  16. package/lib/cjs/interfaces.d.ts +1 -27
  17. package/lib/cjs/interfaces.d.ts.map +1 -1
  18. package/lib/cjs/interfaces.js.map +1 -1
  19. package/lib/cjs/server.d.ts +0 -7
  20. package/lib/cjs/server.d.ts.map +1 -1
  21. package/lib/cjs/server.js +24 -9
  22. package/lib/cjs/server.js.map +1 -1
  23. package/lib/mjs/cache.d.ts +9 -10
  24. package/lib/mjs/cache.d.ts.map +1 -1
  25. package/lib/mjs/cache.js +41 -86
  26. package/lib/mjs/cache.js.map +1 -1
  27. package/lib/mjs/controllers.d.ts +3 -33
  28. package/lib/mjs/controllers.d.ts.map +1 -1
  29. package/lib/mjs/controllers.js +39 -99
  30. package/lib/mjs/controllers.js.map +1 -1
  31. package/lib/mjs/decorators.d.ts.map +1 -1
  32. package/lib/mjs/decorators.js +0 -55
  33. package/lib/mjs/decorators.js.map +1 -1
  34. package/lib/mjs/index.d.ts +0 -7
  35. package/lib/mjs/index.d.ts.map +1 -1
  36. package/lib/mjs/index.js +0 -7
  37. package/lib/mjs/index.js.map +1 -1
  38. package/lib/mjs/interfaces.d.ts +1 -27
  39. package/lib/mjs/interfaces.d.ts.map +1 -1
  40. package/lib/mjs/interfaces.js.map +1 -1
  41. package/lib/mjs/server.d.ts +0 -7
  42. package/lib/mjs/server.d.ts.map +1 -1
  43. package/lib/mjs/server.js +24 -9
  44. package/lib/mjs/server.js.map +1 -1
  45. package/lib/tsconfig.cjs.tsbuildinfo +1 -1
  46. package/lib/tsconfig.mjs.tsbuildinfo +1 -1
  47. package/package.json +11 -11
  48. package/lib/cjs/middlewares/AccessLog.d.ts +0 -23
  49. package/lib/cjs/middlewares/AccessLog.d.ts.map +0 -1
  50. package/lib/cjs/middlewares/AccessLog.js +0 -73
  51. package/lib/cjs/middlewares/AccessLog.js.map +0 -1
  52. package/lib/cjs/middlewares/Compression.d.ts +0 -21
  53. package/lib/cjs/middlewares/Compression.d.ts.map +0 -1
  54. package/lib/cjs/middlewares/Compression.js +0 -62
  55. package/lib/cjs/middlewares/Compression.js.map +0 -1
  56. package/lib/cjs/middlewares/Cors.d.ts +0 -25
  57. package/lib/cjs/middlewares/Cors.d.ts.map +0 -1
  58. package/lib/cjs/middlewares/Cors.js +0 -81
  59. package/lib/cjs/middlewares/Cors.js.map +0 -1
  60. package/lib/cjs/middlewares/ErrorHandler.d.ts +0 -17
  61. package/lib/cjs/middlewares/ErrorHandler.d.ts.map +0 -1
  62. package/lib/cjs/middlewares/ErrorHandler.js +0 -42
  63. package/lib/cjs/middlewares/ErrorHandler.js.map +0 -1
  64. package/lib/cjs/middlewares/NotFound.d.ts +0 -18
  65. package/lib/cjs/middlewares/NotFound.d.ts.map +0 -1
  66. package/lib/cjs/middlewares/NotFound.js +0 -48
  67. package/lib/cjs/middlewares/NotFound.js.map +0 -1
  68. package/lib/cjs/middlewares/ServerTiming.d.ts +0 -25
  69. package/lib/cjs/middlewares/ServerTiming.d.ts.map +0 -1
  70. package/lib/cjs/middlewares/ServerTiming.js +0 -78
  71. package/lib/cjs/middlewares/ServerTiming.js.map +0 -1
  72. package/lib/cjs/middlewares/SlowRequestWarning.d.ts +0 -20
  73. package/lib/cjs/middlewares/SlowRequestWarning.d.ts.map +0 -1
  74. package/lib/cjs/middlewares/SlowRequestWarning.js +0 -74
  75. package/lib/cjs/middlewares/SlowRequestWarning.js.map +0 -1
  76. package/lib/mjs/middlewares/AccessLog.d.ts +0 -23
  77. package/lib/mjs/middlewares/AccessLog.d.ts.map +0 -1
  78. package/lib/mjs/middlewares/AccessLog.js +0 -70
  79. package/lib/mjs/middlewares/AccessLog.js.map +0 -1
  80. package/lib/mjs/middlewares/Compression.d.ts +0 -21
  81. package/lib/mjs/middlewares/Compression.d.ts.map +0 -1
  82. package/lib/mjs/middlewares/Compression.js +0 -56
  83. package/lib/mjs/middlewares/Compression.js.map +0 -1
  84. package/lib/mjs/middlewares/Cors.d.ts +0 -25
  85. package/lib/mjs/middlewares/Cors.d.ts.map +0 -1
  86. package/lib/mjs/middlewares/Cors.js +0 -75
  87. package/lib/mjs/middlewares/Cors.js.map +0 -1
  88. package/lib/mjs/middlewares/ErrorHandler.d.ts +0 -17
  89. package/lib/mjs/middlewares/ErrorHandler.d.ts.map +0 -1
  90. package/lib/mjs/middlewares/ErrorHandler.js +0 -39
  91. package/lib/mjs/middlewares/ErrorHandler.js.map +0 -1
  92. package/lib/mjs/middlewares/NotFound.d.ts +0 -18
  93. package/lib/mjs/middlewares/NotFound.d.ts.map +0 -1
  94. package/lib/mjs/middlewares/NotFound.js +0 -45
  95. package/lib/mjs/middlewares/NotFound.js.map +0 -1
  96. package/lib/mjs/middlewares/ServerTiming.d.ts +0 -25
  97. package/lib/mjs/middlewares/ServerTiming.d.ts.map +0 -1
  98. package/lib/mjs/middlewares/ServerTiming.js +0 -75
  99. package/lib/mjs/middlewares/ServerTiming.js.map +0 -1
  100. package/lib/mjs/middlewares/SlowRequestWarning.d.ts +0 -20
  101. package/lib/mjs/middlewares/SlowRequestWarning.d.ts.map +0 -1
  102. package/lib/mjs/middlewares/SlowRequestWarning.js +0 -71
  103. package/lib/mjs/middlewares/SlowRequestWarning.js.map +0 -1
package/lib/mjs/cache.js CHANGED
@@ -15,6 +15,13 @@ import { AsyncService, Autoinject, Singleton } from '@spinajs/di';
15
15
  import { fs as fFs, FileHasher, FileSystem } from '@spinajs/fs';
16
16
  import { Logger, Log } from '@spinajs/log';
17
17
  // ---------------------------------------------------------------------------
18
+ /** Wrapper types unwrapped to their first type argument (`Promise<T>`, `Ok<T>`, `ModelData<T>`, …). */
19
+ const TRANSPARENT_WRAPPERS = new Set([
20
+ 'Promise', 'Ok', 'Json', 'Created', 'BadRequest', 'NotFound',
21
+ 'ServerError', 'Unauthorized', 'Forbidden', 'Conflict', 'NoContent',
22
+ 'ValidationError', 'NotAllowed', 'EntityTooLarge',
23
+ 'ModelDataWithRelationData', 'ModelData',
24
+ ]);
18
25
  let DefaultControllerCache = class DefaultControllerCache extends AsyncService {
19
26
  constructor() {
20
27
  super(...arguments);
@@ -46,13 +53,6 @@ let DefaultControllerCache = class DefaultControllerCache extends AsyncService {
46
53
  }
47
54
  /** Returns parameter-name map used for route argument binding. */
48
55
  async getCache(controller) {
49
- // Sentinel values like `<di>` are set by Controllers.resolve() / add() for
50
- // controllers registered through DI rather than a file scan. There's no
51
- // on-disk source to parse, so fall back to a runtime extraction of
52
- // parameter names from each method's Function.toString().
53
- if (!this.isResolvableSource(controller.file)) {
54
- return this.extractParametersAtRuntime(controller);
55
- }
56
56
  const file = resolvePath(controller.file.replace('.js', '.d.ts'));
57
57
  const hash = await this.Hasher.hash(file);
58
58
  const docHash = `doc_${hash}`;
@@ -69,40 +69,8 @@ let DefaultControllerCache = class DefaultControllerCache extends AsyncService {
69
69
  }
70
70
  return this.CacheFS.read(hash).then((x) => JSON.parse(x.toString()));
71
71
  }
72
- /** Whether `file` points at a real on-disk source we can parse. */
73
- isResolvableSource(file) {
74
- if (!file)
75
- return false;
76
- // Bracketed sentinels (e.g. `<di>`, `<dynamic>`) are used by Controllers
77
- // for entries that were never loaded from a file.
78
- return !(file.startsWith('<') && file.endsWith('>'));
79
- }
80
- /**
81
- * Fallback: derive route method parameter names by parsing each method's
82
- * Function.toString() output. Loses JSDoc documentation (no @param tags
83
- * etc.) but keeps argument binding working for DI-registered controllers
84
- * that have no source file on disk.
85
- */
86
- extractParametersAtRuntime(controller) {
87
- const parameters = {};
88
- const instance = controller.instance;
89
- if (!instance || !instance.Descriptor)
90
- return parameters;
91
- for (const [methodName] of instance.Descriptor.Routes) {
92
- const fn = instance[methodName];
93
- if (typeof fn !== 'function')
94
- continue;
95
- parameters[methodName] = parseFnParamNames(fn);
96
- }
97
- return parameters;
98
- }
99
72
  /** Returns the JSDoc / TypeScript-annotation documentation for a controller. */
100
73
  async getDocumentation(controller) {
101
- // No source file → no JSDoc to extract. Return an empty shell so callers
102
- // (e.g. http-swagger) gracefully skip the controller instead of throwing.
103
- if (!this.isResolvableSource(controller.file)) {
104
- return { className: controller.name, methods: {} };
105
- }
106
74
  const file = resolvePath(controller.file.replace('.js', '.d.ts'));
107
75
  const hash = await this.Hasher.hash(file);
108
76
  const docHash = `doc_${hash}`;
@@ -120,7 +88,8 @@ let DefaultControllerCache = class DefaultControllerCache extends AsyncService {
120
88
  * .d.ts which only emits type-referenced ones) and resolve the matching
121
89
  * module specifier against the controller's directory or node_modules.
122
90
  *
123
- * Per-call in-memory cache onlypolicy doc volume is small and the cost is
91
+ * JSDoc is extracted per class several policies may share one file, so the
92
+ * file is parsed once per class. Policy doc volume is small and the cost is
124
93
  * dominated by ts.createProgram which we already pay for the controller.
125
94
  */
126
95
  async getPolicyDocumentation(controller, policyNames) {
@@ -131,7 +100,6 @@ let DefaultControllerCache = class DefaultControllerCache extends AsyncService {
131
100
  const importMap = this.extractImports(controllerJs);
132
101
  if (importMap.size === 0)
133
102
  return out;
134
- const seenFiles = new Set();
135
103
  for (const name of policyNames) {
136
104
  if (out[name])
137
105
  continue;
@@ -139,12 +107,8 @@ let DefaultControllerCache = class DefaultControllerCache extends AsyncService {
139
107
  if (!moduleSpec)
140
108
  continue;
141
109
  const policyFile = this.resolvePolicyFile(controllerJs, moduleSpec);
142
- if (!policyFile || seenFiles.has(policyFile)) {
143
- if (policyFile)
144
- out[name] = { file: policyFile };
110
+ if (!policyFile)
145
111
  continue;
146
- }
147
- seenFiles.add(policyFile);
148
112
  try {
149
113
  const description = this.extractClassJsDoc(policyFile, name);
150
114
  out[name] = { file: policyFile, description };
@@ -255,8 +219,15 @@ let DefaultControllerCache = class DefaultControllerCache extends AsyncService {
255
219
  const code = comment.substring(0, space).trim();
256
220
  if (!/^\d+$/.test(code))
257
221
  return;
258
- const desc = comment.substring(space + 1).trim();
259
- (ctx.doc.responses ??= {})[code] = { description: desc };
222
+ let desc = comment.substring(space + 1).trim();
223
+ // `@response 400 {string} message` split the optional type annotation off
224
+ let type;
225
+ const typeMatch = /^\{([^}]+)\}\s*/.exec(desc);
226
+ if (typeMatch) {
227
+ type = typeMatch[1].trim();
228
+ desc = desc.substring(typeMatch[0].length).trim();
229
+ }
230
+ (ctx.doc.responses ??= {})[code] = { description: desc, ...(type ? { type } : {}) };
260
231
  }
261
232
  extractExampleTag(tag, ctx) {
262
233
  const ex = this.parseExample(tag);
@@ -468,28 +439,10 @@ let DefaultControllerCache = class DefaultControllerCache extends AsyncService {
468
439
  return { type: 'array', items: this.inferSchemaFromTypeNode(typeNode.elementType) };
469
440
  }
470
441
  if (ts.isTypeReferenceNode(typeNode)) {
471
- const name = ts.isIdentifier(typeNode.typeName)
472
- ? typeNode.typeName.text
473
- : typeNode.typeName.right.text;
474
- // Unwrap transparent wrappers — pass through to the inner type argument
475
- const TRANSPARENT_WRAPPERS = new Set([
476
- 'Promise', 'Ok', 'Json', 'Created', 'BadRequest', 'NotFound',
477
- 'ServerError', 'Unauthorized', 'Forbidden', 'Conflict', 'NoContent',
478
- 'ValidationError', 'NotAllowed', 'EntityTooLarge',
479
- ]);
480
- if (TRANSPARENT_WRAPPERS.has(name) && typeNode.typeArguments?.length) {
481
- return this.inferSchemaFromTypeNode(typeNode.typeArguments[0]);
482
- }
483
- if (name === 'Array' && typeNode.typeArguments?.length) {
484
- return { type: 'array', items: this.inferSchemaFromTypeNode(typeNode.typeArguments[0]) };
485
- }
486
- switch (name) {
487
- case 'string': return { type: 'string' };
488
- case 'number': return { type: 'number' };
489
- case 'boolean': return { type: 'boolean' };
490
- // Avoid generating $ref to schemas that aren't registered in components
491
- default: return { type: 'object', description: name };
492
- }
442
+ return this.schemaFromNamedType(entityNameRight(typeNode.typeName), typeNode.typeArguments);
443
+ }
444
+ if (ts.isImportTypeNode(typeNode) && typeNode.qualifier) {
445
+ return this.schemaFromNamedType(entityNameRight(typeNode.qualifier), typeNode.typeArguments);
493
446
  }
494
447
  if (ts.isTypeLiteralNode(typeNode)) {
495
448
  const properties = {};
@@ -509,11 +462,25 @@ let DefaultControllerCache = class DefaultControllerCache extends AsyncService {
509
462
  }
510
463
  if (ts.isUnionTypeNode(typeNode)) {
511
464
  const meaningful = typeNode.types.filter((t) => t.kind !== ts.SyntaxKind.NullKeyword && t.kind !== ts.SyntaxKind.UndefinedKeyword);
512
- if (meaningful.length === 1)
465
+ if (meaningful.length === 1) {
513
466
  return this.inferSchemaFromTypeNode(meaningful[0]);
467
+ }
514
468
  }
515
469
  return { type: 'object' };
516
470
  }
471
+ /**
472
+ * Schema for a named type: unwrap wrappers and `Array<T>`, otherwise tag it as a named object.
473
+ * The parser only names the type; http-swagger's providers expand it later.
474
+ */
475
+ schemaFromNamedType(name, typeArguments) {
476
+ if (TRANSPARENT_WRAPPERS.has(name) && typeArguments?.length) {
477
+ return this.inferSchemaFromTypeNode(typeArguments[0]);
478
+ }
479
+ if (name === 'Array' && typeArguments?.length) {
480
+ return { type: 'array', items: this.inferSchemaFromTypeNode(typeArguments[0]) };
481
+ }
482
+ return { type: 'object', description: name };
483
+ }
517
484
  };
518
485
  __decorate([
519
486
  Logger('http'),
@@ -531,20 +498,8 @@ DefaultControllerCache = __decorate([
531
498
  Singleton()
532
499
  ], DefaultControllerCache);
533
500
  export { DefaultControllerCache };
534
- /**
535
- * Pull parameter names from `Function.prototype.toString()` output. Modern V8
536
- * preserves the literal signature so we can regex out `(a, b = 1, ...rest)`.
537
- * Stripped of default values and TypeScript type annotations.
538
- */
539
- function parseFnParamNames(fn) {
540
- const src = Function.prototype.toString.call(fn);
541
- const match = src.match(/^[^(]*\(([\s\S]*?)\)/);
542
- if (!match)
543
- return [];
544
- return match[1]
545
- .split(',')
546
- .map((p) => p.trim())
547
- .filter(Boolean)
548
- .map((p) => p.replace(/^\.\.\./, '').split(/[=:]/)[0].trim());
501
+ /** Rightmost identifier of an entity name. */
502
+ function entityNameRight(name) {
503
+ return ts.isIdentifier(name) ? name.text : name.right.text;
549
504
  }
550
505
  //# sourceMappingURL=cache.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../src/cache.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAa,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7E,OAAO,EAAE,EAAE,IAAI,GAAG,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEhE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AAyF3C,8EAA8E;AAGvE,IAAM,sBAAsB,GAA5B,MAAM,sBAAuB,SAAQ,YAAY;IAAjD;;QAgOL,8EAA8E;QAC9E,uBAAuB;QACvB,EAAE;QACF,2EAA2E;QAC3E,2EAA2E;QAC3E,iCAAiC;QACjC,8EAA8E;QAE9E;;;WAGG;QACa,kBAAa,GAAoB;YAC/C,EAAE,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,GAA2B,EAAE,GAAG,CAAC,EAAE;YAClG,EAAE,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAwB,EAAE,GAAG,CAAC,EAAE;YAC5G,EAAE,IAAI,EAAE,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE;YAChF,EAAE,IAAI,EAAE,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE;YAC9E,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE;YAC3F,EAAE,IAAI,EAAE,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,GAAG,GAAG,CAAC,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE;YAChF,EAAE,IAAI,EAAE,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE;YAC9E,EAAE,IAAI,EAAE,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE;SACjF,CAAC;IA8RJ,CAAC;IAzgBQ,KAAK,CAAC,OAAO;QAClB,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC;QACtB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,4BAA4B,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAC5E,CAAC;IAED,kEAAkE;IAC3D,KAAK,CAAC,QAAQ,CAAC,UAAqC;QACzD,2EAA2E;QAC3E,wEAAwE;QACxE,mEAAmE;QACnE,0DAA0D;QAC1D,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9C,OAAO,IAAI,CAAC,0BAA0B,CAAC,UAAU,CAAC,CAAC;QACrD,CAAC;QAED,MAAM,IAAI,GAAG,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;QAClE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1C,MAAM,OAAO,GAAG,OAAO,IAAI,EAAE,CAAC;QAE9B,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACpD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAErD,IAAI,CAAC,WAAW,IAAI,CAAC,SAAS,EAAE,CAAC;YAC/B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,mCAAmC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;YACpE,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC;YAE7E,IAAI,CAAC,WAAW;gBAAE,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;YAC7E,IAAI,CAAC,SAAS;gBAAE,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC;YAEjF,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,kCAAkC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;QACrE,CAAC;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,EAAE,CAA6B,CAAC,CAAC;IACnG,CAAC;IAED,mEAAmE;IAC3D,kBAAkB,CAAC,IAAwB;QACjD,IAAI,CAAC,IAAI;YAAE,OAAO,KAAK,CAAC;QACxB,yEAAyE;QACzE,kDAAkD;QAClD,OAAO,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IACvD,CAAC;IAED;;;;;OAKG;IACK,0BAA0B,CAAC,UAAqC;QACtE,MAAM,UAAU,GAA6B,EAAE,CAAC;QAChD,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;QACrC,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,UAAU;YAAE,OAAO,UAAU,CAAC;QAEzD,KAAK,MAAM,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;YACtD,MAAM,EAAE,GAAI,QAAgB,CAAC,UAAoB,CAAC,CAAC;YACnD,IAAI,OAAO,EAAE,KAAK,UAAU;gBAAE,SAAS;YACvC,UAAU,CAAC,UAAoB,CAAC,GAAG,iBAAiB,CAAC,EAAE,CAAC,CAAC;QAC3D,CAAC;QACD,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,gFAAgF;IACzE,KAAK,CAAC,gBAAgB,CAAC,UAAqC;QACjE,yEAAyE;QACzE,0EAA0E;QAC1E,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9C,OAAO,EAAE,SAAS,EAAE,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;QACrD,CAAC;QAED,MAAM,IAAI,GAAG,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;QAClE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1C,MAAM,OAAO,GAAG,OAAO,IAAI,EAAE,CAAC;QAE9B,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;YAC1C,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAClC,CAAC;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,EAAE,CAA6B,CAAC,CAAC;IACtG,CAAC;IAED;;;;;;;;;;;OAWG;IACI,KAAK,CAAC,sBAAsB,CACjC,UAAqC,EACrC,WAAqB;QAErB,MAAM,GAAG,GAA+B,EAAE,CAAC;QAC3C,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,GAAG,CAAC;QAEzC,MAAM,YAAY,GAAG,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAClD,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;QACpD,IAAI,SAAS,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO,GAAG,CAAC;QAErC,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;QACpC,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;YAC/B,IAAI,GAAG,CAAC,IAAI,CAAC;gBAAE,SAAS;YACxB,MAAM,UAAU,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACvC,IAAI,CAAC,UAAU;gBAAE,SAAS;YAE1B,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;YACpE,IAAI,CAAC,UAAU,IAAI,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC7C,IAAI,UAAU;oBAAE,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;gBACjD,SAAS;YACX,CAAC;YACD,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAE1B,IAAI,CAAC;gBACH,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;gBAC7D,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC;YAChD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,+BAA+B,UAAU,QAAQ,IAAI,KAAM,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;gBACnG,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;YACnC,CAAC;QACH,CAAC;QAED,OAAO,GAAG,CAAC;IACb,CAAC;IAED,8EAA8E;IAC9E,oCAAoC;IACpC,8EAA8E;IAEtE,UAAU,CAAC,IAAY,EAAE,SAAiB;QAChD,MAAM,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,EAAE;YACvC,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ;YAC9B,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM;YAC9B,SAAS,EAAE,IAAI;YACf,YAAY,EAAE,IAAI;SACnB,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAE/C,MAAM,UAAU,GAA6B,EAAE,CAAC;QAChD,MAAM,aAAa,GAA6B,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;QAE3E,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,gCAAgC,IAAI,EAAE,CAAC,CAAC;YACtD,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC;QACvC,CAAC;QAED,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,EAAE;YACnC,IAAI,CAAC,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,KAAK,SAAS;gBAAE,OAAO;YAE1E,oBAAoB;YACpB,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YAChD,IAAI,YAAY;gBAAE,aAAa,CAAC,gBAAgB,GAAG,YAAY,CAAC;YAEhE,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;YACjG,IAAI,SAAS;gBAAE,aAAa,CAAC,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YAEnF,wBAAwB;YACxB,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBAClC,IAAI,CAAC,EAAE,CAAC,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI;oBAAE,SAAS;gBAE9D,MAAM,UAAU,GAAW,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAE,MAAM,CAAC,IAAY,CAAC,WAAW,IAAI,EAAE,CAAC;gBACpH,IAAI,CAAC,UAAU;oBAAE,SAAS;gBAE1B,4BAA4B;gBAC5B,UAAU,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAE,CAAC,CAAC,IAAsB,CAAC,IAAI,CAAC,CAAC;gBAEtF,sBAAsB;gBACtB,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;YAChF,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC;IACvC,CAAC;IAED,8EAA8E;IAC9E,2BAA2B;IAC3B,8EAA8E;IAEtE,gBAAgB,CAAC,MAA4B,EAAE,UAAyB;QAC9E,MAAM,GAAG,GAAe,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;QAEvC,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QAC7C,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAClC,GAAG,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAC9B,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;YAC9C,IAAI,IAAI;gBAAE,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC;QACnC,CAAC;QAED,sDAAsD;QACtD,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;YAChB,IAAI,CAAC,GAAG,CAAC,OAAO;gBAAE,GAAG,CAAC,OAAO,GAAG,EAAE,CAAC;YACnC,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACjE,CAAC;QAED,MAAM,GAAG,GAAyB,EAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QACnE,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;YAC/C,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC;YACjC,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBACpC,IAAI,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC9B,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;oBACrB,MAAM;gBACR,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,GAAG,CAAC;IACb,CAAC;IAyBO,eAAe,CAAC,GAAyB,EAAE,GAAyB;QAC1E,MAAM,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAE,GAAG,CAAC,IAAY,EAAE,KAAK,EAAE,IAAI,IAAI,EAAE,CAAC;QAC9F,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG;YACrB,IAAI;YACJ,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE;YAC5C,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,CAAC,UAAU,CAAC;SAC3D,CAAC;IACJ,CAAC;IAEO,gBAAgB,CAAC,GAAsB,EAAE,GAAyB;QACxE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO;YAAE,GAAG,CAAC,GAAG,CAAC,OAAO,GAAG,EAAE,CAAC;QAC3C,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC;QACnE,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IAC9E,CAAC;IAEO,kBAAkB,CAAC,GAAgB,EAAE,GAAyB;QACpE,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QACxC,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACnC,IAAI,KAAK,IAAI,CAAC;YAAE,OAAO;QACvB,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;QAChD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO;QAChC,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACjD,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;IAC3D,CAAC;IAEO,iBAAiB,CAAC,GAAgB,EAAE,GAAyB;QACnE,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QAClC,IAAI,EAAE;YAAE,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC7C,CAAC;IAEO,cAAc,CAAC,GAAgB,EAAE,GAAyB;QAChE,MAAM,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QACpC,IAAI,GAAG;YAAE,GAAG,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAC9D,CAAC;IAEO,iBAAiB,CAAC,GAAgB,EAAE,GAAyB;QACnE,MAAM,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QACpC,IAAI,GAAG;YAAE,GAAG,CAAC,GAAG,CAAC,OAAO,GAAG,GAAG,CAAC;IACjC,CAAC;IAEO,kBAAkB,CAAC,GAAgB,EAAE,GAAyB;QACpE,MAAM,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC;QAC5C,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,EAAE,EAAE,CAAC;YAC/B,GAAG,CAAC,GAAG,CAAC,QAAQ,GAAG,EAAE,CAAC;QACxB,CAAC;aAAM,IAAI,GAAG,EAAE,CAAC;YACf,oEAAoE;YACpE,gEAAgE;YAChE,qFAAqF;YACrF,GAAG,CAAC,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAA4B,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QAC/F,CAAC;IACH,CAAC;IAEO,eAAe,CAAC,IAAa;QACnC,MAAM,MAAM,GAAI,IAAY,CAAC,KAA+B,CAAC;QAC7D,IAAI,CAAC,MAAM,EAAE,MAAM;YAAE,OAAO,SAAS,CAAC;QACtC,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QAC9B,IAAI,CAAC,OAAO;YAAE,OAAO,SAAS,CAAC;QAC/B,IAAI,OAAO,OAAO,KAAK,QAAQ;YAAE,OAAO,OAAO,CAAC;QAChD,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;YAAE,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjF,OAAO,SAAS,CAAC;IACnB,CAAC;IAEO,gBAAgB,CAAC,IAAa,EAAE,OAAe;QACrD,MAAM,SAAS,GAAI,IAAY,CAAC,KAA+B,CAAC;QAChE,IAAI,CAAC,SAAS;YAAE,OAAO,SAAS,CAAC;QACjC,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;YAC9B,IAAI,CAAC,KAAK,CAAC,IAAI;gBAAE,SAAS;YAC1B,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC;YAC9E,IAAI,KAAK;gBAAE,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9C,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAEO,eAAe,CAAC,IAAa;QACnC,MAAM,SAAS,GAAI,IAAY,CAAC,KAA+B,CAAC;QAChE,IAAI,CAAC,SAAS;YAAE,OAAO,EAAE,CAAC;QAC1B,OAAO,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACtE,CAAC;IAEO,WAAW,CAAC,IAAyB,EAAE,UAAyB;QACtE,IAAI,CAAC,IAAI;YAAE,OAAO,SAAS,CAAC;QAC5B,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAClC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED,8EAA8E;IAC9E,wDAAwD;IACxD,8EAA8E;IAE9E;;;;OAIG;IACK,cAAc,CAAC,IAAY;QACjC,MAAM,GAAG,GAAG,IAAI,GAAG,EAAkB,CAAC;QACtC,MAAM,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,EAAE;YACvC,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ;YAC9B,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM;YAC9B,SAAS,EAAE,IAAI;YACf,YAAY,EAAE,IAAI;SACnB,CAAC,CAAC;QACH,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,UAAU;YAAE,OAAO,GAAG,CAAC;QAE5B,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,EAAE;YACnC,IAAI,CAAC,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC;gBAAE,OAAO;YAC1C,IAAI,CAAC,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,eAAe,CAAC;gBAAE,OAAO;YACtD,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;YAE5C,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC;YAC/C,IAAI,KAAK,IAAI,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;gBACtC,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;oBAChC,wDAAwD;oBACxD,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;gBACnC,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;;;OAIG;IACK,iBAAiB,CAAC,QAAgB,EAAE,SAAiB;QAC3D,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAC;YACvD,OAAO,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;QACxC,CAAC;QAED,iFAAiF;QACjF,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;YACxC,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAC5C,OAAO,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QAC5C,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED;;;;OAIG;IACK,mBAAmB,CAAC,SAAiB;QAC3C,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,2BAA2B,EAAE,EAAE,CAAC,CAAC;QACjE,MAAM,UAAU,GAAG;YACjB,GAAG,KAAK,OAAO;YACf,SAAS,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC;YACpC,SAAS;YACT,GAAG,KAAK,KAAK;YACb,GAAG,KAAK,KAAK;SACd,CAAC;QACF,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;YAC3B,IAAI,UAAU,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC;gBAAE,OAAO,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;OAGG;IACK,iBAAiB,CAAC,IAAY,EAAE,SAAiB;QACvD,MAAM,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,EAAE;YACvC,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ;YAC9B,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM;YAC9B,SAAS,EAAE,IAAI;YACf,YAAY,EAAE,IAAI;SACnB,CAAC,CAAC;QACH,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,UAAU;YAAE,OAAO,SAAS,CAAC;QAElC,IAAI,WAA+B,CAAC;QACpC,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,EAAE;YACnC,IAAI,WAAW;gBAAE,OAAO;YACxB,IAAI,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,KAAK,SAAS,EAAE,CAAC;gBACjE,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YAC3C,CAAC;QACH,CAAC,CAAC,CAAC;QACH,yEAAyE;QACzE,KAAK,IAAI,CAAC;QACV,OAAO,WAAW,CAAC;IACrB,CAAC;IAEO,aAAa,CAAC,GAAgB;QACpC,IAAI,CAAC,GAAG,CAAC,OAAO;YAAE,OAAO,SAAS,CAAC;QACnC,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ;YAAE,OAAO,GAAG,CAAC,OAAO,CAAC;QACxD,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;YAAE,OAAQ,GAAG,CAAC,OAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC/F,OAAO,SAAS,CAAC;IACnB,CAAC;IAEO,YAAY,CAAC,GAAgB;QACnC,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QACxC,IAAI,CAAC,OAAO;YAAE,OAAO,SAAS,CAAC;QAC/B,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;QACjE,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;QAC9F,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;IACnC,CAAC;IAED,8EAA8E;IAC9E,iDAAiD;IACjD,8EAA8E;IAEtE,uBAAuB,CAAC,QAAqB;QACnD,QAAQ,QAAQ,CAAC,IAAI,EAAE,CAAC;YACtB,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;YAC7D,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;YAC7D,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;YAC9D,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;YAC/B,KAAK,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC;YACpC,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;YAC/B,KAAK,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;YAC9B,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC;YAClC,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;QAC/D,CAAC;QAED,IAAI,EAAE,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC;YACjC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;QACtF,CAAC;QAED,IAAI,EAAE,CAAC,mBAAmB,CAAC,QAAQ,CAAC,EAAE,CAAC;YACrC,MAAM,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBAC7C,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI;gBACxB,CAAC,CAAE,QAAQ,CAAC,QAA6B,CAAC,KAAK,CAAC,IAAI,CAAC;YAEvD,wEAAwE;YACxE,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAC;gBACnC,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU;gBAC5D,aAAa,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW;gBACnE,iBAAiB,EAAE,YAAY,EAAE,gBAAgB;aAClD,CAAC,CAAC;YACH,IAAI,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,aAAa,EAAE,MAAM,EAAE,CAAC;gBACrE,OAAO,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;YACjE,CAAC;YACD,IAAI,IAAI,KAAK,OAAO,IAAI,QAAQ,CAAC,aAAa,EAAE,MAAM,EAAE,CAAC;gBACvD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3F,CAAC;YACD,QAAQ,IAAI,EAAE,CAAC;gBACb,KAAK,QAAQ,CAAC,CAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;gBAC1C,KAAK,QAAQ,CAAC,CAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;gBAC1C,KAAK,SAAS,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;gBAC3C,wEAAwE;gBACxE,OAAO,CAAC,CAAQ,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;YAC/D,CAAC;QACH,CAAC;QAED,IAAI,EAAE,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE,CAAC;YACnC,MAAM,UAAU,GAAgC,EAAE,CAAC;YACnD,MAAM,QAAQ,GAAa,EAAE,CAAC;YAC9B,KAAK,MAAM,MAAM,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACtC,IAAI,EAAE,CAAC,mBAAmB,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;oBAClF,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;oBAClC,UAAU,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBACjE,IAAI,CAAC,MAAM,CAAC,aAAa;wBAAE,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACrD,CAAC;YACH,CAAC;YACD,MAAM,MAAM,GAAgB,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;YAC3D,IAAI,QAAQ,CAAC,MAAM;gBAAE,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAC;YAChD,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,IAAI,EAAE,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC;YACjC,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,CACtC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW,IAAI,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,gBAAgB,CACzF,CAAC;YACF,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAClF,CAAC;QAED,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAC5B,CAAC;CACF,CAAA;AAjhBW;IADT,MAAM,CAAC,MAAM,CAAC;8BACA,GAAG;mDAAC;AAGT;IADT,UAAU,CAAC,yBAAyB,CAAC;8BACnB,GAAG;uDAAC;AAGb;IADT,UAAU,CAAC,UAAU,CAAC;8BACL,UAAU;sDAAC;AARlB,sBAAsB;IADlC,SAAS,EAAE;GACC,sBAAsB,CAmhBlC;;AAED;;;;GAIG;AACH,SAAS,iBAAiB,CAAC,EAAY;IACrC,MAAM,GAAG,GAAG,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjD,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAChD,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,CAAC;IACtB,OAAO,KAAK,CAAC,CAAC,CAAC;SACZ,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;SAC5B,MAAM,CAAC,OAAO,CAAC;SACf,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;AAC1E,CAAC"}
1
+ {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../src/cache.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { AsyncLocalStorage } from 'node:async_hooks';
2
2
  import Express from 'express';
3
- import { AsyncService, IContainer, ClassInfo, Class } from '@spinajs/di';
3
+ import { AsyncService, IContainer, ClassInfo } from '@spinajs/di';
4
4
  import { Log } from '@spinajs/log';
5
5
  import { DataValidator } from '@spinajs/validation';
6
6
  import { Configuration } from '@spinajs/configuration';
@@ -36,44 +36,14 @@ export declare abstract class BaseController extends AsyncService implements ICo
36
36
  }
37
37
  export declare class Controllers extends AsyncService {
38
38
  /**
39
- * File-scanned controller types (no instances). Each entry's `type` is
40
- * registered as `BaseController` in DI during `resolve()`, then every
41
- * controller — file-scanned and bootstrapper-registered alike — is
42
- * resolved through `Array.ofType(BaseController)`.
39
+ * Loaded controllers
43
40
  */
44
41
  Controllers: Promise<Array<ClassInfo<BaseController>>>;
45
42
  protected Log: Log;
46
43
  protected Container: IContainer;
47
44
  protected Server: HttpServer;
48
45
  protected ControllersCache: DefaultControllerCache;
49
- /**
50
- * Single Express router that all controllers' routers are mounted onto.
51
- * It occupies one fixed position in the parent Express stack, so
52
- * dynamically-added controllers (via {@link add}) land at the right place
53
- * automatically — Express evaluates sub-router stacks lazily on each
54
- * request. NotFound / Error middleware live AFTER this router via the
55
- * standard ServerMiddleware.after() lifecycle.
56
- */
57
- protected ControllersRouter: Express.Router;
58
- /**
59
- * Tracks which controller types have already been route-registered so
60
- * {@link add} is idempotent.
61
- */
62
- protected RegisteredTypes: Set<Class<BaseController>>;
63
- /**
64
- * Dynamically register a controller after startup. Equivalent to having
65
- * declared it via @Injectable / file-scan / bootstrapper registration
66
- * before `resolve()` ran, but usable at any point.
67
- *
68
- * Registers the type as BaseController (idempotent), resolves the
69
- * singleton instance, runs the per-controller cache + descriptor setup,
70
- * and mounts the controller's Router on the shared ControllersRouter.
71
- *
72
- * No Express stack mutation needed: the shared router was mounted once
73
- * during resolve() and lives at a fixed slot; the new controller's router
74
- * just becomes another entry in the shared router's internal stack.
75
- */
76
- add(type: Class<BaseController>): Promise<void>;
46
+ registerFromFile(file: string): Promise<void>;
77
47
  register(controller: ClassInfo<BaseController>): Promise<void>;
78
48
  resolve(): Promise<void>;
79
49
  }
@@ -1 +1 @@
1
- {"version":3,"file":"controllers.d.ts","sourceRoot":"","sources":["../../src/controllers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAGrD,OAAO,OAAO,MAAM,SAAS,CAAC;AAI9B,OAAO,EAAE,YAAY,EAAE,UAAU,EAAkB,SAAS,EAAa,KAAK,EAAE,MAAM,aAAa,CAAC;AAGpG,OAAO,EAAU,GAAG,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAiC,WAAW,EAAE,qBAAqB,EAAgG,0BAA0B,EAAW,MAAM,iBAAiB,CAAC;AAGvO,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAMpD,8BAAsB,cAAe,SAAQ,YAAa,YAAW,WAAW;IAC9E;;OAEG;IACH,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC;IAEtB,SAAS,CAAC,OAAO,EAAG,OAAO,CAAC,MAAM,CAAC;IAGnC,SAAS,CAAC,UAAU,EAAG,UAAU,CAAC;IAGlC,SAAS,CAAC,UAAU,EAAG,aAAa,CAAC;IAGrC,SAAS,CAAC,IAAI,EAAG,GAAG,CAAC;IAGrB,SAAS,CAAC,mBAAmB,EAAG,iBAAiB,CAAC,0BAA0B,CAAC,CAAC;IAG9E,SAAS,CAAC,IAAI,EAAG,aAAa,CAAC;IAI/B;;OAEG;IACH,IAAW,MAAM,IAAI,OAAO,CAAC,MAAM,CAElC;IAED;;OAEG;IACH,IAAW,UAAU,IAAI,qBAAqB,CAE7C;IAED;;;;OAIG;IACH,IAAW,QAAQ,IAAI,MAAM,CAE5B;IAEY,OAAO;CAqNrB;AAED,qBAAa,WAAY,SAAQ,YAAY;IAC3C;;;;;OAKG;IAEI,WAAW,EAAG,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;IAG/D,SAAS,CAAC,GAAG,EAAG,GAAG,CAAC;IAGpB,SAAS,CAAC,SAAS,EAAG,UAAU,CAAC;IAGjC,SAAS,CAAC,MAAM,EAAG,UAAU,CAAC;IAG9B,SAAS,CAAC,gBAAgB,EAAG,sBAAsB,CAAC;IAEpD;;;;;;;OAOG;IACH,SAAS,CAAC,iBAAiB,EAAG,OAAO,CAAC,MAAM,CAAC;IAE7C;;;OAGG;IACH,SAAS,CAAC,eAAe,EAAE,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAa;IAElE;;;;;;;;;;;;OAYG;IACU,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,cAAc,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAoB/C,QAAQ,CAAC,UAAU,EAAE,SAAS,CAAC,cAAc,CAAC;IA6C9C,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAmEtC"}
1
+ {"version":3,"file":"controllers.d.ts","sourceRoot":"","sources":["../../src/controllers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAKrD,OAAO,OAAO,MAAM,SAAS,CAAC;AAI9B,OAAO,EAAE,YAAY,EAAE,UAAU,EAAkB,SAAS,EAAa,MAAM,aAAa,CAAC;AAG7F,OAAO,EAAU,GAAG,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAiC,WAAW,EAAE,qBAAqB,EAAgG,0BAA0B,EAAW,MAAM,iBAAiB,CAAC;AAGvO,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAMpD,8BAAsB,cAAe,SAAQ,YAAa,YAAW,WAAW;IAC9E;;OAEG;IACH,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC;IAEtB,SAAS,CAAC,OAAO,EAAG,OAAO,CAAC,MAAM,CAAC;IAGnC,SAAS,CAAC,UAAU,EAAG,UAAU,CAAC;IAGlC,SAAS,CAAC,UAAU,EAAG,aAAa,CAAC;IAGrC,SAAS,CAAC,IAAI,EAAG,GAAG,CAAC;IAGrB,SAAS,CAAC,mBAAmB,EAAG,iBAAiB,CAAC,0BAA0B,CAAC,CAAC;IAG9E,SAAS,CAAC,IAAI,EAAG,aAAa,CAAC;IAI/B;;OAEG;IACH,IAAW,MAAM,IAAI,OAAO,CAAC,MAAM,CAElC;IAED;;OAEG;IACH,IAAW,UAAU,IAAI,qBAAqB,CAE7C;IAED;;;;OAIG;IACH,IAAW,QAAQ,IAAI,MAAM,CAE5B;IAEY,OAAO;CAqNrB;AAED,qBAAa,WAAY,SAAQ,YAAY;IAC3C;;OAEG;IAEI,WAAW,EAAG,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;IAG/D,SAAS,CAAC,GAAG,EAAG,GAAG,CAAC;IAGpB,SAAS,CAAC,SAAS,EAAG,UAAU,CAAC;IAGjC,SAAS,CAAC,MAAM,EAAG,UAAU,CAAC;IAG9B,SAAS,CAAC,gBAAgB,EAAG,sBAAsB,CAAC;IAEvC,gBAAgB,CAAC,IAAI,EAAE,MAAM;IAuC7B,QAAQ,CAAC,UAAU,EAAE,SAAS,CAAC,cAAc,CAAC;IAqC9C,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CActC"}
@@ -9,11 +9,13 @@ var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  };
10
10
  import { AsyncLocalStorage } from 'node:async_hooks';
11
11
  import { isPromise } from 'node:util/types';
12
+ import { basename } from 'node:path';
13
+ import * as fs from 'node:fs';
12
14
  import Express from 'express';
13
15
  import _ from 'lodash';
14
16
  import { AsyncService, Autoinject, DI, ClassInfo, Container } from '@spinajs/di';
15
- import { UnexpectedServerError } from '@spinajs/exceptions';
16
- import { ListFromFiles } from '@spinajs/reflection';
17
+ import { UnexpectedServerError, IOFail, ResourceNotFound } from '@spinajs/exceptions';
18
+ import { ResolveFromFiles } from '@spinajs/reflection';
17
19
  import { Logger, Log } from '@spinajs/log';
18
20
  import { DataValidator } from '@spinajs/validation';
19
21
  import { Configuration } from '@spinajs/configuration';
@@ -250,49 +252,39 @@ __decorate([
250
252
  __metadata("design:type", Configuration)
251
253
  ], BaseController.prototype, "_cfg", void 0);
252
254
  export class Controllers extends AsyncService {
253
- constructor() {
254
- super(...arguments);
255
- /**
256
- * Tracks which controller types have already been route-registered so
257
- * {@link add} is idempotent.
258
- */
259
- this.RegisteredTypes = new Set();
260
- }
261
- /**
262
- * Dynamically register a controller after startup. Equivalent to having
263
- * declared it via @Injectable / file-scan / bootstrapper registration
264
- * before `resolve()` ran, but usable at any point.
265
- *
266
- * Registers the type as BaseController (idempotent), resolves the
267
- * singleton instance, runs the per-controller cache + descriptor setup,
268
- * and mounts the controller's Router on the shared ControllersRouter.
269
- *
270
- * No Express stack mutation needed: the shared router was mounted once
271
- * during resolve() and lives at a fixed slot; the new controller's router
272
- * just becomes another entry in the shared router's internal stack.
273
- */
274
- async add(type) {
275
- if (this.RegisteredTypes.has(type)) {
276
- this.Log.trace(`Controller ${type.name} already registered, skipping`);
277
- return;
255
+ async registerFromFile(file) {
256
+ if (!fs.existsSync(file)) {
257
+ throw new IOFail(`Controller file at path ${file} not found`);
278
258
  }
279
- DI.register(type).as(BaseController);
280
- const instance = (await DI.resolve(type));
259
+ const types = await DI.__spinajs_require__(file.replace('.js', '.d.ts'));
260
+ const typeName = basename(basename(file, '.js'), '.ts');
261
+ const type = types[typeName];
262
+ const instance = await DI.resolve(type);
281
263
  const ci = new ClassInfo();
282
- ci.name = type.name;
283
- ci.type = type;
264
+ ci.file = file.replace('.js', '.d.ts');
284
265
  ci.instance = instance;
285
- // Source file was captured at decoration time by the route decorators.
286
- // Sentinel only if nothing was captured (no route decorators ran).
287
- ci.file = instance.Descriptor?.SourceFile ?? '<dynamic>';
266
+ ci.name = typeName;
267
+ ci.type = type;
268
+ // ensure dynamically added controllers are registered before 404/error middleware
269
+ const expressRouter = this.Server.Express?._router;
270
+ const tail = [];
271
+ if (expressRouter?.stack?.length) {
272
+ const last = expressRouter.stack[expressRouter.stack.length - 1];
273
+ if (last?.handle?.length === 4) {
274
+ tail.unshift(expressRouter.stack.pop());
275
+ }
276
+ const last2 = expressRouter.stack[expressRouter.stack.length - 1];
277
+ if (last2?.handle?.length === 3) {
278
+ tail.unshift(expressRouter.stack.pop());
279
+ }
280
+ }
288
281
  await this.register(ci);
282
+ if (tail.length && expressRouter?.stack) {
283
+ expressRouter.stack.push(...tail);
284
+ }
289
285
  }
290
286
  async register(controller) {
291
287
  this.Log.trace(`Loading controller: ${controller.name}`);
292
- if (controller.type && this.RegisteredTypes.has(controller.type)) {
293
- this.Log.trace(`Controller ${controller.name} already registered, skipping`);
294
- return;
295
- }
296
288
  const parameters = await this.ControllersCache.getCache(controller);
297
289
  if (!controller.instance) {
298
290
  this.Log.warn(`Controller ${controller.name} in file ${controller.file} is not resolved. Make sure it is decorated with @injectable and has a public constructor without required parameters`);
@@ -320,75 +312,23 @@ export class Controllers extends AsyncService {
320
312
  this.Log.warn(`Controller ${controller.name} in file ${controller.file} has no router instance. Check if it extends BaseController and super.resolve() is called in resolve method`);
321
313
  return;
322
314
  }
323
- this.ControllersRouter.use(controller.instance.Router);
324
- if (controller.type) {
325
- this.RegisteredTypes.add(controller.type);
326
- }
315
+ this.Server.use(controller.instance.Router);
327
316
  }
328
317
  }
329
318
  async resolve() {
330
319
  await super.resolve();
331
- // Shared sub-router. All controller routers mount onto this one; this
332
- // one mounts onto Express exactly once. Dynamic adds land here too,
333
- // which is how `add()` avoids the old Express-stack juggling.
334
- this.ControllersRouter = Express.Router();
335
- // Two registration paths converge here:
336
- // 1. Directory-scanned controllers (existing behavior). @ListFromFiles
337
- // hands us the class types; we register each as `BaseController` so
338
- // they show up in the DI collection.
339
- // 2. Bootstrapper-registered controllers. A package's Bootstrapper can
340
- // conditionally call `DI.register(MyController).as(BaseController)`
341
- // before this service resolves. Those classes are already in the
342
- // collection by the time we get here.
343
- // Resolving `Array.ofType(BaseController)` then instantiates everything
344
- // in a single pass — file-scanned + bootstrap-registered, with class
345
- // identity dedupe (multiple `as(BaseController)` calls for the same type
346
- // resolve to one singleton).
347
- const listed = await this.Controllers;
348
- // Remember the original file path per type so the second loop can preserve
349
- // it. Without this every controller would end up tagged `<di>`, breaking
350
- // ControllersCache.getCache() which expects a real on-disk source file.
351
- const fileByType = new Map();
352
- for (const ci of _.uniqBy(listed, c => c.name)) {
353
- if (!ci.type) {
354
- this.Log.warn(`Controller ${ci.name} in file ${ci.file} has no type. Make sure it is decorated with @injectable and has a public constructor without required parameters`);
355
- continue;
356
- }
357
- ;
358
- fileByType.set(ci.type, ci);
359
- DI.register(ci.type).as(BaseController);
360
- this.Log.trace(`Controller ${ci.name} from ${ci.file} registered as BaseController`);
361
- }
362
- const instances = (await DI.resolve(Array.ofType(BaseController)));
363
- for (const instance of instances) {
364
- const type = instance.constructor;
365
- const originalCi = fileByType.get(type);
366
- const ci = originalCi ?? Object.assign(new ClassInfo(), {
367
- name: type.name,
368
- type,
369
- instance,
370
- // For DI-registered controllers without a file scan entry, fall back
371
- // to the source file captured at decoration time by `Controller()`.
372
- // Only sentinel '<di>' if nothing was captured (abstract base, or no
373
- // route decorators ran).
374
- file: instance.Descriptor?.SourceFile ?? '<di>',
375
- });
376
- // The file-scanned entry has no instance (List, not Resolve) — patch it.
377
- if (!ci.instance)
378
- ci.instance = instance;
379
- await this.register(ci);
320
+ const controllers = await this.Controllers;
321
+ for (const c of controllers) {
322
+ await this.register(c);
380
323
  }
381
- // Mount the shared controllers router on the Express app ONCE. From here
382
- // on, anything added via `this.ControllersRouter.use(...)` (including
383
- // future `add()` calls) is picked up by Express automatically.
384
- // NotFound / Error handling is handled by NotFoundMiddleware and
385
- // ErrorHandlerMiddleware (ServerMiddleware impls), attached to the
386
- // Express stack tail during HttpServer.start().
387
- this.Server.use(this.ControllersRouter);
324
+ this.Server.use((req, _res, next) => {
325
+ next(new ResourceNotFound(`Route not found: ${req.method} ${req.originalUrl}`));
326
+ });
327
+ this.Server.use(__handle_error__()); // Global error handler
388
328
  }
389
329
  }
390
330
  __decorate([
391
- ListFromFiles('/**/!(*.d).{ts,js}', 'system.dirs.controllers'),
331
+ ResolveFromFiles('/**/!(*.d).{ts,js}', 'system.dirs.controllers'),
392
332
  __metadata("design:type", Promise)
393
333
  ], Controllers.prototype, "Controllers", void 0);
394
334
  __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"controllers.js","sourceRoot":"","sources":["../../src/controllers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"controllers.js","sourceRoot":"","sources":["../../src/controllers.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"decorators.d.ts","sourceRoot":"","sources":["../../src/decorators.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"decorators.d.ts","sourceRoot":"","sources":["../../src/decorators.ts"],"names":[],"mappings":"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"}