@goatlab/node-backend 1.1.21 → 1.1.24
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/container/Container.d.ts +19 -4
- package/dist/container/Container.js +112 -8
- package/dist/container/Container.js.map +1 -1
- package/dist/container/helpers.d.ts +12 -1
- package/dist/container/helpers.js +26 -1
- package/dist/container/helpers.js.map +1 -1
- package/dist/container/types.d.ts +18 -0
- package/dist/server/context/request.context.d.ts +1 -1
- package/dist/server/context/request.context.js +2 -2
- package/dist/server/trpc.d.ts +9 -9
- package/dist/server/types/Envinronment.d.ts +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -3
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { BatchBootstrapOptions, BatchBootstrapResult, BatchInvalidationResult, ContainerOptions, InstancesStructure, PreloadStructure } from './types';
|
|
1
|
+
import { BatchBootstrapOptions, BatchBootstrapResult, BatchInvalidationResult, ContainerOptions, DisposalResult, InstancesStructure, PreloadStructure } from './types';
|
|
2
2
|
/**
|
|
3
3
|
* ═══════════════════════════════════════════════════════════════════════════════
|
|
4
4
|
* 🏗️ MULTI-TENANT DEPENDENCY INJECTION CONTAINER
|
|
@@ -121,11 +121,18 @@ export declare class Container<Defs extends Record<string, unknown>, TenantMetad
|
|
|
121
121
|
*/
|
|
122
122
|
private readonly contextProxyCache;
|
|
123
123
|
/**
|
|
124
|
-
* Initializer cache: stores initialized instances per tenant
|
|
124
|
+
* Initializer cache: stores initialized instances per tenant with LRU eviction
|
|
125
125
|
* Avoids re-running the expensive initializer function for the same tenant
|
|
126
126
|
* Key is a serialized version of tenant metadata, value is the initialized instances
|
|
127
|
+
* Uses accessOrder to track LRU for eviction when cache exceeds maxInitializerCacheSize
|
|
127
128
|
*/
|
|
128
129
|
private readonly initializerCache;
|
|
130
|
+
/**
|
|
131
|
+
* Tracks access order for LRU eviction of initializerCache entries
|
|
132
|
+
* Key is cache key, value is access timestamp (incrementing counter)
|
|
133
|
+
*/
|
|
134
|
+
private readonly initializerAccessOrder;
|
|
135
|
+
private initializerAccessCounter;
|
|
129
136
|
/**
|
|
130
137
|
* High-performance metrics using Uint32Array for better JIT optimization
|
|
131
138
|
* Indices: [hits, misses, creates, ctx, proxy, initHits, resets, batchOps, batchErrors]
|
|
@@ -250,9 +257,15 @@ export declare class Container<Defs extends Record<string, unknown>, TenantMetad
|
|
|
250
257
|
* Uses common tenant properties or hashed JSON as fallback
|
|
251
258
|
*/
|
|
252
259
|
private createTenantCacheKey;
|
|
260
|
+
/**
|
|
261
|
+
* Evict the least recently used entry from initializerCache if at capacity
|
|
262
|
+
* Called before adding a new entry when cache is at maxInitializerCacheSize
|
|
263
|
+
*/
|
|
264
|
+
private evictLruFromInitializerCache;
|
|
253
265
|
/**
|
|
254
266
|
* Get or create initialized instances for a tenant with race condition protection
|
|
255
267
|
* Uses both result caching and inflight promise deduplication
|
|
268
|
+
* Implements LRU eviction when cache exceeds maxInitializerCacheSize
|
|
256
269
|
*/
|
|
257
270
|
private getOrCreateInstances;
|
|
258
271
|
/**
|
|
@@ -392,8 +405,9 @@ export declare class Container<Defs extends Record<string, unknown>, TenantMetad
|
|
|
392
405
|
* Async version of clearCaches that properly awaits all disposal operations
|
|
393
406
|
* Use this method when you need to ensure all resources are fully disposed
|
|
394
407
|
* before continuing (e.g., during graceful shutdown)
|
|
408
|
+
* @returns DisposalResult with counts and any errors encountered
|
|
395
409
|
*/
|
|
396
|
-
clearCachesAsync(): Promise<
|
|
410
|
+
clearCachesAsync(): Promise<DisposalResult>;
|
|
397
411
|
/**
|
|
398
412
|
* Setup distributed cache invalidation system
|
|
399
413
|
* Connects to Redis pub/sub for coordinating cache invalidation across instances
|
|
@@ -429,8 +443,9 @@ export declare class Container<Defs extends Record<string, unknown>, TenantMetad
|
|
|
429
443
|
* Dispose all service instances across all tenants and clear caches
|
|
430
444
|
* Useful for graceful shutdown and testing cleanup
|
|
431
445
|
* Note: This also clears all caches to prevent resurrection of disposed services
|
|
446
|
+
* @returns DisposalResult with counts and any errors encountered during disposal
|
|
432
447
|
*/
|
|
433
|
-
disposeAll(): Promise<
|
|
448
|
+
disposeAll(): Promise<DisposalResult>;
|
|
434
449
|
/**
|
|
435
450
|
* Get detailed cache statistics for each service
|
|
436
451
|
* Shows how many instances are cached and the cache limits
|
|
@@ -137,11 +137,18 @@ class Container {
|
|
|
137
137
|
*/
|
|
138
138
|
contextProxyCache = new WeakMap();
|
|
139
139
|
/**
|
|
140
|
-
* Initializer cache: stores initialized instances per tenant
|
|
140
|
+
* Initializer cache: stores initialized instances per tenant with LRU eviction
|
|
141
141
|
* Avoids re-running the expensive initializer function for the same tenant
|
|
142
142
|
* Key is a serialized version of tenant metadata, value is the initialized instances
|
|
143
|
+
* Uses accessOrder to track LRU for eviction when cache exceeds maxInitializerCacheSize
|
|
143
144
|
*/
|
|
144
145
|
initializerCache = new Map();
|
|
146
|
+
/**
|
|
147
|
+
* Tracks access order for LRU eviction of initializerCache entries
|
|
148
|
+
* Key is cache key, value is access timestamp (incrementing counter)
|
|
149
|
+
*/
|
|
150
|
+
initializerAccessOrder = new Map();
|
|
151
|
+
initializerAccessCounter = 0;
|
|
145
152
|
// ═══════════════════════════════════════════════════════════════════════════
|
|
146
153
|
// 📊 PERFORMANCE METRICS
|
|
147
154
|
// ═══════════════════════════════════════════════════════════════════════════
|
|
@@ -219,8 +226,10 @@ class Container {
|
|
|
219
226
|
this.factories = factories;
|
|
220
227
|
this.initializer = initializer;
|
|
221
228
|
// Apply default options
|
|
229
|
+
const cacheSize = options.cacheSize ?? 100;
|
|
222
230
|
this.options = {
|
|
223
|
-
cacheSize
|
|
231
|
+
cacheSize,
|
|
232
|
+
maxInitializerCacheSize: options.maxInitializerCacheSize ?? cacheSize,
|
|
224
233
|
enableMetrics: false,
|
|
225
234
|
enableDiagnostics: false,
|
|
226
235
|
enableDistributedInvalidation: false,
|
|
@@ -502,9 +511,32 @@ class Container {
|
|
|
502
511
|
return `tenant:ts:${Date.now()}`;
|
|
503
512
|
}
|
|
504
513
|
}
|
|
514
|
+
/**
|
|
515
|
+
* Evict the least recently used entry from initializerCache if at capacity
|
|
516
|
+
* Called before adding a new entry when cache is at maxInitializerCacheSize
|
|
517
|
+
*/
|
|
518
|
+
evictLruFromInitializerCache() {
|
|
519
|
+
if (this.initializerCache.size < this.options.maxInitializerCacheSize) {
|
|
520
|
+
return;
|
|
521
|
+
}
|
|
522
|
+
// Find the LRU entry (lowest access counter)
|
|
523
|
+
let lruKey = null;
|
|
524
|
+
let lruTime = Number.POSITIVE_INFINITY;
|
|
525
|
+
for (const [key, time] of this.initializerAccessOrder) {
|
|
526
|
+
if (time < lruTime) {
|
|
527
|
+
lruTime = time;
|
|
528
|
+
lruKey = key;
|
|
529
|
+
}
|
|
530
|
+
}
|
|
531
|
+
if (lruKey) {
|
|
532
|
+
this.initializerCache.delete(lruKey);
|
|
533
|
+
this.initializerAccessOrder.delete(lruKey);
|
|
534
|
+
}
|
|
535
|
+
}
|
|
505
536
|
/**
|
|
506
537
|
* Get or create initialized instances for a tenant with race condition protection
|
|
507
538
|
* Uses both result caching and inflight promise deduplication
|
|
539
|
+
* Implements LRU eviction when cache exceeds maxInitializerCacheSize
|
|
508
540
|
*/
|
|
509
541
|
async getOrCreateInstances(meta) {
|
|
510
542
|
const cacheKey = this.createTenantCacheKey(meta);
|
|
@@ -512,6 +544,8 @@ class Container {
|
|
|
512
544
|
const cachedInstances = this.initializerCache.get(cacheKey);
|
|
513
545
|
if (cachedInstances) {
|
|
514
546
|
this.inc(Container.METRIC.INIT_HITS);
|
|
547
|
+
// Update access order for LRU tracking
|
|
548
|
+
this.initializerAccessOrder.set(cacheKey, ++this.initializerAccessCounter);
|
|
515
549
|
return cachedInstances;
|
|
516
550
|
}
|
|
517
551
|
// Check if initialization is already in progress for this tenant
|
|
@@ -524,8 +558,12 @@ class Container {
|
|
|
524
558
|
this.initializerPromises.set(cacheKey, initPromise);
|
|
525
559
|
try {
|
|
526
560
|
const instances = await initPromise;
|
|
561
|
+
// Evict LRU entry if cache is at capacity
|
|
562
|
+
this.evictLruFromInitializerCache();
|
|
527
563
|
// Cache the result for future use
|
|
528
564
|
this.initializerCache.set(cacheKey, instances);
|
|
565
|
+
// Track access order for LRU
|
|
566
|
+
this.initializerAccessOrder.set(cacheKey, ++this.initializerAccessCounter);
|
|
529
567
|
return instances;
|
|
530
568
|
}
|
|
531
569
|
finally {
|
|
@@ -860,6 +898,7 @@ class Container {
|
|
|
860
898
|
// Clear optimization caches as well
|
|
861
899
|
this.proxyCache.clear();
|
|
862
900
|
this.initializerCache.clear();
|
|
901
|
+
this.initializerAccessOrder.clear();
|
|
863
902
|
this.initializerPromises.clear();
|
|
864
903
|
// Note: contextProxyCache is a WeakMap and will be garbage collected automatically
|
|
865
904
|
}
|
|
@@ -867,10 +906,38 @@ class Container {
|
|
|
867
906
|
* Async version of clearCaches that properly awaits all disposal operations
|
|
868
907
|
* Use this method when you need to ensure all resources are fully disposed
|
|
869
908
|
* before continuing (e.g., during graceful shutdown)
|
|
909
|
+
* @returns DisposalResult with counts and any errors encountered
|
|
870
910
|
*/
|
|
871
911
|
async clearCachesAsync() {
|
|
872
|
-
|
|
873
|
-
|
|
912
|
+
const result = {
|
|
913
|
+
disposed: 0,
|
|
914
|
+
failed: 0,
|
|
915
|
+
succeeded: 0,
|
|
916
|
+
errors: [],
|
|
917
|
+
};
|
|
918
|
+
// Collect all instances to dispose
|
|
919
|
+
const instancesToDispose = [];
|
|
920
|
+
for (const manager of Object.values(this.managers)) {
|
|
921
|
+
if (manager.values) {
|
|
922
|
+
instancesToDispose.push(...manager.values());
|
|
923
|
+
}
|
|
924
|
+
}
|
|
925
|
+
// Dispose instances and collect errors using disposeWithResult
|
|
926
|
+
const disposalResults = await Promise.all(instancesToDispose.map(inst => (0, helpers_1.disposeWithResult)(inst)));
|
|
927
|
+
for (const disposeResult of disposalResults) {
|
|
928
|
+
if (disposeResult.disposed && !disposeResult.error) {
|
|
929
|
+
result.disposed++;
|
|
930
|
+
result.succeeded++;
|
|
931
|
+
}
|
|
932
|
+
else if (disposeResult.error) {
|
|
933
|
+
result.failed++;
|
|
934
|
+
result.errors.push({ error: disposeResult.error });
|
|
935
|
+
// Log errors when diagnostics is enabled (for backward compatibility)
|
|
936
|
+
if (this.options.enableDiagnostics) {
|
|
937
|
+
console.error('Disposal error:', disposeResult.error);
|
|
938
|
+
}
|
|
939
|
+
}
|
|
940
|
+
}
|
|
874
941
|
// Clear all managers
|
|
875
942
|
for (const manager of Object.values(this.managers)) {
|
|
876
943
|
manager.clear();
|
|
@@ -878,8 +945,10 @@ class Container {
|
|
|
878
945
|
// Clear optimization caches as well
|
|
879
946
|
this.proxyCache.clear();
|
|
880
947
|
this.initializerCache.clear();
|
|
948
|
+
this.initializerAccessOrder.clear();
|
|
881
949
|
this.initializerPromises.clear();
|
|
882
950
|
// Note: contextProxyCache is a WeakMap and will be garbage collected automatically
|
|
951
|
+
return result;
|
|
883
952
|
}
|
|
884
953
|
// ═══════════════════════════════════════════════════════════════════════════
|
|
885
954
|
// 🌐 DISTRIBUTED CACHE INVALIDATION
|
|
@@ -1012,12 +1081,47 @@ class Container {
|
|
|
1012
1081
|
* Dispose all service instances across all tenants and clear caches
|
|
1013
1082
|
* Useful for graceful shutdown and testing cleanup
|
|
1014
1083
|
* Note: This also clears all caches to prevent resurrection of disposed services
|
|
1084
|
+
* @returns DisposalResult with counts and any errors encountered during disposal
|
|
1015
1085
|
*/
|
|
1016
1086
|
async disposeAll() {
|
|
1017
|
-
|
|
1018
|
-
|
|
1019
|
-
|
|
1020
|
-
|
|
1087
|
+
const result = {
|
|
1088
|
+
disposed: 0,
|
|
1089
|
+
failed: 0,
|
|
1090
|
+
succeeded: 0,
|
|
1091
|
+
errors: [],
|
|
1092
|
+
};
|
|
1093
|
+
// Collect all instances to dispose
|
|
1094
|
+
const instancesToDispose = [];
|
|
1095
|
+
for (const manager of Object.values(this.managers)) {
|
|
1096
|
+
if (manager.values) {
|
|
1097
|
+
instancesToDispose.push(...manager.values());
|
|
1098
|
+
}
|
|
1099
|
+
}
|
|
1100
|
+
// Dispose all instances and collect errors using disposeWithResult
|
|
1101
|
+
const disposalResults = await Promise.all(instancesToDispose.map(inst => (0, helpers_1.disposeWithResult)(inst)));
|
|
1102
|
+
for (const disposeResult of disposalResults) {
|
|
1103
|
+
if (disposeResult.disposed && !disposeResult.error) {
|
|
1104
|
+
result.disposed++;
|
|
1105
|
+
result.succeeded++;
|
|
1106
|
+
}
|
|
1107
|
+
else if (disposeResult.error) {
|
|
1108
|
+
result.failed++;
|
|
1109
|
+
result.errors.push({ error: disposeResult.error });
|
|
1110
|
+
// Log errors when diagnostics is enabled (for backward compatibility)
|
|
1111
|
+
if (this.options.enableDiagnostics) {
|
|
1112
|
+
console.error('Disposal error:', disposeResult.error);
|
|
1113
|
+
}
|
|
1114
|
+
}
|
|
1115
|
+
}
|
|
1116
|
+
// Clear all caches (managers are already empty after disposal iteration)
|
|
1117
|
+
for (const manager of Object.values(this.managers)) {
|
|
1118
|
+
manager.clear();
|
|
1119
|
+
}
|
|
1120
|
+
this.proxyCache.clear();
|
|
1121
|
+
this.initializerCache.clear();
|
|
1122
|
+
this.initializerAccessOrder.clear();
|
|
1123
|
+
this.initializerPromises.clear();
|
|
1124
|
+
return result;
|
|
1021
1125
|
}
|
|
1022
1126
|
/**
|
|
1023
1127
|
* Get detailed cache statistics for each service
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Container.js","sourceRoot":"","sources":["../../src/container/Container.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Container.js","sourceRoot":"","sources":["../../src/container/Container.ts"],"names":[],"mappings":";;;AAAA,uDAAoD;AACpD,uCAAuE;AACvE,yCAA+C;AAa/C,kEAAkE;AAElE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,kFAAkF;AAClF,2BAA2B;AAC3B,kFAAkF;AAElF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AACH,MAAa,SAAS;IA8KD;IACA;IA9KnB,8EAA8E;IAC9E,0BAA0B;IAC1B,8EAA8E;IAE9E;;;;OAIG;IACc,QAAQ,GAA0C,EAAE,CAAA;IAErE;;;;OAIG;IACc,GAAG,GAAG,IAAI,oCAAiB,EAGxC,CAAA;IAEJ;;;OAGG;IACc,YAAY,GAAG,IAAI,GAAG,EAGpC,CAAA;IAEH;;OAEG;IACK,YAAY,GAAkC,IAAI,CAAA;IAE1D;;OAEG;IACc,OAAO,CAA4B;IAEpD;;;OAGG;IACc,mBAAmB,GAAG,IAAI,GAAG,EAG3C,CAAA;IAEH,8EAA8E;IAC9E,oCAAoC;IACpC,8EAA8E;IAE9E,6DAA6D;IAE7D;;;OAGG;IACc,UAAU,GAAG,IAAI,GAAG,EAAe,CAAA;IAEpD;;;OAGG;IACc,iBAAiB,GAAG,IAAI,OAAO,EAAY,CAAA;IAE5D;;;;;OAKG;IACc,gBAAgB,GAAG,IAAI,GAAG,EAGxC,CAAA;IAEH;;;OAGG;IACc,sBAAsB,GAAG,IAAI,GAAG,EAAkB,CAAA;IAC3D,wBAAwB,GAAG,CAAC,CAAA;IAEpC,8EAA8E;IAC9E,yBAAyB;IACzB,8EAA8E;IAE9E;;;;OAIG;IACc,OAAO,GAAG,IAAI,WAAW,CAAC,CAAC,CAAC,CAAA;IAE7C;;OAEG;IACK,MAAM,CAAU,MAAM,GAAG;QAC/B,IAAI,EAAE,CAAC;QACP,MAAM,EAAE,CAAC;QACT,OAAO,EAAE,CAAC;QACV,QAAQ,EAAE,CAAC;QACX,OAAO,EAAE,CAAC;QACV,SAAS,EAAE,CAAC;QACZ,MAAM,EAAE,CAAC;QACT,SAAS,EAAE,CAAC;QACZ,YAAY,EAAE,CAAC;KACP,CAAA;IAEV;;;OAGG;IACK,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,gBAAgB,GAAG,GAAG,CAAC,CAAA;IAEpE;;;OAGG;IACK,GAAG,CAAC,GAAW;QACrB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;YAChC,OAAM;QACR,CAAC;QAED,iEAAiE;QACjE,IACE,IAAI,CAAC,gBAAgB,GAAG,IAAI;YAC5B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,gBAAgB,EAC1C,CAAC;YACD,mEAAmE;YACnE,IAAI,CAAC,YAAY,EAAE,CAAA;YACnB,IAAI,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;gBACnC,MAAM,WAAW,GAAG;oBAClB,WAAW;oBACX,aAAa;oBACb,mBAAmB;oBACnB,iBAAiB;oBACjB,gBAAgB;oBAChB,sBAAsB;oBACtB,QAAQ;iBACT,CAAA;gBACD,OAAO,CAAC,IAAI,CACV,+DACE,WAAW,CAAC,GAAG,CAAC,IAAI,SACtB,aAAa,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CACjC,CAAA;YACH,CAAC;QACH,CAAC;QAED,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IACrB,CAAC;IAED,8EAA8E;IAC9E,mCAAmC;IACnC,8EAA8E;IAE9E;;;;;;;;;;;;;OAaG;IACH,YACmB,SAAe,EACf,WAG8B,EAC/C,UAA4B,EAAE;QALb,cAAS,GAAT,SAAS,CAAM;QACf,gBAAW,GAAX,WAAW,CAGmB;QAG/C,wBAAwB;QACxB,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,GAAG,CAAA;QAC1C,IAAI,CAAC,OAAO,GAAG;YACb,SAAS;YACT,uBAAuB,EAAE,OAAO,CAAC,uBAAuB,IAAI,SAAS;YACrE,aAAa,EAAE,KAAK;YACpB,iBAAiB,EAAE,KAAK;YACxB,6BAA6B,EAAE,KAAK;YACpC,sBAAsB,EAAE,SAAS;YACjC,GAAG,OAAO;SACmB,CAAA;QAE/B,mDAAmD;QACnD,IAAI,CAAC,mBAAmB,EAAE,CAAA;QAE1B,kDAAkD;QAClD,IAAI,CAAC,4BAA4B,EAAE,CAAA;IACrC,CAAC;IAED,8EAA8E;IAC9E,yBAAyB;IACzB,8EAA8E;IAE9E;;;;OAIG;IACK,UAAU,CAAc,GAAW;QACzC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACxB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,IAAA,6BAAkB,EAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;QACpE,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAoB,CAAA;IAC9C,CAAC;IAED,0EAA0E;IAE1E,8EAA8E;IAC9E,qCAAqC;IACrC,8EAA8E;IAE9E,iFAAiF;IAEjF;;;OAGG;IACK,mBAAmB;QACzB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC,CAAA;IACxC,CAAC;IAED,2DAA2D;IAE3D;;;OAGG;IACK,aAAa,CAAC,GAA4B,EAAE,IAAc;QAChE,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,GAAG,CAAC,CAAA;YAE1D,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;gBAChC,gDAAgD;gBAChD,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;gBACjC,IAAI,CAAC,YAAY,CAAC,GAAG,CACnB,OAAO,EACP,KAA6C,CAC9C,CAAA;YACH,CAAC;iBAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBACvD,yCAAyC;gBACzC,IAAI,CAAC,aAAa,CAAC,KAAgC,EAAE,OAAO,CAAC,CAAA;YAC/D,CAAC;QACH,CAAC;IACH,CAAC;IAED,8EAA8E;IAC9E,0BAA0B;IAC1B,8EAA8E;IAE9E;;;;;;;;;;OAUG;IACH,IAAI,OAAO;QACT,2EAA2E;QAC3E,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,kBAAkB,EAA4B,CAAA;QACzE,CAAC;QACD,OAAO,IAAI,CAAC,YAAY,CAAA;IAC1B,CAAC;IAED;;;;;;;;;;OAUG;IACK,kBAAkB,CAAC,IAAI,GAAG,EAAE;QAClC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9B,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;YAClC,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAClC,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,KAAK,CACrB,EAAE,EAAE,kDAAkD;QACtD;YACE,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE;gBACf,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;gBAC/D,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;gBAE9C,IAAI,OAAO,EAAE,CAAC;oBACZ,oEAAoE;oBACpE,OAAO,CAAC,EAAU,EAAE,GAAG,IAAe,EAAE,EAAE;wBACxC,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;wBACpC,IAAI,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;wBAEtB,IAAI,CAAC,IAAI,EAAE,CAAC;4BACV,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;4BACjC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;4BAClC,IAAI,GAAG,IAAA,qBAAW,EAAC,OAAO,EAAE,IAAW,CAAC,CAAA;4BACxC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAA;wBACnB,CAAC;6BAAM,CAAC;4BACN,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;wBACjC,CAAC;wBAED,OAAO,IAAI,CAAA;oBACb,CAAC,CAAA;gBACH,CAAC;gBACD,iEAAiE;gBACjE,OAAO,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAA;YACzC,CAAC;SACF,CACF,CAAA;QAED,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QAChC,OAAO,KAAK,CAAA;IACd,CAAC;IAED,8EAA8E;IAC9E,+BAA+B;IAC/B,8EAA8E;IAE9E;;;;OAIG;IACH,KAAK,CAAC,cAAc,CAClB,SAA4C,EAC5C,cAA8B,EAC9B,EAAoB;QAEpB,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC,CAAA;IAC9D,CAAC;IAED;;;;OAIG;IACH,kBAAkB,CAChB,SAA4C,EAC5C,cAA8B,EAC9B,EAAW;QAEX,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAA;QAChC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAA;QACjD,IAAI,CAAC;YACH,OAAO,EAAE,EAAE,CAAA;QACb,CAAC;gBAAS,CAAC;YACT,IAAI,IAAI,EAAE,CAAC;gBACT,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;YAC1B,CAAC;iBAAM,IAAI,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;gBACjC,0DAA0D;gBAC1D,iFAAiF;gBACjF,qEAAqE;gBACrE,CAAC;gBAAC,IAAI,CAAC,GAAW,CAAC,OAAO,EAAE,CAAA;YAC9B,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;;;;;;;OAUG;IACH,IAAI,OAAO;QACT,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAA;QACjC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CACb,mFAAmF,CACpF,CAAA;QACH,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QAEnC,OAAO,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,SAAS,CAA6B,CAAA;IAC7E,CAAC;IAED;;;;;;;;;;;OAWG;IACK,kBAAkB,CAAC,GAAQ,EAAE,OAA4B,EAAE;QACjE,0CAA0C;QAC1C,IAAI,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACpC,OAAO,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACxC,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,GAAG,EAAE;YAC3B,GAAG,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;gBACpB,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,IAAI,CAAC,CAAA;gBAC5D,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;gBAEvC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;oBACxB,oEAAoE;oBACpE,IAAI,IAAI,IAAI,MAAM,EAAE,CAAC;wBACnB,6EAA6E;wBAC7E,OAAO,SAAS,CAAA;oBAClB,CAAC;oBAED,mEAAmE;oBACnE,qDAAqD;oBACrD,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;wBAC7B,OAAO,SAAS,CAAA;oBAClB,CAAC;oBAED,4DAA4D;oBAC5D,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;wBACpB,OAAO,SAAS,CAAA;oBAClB,CAAC;oBAED,yDAAyD;oBACzD,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;oBACrC,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;oBAChE,MAAM,IAAI,KAAK,CACb,YAAY,WAAW,qBAAqB;wBAC1C,uBAAuB,SAAS,EAAE,CACrC,CAAA;gBACH,CAAC;gBAED,0CAA0C;gBAC1C,sFAAsF;gBACtF,IACE,OAAO,KAAK,KAAK,QAAQ;oBACzB,KAAK,KAAK,IAAI;oBACd,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;oBACrB,CAAC,CAAC,KAAK,YAAY,OAAO,CAAC;oBAC3B,OAAO,KAAK,CAAC,IAAI,KAAK,UAAU;oBAChC,wEAAwE;oBACxE,CAAC,CACC,SAAS,IAAI,KAAK;wBAClB,aAAa,IAAI,KAAK;wBACtB,UAAU,IAAI,KAAK,CACpB;oBACD,uEAAuE;oBACvE,CAAC,CAAC,SAAS,IAAI,KAAK,IAAI,QAAQ,IAAI,KAAK,IAAI,WAAW,IAAI,KAAK,CAAC;oBAClE,2EAA2E;oBAC3E,CAAC,CAAC,MAAM,IAAI,KAAK,CAAC;oBAClB,qCAAqC;oBACrC,CAAC,CAAC,OAAO,IAAI,KAAK,IAAI,WAAW,IAAI,KAAK,CAAC,EAC3C,CAAC;oBACD,qCAAqC;oBACrC,OAAO,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;gBAChD,CAAC;gBAED,+DAA+D;gBAC/D,OAAO,KAAK,CAAA;YACd,CAAC;SACF,CAAC,CAAA;QAEF,uDAAuD;QACvD,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;QACtC,OAAO,KAAK,CAAA;IACd,CAAC;IAED,8EAA8E;IAC9E,2BAA2B;IAC3B,8EAA8E;IAE9E;;;;;OAKG;IACK,UAAU,CAAC,GAAW;QAC5B,IAAI,IAAI,GAAG,IAAI,CAAA;QACf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACpC,IAAI,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,IAAI,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;QAC/C,CAAC;QACD,OAAO,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;IAClC,CAAC;IAED;;;OAGG;IACK,oBAAoB,CAAC,IAAoB;QAC/C,MAAM,CAAC,GAAG,IAAW,CAAA;QACrB,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;YACjC,OAAO,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,IAAI,EAAE,CAAA;QACjD,CAAC;QACD,+CAA+C;QAC/C,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;YACjC,OAAO,eAAe,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAA;QAC/C,CAAC;QAAC,MAAM,CAAC;YACP,gCAAgC;YAChC,OAAO,aAAa,IAAI,CAAC,GAAG,EAAE,EAAE,CAAA;QAClC,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,4BAA4B;QAClC,IAAI,IAAI,CAAC,gBAAgB,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,uBAAuB,EAAE,CAAC;YACtE,OAAM;QACR,CAAC;QAED,6CAA6C;QAC7C,IAAI,MAAM,GAAkB,IAAI,CAAA;QAChC,IAAI,OAAO,GAAG,MAAM,CAAC,iBAAiB,CAAA;QAEtC,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,sBAAsB,EAAE,CAAC;YACtD,IAAI,IAAI,GAAG,OAAO,EAAE,CAAC;gBACnB,OAAO,GAAG,IAAI,CAAA;gBACd,MAAM,GAAG,GAAG,CAAA;YACd,CAAC;QACH,CAAC;QAED,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;YACpC,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QAC5C,CAAC;IACH,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,oBAAoB,CAChC,IAAoB;QAEpB,MAAM,QAAQ,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAA;QAEhD,iEAAiE;QACjE,MAAM,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QAC3D,IAAI,eAAe,EAAE,CAAC;YACpB,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;YACpC,uCAAuC;YACvC,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,wBAAwB,CAAC,CAAA;YAC1E,OAAO,eAAe,CAAA;QACxB,CAAC;QAED,iEAAiE;QACjE,MAAM,eAAe,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QAC9D,IAAI,eAAe,EAAE,CAAC;YACpB,OAAO,MAAM,eAAe,CAAA;QAC9B,CAAC;QAED,kEAAkE;QAClE,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;QACxD,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAA;QAEnD,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,WAAW,CAAA;YACnC,0CAA0C;YAC1C,IAAI,CAAC,4BAA4B,EAAE,CAAA;YACnC,kCAAkC;YAClC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAA;YAC9C,6BAA6B;YAC7B,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,wBAAwB,CAAC,CAAA;YAC1E,OAAO,SAAS,CAAA;QAClB,CAAC;gBAAS,CAAC;YACT,qCAAqC;YACrC,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QAC3C,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,KAAK,CAAC,SAAS,CACb,IAAoB,EACpB,EAAqB;QAErB,IAAI,CAAC;YACH,iEAAiE;YACjE,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAA;YAEvD,mDAAmD;YACnD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CACtC,SAAS,EACT,IAAI,EACJ,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,SAAS,CAAC,CAC9B,CAAA;YAED,2EAA2E;YAC3E,iEAAiE;YACjE,OAAO,EAAE,SAAS,EAAE,SAAqC,EAAE,MAAM,EAAE,CAAA;QACrE,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;gBACnC,OAAO,CAAC,KAAK,CAAC,6BAA6B,EAAE,GAAG,CAAC,CAAA;YACnD,CAAC;YACD,MAAM,GAAG,CAAA;QACX,CAAC;IACH,CAAC;IAED,8EAA8E;IAC9E,mBAAmB;IACnB,8EAA8E;IAE9E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiCG;IACH,KAAK,CAAC,cAAc,CAClB,WAGE,EACF,UAA4C,EAAE;QAE9C,MAAM,EACJ,WAAW,GAAG,EAAE,EAChB,eAAe,GAAG,IAAI,EACtB,OAAO,EACP,UAAU,GACX,GAAG,OAAO,CAAA;QAEX,MAAM,OAAO,GAA+C,EAAE,CAAA;QAC9D,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,CAAA;QAChC,IAAI,SAAS,GAAG,CAAC,CAAA;QACjB,IAAI,WAAW,GAAG,KAAK,CAAA;QAEvB,uDAAuD;QACvD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,IAAI,WAAW,EAAE,CAAC;YAC5C,mEAAmE;YACnE,IAAI,WAAW,EAAE,CAAC;gBAChB,MAAK;YACP,CAAC;YAED,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,CAAA;YAEnD,MAAM,aAAa,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE;gBACzD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;gBAE5B,IAAI,CAAC;oBACH,6BAA6B;oBAC7B,IAAI,gBAAgB,GAAG,IAAI,CAAC,SAAS,CACnC,QAAiC,EACjC,EAAE,CACH,CAAA;oBAED,IAAI,OAAO,EAAE,CAAC;wBACZ,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;4BAC9B,gBAAgB;4BAChB,IAAI,OAAO,CAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CAC/B,UAAU,CACR,GAAG,EAAE,CACH,MAAM,CAAC,IAAI,KAAK,CAAC,2BAA2B,OAAO,IAAI,CAAC,CAAC,EAC3D,OAAO,CACR,CACF;yBACF,CAAC,CAAA;oBACJ,CAAC;oBAED,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,gBAAgB,CAAA;oBACpD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;oBAE1B,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;oBAEpC,OAAO;wBACL,QAAQ;wBACR,MAAM,EAAE,SAAkB;wBAC1B,SAAS;wBACT,MAAM;wBACN,OAAO,EAAE;4BACP,SAAS;4BACT,OAAO;4BACP,QAAQ,EAAE,OAAO,GAAG,SAAS;yBAC9B;qBACF,CAAA;gBACH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;oBAE1B,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;oBAEvC,IAAI,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;wBACnC,OAAO,CAAC,KAAK,CAAC,oCAAoC,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAA;oBACtE,CAAC;oBAED,MAAM,MAAM,GAA6C;wBACvD,QAAQ;wBACR,MAAM,EAAE,OAAO;wBACf,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;wBAChE,OAAO,EAAE;4BACP,SAAS;4BACT,OAAO;4BACP,QAAQ,EAAE,OAAO,GAAG,SAAS;yBAC9B;qBACF,CAAA;oBAED,IAAI,CAAC,eAAe,EAAE,CAAC;wBACrB,uCAAuC;wBACvC,WAAW,GAAG,IAAI,CAAA;oBACpB,CAAC;oBAED,OAAO,MAAM,CAAA;gBACf,CAAC;wBAAS,CAAC;oBACT,SAAS,EAAE,CAAA;oBACX,UAAU,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAA;gBAC1C,CAAC;YACH,CAAC,CAAC,CAAA;YAEF,0DAA0D;YAC1D,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAA;YAE5D,0CAA0C;YAC1C,KAAK,MAAM,aAAa,IAAI,YAAY,EAAE,CAAC;gBACzC,IAAI,aAAa,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;oBACzC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;gBACnC,CAAC;qBAAM,IAAI,eAAe,EAAE,CAAC;oBAC3B,oEAAoE;oBACpE,OAAO,CAAC,IAAI,CAAC;wBACX,QAAQ,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ;wBAC9C,MAAM,EAAE,OAAO;wBACf,KAAK,EAAE,aAAa,CAAC,MAAM;wBAC3B,OAAO,EAAE;4BACP,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;4BACrB,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE;4BACnB,QAAQ,EAAE,CAAC;yBACZ;qBACF,CAAC,CAAA;gBACJ,CAAC;YACH,CAAC;YAED,kDAAkD;YAClD,IAAI,CAAC,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,OAAO,CAAC,EAAE,CAAC;gBAChE,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,OAAO,CAAC,CAAA;gBAC3D,MAAM,WAAW,EAAE,KAAK,IAAI,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAA;YACjE,CAAC;QACH,CAAC;QAED,OAAO,OAAO,CAAA;IAChB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,KAAK,CAAC,qBAAqB,CACzB,SAAmB,EACnB,MAAe,EACf,WAAW,GAAG,KAAK;QAEnB,MAAM,MAAM,GAA4B;YACtC,KAAK,EAAE,SAAS,CAAC,MAAM;YACvB,SAAS,EAAE,CAAC;YACZ,MAAM,EAAE,CAAC;YACT,MAAM,EAAE,EAAE;SACX,CAAA;QAED,yDAAyD;QACzD,MAAM,oBAAoB,GAAG,SAAS,CAAC,GAAG,CAAC,KAAK,EAAC,QAAQ,EAAC,EAAE;YAC1D,IAAI,CAAC;gBACH,IAAI,WAAW,EAAE,CAAC;oBAChB,MAAM,IAAI,CAAC,2BAA2B,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;gBAC1D,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,uBAAuB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;gBAChD,CAAC;gBACD,MAAM,CAAC,SAAS,EAAE,CAAA;YACpB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,MAAM,EAAE,CAAA;gBACf,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;oBACjB,GAAG,EAAE,QAAQ;oBACb,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;iBACjE,CAAC,CAAA;gBAEF,IAAI,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;oBACnC,OAAO,CAAC,KAAK,CAAC,+BAA+B,QAAQ,GAAG,EAAE,KAAK,CAAC,CAAA;gBAClE,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,MAAM,OAAO,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAA;QAE9C,OAAO,MAAM,CAAA;IACf,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,KAAK,CAAC,sBAAsB,CAC1B,YAAsB,EACtB,MAAe,EACf,WAAW,GAAG,KAAK;QAEnB,MAAM,MAAM,GAA4B;YACtC,KAAK,EAAE,YAAY,CAAC,MAAM;YAC1B,SAAS,EAAE,CAAC;YACZ,MAAM,EAAE,CAAC;YACT,MAAM,EAAE,EAAE;SACX,CAAA;QAED,MAAM,oBAAoB,GAAG,YAAY,CAAC,GAAG,CAAC,KAAK,EAAC,WAAW,EAAC,EAAE;YAChE,IAAI,CAAC;gBACH,IAAI,WAAW,EAAE,CAAC;oBAChB,MAAM,IAAI,CAAC,4BAA4B,CAAC,WAAW,EAAE,MAAM,CAAC,CAAA;gBAC9D,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,wBAAwB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAA;gBACpD,CAAC;gBACD,MAAM,CAAC,SAAS,EAAE,CAAA;YACpB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,MAAM,EAAE,CAAA;gBACf,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;oBACjB,GAAG,EAAE,WAAW;oBAChB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;iBACjE,CAAC,CAAA;gBAEF,IAAI,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;oBACnC,OAAO,CAAC,KAAK,CAAC,gCAAgC,WAAW,GAAG,EAAE,KAAK,CAAC,CAAA;gBACtE,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,MAAM,OAAO,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAA;QAE9C,OAAO,MAAM,CAAA;IACf,CAAC;IAED,8EAA8E;IAC9E,+BAA+B;IAC/B,8EAA8E;IAE9E;;;OAGG;IACH,UAAU;QACR,OAAO;YACL,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC;YAC9C,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC;YAClD,iBAAiB,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC;YACzD,eAAe,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC;YACxD,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC;YACtD,oBAAoB,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC;YAC9D,eAAe,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC;YACzD,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC;SACzD,CAAA;IACH,CAAC;IAED;;;OAGG;IACH,YAAY;QACV,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACpB,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IACnC,CAAC;IAED;;;OAGG;IACH,WAAW;QACT,4DAA4D;QAC5D,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YACnD,mDAAmD;YACnD,IAAI,OAAQ,OAAe,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;gBAClD,MAAM,IAAI,GAAI,OAAe,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,CAAA;gBAC9C,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;oBACxB,IAAA,qBAAW,EAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;wBAC5B,IAAI,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;4BACnC,OAAO,CAAC,IAAI,CAAC,mCAAmC,EAAE,GAAG,CAAC,CAAA;wBACxD,CAAC;oBACH,CAAC,CAAC,CAAA;gBACJ,CAAC;YACH,CAAC;YACD,OAAO,CAAC,KAAK,EAAE,CAAA;QACjB,CAAC;QAED,oCAAoC;QACpC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAA;QACvB,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAA;QAC7B,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,CAAA;QACnC,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAA;QAEhC,mFAAmF;IACrF,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,gBAAgB;QACpB,MAAM,MAAM,GAAmB;YAC7B,QAAQ,EAAE,CAAC;YACX,MAAM,EAAE,CAAC;YACT,SAAS,EAAE,CAAC;YACZ,MAAM,EAAE,EAAE;SACX,CAAA;QAED,mCAAmC;QACnC,MAAM,kBAAkB,GAAc,EAAE,CAAA;QACxC,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YACnD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACnB,kBAAkB,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;YAC9C,CAAC;QACH,CAAC;QAED,+DAA+D;QAC/D,MAAM,eAAe,GAAG,MAAM,OAAO,CAAC,GAAG,CACvC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAA,2BAAiB,EAAC,IAAI,CAAC,CAAC,CACxD,CAAA;QAED,KAAK,MAAM,aAAa,IAAI,eAAe,EAAE,CAAC;YAC5C,IAAI,aAAa,CAAC,QAAQ,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;gBACnD,MAAM,CAAC,QAAQ,EAAE,CAAA;gBACjB,MAAM,CAAC,SAAS,EAAE,CAAA;YACpB,CAAC;iBAAM,IAAI,aAAa,CAAC,KAAK,EAAE,CAAC;gBAC/B,MAAM,CAAC,MAAM,EAAE,CAAA;gBACf,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,KAAK,EAAE,CAAC,CAAA;gBAClD,sEAAsE;gBACtE,IAAI,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;oBACnC,OAAO,CAAC,KAAK,CAAC,iBAAiB,EAAE,aAAa,CAAC,KAAK,CAAC,CAAA;gBACvD,CAAC;YACH,CAAC;QACH,CAAC;QAED,qBAAqB;QACrB,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YACnD,OAAO,CAAC,KAAK,EAAE,CAAA;QACjB,CAAC;QAED,oCAAoC;QACpC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAA;QACvB,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAA;QAC7B,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,CAAA;QACnC,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAA;QAEhC,mFAAmF;QACnF,OAAO,MAAM,CAAA;IACf,CAAC;IAED,8EAA8E;IAC9E,oCAAoC;IACpC,8EAA8E;IAE9E;;;OAGG;IACK,4BAA4B;QAClC,IACE,CAAC,IAAI,CAAC,OAAO,CAAC,6BAA6B;YAC3C,CAAC,IAAI,CAAC,OAAO,CAAC,sBAAsB,EACpC,CAAC;YACD,OAAM;QACR,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAA;QAEvD,sDAAsD;QACtD,WAAW,CAAC,EAAE,CAAC,mBAAmB,EAAE,CAAC,QAAgB,EAAE,MAAe,EAAE,EAAE;YACxE,IAAI,CAAC,uBAAuB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;QAChD,CAAC,CAAC,CAAA;QAEF,WAAW,CAAC,EAAE,CACZ,oBAAoB,EACpB,CAAC,WAAmB,EAAE,MAAe,EAAE,EAAE;YACvC,IAAI,CAAC,wBAAwB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAA;QACpD,CAAC,CACF,CAAA;QAED,WAAW,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC,MAAe,EAAE,EAAE;YACnD,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAA;QACnC,CAAC,CAAC,CAAA;QAEF,iCAAiC;QACjC,WAAW,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,KAAY,EAAE,EAAE;YAC7C,IAAI,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;gBACnC,OAAO,CAAC,IAAI,CAAC,6CAA6C,EAAE,KAAK,CAAC,CAAA;YACpE,CAAC;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,2BAA2B,CAC/B,QAAgB,EAChB,MAAe;QAEf,2BAA2B;QAC3B,IAAI,CAAC,uBAAuB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;QAE9C,qCAAqC;QACrC,IACE,IAAI,CAAC,OAAO,CAAC,6BAA6B;YAC1C,IAAI,CAAC,OAAO,CAAC,sBAAsB,EACnC,CAAC;YACD,MAAM,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,gBAAgB,CACxD,QAAQ,EACR,MAAM,CACP,CAAA;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,4BAA4B,CAChC,WAAmB,EACnB,MAAe;QAEf,2BAA2B;QAC3B,IAAI,CAAC,wBAAwB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAA;QAElD,qCAAqC;QACrC,IACE,IAAI,CAAC,OAAO,CAAC,6BAA6B;YAC1C,IAAI,CAAC,OAAO,CAAC,sBAAsB,EACnC,CAAC;YACD,MAAM,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,iBAAiB,CACzD,WAAW,EACX,MAAM,CACP,CAAA;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,wBAAwB,CAAC,MAAe;QAC5C,2BAA2B;QAC3B,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAA;QAEjC,qCAAqC;QACrC,IACE,IAAI,CAAC,OAAO,CAAC,6BAA6B;YAC1C,IAAI,CAAC,OAAO,CAAC,sBAAsB,EACnC,CAAC;YACD,MAAM,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,aAAa,CAAC,MAAM,CAAC,CAAA;QACjE,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,uBAAuB,CAAC,QAAgB,EAAE,MAAe;QAC/D,IAAI,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;YACnC,OAAO,CAAC,GAAG,CACT,sCAAsC,QAAQ,EAAE,EAChD,MAAM,CAAC,CAAC,CAAC,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,CAC5B,CAAA;QACH,CAAC;QAED,8DAA8D;QAC9D,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YACnD,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;YACtC,IAAI,QAAQ,EAAE,CAAC;gBACb,IAAA,qBAAW,EAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;oBAChC,IAAI,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;wBACnC,OAAO,CAAC,IAAI,CAAC,kCAAkC,EAAE,GAAG,CAAC,CAAA;oBACvD,CAAC;gBACH,CAAC,CAAC,CAAA;YACJ,CAAC;YACD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QAC1B,CAAC;QAED,0CAA0C;QAC1C,KAAK,MAAM,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,EAAE,CAAC;YACzD,IAAI,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAChC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;YACxC,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACK,wBAAwB,CAAC,WAAmB,EAAE,MAAe;QACnE,IAAI,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;YACnC,OAAO,CAAC,GAAG,CACT,uCAAuC,WAAW,EAAE,EACpD,MAAM,CAAC,CAAC,CAAC,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,CAC5B,CAAA;QACH,CAAC;QAED,mEAAmE;QACnE,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAA;QAC1C,IAAI,OAAO,EAAE,CAAC;YACZ,oCAAoC;YACpC,IAAI,OAAQ,OAAe,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;gBAClD,MAAM,IAAI,GAAI,OAAe,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,CAAA;gBAC9C,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;oBACxB,IAAA,qBAAW,EAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;wBAC5B,IAAI,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;4BACnC,OAAO,CAAC,IAAI,CAAC,mCAAmC,EAAE,GAAG,CAAC,CAAA;wBACxD,CAAC;oBACH,CAAC,CAAC,CAAA;gBACJ,CAAC;YACH,CAAC;YACD,OAAO,CAAC,KAAK,EAAE,CAAA;QACjB,CAAC;IACH,CAAC;IAED;;OAEG;IACK,oBAAoB,CAAC,MAAe;QAC1C,IAAI,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;YACnC,OAAO,CAAC,GAAG,CACT,iCAAiC,EACjC,MAAM,CAAC,CAAC,CAAC,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,CAC5B,CAAA;QACH,CAAC;QAED,IAAI,CAAC,WAAW,EAAE,CAAA;IACpB,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,UAAU;QACd,MAAM,MAAM,GAAmB;YAC7B,QAAQ,EAAE,CAAC;YACX,MAAM,EAAE,CAAC;YACT,SAAS,EAAE,CAAC;YACZ,MAAM,EAAE,EAAE;SACX,CAAA;QAED,mCAAmC;QACnC,MAAM,kBAAkB,GAAc,EAAE,CAAA;QACxC,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YACnD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACnB,kBAAkB,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;YAC9C,CAAC;QACH,CAAC;QAED,mEAAmE;QACnE,MAAM,eAAe,GAAG,MAAM,OAAO,CAAC,GAAG,CACvC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAA,2BAAiB,EAAC,IAAI,CAAC,CAAC,CACxD,CAAA;QAED,KAAK,MAAM,aAAa,IAAI,eAAe,EAAE,CAAC;YAC5C,IAAI,aAAa,CAAC,QAAQ,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;gBACnD,MAAM,CAAC,QAAQ,EAAE,CAAA;gBACjB,MAAM,CAAC,SAAS,EAAE,CAAA;YACpB,CAAC;iBAAM,IAAI,aAAa,CAAC,KAAK,EAAE,CAAC;gBAC/B,MAAM,CAAC,MAAM,EAAE,CAAA;gBACf,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,KAAK,EAAE,CAAC,CAAA;gBAClD,sEAAsE;gBACtE,IAAI,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;oBACnC,OAAO,CAAC,KAAK,CAAC,iBAAiB,EAAE,aAAa,CAAC,KAAK,CAAC,CAAA;gBACvD,CAAC;YACH,CAAC;QACH,CAAC;QAED,yEAAyE;QACzE,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YACnD,OAAO,CAAC,KAAK,EAAE,CAAA;QACjB,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAA;QACvB,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAA;QAC7B,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,CAAA;QACnC,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAA;QAEhC,OAAO,MAAM,CAAA;IACf,CAAC;IAED;;;OAGG;IACH,aAAa;QACX,MAAM,KAAK,GAAuD,EAAE,CAAA;QAEpE,KAAK,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC3D,MAAM,UAAU,GAAG,OAAc,CAAA;YACjC,MAAM,IAAI,GACR,OAAO,UAAU,CAAC,IAAI,KAAK,UAAU;gBACnC,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE;gBACnB,CAAC,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,CAAA;YAE1B,KAAK,CAAC,GAAG,CAAC,GAAG;gBACX,IAAI;gBACJ,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS;aAChC,CAAA;QACH,CAAC;QAED,OAAO,KAAK,CAAA;IACd,CAAC;IAED;;;OAGG;IACH,mBAAmB;QACjB,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE,CAAA;QACvC,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CACrD,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,EAC9B,CAAC,CACF,CAAA;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAChD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QACpD,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QACzD,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;QAE/D,OAAO;YACL,GAAG,IAAI,CAAC,UAAU,EAAE;YACpB,UAAU;YACV,cAAc;YACd,aAAa,EAAE,CAAC,EAAE,8BAA8B;YAChD,cAAc,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI;YACpC,gBAAgB,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI;YACxC,oBAAoB,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI;YAChD,uBAAuB,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI;YACtD,aAAa,EAAE,IAAI,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7D,iBAAiB,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG,WAAW,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;SAC1E,CAAA;IACH,CAAC;IAED,8EAA8E;IAC9E,2BAA2B;IAC3B,8EAA8E;IAE9E;;;;;;;;;;;OAWG;IACH,gBAAgB;QACd,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,SAAS,CAAA;IAC1C,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,UAAU,CAAC,WAAmB;QAC5B,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAA;QACjC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,KAAK,CAAA;QACd,CAAC;QAED,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACpC,IAAI,OAAO,GAAQ,KAAK,CAAC,SAAS,CAAA;QAElC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IACE,OAAO,OAAO,KAAK,QAAQ;gBAC3B,OAAO,KAAK,IAAI;gBAChB,CAAC,CAAC,IAAI,IAAI,OAAO,CAAC,EAClB,CAAC;gBACD,OAAO,KAAK,CAAA;YACd,CAAC;YACD,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;QACzB,CAAC;QAED,OAAO,OAAO,KAAK,SAAS,CAAA;IAC9B,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,wBAAwB;QACtB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAA;QACjC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CACb,mFAAmF,CACpF,CAAA;QACH,CAAC;QAED,OAAO,KAAK,CAAC,cAAc,CAAA;IAC7B,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,kBAAkB;QAChB,MAAM,QAAQ,GAAG,IAAI,CAAC,wBAAwB,EAAE,CAAA;QAEhD,0DAA0D;QAC1D,IAAI,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,IAAI,IAAI,QAAQ,EAAE,CAAC;YACjE,MAAM,EAAE,GAAI,QAAgB,CAAC,EAAE,CAAA;YAC/B,OAAO,OAAO,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;QACjD,CAAC;QAED,OAAO,SAAS,CAAA;IAClB,CAAC;IAED;;;;;OAKG;IACH,oBAAoB;QAClB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAA;QACjC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,EAAE,CAAA;QACX,CAAC;QAED,MAAM,QAAQ,GAAa,EAAE,CAAA;QAC7B,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;QAC/C,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED;;;OAGG;IACK,eAAe,CACrB,GAAsC,EACtC,QAAkB,EAClB,OAAiB,EAAE;QAEnB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YAC/C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,SAAQ,CAAC,8CAA8C;YACzD,CAAC;YAED,MAAM,WAAW,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,CAAC,CAAA;YAElC,IACE,OAAO,KAAK,KAAK,QAAQ;gBACzB,KAAK,KAAK,IAAI;gBACd,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EACrB,CAAC;gBACD,iCAAiC;gBACjC,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAA;YACpD,CAAC;iBAAM,CAAC;gBACN,6BAA6B;gBAC7B,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;YACtC,CAAC;QACH,CAAC;IACH,CAAC;;AA78CH,8BA88CC"}
|
|
@@ -20,6 +20,17 @@ export declare function instantiate<T, P extends readonly unknown[]>(factory: Fa
|
|
|
20
20
|
* Supports both sync and async disposal patterns
|
|
21
21
|
*
|
|
22
22
|
* @param obj - Object to dispose
|
|
23
|
-
* @returns Promise that resolves when disposal is complete
|
|
23
|
+
* @returns Promise that resolves when disposal is complete (for backward compatibility)
|
|
24
24
|
*/
|
|
25
25
|
export declare function safeDispose(obj: unknown): Promise<void>;
|
|
26
|
+
/**
|
|
27
|
+
* Dispose of an object and return any error that occurred
|
|
28
|
+
* Unlike safeDispose, this function returns the error for aggregation
|
|
29
|
+
*
|
|
30
|
+
* @param obj - Object to dispose
|
|
31
|
+
* @returns Object with disposed flag and optional error
|
|
32
|
+
*/
|
|
33
|
+
export declare function disposeWithResult(obj: unknown): Promise<{
|
|
34
|
+
disposed: boolean;
|
|
35
|
+
error?: Error;
|
|
36
|
+
}>;
|
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.isClass = void 0;
|
|
4
4
|
exports.instantiate = instantiate;
|
|
5
5
|
exports.safeDispose = safeDispose;
|
|
6
|
+
exports.disposeWithResult = disposeWithResult;
|
|
6
7
|
/**
|
|
7
8
|
* Fast class detection helper that avoids try/catch in hot path
|
|
8
9
|
* Detects ES6 classes by checking for 'class ' prefix in function string
|
|
@@ -37,7 +38,7 @@ function instantiate(factory, params) {
|
|
|
37
38
|
* Supports both sync and async disposal patterns
|
|
38
39
|
*
|
|
39
40
|
* @param obj - Object to dispose
|
|
40
|
-
* @returns Promise that resolves when disposal is complete
|
|
41
|
+
* @returns Promise that resolves when disposal is complete (for backward compatibility)
|
|
41
42
|
*/
|
|
42
43
|
async function safeDispose(obj) {
|
|
43
44
|
try {
|
|
@@ -53,4 +54,28 @@ async function safeDispose(obj) {
|
|
|
53
54
|
}
|
|
54
55
|
}
|
|
55
56
|
}
|
|
57
|
+
/**
|
|
58
|
+
* Dispose of an object and return any error that occurred
|
|
59
|
+
* Unlike safeDispose, this function returns the error for aggregation
|
|
60
|
+
*
|
|
61
|
+
* @param obj - Object to dispose
|
|
62
|
+
* @returns Object with disposed flag and optional error
|
|
63
|
+
*/
|
|
64
|
+
async function disposeWithResult(obj) {
|
|
65
|
+
try {
|
|
66
|
+
const d = obj?.dispose;
|
|
67
|
+
if (typeof d === 'function') {
|
|
68
|
+
await d.call(obj);
|
|
69
|
+
return { disposed: true };
|
|
70
|
+
}
|
|
71
|
+
// No dispose method - consider it successfully disposed
|
|
72
|
+
return { disposed: true };
|
|
73
|
+
}
|
|
74
|
+
catch (error) {
|
|
75
|
+
return {
|
|
76
|
+
disposed: false,
|
|
77
|
+
error: error instanceof Error ? error : new Error(String(error)),
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
}
|
|
56
81
|
//# sourceMappingURL=helpers.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/container/helpers.ts"],"names":[],"mappings":";;;AAoBA,kCAkBC;AASD,kCAYC;
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/container/helpers.ts"],"names":[],"mappings":";;;AAoBA,kCAkBC;AASD,kCAYC;AASD,8CAiBC;AAnFD;;;;GAIG;AACI,MAAM,OAAO,GAAG,CAAC,EAAW,EAAkC,EAAE,CACrE,OAAO,EAAE,KAAK,UAAU;IACxB,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAA;AAF1C,QAAA,OAAO,WAEmC;AAEvD;;;;;;;;GAQG;AACH,SAAgB,WAAW,CACzB,OAAsB,EACtB,MAAS;IAET,oDAAoD;IACpD,IAAI,IAAA,eAAO,EAAC,OAAO,CAAC,EAAE,CAAC;QACrB,OAAO,IAAK,OAA8B,CAAC,GAAG,MAAM,CAAC,CAAA;IACvD,CAAC;IAED,4BAA4B;IAC5B,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE,CAAC;QAClC,OAAQ,OAA0B,CAAC,GAAG,MAAM,CAAC,CAAA;IAC/C,CAAC;IAED,uBAAuB;IACvB,MAAM,IAAI,KAAK,CACb,gEAAgE,OAAO,OAAO,EAAE,CACjF,CAAA;AACH,CAAC;AAED;;;;;;GAMG;AACI,KAAK,UAAU,WAAW,CAAC,GAAY;IAC5C,IAAI,CAAC;QACH,MAAM,CAAC,GAAI,GAAW,EAAE,OAAO,CAAA;QAC/B,IAAI,OAAO,CAAC,KAAK,UAAU,EAAE,CAAC;YAC5B,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACnB,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,sDAAsD;QACtD,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,MAAM,EAAE,CAAC;YACpC,OAAO,CAAC,KAAK,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAA;QACzC,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACI,KAAK,UAAU,iBAAiB,CACrC,GAAY;IAEZ,IAAI,CAAC;QACH,MAAM,CAAC,GAAI,GAAW,EAAE,OAAO,CAAA;QAC/B,IAAI,OAAO,CAAC,KAAK,UAAU,EAAE,CAAC;YAC5B,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YACjB,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAA;QAC3B,CAAC;QACD,wDAAwD;QACxD,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAA;IAC3B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;SACjE,CAAA;IACH,CAAC;AACH,CAAC"}
|
|
@@ -176,6 +176,8 @@ export interface BatchInvalidationResult {
|
|
|
176
176
|
export interface ContainerOptions {
|
|
177
177
|
/** Maximum number of instances to cache per service (default: 100) */
|
|
178
178
|
cacheSize?: number;
|
|
179
|
+
/** Maximum number of tenant initializations to cache (default: cacheSize) */
|
|
180
|
+
maxInitializerCacheSize?: number;
|
|
179
181
|
/** Enable performance metrics collection (default: false) */
|
|
180
182
|
enableMetrics?: boolean;
|
|
181
183
|
/** Enable detailed error logging and diagnostics (default: false) */
|
|
@@ -185,4 +187,20 @@ export interface ContainerOptions {
|
|
|
185
187
|
/** Distributed cache invalidator instance */
|
|
186
188
|
distributedInvalidator?: DistributedCacheInvalidator;
|
|
187
189
|
}
|
|
190
|
+
/**
|
|
191
|
+
* Result of a disposal operation
|
|
192
|
+
*/
|
|
193
|
+
export interface DisposalResult {
|
|
194
|
+
/** Number of instances successfully disposed */
|
|
195
|
+
disposed: number;
|
|
196
|
+
/** Number of disposal failures */
|
|
197
|
+
failed: number;
|
|
198
|
+
/** Errors encountered during disposal */
|
|
199
|
+
errors: Array<{
|
|
200
|
+
instanceId?: string;
|
|
201
|
+
error: Error;
|
|
202
|
+
}>;
|
|
203
|
+
/** Total number of successful disposals */
|
|
204
|
+
succeeded: number;
|
|
205
|
+
}
|
|
188
206
|
export {};
|
|
@@ -35,7 +35,7 @@ const requestContext = (request, token) => {
|
|
|
35
35
|
request.socket.remoteAddress ??
|
|
36
36
|
request.headers['x-forwarded-for'] ??
|
|
37
37
|
'';
|
|
38
|
-
const
|
|
38
|
+
const xTenantId = request.headers['x-tenant-id'] || '';
|
|
39
39
|
return {
|
|
40
40
|
user: token && 'email' in token
|
|
41
41
|
? {
|
|
@@ -46,7 +46,7 @@ const requestContext = (request, token) => {
|
|
|
46
46
|
: undefined,
|
|
47
47
|
url: request.url,
|
|
48
48
|
method: request.method,
|
|
49
|
-
|
|
49
|
+
xTenantId,
|
|
50
50
|
origin: request.get('origin'),
|
|
51
51
|
ip,
|
|
52
52
|
async getLocation() {
|
package/dist/server/trpc.d.ts
CHANGED
|
@@ -28,7 +28,7 @@ export declare function getTrpc<ExtendedAuthenticatedContext = Record<string, un
|
|
|
28
28
|
};
|
|
29
29
|
url: string;
|
|
30
30
|
method: string;
|
|
31
|
-
|
|
31
|
+
xTenantId: string;
|
|
32
32
|
origin: string;
|
|
33
33
|
ip: string;
|
|
34
34
|
getLocation(): Promise<import("..").LocationOutput>;
|
|
@@ -66,7 +66,7 @@ export declare function getTrpc<ExtendedAuthenticatedContext = Record<string, un
|
|
|
66
66
|
email: string;
|
|
67
67
|
firebaseId: string;
|
|
68
68
|
};
|
|
69
|
-
|
|
69
|
+
xTenantId: string;
|
|
70
70
|
getLocation: () => Promise<import("..").LocationOutput>;
|
|
71
71
|
endpoint: string;
|
|
72
72
|
device: {
|
|
@@ -103,7 +103,7 @@ export declare function getTrpc<ExtendedAuthenticatedContext = Record<string, un
|
|
|
103
103
|
};
|
|
104
104
|
url: string;
|
|
105
105
|
method: string;
|
|
106
|
-
|
|
106
|
+
xTenantId: string;
|
|
107
107
|
origin: string;
|
|
108
108
|
ip: string;
|
|
109
109
|
getLocation(): Promise<import("..").LocationOutput>;
|
|
@@ -141,7 +141,7 @@ export declare function getTrpc<ExtendedAuthenticatedContext = Record<string, un
|
|
|
141
141
|
email: string;
|
|
142
142
|
firebaseId: string;
|
|
143
143
|
};
|
|
144
|
-
|
|
144
|
+
xTenantId: string;
|
|
145
145
|
getLocation: () => Promise<import("..").LocationOutput>;
|
|
146
146
|
endpoint: string;
|
|
147
147
|
device: {
|
|
@@ -179,7 +179,7 @@ export declare function getTrpc<ExtendedAuthenticatedContext = Record<string, un
|
|
|
179
179
|
};
|
|
180
180
|
url: string;
|
|
181
181
|
method: string;
|
|
182
|
-
|
|
182
|
+
xTenantId: string;
|
|
183
183
|
origin: string;
|
|
184
184
|
ip: string;
|
|
185
185
|
getLocation(): Promise<import("..").LocationOutput>;
|
|
@@ -217,7 +217,7 @@ export declare function getTrpc<ExtendedAuthenticatedContext = Record<string, un
|
|
|
217
217
|
email: string;
|
|
218
218
|
firebaseId: string;
|
|
219
219
|
};
|
|
220
|
-
|
|
220
|
+
xTenantId: string;
|
|
221
221
|
getLocation: () => Promise<import("..").LocationOutput>;
|
|
222
222
|
endpoint: string;
|
|
223
223
|
device: {
|
|
@@ -254,7 +254,7 @@ export declare function getTrpc<ExtendedAuthenticatedContext = Record<string, un
|
|
|
254
254
|
};
|
|
255
255
|
url: string;
|
|
256
256
|
method: string;
|
|
257
|
-
|
|
257
|
+
xTenantId: string;
|
|
258
258
|
origin: string;
|
|
259
259
|
ip: string;
|
|
260
260
|
getLocation(): Promise<import("..").LocationOutput>;
|
|
@@ -295,7 +295,7 @@ export declare function getTrpc<ExtendedAuthenticatedContext = Record<string, un
|
|
|
295
295
|
};
|
|
296
296
|
url: string;
|
|
297
297
|
method: string;
|
|
298
|
-
|
|
298
|
+
xTenantId: string;
|
|
299
299
|
origin: string;
|
|
300
300
|
ip: string;
|
|
301
301
|
getLocation(): Promise<import("..").LocationOutput>;
|
|
@@ -343,7 +343,7 @@ export declare function getTrpc<ExtendedAuthenticatedContext = Record<string, un
|
|
|
343
343
|
};
|
|
344
344
|
url: string;
|
|
345
345
|
method: string;
|
|
346
|
-
|
|
346
|
+
xTenantId: string;
|
|
347
347
|
origin: string;
|
|
348
348
|
ip: string;
|
|
349
349
|
getLocation(): Promise<import("..").LocationOutput>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export type Environment = 'test' | 'local' | 'dev' | 'prod';
|
|
1
|
+
export type Environment = 'test' | 'e2e' | 'local' | 'dev' | 'prod';
|