@emmvish/stable-request 1.7.3 → 1.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/README.md +457 -0
  2. package/dist/core/stable-api-gateway.d.ts +2 -2
  3. package/dist/core/stable-api-gateway.d.ts.map +1 -1
  4. package/dist/core/stable-api-gateway.js +58 -4
  5. package/dist/core/stable-api-gateway.js.map +1 -1
  6. package/dist/core/stable-request.d.ts +2 -2
  7. package/dist/core/stable-request.d.ts.map +1 -1
  8. package/dist/core/stable-request.js +35 -5
  9. package/dist/core/stable-request.js.map +1 -1
  10. package/dist/core/stable-workflow.d.ts.map +1 -1
  11. package/dist/core/stable-workflow.js +23 -8
  12. package/dist/core/stable-workflow.js.map +1 -1
  13. package/dist/index.d.ts +2 -2
  14. package/dist/index.d.ts.map +1 -1
  15. package/dist/index.js +1 -1
  16. package/dist/index.js.map +1 -1
  17. package/dist/types/index.d.ts +258 -0
  18. package/dist/types/index.d.ts.map +1 -1
  19. package/dist/utilities/cache-manager.d.ts +19 -0
  20. package/dist/utilities/cache-manager.d.ts.map +1 -1
  21. package/dist/utilities/cache-manager.js +38 -2
  22. package/dist/utilities/cache-manager.js.map +1 -1
  23. package/dist/utilities/circuit-breaker.d.ts +22 -0
  24. package/dist/utilities/circuit-breaker.d.ts.map +1 -1
  25. package/dist/utilities/circuit-breaker.js +65 -1
  26. package/dist/utilities/circuit-breaker.js.map +1 -1
  27. package/dist/utilities/concurrency-limiter.d.ts +26 -0
  28. package/dist/utilities/concurrency-limiter.d.ts.map +1 -1
  29. package/dist/utilities/concurrency-limiter.js +74 -4
  30. package/dist/utilities/concurrency-limiter.js.map +1 -1
  31. package/dist/utilities/execute-branch-workflow.d.ts.map +1 -1
  32. package/dist/utilities/execute-branch-workflow.js +115 -19
  33. package/dist/utilities/execute-branch-workflow.js.map +1 -1
  34. package/dist/utilities/execute-concurrently.d.ts.map +1 -1
  35. package/dist/utilities/execute-concurrently.js +5 -6
  36. package/dist/utilities/execute-concurrently.js.map +1 -1
  37. package/dist/utilities/execute-non-linear-workflow.d.ts.map +1 -1
  38. package/dist/utilities/execute-non-linear-workflow.js +47 -3
  39. package/dist/utilities/execute-non-linear-workflow.js.map +1 -1
  40. package/dist/utilities/execute-phase.d.ts +1 -1
  41. package/dist/utilities/execute-phase.d.ts.map +1 -1
  42. package/dist/utilities/execute-phase.js +45 -17
  43. package/dist/utilities/execute-phase.js.map +1 -1
  44. package/dist/utilities/execute-sequentially.d.ts.map +1 -1
  45. package/dist/utilities/execute-sequentially.js +5 -6
  46. package/dist/utilities/execute-sequentially.js.map +1 -1
  47. package/dist/utilities/index.d.ts +4 -3
  48. package/dist/utilities/index.d.ts.map +1 -1
  49. package/dist/utilities/index.js +4 -3
  50. package/dist/utilities/index.js.map +1 -1
  51. package/dist/utilities/metrics-aggregator.d.ts +51 -0
  52. package/dist/utilities/metrics-aggregator.d.ts.map +1 -0
  53. package/dist/utilities/metrics-aggregator.js +311 -0
  54. package/dist/utilities/metrics-aggregator.js.map +1 -0
  55. package/dist/utilities/rate-limiter.d.ts +19 -0
  56. package/dist/utilities/rate-limiter.d.ts.map +1 -1
  57. package/dist/utilities/rate-limiter.js +56 -3
  58. package/dist/utilities/rate-limiter.js.map +1 -1
  59. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"circuit-breaker.d.ts","sourceRoot":"","sources":["../../src/utilities/circuit-breaker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,qBAAa,cAAc;IACvB,OAAO,CAAC,KAAK,CAAmD;IAChE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiC;IAExD,OAAO,CAAC,aAAa,CAAa;IAClC,OAAO,CAAC,cAAc,CAAa;IACnC,OAAO,CAAC,kBAAkB,CAAa;IAEvC,OAAO,CAAC,aAAa,CAAa;IAClC,OAAO,CAAC,cAAc,CAAa;IACnC,OAAO,CAAC,kBAAkB,CAAa;IAEvC,OAAO,CAAC,eAAe,CAAa;IACpC,OAAO,CAAC,gBAAgB,CAAa;IACrC,OAAO,CAAC,iBAAiB,CAAa;IACtC,OAAO,CAAC,gBAAgB,CAAa;gBAEzB,MAAM,EAAE,oBAAoB;IAWlC,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC;IAqBpC,aAAa,IAAI,IAAI;IAerB,aAAa,IAAI,IAAI;IAcrB,oBAAoB,IAAI,IAAI;IAc5B,oBAAoB,IAAI,IAAI;IAY5B,OAAO,CAAC,cAAc;IAYtB,OAAO,CAAC,qBAAqB;IAY7B,OAAO,CAAC,uBAAuB;IAY/B,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,gBAAgB;IAKxB,OAAO,CAAC,oBAAoB;IAK5B,OAAO,CAAC,mBAAmB;IAO3B,OAAO,CAAC,aAAa;IASrB,OAAO,CAAC,qBAAqB;IAM7B,QAAQ,IAAI;QACR,KAAK,EAAE,mBAAmB,CAAC;QAC3B,aAAa,EAAE,MAAM,CAAC;QACtB,cAAc,EAAE,MAAM,CAAC;QACvB,kBAAkB,EAAE,MAAM,CAAC;QAC3B,iBAAiB,EAAE,MAAM,CAAC;QAC1B,aAAa,EAAE,MAAM,CAAC;QACtB,cAAc,EAAE,MAAM,CAAC;QACvB,kBAAkB,EAAE,MAAM,CAAC;QAC3B,wBAAwB,EAAE,MAAM,CAAC;QACjC,MAAM,EAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAC;KAC1C;IAmBD,KAAK,IAAI,IAAI;IAOP,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;CAkBrD;AAED,qBAAa,uBAAwB,SAAQ,KAAK;gBAClC,OAAO,EAAE,MAAM;CAI9B"}
1
+ {"version":3,"file":"circuit-breaker.d.ts","sourceRoot":"","sources":["../../src/utilities/circuit-breaker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,qBAAa,cAAc;IACvB,OAAO,CAAC,KAAK,CAAmD;IAChE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiC;IAExD,OAAO,CAAC,aAAa,CAAa;IAClC,OAAO,CAAC,cAAc,CAAa;IACnC,OAAO,CAAC,kBAAkB,CAAa;IAEvC,OAAO,CAAC,aAAa,CAAa;IAClC,OAAO,CAAC,cAAc,CAAa;IACnC,OAAO,CAAC,kBAAkB,CAAa;IAEvC,OAAO,CAAC,eAAe,CAAa;IACpC,OAAO,CAAC,gBAAgB,CAAa;IACrC,OAAO,CAAC,iBAAiB,CAAa;IACtC,OAAO,CAAC,gBAAgB,CAAa;IAErC,OAAO,CAAC,gBAAgB,CAAa;IACrC,OAAO,CAAC,mBAAmB,CAAsB;IACjD,OAAO,CAAC,SAAS,CAAa;IAC9B,OAAO,CAAC,aAAa,CAAa;IAClC,OAAO,CAAC,iBAAiB,CAAa;IACtC,OAAO,CAAC,YAAY,CAAa;IACjC,OAAO,CAAC,gBAAgB,CAAa;IACrC,OAAO,CAAC,oBAAoB,CAAa;IACzC,OAAO,CAAC,gBAAgB,CAAa;gBAEzB,MAAM,EAAE,oBAAoB;IAWlC,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC;IAqBpC,aAAa,IAAI,IAAI;IAerB,aAAa,IAAI,IAAI;IAcrB,oBAAoB,IAAI,IAAI;IAc5B,oBAAoB,IAAI,IAAI;IAY5B,OAAO,CAAC,cAAc;IAYtB,OAAO,CAAC,qBAAqB;IAY7B,OAAO,CAAC,uBAAuB;IAY/B,OAAO,CAAC,kBAAkB;IAe1B,OAAO,CAAC,gBAAgB;IAaxB,OAAO,CAAC,oBAAoB;IAa5B,OAAO,CAAC,mBAAmB;IAO3B,OAAO,CAAC,aAAa;IASrB,OAAO,CAAC,qBAAqB;IAM7B,QAAQ,IAAI;QACR,KAAK,EAAE,mBAAmB,CAAC;QAC3B,aAAa,EAAE,MAAM,CAAC;QACtB,cAAc,EAAE,MAAM,CAAC;QACvB,kBAAkB,EAAE,MAAM,CAAC;QAC3B,iBAAiB,EAAE,MAAM,CAAC;QAC1B,aAAa,EAAE,MAAM,CAAC;QACtB,cAAc,EAAE,MAAM,CAAC;QACvB,kBAAkB,EAAE,MAAM,CAAC;QAC3B,wBAAwB,EAAE,MAAM,CAAC;QACjC,MAAM,EAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAC;QACvC,gBAAgB,EAAE,MAAM,CAAC;QACzB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,SAAS,EAAE,MAAM,CAAC;QAClB,aAAa,EAAE,MAAM,CAAC;QACtB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,mBAAmB,EAAE,MAAM,CAAC;QAC5B,gBAAgB,EAAE,MAAM,CAAC;QACzB,oBAAoB,EAAE,MAAM,CAAC;QAC7B,gBAAgB,EAAE,MAAM,CAAC;QACzB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;KAC5B;IAqCD,KAAK,IAAI,IAAI;IAOP,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;CAkBrD;AAED,qBAAa,uBAAwB,SAAQ,KAAK;gBAClC,OAAO,EAAE,MAAM;CAI9B;AAID,wBAAgB,uBAAuB,CAAC,MAAM,CAAC,EAAE,oBAAoB,GAAG,cAAc,CAKrF;AAED,wBAAgB,yBAAyB,IAAI,IAAI,CAKhD"}
@@ -12,6 +12,15 @@ export class CircuitBreaker {
12
12
  halfOpenRequests = 0;
13
13
  halfOpenSuccesses = 0;
14
14
  halfOpenFailures = 0;
15
+ stateTransitions = 0;
16
+ lastStateChangeTime = Date.now();
17
+ openCount = 0;
18
+ halfOpenCount = 0;
19
+ totalOpenDuration = 0;
20
+ lastOpenTime = 0;
21
+ recoveryAttempts = 0;
22
+ successfulRecoveries = 0;
23
+ failedRecoveries = 0;
15
24
  constructor(config) {
16
25
  this.config = {
17
26
  failureThresholdPercentage: Math.max(0, Math.min(100, config.failureThresholdPercentage)),
@@ -118,16 +127,41 @@ export class CircuitBreaker {
118
127
  }
119
128
  }
120
129
  transitionToClosed() {
130
+ const now = Date.now();
131
+ if (this.state === CircuitBreakerState.HALF_OPEN) {
132
+ this.successfulRecoveries++;
133
+ }
134
+ if (this.state === CircuitBreakerState.OPEN && this.lastOpenTime > 0) {
135
+ this.totalOpenDuration += (now - this.lastOpenTime);
136
+ }
121
137
  this.state = CircuitBreakerState.CLOSED;
138
+ this.lastStateChangeTime = now;
139
+ this.stateTransitions++;
122
140
  this.resetCounters();
123
141
  this.resetHalfOpenCounters();
124
142
  }
125
143
  transitionToOpen() {
144
+ const now = Date.now();
145
+ if (this.state === CircuitBreakerState.HALF_OPEN) {
146
+ this.failedRecoveries++;
147
+ }
126
148
  this.state = CircuitBreakerState.OPEN;
149
+ this.lastStateChangeTime = now;
150
+ this.lastOpenTime = now;
151
+ this.stateTransitions++;
152
+ this.openCount++;
127
153
  this.resetHalfOpenCounters();
128
154
  }
129
155
  transitionToHalfOpen() {
156
+ const now = Date.now();
157
+ if (this.state === CircuitBreakerState.OPEN && this.lastOpenTime > 0) {
158
+ this.totalOpenDuration += (now - this.lastOpenTime);
159
+ }
130
160
  this.state = CircuitBreakerState.HALF_OPEN;
161
+ this.lastStateChangeTime = now;
162
+ this.stateTransitions++;
163
+ this.halfOpenCount++;
164
+ this.recoveryAttempts++;
131
165
  this.resetHalfOpenCounters();
132
166
  }
133
167
  shouldResetCounters() {
@@ -150,6 +184,10 @@ export class CircuitBreaker {
150
184
  this.halfOpenFailures = 0;
151
185
  }
152
186
  getState() {
187
+ const now = Date.now();
188
+ const openUntil = this.state === CircuitBreakerState.OPEN
189
+ ? this.lastFailureTime + this.config.recoveryTimeoutMs
190
+ : null;
153
191
  return {
154
192
  state: this.state,
155
193
  totalRequests: this.totalRequests,
@@ -164,7 +202,20 @@ export class CircuitBreaker {
164
202
  attemptFailurePercentage: this.totalAttempts > 0
165
203
  ? (this.failedAttempts / this.totalAttempts) * 100
166
204
  : 0,
167
- config: this.config
205
+ config: this.config,
206
+ stateTransitions: this.stateTransitions,
207
+ lastStateChangeTime: this.lastStateChangeTime,
208
+ openCount: this.openCount,
209
+ halfOpenCount: this.halfOpenCount,
210
+ totalOpenDuration: this.totalOpenDuration,
211
+ averageOpenDuration: this.openCount > 0 ? this.totalOpenDuration / this.openCount : 0,
212
+ recoveryAttempts: this.recoveryAttempts,
213
+ successfulRecoveries: this.successfulRecoveries,
214
+ failedRecoveries: this.failedRecoveries,
215
+ recoverySuccessRate: this.recoveryAttempts > 0
216
+ ? (this.successfulRecoveries / this.recoveryAttempts) * 100
217
+ : 0,
218
+ openUntil: openUntil
168
219
  };
169
220
  }
170
221
  reset() {
@@ -195,4 +246,17 @@ export class CircuitBreakerOpenError extends Error {
195
246
  this.name = 'CircuitBreakerOpenError';
196
247
  }
197
248
  }
249
+ let globalCircuitBreaker = null;
250
+ export function getGlobalCircuitBreaker(config) {
251
+ if (!globalCircuitBreaker && config) {
252
+ globalCircuitBreaker = new CircuitBreaker(config);
253
+ }
254
+ return globalCircuitBreaker;
255
+ }
256
+ export function resetGlobalCircuitBreaker() {
257
+ if (globalCircuitBreaker) {
258
+ globalCircuitBreaker.reset();
259
+ }
260
+ globalCircuitBreaker = null;
261
+ }
198
262
  //# sourceMappingURL=circuit-breaker.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"circuit-breaker.js","sourceRoot":"","sources":["../../src/utilities/circuit-breaker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"circuit-breaker.js","sourceRoot":"","sources":["../../src/utilities/circuit-breaker.ts"],"names":[],"mappings":"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"}
@@ -2,10 +2,36 @@ export declare class ConcurrencyLimiter {
2
2
  private readonly limit;
3
3
  private running;
4
4
  private readonly queue;
5
+ private totalRequests;
6
+ private completedRequests;
7
+ private failedRequests;
8
+ private queuedRequests;
9
+ private peakConcurrency;
10
+ private peakQueueLength;
11
+ private totalQueueWaitTime;
12
+ private totalExecutionTime;
13
+ private queueWaitTimes;
5
14
  constructor(limit: number);
6
15
  private acquire;
7
16
  private release;
8
17
  execute<T>(fn: () => Promise<T>): Promise<T>;
9
18
  executeAll<T>(fns: Array<() => Promise<T>>): Promise<T[]>;
19
+ getState(): {
20
+ limit: number;
21
+ running: number;
22
+ queueLength: number;
23
+ totalRequests: number;
24
+ completedRequests: number;
25
+ failedRequests: number;
26
+ queuedRequests: number;
27
+ successRate: number;
28
+ peakConcurrency: number;
29
+ peakQueueLength: number;
30
+ averageQueueWaitTime: number;
31
+ averageExecutionTime: number;
32
+ utilizationPercentage: number;
33
+ };
10
34
  }
35
+ export declare function getGlobalConcurrencyLimiter(limit?: number): ConcurrencyLimiter;
36
+ export declare function resetGlobalConcurrencyLimiter(): void;
11
37
  //# sourceMappingURL=concurrency-limiter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"concurrency-limiter.d.ts","sourceRoot":"","sources":["../../src/utilities/concurrency-limiter.ts"],"names":[],"mappings":"AAAA,qBAAa,kBAAkB;IAC3B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;IAC/B,OAAO,CAAC,OAAO,CAAa;IAC5B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAyB;gBAEnC,KAAK,EAAE,MAAM;YAIX,OAAO;IAWrB,OAAO,CAAC,OAAO;IAST,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAS5C,UAAU,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;CAGlE"}
1
+ {"version":3,"file":"concurrency-limiter.d.ts","sourceRoot":"","sources":["../../src/utilities/concurrency-limiter.ts"],"names":[],"mappings":"AAAA,qBAAa,kBAAkB;IAC3B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;IAC/B,OAAO,CAAC,OAAO,CAAa;IAC5B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAyB;IAC/C,OAAO,CAAC,aAAa,CAAa;IAClC,OAAO,CAAC,iBAAiB,CAAa;IACtC,OAAO,CAAC,cAAc,CAAa;IACnC,OAAO,CAAC,cAAc,CAAa;IACnC,OAAO,CAAC,eAAe,CAAa;IACpC,OAAO,CAAC,eAAe,CAAa;IACpC,OAAO,CAAC,kBAAkB,CAAa;IACvC,OAAO,CAAC,kBAAkB,CAAa;IACvC,OAAO,CAAC,cAAc,CAAgB;gBAE1B,KAAK,EAAE,MAAM;YAIX,OAAO;IAsBrB,OAAO,CAAC,OAAO;IAUT,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAqB5C,UAAU,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAI/D,QAAQ;;;;;;;;;;;;;;;CA8BX;AAID,wBAAgB,2BAA2B,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,kBAAkB,CAK9E;AAED,wBAAgB,6BAA6B,IAAI,IAAI,CAEpD"}
@@ -2,16 +2,34 @@ export class ConcurrencyLimiter {
2
2
  limit;
3
3
  running = 0;
4
4
  queue = [];
5
+ totalRequests = 0;
6
+ completedRequests = 0;
7
+ failedRequests = 0;
8
+ queuedRequests = 0;
9
+ peakConcurrency = 0;
10
+ peakQueueLength = 0;
11
+ totalQueueWaitTime = 0;
12
+ totalExecutionTime = 0;
13
+ queueWaitTimes = [];
5
14
  constructor(limit) {
6
15
  this.limit = Math.max(1, Math.floor(limit));
7
16
  }
8
17
  async acquire() {
18
+ const queueStartTime = Date.now();
9
19
  if (this.running < this.limit) {
10
20
  this.running++;
11
- return Promise.resolve();
21
+ this.peakConcurrency = Math.max(this.peakConcurrency, this.running);
22
+ return Promise.resolve({ queueWaitTime: 0 });
12
23
  }
24
+ this.queuedRequests++;
13
25
  return new Promise((resolve) => {
14
- this.queue.push(resolve);
26
+ this.queue.push(() => {
27
+ const queueWaitTime = Date.now() - queueStartTime;
28
+ this.totalQueueWaitTime += queueWaitTime;
29
+ this.queueWaitTimes.push(queueWaitTime);
30
+ resolve({ queueWaitTime });
31
+ });
32
+ this.peakQueueLength = Math.max(this.peakQueueLength, this.queue.length);
15
33
  });
16
34
  }
17
35
  release() {
@@ -19,13 +37,26 @@ export class ConcurrencyLimiter {
19
37
  const next = this.queue.shift();
20
38
  if (next) {
21
39
  this.running++;
40
+ this.peakConcurrency = Math.max(this.peakConcurrency, this.running);
22
41
  next();
23
42
  }
24
43
  }
25
44
  async execute(fn) {
26
- await this.acquire();
45
+ this.totalRequests++;
46
+ const { queueWaitTime } = await this.acquire();
47
+ const executionStartTime = Date.now();
27
48
  try {
28
- return await fn();
49
+ const result = await fn();
50
+ const executionTime = Date.now() - executionStartTime;
51
+ this.totalExecutionTime += executionTime;
52
+ this.completedRequests++;
53
+ return result;
54
+ }
55
+ catch (error) {
56
+ const executionTime = Date.now() - executionStartTime;
57
+ this.totalExecutionTime += executionTime;
58
+ this.failedRequests++;
59
+ throw error;
29
60
  }
30
61
  finally {
31
62
  this.release();
@@ -34,5 +65,44 @@ export class ConcurrencyLimiter {
34
65
  async executeAll(fns) {
35
66
  return Promise.all(fns.map(fn => this.execute(fn)));
36
67
  }
68
+ getState() {
69
+ const successRate = this.totalRequests > 0
70
+ ? (this.completedRequests - this.failedRequests) / this.totalRequests * 100
71
+ : 0;
72
+ const averageConcurrency = this.completedRequests > 0
73
+ ? this.totalExecutionTime / (Date.now() - (this.totalExecutionTime / this.completedRequests))
74
+ : 0;
75
+ const averageQueueWaitTime = this.queuedRequests > 0
76
+ ? this.totalQueueWaitTime / this.queuedRequests
77
+ : 0;
78
+ const averageExecutionTime = this.completedRequests > 0
79
+ ? this.totalExecutionTime / this.completedRequests
80
+ : 0;
81
+ return {
82
+ limit: this.limit,
83
+ running: this.running,
84
+ queueLength: this.queue.length,
85
+ totalRequests: this.totalRequests,
86
+ completedRequests: this.completedRequests,
87
+ failedRequests: this.failedRequests,
88
+ queuedRequests: this.queuedRequests,
89
+ successRate: successRate,
90
+ peakConcurrency: this.peakConcurrency,
91
+ peakQueueLength: this.peakQueueLength,
92
+ averageQueueWaitTime: averageQueueWaitTime,
93
+ averageExecutionTime: averageExecutionTime,
94
+ utilizationPercentage: (this.running / this.limit) * 100
95
+ };
96
+ }
97
+ }
98
+ let globalConcurrencyLimiter = null;
99
+ export function getGlobalConcurrencyLimiter(limit) {
100
+ if (!globalConcurrencyLimiter && limit !== undefined) {
101
+ globalConcurrencyLimiter = new ConcurrencyLimiter(limit);
102
+ }
103
+ return globalConcurrencyLimiter;
104
+ }
105
+ export function resetGlobalConcurrencyLimiter() {
106
+ globalConcurrencyLimiter = null;
37
107
  }
38
108
  //# sourceMappingURL=concurrency-limiter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"concurrency-limiter.js","sourceRoot":"","sources":["../../src/utilities/concurrency-limiter.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,kBAAkB;IACV,KAAK,CAAS;IACvB,OAAO,GAAW,CAAC,CAAC;IACX,KAAK,GAAsB,EAAE,CAAC;IAE/C,YAAY,KAAa;QACrB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IAChD,CAAC;IAEO,KAAK,CAAC,OAAO;QACjB,IAAI,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;YAC5B,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;QAC7B,CAAC;QAED,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;YACjC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,OAAO;QACX,IAAI,CAAC,OAAO,EAAE,CAAC;QACf,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QAChC,IAAI,IAAI,EAAE,CAAC;YACP,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,IAAI,EAAE,CAAC;QACX,CAAC;IACL,CAAC;IAED,KAAK,CAAC,OAAO,CAAI,EAAoB;QACjC,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;QACrB,IAAI,CAAC;YACD,OAAO,MAAM,EAAE,EAAE,CAAC;QACtB,CAAC;gBAAS,CAAC;YACP,IAAI,CAAC,OAAO,EAAE,CAAC;QACnB,CAAC;IACL,CAAC;IAED,KAAK,CAAC,UAAU,CAAI,GAA4B;QAC5C,OAAO,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACxD,CAAC;CACJ"}
1
+ {"version":3,"file":"concurrency-limiter.js","sourceRoot":"","sources":["../../src/utilities/concurrency-limiter.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"execute-branch-workflow.d.ts","sourceRoot":"","sources":["../../src/utilities/execute-branch-workflow.ts"],"names":[],"mappings":"AAIA,OAAO,EAGL,gCAAgC,EAGhC,qBAAqB,EAGtB,MAAM,mBAAmB,CAAC;AAE3B,wBAAsB,qBAAqB,CAAC,eAAe,GAAG,GAAG,EAAE,gBAAgB,GAAG,GAAG,EACvF,OAAO,EAAE,qBAAqB,CAAC,eAAe,EAAE,gBAAgB,CAAC,GAChE,OAAO,CAAC,gCAAgC,CAAC,gBAAgB,CAAC,CAAC,CAgoB7D"}
1
+ {"version":3,"file":"execute-branch-workflow.d.ts","sourceRoot":"","sources":["../../src/utilities/execute-branch-workflow.ts"],"names":[],"mappings":"AAKA,OAAO,EAGL,gCAAgC,EAGhC,qBAAqB,EAItB,MAAM,mBAAmB,CAAC;AAE3B,wBAAsB,qBAAqB,CAAC,eAAe,GAAG,GAAG,EAAE,gBAAgB,GAAG,GAAG,EACvF,OAAO,EAAE,qBAAqB,CAAC,eAAe,EAAE,gBAAgB,CAAC,GAChE,OAAO,CAAC,gCAAgC,CAAC,gBAAgB,CAAC,CAAC,CAoxB7D"}
@@ -1,9 +1,10 @@
1
1
  import { executeNonLinearWorkflow } from './execute-non-linear-workflow.js';
2
2
  import { executeWithPersistence } from './execute-with-persistence.js';
3
3
  import { formatLogContext } from './format-log-context.js';
4
+ import { MetricsAggregator } from './metrics-aggregator.js';
4
5
  import { PHASE_DECISION_ACTIONS } from '../enums/index.js';
5
6
  export async function executeBranchWorkflow(context) {
6
- const { branches, workflowId, commonGatewayOptions, requestGroups, logPhaseResults, handlePhaseCompletion, handlePhaseError = () => { }, handleBranchCompletion, handleBranchDecision, maxSerializableChars, workflowHookParams, sharedBuffer, stopOnFirstPhaseError, maxWorkflowIterations } = context;
7
+ const { branches, workflowId, commonGatewayOptions, requestGroups, logPhaseResults, handlePhaseCompletion, handlePhaseError = () => { }, handleBranchCompletion, handleBranchDecision, preBranchExecutionHook, prePhaseExecutionHook, maxSerializableChars, workflowHookParams, sharedBuffer, stopOnFirstPhaseError, maxWorkflowIterations } = context;
7
8
  const branchResults = [];
8
9
  const allPhaseResults = [];
9
10
  const executionHistory = [];
@@ -26,18 +27,41 @@ export async function executeBranchWorkflow(context) {
26
27
  };
27
28
  const executeSingleBranch = async (branch, branchIndex, executionNumber) => {
28
29
  const branchStartTime = Date.now();
30
+ const branchId = branch.id || `branch-${branchIndex + 1}`;
31
+ let modifiedBranch = branch;
32
+ if (preBranchExecutionHook) {
33
+ try {
34
+ const hookOptions = {
35
+ workflowId,
36
+ branchId,
37
+ branchIndex,
38
+ branch: { ...branch },
39
+ sharedBuffer,
40
+ params: workflowHookParams?.preBranchExecutionHookParams
41
+ };
42
+ const result = await executeWithPersistence(preBranchExecutionHook, hookOptions, branch.statePersistence, { workflowId, branchId }, sharedBuffer || {});
43
+ if (result) {
44
+ modifiedBranch = result;
45
+ console.info(`${formatLogContext({ workflowId, branchId })}stable-request: Branch configuration modified by preBranchExecutionHook`);
46
+ }
47
+ }
48
+ catch (error) {
49
+ console.error(`${formatLogContext({ workflowId, branchId })}stable-request: Error in preBranchExecutionHook:`, error);
50
+ }
51
+ }
29
52
  try {
30
- const branchConfig = mergeBranchConfig(branch);
53
+ const branchConfig = mergeBranchConfig(modifiedBranch);
31
54
  const result = await executeNonLinearWorkflow({
32
- phases: branch.phases,
33
- workflowId: `${workflowId}-branch-${branch.id}`,
34
- branchId: branch.id,
55
+ phases: modifiedBranch.phases,
56
+ workflowId: `${workflowId}-branch-${branchId}`,
57
+ branchId,
35
58
  commonGatewayOptions: branchConfig,
36
59
  requestGroups,
37
60
  logPhaseResults,
38
61
  handlePhaseCompletion,
39
62
  handlePhaseError,
40
63
  handlePhaseDecision: workflowHookParams?.handlePhaseDecision,
64
+ prePhaseExecutionHook,
41
65
  maxSerializableChars,
42
66
  workflowHookParams,
43
67
  sharedBuffer,
@@ -47,7 +71,7 @@ export async function executeBranchWorkflow(context) {
47
71
  const branchExecutionTime = Date.now() - branchStartTime;
48
72
  const branchResult = {
49
73
  workflowId,
50
- branchId: branch.id,
74
+ branchId,
51
75
  branchIndex,
52
76
  success: result.failedRequests === 0,
53
77
  executionTime: branchExecutionTime,
@@ -55,6 +79,7 @@ export async function executeBranchWorkflow(context) {
55
79
  phaseResults: result.phaseResults,
56
80
  executionNumber
57
81
  };
82
+ branchResult.metrics = MetricsAggregator.extractBranchMetrics(branchResult);
58
83
  return {
59
84
  branchResult,
60
85
  phaseResults: result.phaseResults,
@@ -65,20 +90,22 @@ export async function executeBranchWorkflow(context) {
65
90
  };
66
91
  }
67
92
  catch (error) {
68
- console.error(`${formatLogContext({ workflowId })}stable-request: Branch ${branch.id} failed:`, error);
93
+ console.error(`${formatLogContext({ workflowId })}stable-request: Branch ${branchId} failed:`, error);
94
+ const errorBranchResult = {
95
+ workflowId,
96
+ branchId,
97
+ branchIndex,
98
+ success: false,
99
+ executionTime: Date.now() - branchStartTime,
100
+ completedPhases: 0,
101
+ phaseResults: [],
102
+ executionNumber,
103
+ error: error?.message || 'Branch execution failed',
104
+ decision: undefined
105
+ };
106
+ errorBranchResult.metrics = MetricsAggregator.extractBranchMetrics(errorBranchResult);
69
107
  return {
70
- branchResult: {
71
- workflowId,
72
- branchId: branch.id,
73
- branchIndex,
74
- success: false,
75
- executionTime: Date.now() - branchStartTime,
76
- completedPhases: 0,
77
- phaseResults: [],
78
- executionNumber,
79
- error: error?.message || 'Branch execution failed',
80
- decision: undefined
81
- },
108
+ branchResult: errorBranchResult,
82
109
  phaseResults: [],
83
110
  executionHistory: [],
84
111
  totalRequests: 0,
@@ -117,6 +144,7 @@ export async function executeBranchWorkflow(context) {
117
144
  skipped: true,
118
145
  error: `Exceeded max replay count of ${maxReplayCount}`
119
146
  };
147
+ skippedResult.metrics = MetricsAggregator.extractBranchMetrics(skippedResult);
120
148
  branchResults.push(skippedResult);
121
149
  branchExecutionHistory.push({
122
150
  branchId: currentBranchId,
@@ -238,6 +266,32 @@ export async function executeBranchWorkflow(context) {
238
266
  break;
239
267
  }
240
268
  }
269
+ const lastBranchDecision = concurrentGroup[concurrentGroup.length - 1]?.branch.branchDecisionHook ?
270
+ groupResults[groupResults.length - 1].branchResult.decision : undefined;
271
+ if (lastBranchDecision) {
272
+ if (lastBranchDecision.addBranches && Array.isArray(lastBranchDecision.addBranches) && lastBranchDecision.addBranches.length > 0) {
273
+ if (logPhaseResults) {
274
+ console.info(`${formatLogContext({ workflowId })}stable-request: Adding ${lastBranchDecision.addBranches.length} dynamic branch(es) after concurrent group`);
275
+ }
276
+ lastBranchDecision.addBranches.forEach((newBranch, idx) => {
277
+ const newBranchId = newBranch.id || `dynamic-branch-${Date.now()}-${idx}`;
278
+ const newBranchWithId = { ...newBranch, id: newBranchId };
279
+ branches.splice(j + idx, 0, newBranchWithId);
280
+ if (logPhaseResults) {
281
+ console.info(`${formatLogContext({ workflowId })}stable-request: Added dynamic branch '${newBranchId}' at index ${j + idx}`);
282
+ }
283
+ });
284
+ }
285
+ if (lastBranchDecision.addPhases && Array.isArray(lastBranchDecision.addPhases) && lastBranchDecision.addPhases.length > 0) {
286
+ const lastBranch = concurrentGroup[concurrentGroup.length - 1].branch;
287
+ if (logPhaseResults) {
288
+ console.info(`${formatLogContext({ workflowId, branchId: lastBranch.id })}stable-request: Adding ${lastBranchDecision.addPhases.length} dynamic phase(s) to branch '${lastBranch.id}'`);
289
+ }
290
+ lastBranchDecision.addPhases.forEach((newPhase) => {
291
+ lastBranch.phases.push(newPhase);
292
+ });
293
+ }
294
+ }
241
295
  if (shouldTerminate) {
242
296
  terminatedEarly = true;
243
297
  break;
@@ -261,6 +315,7 @@ export async function executeBranchWorkflow(context) {
261
315
  executionNumber: 1,
262
316
  skipped: true
263
317
  };
318
+ skippedResult.metrics = MetricsAggregator.extractBranchMetrics(skippedResult);
264
319
  branchResults.push(skippedResult);
265
320
  branchExecutionHistory.push({
266
321
  branchId: skippedBranch.id,
@@ -352,6 +407,47 @@ export async function executeBranchWorkflow(context) {
352
407
  decision = { action: PHASE_DECISION_ACTIONS.CONTINUE };
353
408
  }
354
409
  }
410
+ if (decision.addBranches && Array.isArray(decision.addBranches) && decision.addBranches.length > 0) {
411
+ if (logPhaseResults) {
412
+ console.info(`${formatLogContext({ workflowId, branchId: currentBranchId })}stable-request: Adding ${decision.addBranches.length} dynamic branch(es) after '${currentBranchId}'`);
413
+ }
414
+ decision.addBranches.forEach((newBranch, idx) => {
415
+ const newBranchId = newBranch.id || `dynamic-branch-${Date.now()}-${idx}`;
416
+ const newBranchWithId = { ...newBranch, id: newBranchId };
417
+ branches.splice(branchIndex + 1 + idx, 0, newBranchWithId);
418
+ if (logPhaseResults) {
419
+ console.info(`${formatLogContext({ workflowId })}stable-request: Added dynamic branch '${newBranchId}' at index ${branchIndex + 1 + idx}`);
420
+ }
421
+ });
422
+ }
423
+ if (decision.addPhases && Array.isArray(decision.addPhases) && decision.addPhases.length > 0) {
424
+ if (logPhaseResults) {
425
+ console.info(`${formatLogContext({ workflowId, branchId: currentBranchId })}stable-request: Adding ${decision.addPhases.length} dynamic phase(s) to branch '${currentBranchId}' and re-executing`);
426
+ }
427
+ decision.addPhases.forEach((newPhase) => {
428
+ currentBranch.phases.push(newPhase);
429
+ });
430
+ if (logPhaseResults) {
431
+ console.info(`${formatLogContext({ workflowId })}\nstable-request: Re-executing branch: ${currentBranch.id} with ${decision.addPhases.length} additional phase(s) (execution #${executionNumber + 1})`);
432
+ }
433
+ const reExecutionResult = await executeSingleBranch(currentBranch, branchIndex, executionNumber + 1);
434
+ branchResults[branchResults.length - 1] = reExecutionResult.branchResult;
435
+ allPhaseResults.push(...reExecutionResult.phaseResults);
436
+ executionHistory.push(...reExecutionResult.executionHistory);
437
+ totalRequests += reExecutionResult.totalRequests;
438
+ successfulRequests += reExecutionResult.successfulRequests;
439
+ failedRequests += reExecutionResult.failedRequests;
440
+ branchExecutionHistory.push({
441
+ branchId: currentBranchId,
442
+ branchIndex,
443
+ executionNumber: executionNumber + 1,
444
+ timestamp: new Date().toISOString(),
445
+ success: reExecutionResult.branchResult.success,
446
+ executionTime: reExecutionResult.branchResult.executionTime
447
+ });
448
+ result.branchResult = reExecutionResult.branchResult;
449
+ result.phaseResults = reExecutionResult.phaseResults;
450
+ }
355
451
  switch (decision.action) {
356
452
  case PHASE_DECISION_ACTIONS.TERMINATE:
357
453
  terminatedEarly = true;
@@ -1 +1 @@
1
- {"version":3,"file":"execute-branch-workflow.js","sourceRoot":"","sources":["../../src/utilities/execute-branch-workflow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execute-branch-workflow.js","sourceRoot":"","sources":["../../src/utilities/execute-branch-workflow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAa3D,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,OAAiE;IAEjE,MAAM,EACJ,QAAQ,EACR,UAAU,EACV,oBAAoB,EACpB,aAAa,EACb,eAAe,EACf,qBAAqB,EACrB,gBAAgB,GAAG,GAAG,EAAE,GAAE,CAAC,EAC3B,sBAAsB,EACtB,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,EACrB,oBAAoB,EACpB,kBAAkB,EAClB,YAAY,EACZ,qBAAqB,EACrB,qBAAqB,EACtB,GAAG,OAAO,CAAC;IAEZ,MAAM,aAAa,GAA8C,EAAE,CAAC;IACpE,MAAM,eAAe,GAAqD,EAAE,CAAC;IAC7E,MAAM,gBAAgB,GAA2B,EAAE,CAAC;IACpD,MAAM,sBAAsB,GAA4B,EAAE,CAAC;IAC3D,MAAM,qBAAqB,GAAwB,IAAI,GAAG,EAAE,CAAC;IAE7D,IAAI,aAAa,GAAG,CAAC,CAAC;IACtB,IAAI,kBAAkB,GAAG,CAAC,CAAC;IAC3B,IAAI,cAAc,GAAG,CAAC,CAAC;IACvB,IAAI,eAAe,GAAG,KAAK,CAAC;IAC5B,IAAI,iBAAqC,CAAC;IAC1C,IAAI,cAAc,GAAG,CAAC,CAAC;IAEvB,MAAM,iBAAiB,GAAG,CAAC,MAAiE,EAAE,EAAE;QAC9F,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;YACzB,OAAO,oBAAoB,CAAC;QAC9B,CAAC;QAED,OAAO;YACL,GAAG,oBAAoB;YACvB,GAAG,MAAM,CAAC,YAAY;SACvB,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,mBAAmB,GAAG,KAAK,EAC/B,MAAiE,EACjE,WAAmB,EACnB,eAAuB,EACvB,EAAE;QACF,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACnC,MAAM,QAAQ,GAAG,MAAM,CAAC,EAAE,IAAI,UAAU,WAAW,GAAG,CAAC,EAAE,CAAC;QAE1D,IAAI,cAAc,GAAG,MAAM,CAAC;QAC5B,IAAI,sBAAsB,EAAE,CAAC;YAC3B,IAAI,CAAC;gBACH,MAAM,WAAW,GAAqE;oBACpF,UAAU;oBACV,QAAQ;oBACR,WAAW;oBACX,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE;oBACrB,YAAY;oBACZ,MAAM,EAAE,kBAAkB,EAAE,4BAA4B;iBACzD,CAAC;gBAEF,MAAM,MAAM,GAAG,MAAM,sBAAsB,CACzC,sBAAsB,EACtB,WAAW,EACX,MAAM,CAAC,gBAAgB,EACvB,EAAE,UAAU,EAAE,QAAQ,EAAE,EACxB,YAAY,IAAI,EAAE,CACnB,CAAC;gBACF,IAAI,MAAM,EAAE,CAAC;oBACX,cAAc,GAAG,MAAM,CAAC;oBACxB,OAAO,CAAC,IAAI,CACV,GAAG,gBAAgB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,yEAAyE,CACvH,CAAC;gBACJ,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CACX,GAAG,gBAAgB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,kDAAkD,EAC/F,KAAK,CACN,CAAC;YACJ,CAAC;QACH,CAAC;QAED,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,iBAAiB,CAAC,cAAc,CAAC,CAAC;YAEvD,MAAM,MAAM,GAAG,MAAM,wBAAwB,CAAC;gBAC5C,MAAM,EAAE,cAAc,CAAC,MAAM;gBAC7B,UAAU,EAAE,GAAG,UAAU,WAAW,QAAQ,EAAE;gBAC9C,QAAQ;gBACR,oBAAoB,EAAE,YAAY;gBAClC,aAAa;gBACb,eAAe;gBACf,qBAAqB;gBACrB,gBAAgB;gBAChB,mBAAmB,EAAE,kBAAkB,EAAE,mBAAmB;gBAC5D,qBAAqB;gBACrB,oBAAoB;gBACpB,kBAAkB;gBAClB,YAAY;gBACZ,qBAAqB;gBACrB,qBAAqB;aACtB,CAAC,CAAC;YAEH,MAAM,mBAAmB,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,eAAe,CAAC;YAEzD,MAAM,YAAY,GAA4C;gBAC5D,UAAU;gBACV,QAAQ;gBACR,WAAW;gBACX,OAAO,EAAE,MAAM,CAAC,cAAc,KAAK,CAAC;gBACpC,aAAa,EAAE,mBAAmB;gBAClC,eAAe,EAAE,MAAM,CAAC,YAAY,CAAC,MAAM;gBAC3C,YAAY,EAAE,MAAM,CAAC,YAAY;gBACjC,eAAe;aAChB,CAAC;YAEF,YAAY,CAAC,OAAO,GAAG,iBAAiB,CAAC,oBAAoB,CAAC,YAAY,CAAC,CAAC;YAE5E,OAAO;gBACL,YAAY;gBACZ,YAAY,EAAE,MAAM,CAAC,YAAY;gBACjC,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;gBACzC,aAAa,EAAE,MAAM,CAAC,aAAa;gBACnC,kBAAkB,EAAE,MAAM,CAAC,kBAAkB;gBAC7C,cAAc,EAAE,MAAM,CAAC,cAAc;aACtC,CAAC;QACJ,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,OAAO,CAAC,KAAK,CACX,GAAG,gBAAgB,CAAC,EAAE,UAAU,EAAE,CAAC,0BAA0B,QAAQ,UAAU,EAC/E,KAAK,CACN,CAAC;YAEF,MAAM,iBAAiB,GAA4C;gBACjE,UAAU;gBACV,QAAQ;gBACR,WAAW;gBACX,OAAO,EAAE,KAAK;gBACd,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,eAAe;gBAC3C,eAAe,EAAE,CAAC;gBAClB,YAAY,EAAE,EAAE;gBAChB,eAAe;gBACf,KAAK,EAAE,KAAK,EAAE,OAAO,IAAI,yBAAyB;gBAClD,QAAQ,EAAE,SAAS;aACpB,CAAC;YAEF,iBAAiB,CAAC,OAAO,GAAG,iBAAiB,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,CAAC;YAEtF,OAAO;gBACL,YAAY,EAAE,iBAAiB;gBAC/B,YAAY,EAAE,EAAE;gBAChB,gBAAgB,EAAE,EAAE;gBACpB,aAAa,EAAE,CAAC;gBAChB,kBAAkB,EAAE,CAAC;gBACrB,cAAc,EAAE,CAAC;aAClB,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;IAEF,IAAI,eAAe,GAAkB,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,IAAI,CAAC;IAE7D,OAAO,eAAe,KAAK,IAAI,IAAI,cAAc,GAAG,qBAAqB,EAAE,CAAC;QAC1E,cAAc,EAAE,CAAC;QAEjB,MAAM,WAAW,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,eAAe,CAAC,CAAC;QACtE,IAAI,WAAW,KAAK,CAAC,CAAC,EAAE,CAAC;YACvB,OAAO,CAAC,KAAK,CACX,GAAG,gBAAgB,CAAC,EAAE,UAAU,EAAE,CAAC,2BAA2B,eAAe,aAAa,CAC3F,CAAC;YACF,eAAe,GAAG,IAAI,CAAC;YACvB,iBAAiB,GAAG,WAAW,eAAe,aAAa,CAAC;YAC5D,MAAM;QACR,CAAC;QAED,MAAM,aAAa,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC;QAC5C,MAAM,eAAe,GAAG,CAAC,qBAAqB,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QAC9E,qBAAqB,CAAC,GAAG,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC;QAE5D,MAAM,cAAc,GAAG,aAAa,CAAC,cAAc,IAAI,QAAQ,CAAC;QAChE,IAAI,eAAe,GAAG,cAAc,GAAG,CAAC,EAAE,CAAC;YACzC,IAAI,eAAe,EAAE,CAAC;gBACpB,OAAO,CAAC,IAAI,CACV,GAAG,gBAAgB,CAAC,EAAE,UAAU,EAAE,CAAC,2BAA2B,eAAe,gCAAgC,cAAc,cAAc,CAC1I,CAAC;YACJ,CAAC;YAED,MAAM,aAAa,GAA4C;gBAC7D,UAAU;gBACV,QAAQ,EAAE,eAAe;gBACzB,WAAW;gBACX,OAAO,EAAE,KAAK;gBACd,aAAa,EAAE,CAAC;gBAChB,eAAe,EAAE,CAAC;gBAClB,YAAY,EAAE,EAAE;gBAChB,eAAe;gBACf,OAAO,EAAE,IAAI;gBACb,KAAK,EAAE,gCAAgC,cAAc,EAAE;aACxD,CAAC;YAEF,aAAa,CAAC,OAAO,GAAG,iBAAiB,CAAC,oBAAoB,CAAC,aAAa,CAAC,CAAC;YAE9E,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAElC,sBAAsB,CAAC,IAAI,CAAC;gBAC1B,QAAQ,EAAE,eAAe;gBACzB,WAAW;gBACX,eAAe;gBACf,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,OAAO,EAAE,KAAK;gBACd,aAAa,EAAE,CAAC;aACjB,CAAC,CAAC;YAEH,eAAe,GAAG,QAAQ,CAAC,WAAW,GAAG,CAAC,CAAC,EAAE,EAAE,IAAI,IAAI,CAAC;YACxD,SAAS;QACX,CAAC;QAED,MAAM,YAAY,GAAG,aAAa,CAAC,oBAAoB,CAAC;QAExD,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,eAAe,GAIf;gBACJ,EAAE,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE;aAC/D,CAAC;YAEF,IAAI,CAAC,GAAG,WAAW,GAAG,CAAC,CAAC;YACxB,OAAO,CAAC,GAAG,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,oBAAoB,EAAE,CAAC;gBAC/D,MAAM,gBAAgB,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACrC,MAAM,iBAAiB,GAAG,CAAC,qBAAqB,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;gBACpF,qBAAqB,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,EAAE,iBAAiB,CAAC,CAAC;gBAClE,eAAe,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,KAAK,EAAE,CAAC,EAAE,eAAe,EAAE,iBAAiB,EAAE,CAAC,CAAC;gBACjG,CAAC,EAAE,CAAC;YACN,CAAC;YAED,IAAI,eAAe,EAAE,CAAC;gBACpB,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC5E,OAAO,CAAC,IAAI,CACV,GAAG,gBAAgB,CAAC,EAAE,UAAU,EAAE,CAAC,+BAA+B,eAAe,CAAC,MAAM,2BAA2B,SAAS,GAAG,CAChI,CAAC;YACJ,CAAC;YAED,MAAM,aAAa,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,EAAE,EAAE,CAC/E,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,eAAe,CAAC,CACpD,CAAC;YACF,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YAEtD,MAAM,uBAAuB,GAA8C,EAAE,CAAC;YAC9E,IAAI,yBAAyB,GAAkB,IAAI,CAAC;YACpD,IAAI,yBAAyB,GAAkB,IAAI,CAAC;YACpD,IAAI,eAAe,GAAG,KAAK,CAAC;YAE5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC7C,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;gBAC/B,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;gBAE9D,uBAAuB,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;gBAClD,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;gBACxC,eAAe,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;gBAC7C,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;gBAClD,aAAa,IAAI,MAAM,CAAC,aAAa,CAAC;gBACtC,kBAAkB,IAAI,MAAM,CAAC,kBAAkB,CAAC;gBAChD,cAAc,IAAI,MAAM,CAAC,cAAc,CAAC;gBACxC,sBAAsB,CAAC,IAAI,CAAC;oBAC1B,QAAQ,EAAE,MAAM,CAAC,EAAE;oBACnB,WAAW,EAAE,KAAK;oBAClB,eAAe;oBACf,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oBACnC,OAAO,EAAE,MAAM,CAAC,YAAY,CAAC,OAAO;oBACpC,aAAa,EAAE,MAAM,CAAC,YAAY,CAAC,aAAa;iBACjD,CAAC,CAAC;gBAEH,IAAI,sBAAsB,EAAE,CAAC;oBAC3B,IAAI,CAAC;wBACH,MAAM,sBAAsB,CAC1B,sBAAsB,EACtB;4BACE,UAAU;4BACV,QAAQ,EAAE,MAAM,CAAC,YAAY,CAAC,QAAQ;4BACtC,aAAa,EAAE,MAAM,CAAC,YAAY,CAAC,YAAY;4BAC/C,OAAO,EAAE,MAAM,CAAC,YAAY,CAAC,OAAO;4BACpC,oBAAoB;yBACrB,EACD,MAAM,CAAC,gBAAgB,EACvB,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,EACtD,YAAY,IAAI,EAAE,CACnB,CAAC;oBACJ,CAAC;oBAAC,OAAO,SAAS,EAAE,CAAC;wBACnB,OAAO,CAAC,KAAK,CACX,GAAG,gBAAgB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,uDAAuD,EAClI,SAAS,CACV,CAAC;oBACJ,CAAC;gBACH,CAAC;gBAED,IAAI,MAAM,CAAC,kBAAkB,EAAE,CAAC;oBAC9B,IAAI,CAAC;wBACH,MAAM,QAAQ,GAA4B,MAAM,sBAAsB,CACpE,MAAM,CAAC,kBAAkB,EACzB;4BACE,UAAU;4BACV,aAAa,EAAE,MAAM,CAAC,YAAY;4BAClC,QAAQ,EAAE,MAAM,CAAC,EAAE;4BACnB,WAAW,EAAE,KAAK;4BAClB,eAAe;4BACf,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;4BACzC,sBAAsB;4BACtB,YAAY;4BACZ,MAAM,EAAE,kBAAkB,EAAE,0BAA0B;4BACtD,uBAAuB,EAAE,uBAAuB;yBACjD,EACD,MAAM,CAAC,gBAAgB,EACvB,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,EACnC,YAAY,IAAI,EAAE,CACnB,CAAC;wBAEF,MAAM,CAAC,YAAY,CAAC,QAAQ,GAAG,QAAQ,CAAC;wBAExC,MAAM,aAAa,GAAG,sBAAsB,CAAC,IAAI,CAC/C,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC,eAAe,KAAK,eAAe,CACvE,CAAC;wBACF,IAAI,aAAa,EAAE,CAAC;4BAClB,aAAa,CAAC,QAAQ,GAAG,QAAQ,CAAC;wBACpC,CAAC;wBAED,IAAI,oBAAoB,EAAE,CAAC;4BACzB,IAAI,CAAC;gCACH,MAAM,WAAW,GAAG,CAAC,OAAY,EAAE,EAAE,CAAC,oBAAoB,CACxD,OAAO,CAAC,QAAQ,EAChB,OAAO,CAAC,YAAY,EACpB,OAAO,CAAC,oBAAoB,CAC7B,CAAC;gCAEF,MAAM,sBAAsB,CAC1B,WAAW,EACX,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,CAAC,YAAY,EAAE,oBAAoB,EAAE,EACrE,kBAAkB,EAAE,gBAAgB,EACpC,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,EACnC,YAAY,IAAI,EAAE,CACnB,CAAC;4BACJ,CAAC;4BAAC,OAAO,SAAS,EAAE,CAAC;gCACnB,OAAO,CAAC,KAAK,CACX,GAAG,gBAAgB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,qDAAqD,EAC7G,SAAS,CACV,CAAC;4BACJ,CAAC;wBACH,CAAC;wBAED,IAAI,CAAC,KAAK,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BAClC,IAAI,QAAQ,CAAC,MAAM,KAAK,sBAAsB,CAAC,SAAS,EAAE,CAAC;gCACzD,eAAe,GAAG,IAAI,CAAC;gCACvB,iBAAiB,GAAG,QAAQ,CAAC,QAAQ,EAAE,MAAM,IAAI,UAAU,MAAM,CAAC,EAAE,sBAAsB,CAAC;4BAC7F,CAAC;iCAAM,IAAI,QAAQ,CAAC,MAAM,KAAK,sBAAsB,CAAC,IAAI,EAAE,CAAC;gCAC3D,yBAAyB,GAAG,QAAQ,CAAC,cAAc,IAAI,IAAI,CAAC;4BAC9D,CAAC;iCAAM,IAAI,QAAQ,CAAC,MAAM,KAAK,sBAAsB,CAAC,IAAI,EAAE,CAAC;gCAC3D,yBAAyB,GAAG,QAAQ,CAAC,cAAc,IAAI,IAAI,CAAC;4BAC9D,CAAC;4BAED,IAAI,eAAe,IAAI,QAAQ,CAAC,MAAM,KAAK,sBAAsB,CAAC,QAAQ,EAAE,CAAC;gCAC3E,OAAO,CAAC,IAAI,CACV,GAAG,gBAAgB,CAAC,EAAE,UAAU,EAAE,CAAC,8CAA8C,QAAQ,CAAC,MAAM,EAAE,EAClG,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAC/D,CAAC;4BACJ,CAAC;wBACH,CAAC;oBACH,CAAC;oBAAC,OAAO,aAAa,EAAE,CAAC;wBACvB,OAAO,CAAC,KAAK,CACX,GAAG,gBAAgB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,qDAAqD,MAAM,CAAC,EAAE,GAAG,EACzH,aAAa,CACd,CAAC;oBACJ,CAAC;gBACH,CAAC;gBAED,IAAI,qBAAqB,IAAI,MAAM,CAAC,cAAc,GAAG,CAAC,EAAE,CAAC;oBACvD,eAAe,GAAG,IAAI,CAAC;oBACvB,iBAAiB,GAAG,UAAU,MAAM,CAAC,EAAE,6BAA6B,CAAC;oBACrE,MAAM;gBACR,CAAC;YACH,CAAC;YAED,MAAM,kBAAkB,GAAG,eAAe,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,kBAAkB,CAAC,CAAC;gBACjG,YAAY,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;YAE1E,IAAI,kBAAkB,EAAE,CAAC;gBACvB,IAAI,kBAAkB,CAAC,WAAW,IAAI,KAAK,CAAC,OAAO,CAAC,kBAAkB,CAAC,WAAW,CAAC,IAAI,kBAAkB,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACjI,IAAI,eAAe,EAAE,CAAC;wBACpB,OAAO,CAAC,IAAI,CACV,GAAG,gBAAgB,CAAC,EAAE,UAAU,EAAE,CAAC,0BAA0B,kBAAkB,CAAC,WAAW,CAAC,MAAM,4CAA4C,CAC/I,CAAC;oBACJ,CAAC;oBAED,kBAAkB,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,GAAG,EAAE,EAAE;wBACxD,MAAM,WAAW,GAAG,SAAS,CAAC,EAAE,IAAI,kBAAkB,IAAI,CAAC,GAAG,EAAE,IAAI,GAAG,EAAE,CAAC;wBAC1E,MAAM,eAAe,GAAG,EAAE,GAAG,SAAS,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC;wBAE1D,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,eAAe,CAAC,CAAC;wBAE7C,IAAI,eAAe,EAAE,CAAC;4BACpB,OAAO,CAAC,IAAI,CACV,GAAG,gBAAgB,CAAC,EAAE,UAAU,EAAE,CAAC,yCAAyC,WAAW,cAAc,CAAC,GAAG,GAAG,EAAE,CAC/G,CAAC;wBACJ,CAAC;oBACH,CAAC,CAAC,CAAC;gBACL,CAAC;gBAED,IAAI,kBAAkB,CAAC,SAAS,IAAI,KAAK,CAAC,OAAO,CAAC,kBAAkB,CAAC,SAAS,CAAC,IAAI,kBAAkB,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC3H,MAAM,UAAU,GAAG,eAAe,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC;oBAEtE,IAAI,eAAe,EAAE,CAAC;wBACpB,OAAO,CAAC,IAAI,CACV,GAAG,gBAAgB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,0BAA0B,kBAAkB,CAAC,SAAS,CAAC,MAAM,gCAAgC,UAAU,CAAC,EAAE,GAAG,CAC1K,CAAC;oBACJ,CAAC;oBAED,kBAAkB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;wBAChD,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBACnC,CAAC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAED,IAAI,eAAe,EAAE,CAAC;gBACpB,eAAe,GAAG,IAAI,CAAC;gBACvB,MAAM;YACR,CAAC;YAED,IAAI,yBAAyB,EAAE,CAAC;gBAC9B,eAAe,GAAG,yBAAyB,CAAC;YAC9C,CAAC;iBAAM,IAAI,yBAAyB,EAAE,CAAC;gBACrC,MAAM,eAAe,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,yBAAyB,CAAC,CAAC;gBACpF,IAAI,eAAe,KAAK,CAAC,CAAC,EAAE,CAAC;oBAC3B,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,eAAe,EAAE,OAAO,EAAE,EAAE,CAAC;wBAC3D,MAAM,aAAa,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;wBACxC,MAAM,aAAa,GAA4C;4BAC7D,UAAU;4BACV,QAAQ,EAAE,aAAa,CAAC,EAAE;4BAC1B,WAAW,EAAE,OAAO;4BACpB,OAAO,EAAE,IAAI;4BACb,aAAa,EAAE,CAAC;4BAChB,eAAe,EAAE,CAAC;4BAClB,YAAY,EAAE,EAAE;4BAChB,eAAe,EAAE,CAAC;4BAClB,OAAO,EAAE,IAAI;yBACd,CAAC;wBAEF,aAAa,CAAC,OAAO,GAAG,iBAAiB,CAAC,oBAAoB,CAAC,aAAa,CAAC,CAAC;wBAE9E,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;wBAElC,sBAAsB,CAAC,IAAI,CAAC;4BAC1B,QAAQ,EAAE,aAAa,CAAC,EAAE;4BAC1B,WAAW,EAAE,OAAO;4BACpB,eAAe,EAAE,CAAC;4BAClB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;4BACnC,OAAO,EAAE,IAAI;4BACb,aAAa,EAAE,CAAC;4BAChB,QAAQ,EAAE,EAAE,MAAM,EAAE,sBAAsB,CAAC,IAAI,EAAE;yBAClD,CAAC,CAAC;oBACL,CAAC;oBACD,eAAe,GAAG,yBAAyB,CAAC;gBAC9C,CAAC;qBAAM,CAAC;oBACN,eAAe,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,IAAI,CAAC;gBAC5C,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,eAAe,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,IAAI,CAAC;YAC5C,CAAC;QAEH,CAAC;aAAM,CAAC;YACN,IAAI,eAAe,EAAE,CAAC;gBACpB,OAAO,CAAC,IAAI,CACV,GAAG,gBAAgB,CAAC,EAAE,UAAU,EAAE,CAAC,uCAAuC,aAAa,CAAC,EAAE,gBAAgB,eAAe,GAAG,CAC7H,CAAC;YACJ,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,aAAa,EAAE,WAAW,EAAE,eAAe,CAAC,CAAC;YAEtF,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YACxC,eAAe,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;YAC7C,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;YAClD,aAAa,IAAI,MAAM,CAAC,aAAa,CAAC;YACtC,kBAAkB,IAAI,MAAM,CAAC,kBAAkB,CAAC;YAChD,cAAc,IAAI,MAAM,CAAC,cAAc,CAAC;YACxC,sBAAsB,CAAC,IAAI,CAAC;gBAC1B,QAAQ,EAAE,eAAe;gBACzB,WAAW;gBACX,eAAe;gBACf,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,OAAO,EAAE,MAAM,CAAC,YAAY,CAAC,OAAO;gBACpC,aAAa,EAAE,MAAM,CAAC,YAAY,CAAC,aAAa;aACjD,CAAC,CAAC;YAEH,IAAI,sBAAsB,EAAE,CAAC;gBAC3B,IAAI,CAAC;oBACH,MAAM,sBAAsB,CAC1B,sBAAsB,EACtB;wBACE,UAAU;wBACV,QAAQ,EAAE,MAAM,CAAC,YAAY,CAAC,QAAQ;wBACtC,aAAa,EAAE,MAAM,CAAC,YAAY,CAAC,YAAY;wBAC/C,OAAO,EAAE,MAAM,CAAC,YAAY,CAAC,OAAO;wBACpC,oBAAoB;qBACrB,EACD,aAAa,CAAC,gBAAgB,EAC9B,EAAE,UAAU,EAAE,QAAQ,EAAE,eAAe,EAAE,EACzC,YAAY,IAAI,EAAE,CACnB,CAAC;gBACJ,CAAC;gBAAC,OAAO,SAAS,EAAE,CAAC;oBACnB,OAAO,CAAC,KAAK,CACX,GAAG,gBAAgB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC,uDAAuD,EACrH,SAAS,CACV,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,IAAI,QAAQ,GAA4B,EAAE,MAAM,EAAE,sBAAsB,CAAC,QAAQ,EAAE,CAAC;YAEpF,IAAI,aAAa,CAAC,kBAAkB,EAAE,CAAC;gBACrC,IAAI,CAAC;oBACH,QAAQ,GAAG,MAAM,sBAAsB,CACrC,aAAa,CAAC,kBAAkB,EAChC;wBACE,UAAU;wBACV,aAAa,EAAE,MAAM,CAAC,YAAY;wBAClC,QAAQ,EAAE,aAAa,CAAC,EAAE;wBAC1B,WAAW;wBACX,eAAe;wBACf,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;wBACzC,sBAAsB;wBACtB,YAAY;wBACZ,MAAM,EAAE,kBAAkB,EAAE,0BAA0B;qBACvD,EACD,aAAa,CAAC,gBAAgB,EAC9B,EAAE,UAAU,EAAE,QAAQ,EAAE,eAAe,EAAE,EACzC,YAAY,IAAI,EAAE,CACnB,CAAC;oBAEF,MAAM,CAAC,YAAY,CAAC,QAAQ,GAAG,QAAQ,CAAC;oBAExC,MAAM,aAAa,GAAG,sBAAsB,CAAC,IAAI,CAC/C,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,eAAe,IAAI,CAAC,CAAC,eAAe,KAAK,eAAe,CAC7E,CAAC;oBACF,IAAI,aAAa,EAAE,CAAC;wBAClB,aAAa,CAAC,QAAQ,GAAG,QAAQ,CAAC;oBACpC,CAAC;oBAED,IAAI,eAAe,EAAE,CAAC;wBACpB,OAAO,CAAC,IAAI,CACV,GAAG,gBAAgB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC,2BAA2B,eAAe,eAAe,QAAQ,CAAC,MAAM,EAAE,EACxI,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAC/D,CAAC;oBACJ,CAAC;oBAED,IAAI,oBAAoB,EAAE,CAAC;wBACzB,IAAI,CAAC;4BACH,MAAM,WAAW,GAAG,CAAC,OAAY,EAAE,EAAE,CAAC,oBAAoB,CACxD,OAAO,CAAC,QAAQ,EAChB,OAAO,CAAC,YAAY,EACpB,OAAO,CAAC,oBAAoB,CAC7B,CAAC;4BAEF,MAAM,sBAAsB,CAC1B,WAAW,EACX,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,CAAC,YAAY,EAAE,oBAAoB,EAAE,EACrE,kBAAkB,EAAE,gBAAgB,EACpC,EAAE,UAAU,EAAE,QAAQ,EAAE,eAAe,EAAE,EACzC,YAAY,IAAI,EAAE,CACnB,CAAC;wBACJ,CAAC;wBAAC,OAAO,SAAS,EAAE,CAAC;4BACnB,OAAO,CAAC,KAAK,CACX,GAAG,gBAAgB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC,qDAAqD,EACnH,SAAS,CACV,CAAC;wBACJ,CAAC;oBACH,CAAC;gBACH,CAAC;gBAAC,OAAO,aAAa,EAAE,CAAC;oBACvB,OAAO,CAAC,KAAK,CACX,GAAG,gBAAgB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,CAAC,EAAE,EAAE,CAAC,qDAAqD,aAAa,CAAC,EAAE,GAAG,EACvI,aAAa,CACd,CAAC;oBACF,QAAQ,GAAG,EAAE,MAAM,EAAE,sBAAsB,CAAC,QAAQ,EAAE,CAAC;gBACzD,CAAC;YACH,CAAC;YAED,IAAI,QAAQ,CAAC,WAAW,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,QAAQ,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACnG,IAAI,eAAe,EAAE,CAAC;oBACpB,OAAO,CAAC,IAAI,CACV,GAAG,gBAAgB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC,0BAA0B,QAAQ,CAAC,WAAW,CAAC,MAAM,8BAA8B,eAAe,GAAG,CACpK,CAAC;gBACJ,CAAC;gBAED,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,GAAG,EAAE,EAAE;oBAC9C,MAAM,WAAW,GAAG,SAAS,CAAC,EAAE,IAAI,kBAAkB,IAAI,CAAC,GAAG,EAAE,IAAI,GAAG,EAAE,CAAC;oBAC1E,MAAM,eAAe,GAAG,EAAE,GAAG,SAAS,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC;oBAE1D,QAAQ,CAAC,MAAM,CAAC,WAAW,GAAG,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,eAAe,CAAC,CAAC;oBAE3D,IAAI,eAAe,EAAE,CAAC;wBACpB,OAAO,CAAC,IAAI,CACV,GAAG,gBAAgB,CAAC,EAAE,UAAU,EAAE,CAAC,yCAAyC,WAAW,cAAc,WAAW,GAAG,CAAC,GAAG,GAAG,EAAE,CAC7H,CAAC;oBACJ,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC;YAED,IAAI,QAAQ,CAAC,SAAS,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,QAAQ,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7F,IAAI,eAAe,EAAE,CAAC;oBACpB,OAAO,CAAC,IAAI,CACV,GAAG,gBAAgB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC,0BAA0B,QAAQ,CAAC,SAAS,CAAC,MAAM,gCAAgC,eAAe,oBAAoB,CACrL,CAAC;gBACJ,CAAC;gBAED,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;oBACtC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACtC,CAAC,CAAC,CAAC;gBAEH,IAAI,eAAe,EAAE,CAAC;oBACpB,OAAO,CAAC,IAAI,CACV,GAAG,gBAAgB,CAAC,EAAE,UAAU,EAAE,CAAC,0CAA0C,aAAa,CAAC,EAAE,SAAS,QAAQ,CAAC,SAAS,CAAC,MAAM,oCAAoC,eAAe,GAAG,CAAC,GAAG,CAC1L,CAAC;gBACJ,CAAC;gBAED,MAAM,iBAAiB,GAAG,MAAM,mBAAmB,CAAC,aAAa,EAAE,WAAW,EAAE,eAAe,GAAG,CAAC,CAAC,CAAC;gBAErG,aAAa,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,iBAAiB,CAAC,YAAY,CAAC;gBACzE,eAAe,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,YAAY,CAAC,CAAC;gBACxD,gBAAgB,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;gBAC7D,aAAa,IAAI,iBAAiB,CAAC,aAAa,CAAC;gBACjD,kBAAkB,IAAI,iBAAiB,CAAC,kBAAkB,CAAC;gBAC3D,cAAc,IAAI,iBAAiB,CAAC,cAAc,CAAC;gBAEnD,sBAAsB,CAAC,IAAI,CAAC;oBAC1B,QAAQ,EAAE,eAAe;oBACzB,WAAW;oBACX,eAAe,EAAE,eAAe,GAAG,CAAC;oBACpC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oBACnC,OAAO,EAAE,iBAAiB,CAAC,YAAY,CAAC,OAAO;oBAC/C,aAAa,EAAE,iBAAiB,CAAC,YAAY,CAAC,aAAa;iBAC5D,CAAC,CAAC;gBAEH,MAAM,CAAC,YAAY,GAAG,iBAAiB,CAAC,YAAY,CAAC;gBACrD,MAAM,CAAC,YAAY,GAAG,iBAAiB,CAAC,YAAY,CAAC;YACvD,CAAC;YAED,QAAQ,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACxB,KAAK,sBAAsB,CAAC,SAAS;oBACnC,eAAe,GAAG,IAAI,CAAC;oBACvB,iBAAiB,GAAG,QAAQ,CAAC,QAAQ,EAAE,MAAM,IAAI,UAAU,eAAe,sBAAsB,CAAC;oBACjG,eAAe,GAAG,IAAI,CAAC;oBACvB,MAAM;gBAER,KAAK,sBAAsB,CAAC,IAAI;oBAC9B,IAAI,QAAQ,CAAC,cAAc,EAAE,CAAC;wBAC5B,MAAM,WAAW,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,QAAQ,CAAC,cAAc,CAAC,CAAC;wBAC9E,IAAI,WAAW,KAAK,CAAC,CAAC,EAAE,CAAC;4BACvB,OAAO,CAAC,KAAK,CACX,GAAG,gBAAgB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC,uCAAuC,QAAQ,CAAC,cAAc,aAAa,CAC1I,CAAC;4BACF,eAAe,GAAG,IAAI,CAAC;4BACvB,iBAAiB,GAAG,uBAAuB,QAAQ,CAAC,cAAc,aAAa,CAAC;4BAChF,eAAe,GAAG,IAAI,CAAC;wBACzB,CAAC;6BAAM,CAAC;4BACN,eAAe,GAAG,QAAQ,CAAC,cAAc,CAAC;wBAC5C,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,eAAe,GAAG,QAAQ,CAAC,WAAW,GAAG,CAAC,CAAC,EAAE,EAAE,IAAI,IAAI,CAAC;oBAC1D,CAAC;oBACD,MAAM;gBAER,KAAK,sBAAsB,CAAC,IAAI;oBAC9B,IAAI,CAAC,aAAa,CAAC,SAAS,IAAI,aAAa,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;wBACtE,OAAO,CAAC,IAAI,CACV,GAAG,gBAAgB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC,2BAA2B,eAAe,kEAAkE,CAC3K,CAAC;wBACF,eAAe,GAAG,QAAQ,CAAC,WAAW,GAAG,CAAC,CAAC,EAAE,EAAE,IAAI,IAAI,CAAC;wBACxD,MAAM;oBACR,CAAC;oBAED,IAAI,QAAQ,CAAC,cAAc,EAAE,CAAC;wBAC5B,MAAM,eAAe,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,QAAQ,CAAC,cAAc,CAAC,CAAC;wBAClF,IAAI,eAAe,KAAK,CAAC,CAAC,EAAE,CAAC;4BAC3B,KAAK,IAAI,OAAO,GAAG,WAAW,GAAG,CAAC,EAAE,OAAO,GAAG,eAAe,EAAE,OAAO,EAAE,EAAE,CAAC;gCACzE,MAAM,aAAa,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;gCACxC,MAAM,aAAa,GAA4C;oCAC7D,UAAU;oCACV,QAAQ,EAAE,aAAa,CAAC,EAAE;oCAC1B,WAAW,EAAE,OAAO;oCACpB,OAAO,EAAE,IAAI;oCACb,aAAa,EAAE,CAAC;oCAChB,eAAe,EAAE,CAAC;oCAClB,YAAY,EAAE,EAAE;oCAChB,eAAe,EAAE,CAAC;oCAClB,OAAO,EAAE,IAAI;iCACd,CAAC;gCACF,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gCAElC,sBAAsB,CAAC,IAAI,CAAC;oCAC1B,QAAQ,EAAE,aAAa,CAAC,EAAE;oCAC1B,WAAW,EAAE,OAAO;oCACpB,eAAe,EAAE,CAAC;oCAClB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oCACnC,OAAO,EAAE,IAAI;oCACb,aAAa,EAAE,CAAC;oCAChB,QAAQ,EAAE,EAAE,MAAM,EAAE,sBAAsB,CAAC,IAAI,EAAE;iCAClD,CAAC,CAAC;4BACL,CAAC;4BACD,eAAe,GAAG,QAAQ,CAAC,cAAc,CAAC;wBAC5C,CAAC;6BAAM,CAAC;4BACN,eAAe,GAAG,QAAQ,CAAC,WAAW,GAAG,CAAC,CAAC,EAAE,EAAE,IAAI,IAAI,CAAC;wBAC1D,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,MAAM,UAAU,GAAG,QAAQ,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC;wBAC7C,IAAI,UAAU,EAAE,CAAC;4BACf,MAAM,aAAa,GAA4C;gCAC7D,UAAU;gCACV,QAAQ,EAAE,UAAU,CAAC,EAAE;gCACvB,WAAW,EAAE,WAAW,GAAG,CAAC;gCAC5B,OAAO,EAAE,IAAI;gCACb,aAAa,EAAE,CAAC;gCAChB,eAAe,EAAE,CAAC;gCAClB,YAAY,EAAE,EAAE;gCAChB,eAAe,EAAE,CAAC;gCAClB,OAAO,EAAE,IAAI;6BACd,CAAC;4BACF,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;4BAElC,sBAAsB,CAAC,IAAI,CAAC;gCAC1B,QAAQ,EAAE,UAAU,CAAC,EAAE;gCACvB,WAAW,EAAE,WAAW,GAAG,CAAC;gCAC5B,eAAe,EAAE,CAAC;gCAClB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gCACnC,OAAO,EAAE,IAAI;gCACb,aAAa,EAAE,CAAC;gCAChB,QAAQ,EAAE,EAAE,MAAM,EAAE,sBAAsB,CAAC,IAAI,EAAE;6BAClD,CAAC,CAAC;wBACL,CAAC;wBACD,eAAe,GAAG,QAAQ,CAAC,WAAW,GAAG,CAAC,CAAC,EAAE,EAAE,IAAI,IAAI,CAAC;oBAC1D,CAAC;oBACD,MAAM;gBAER,KAAK,sBAAsB,CAAC,MAAM;oBAChC,IAAI,CAAC,aAAa,CAAC,WAAW,IAAI,aAAa,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;wBAC1E,OAAO,CAAC,IAAI,CACV,GAAG,gBAAgB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC,2BAA2B,eAAe,sEAAsE,CAC/K,CAAC;wBACF,eAAe,GAAG,QAAQ,CAAC,WAAW,GAAG,CAAC,CAAC,EAAE,EAAE,IAAI,IAAI,CAAC;wBACxD,MAAM;oBACR,CAAC;oBACD,eAAe,GAAG,aAAa,CAAC,EAAE,CAAC;oBACnC,MAAM;gBAER,KAAK,sBAAsB,CAAC,QAAQ,CAAC;gBACrC;oBACE,eAAe,GAAG,QAAQ,CAAC,WAAW,GAAG,CAAC,CAAC,EAAE,EAAE,IAAI,IAAI,CAAC;oBACxD,MAAM;YACV,CAAC;YAED,IAAI,qBAAqB,IAAI,MAAM,CAAC,cAAc,GAAG,CAAC,EAAE,CAAC;gBACvD,eAAe,GAAG,IAAI,CAAC;gBACvB,iBAAiB,GAAG,UAAU,aAAa,CAAC,EAAE,SAAS,CAAC;gBACxD,MAAM;YACR,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,cAAc,IAAI,qBAAqB,EAAE,CAAC;QAC5C,eAAe,GAAG,IAAI,CAAC;QACvB,iBAAiB,GAAG,yCAAyC,qBAAqB,GAAG,CAAC;QAEtF,IAAI,eAAe,EAAE,CAAC;YACpB,OAAO,CAAC,IAAI,CACV,GAAG,gBAAgB,CAAC,EAAE,UAAU,EAAE,CAAC,mBAAmB,iBAAiB,EAAE,CAC1E,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO;QACL,aAAa;QACb,eAAe;QACf,gBAAgB;QAChB,sBAAsB;QACtB,aAAa;QACb,kBAAkB;QAClB,cAAc;QACd,eAAe;QACf,iBAAiB;KAClB,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"execute-concurrently.d.ts","sourceRoot":"","sources":["../../src/utilities/execute-concurrently.ts"],"names":[],"mappings":"AACA,OAAO,EACH,mBAAmB,EACnB,oBAAoB,EACpB,oCAAoC,EACvC,MAAM,mBAAmB,CAAC;AAO3B,wBAAsB,mBAAmB,CAAC,eAAe,GAAG,GAAG,EAAE,gBAAgB,GAAG,GAAG,EACnF,QAAQ,GAAE,mBAAmB,CAAC,eAAe,EAAE,gBAAgB,CAAC,EAAO,EACvE,uBAAuB,GAAE,oCAAoC,CAAC,eAAe,EAAE,gBAAgB,CAAM,GACtG,OAAO,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAqLnD"}
1
+ {"version":3,"file":"execute-concurrently.d.ts","sourceRoot":"","sources":["../../src/utilities/execute-concurrently.ts"],"names":[],"mappings":"AACA,OAAO,EACH,mBAAmB,EACnB,oBAAoB,EAEpB,oCAAoC,EACvC,MAAM,mBAAmB,CAAC;AAO3B,wBAAsB,mBAAmB,CAAC,eAAe,GAAG,GAAG,EAAE,gBAAgB,GAAG,GAAG,EACnF,QAAQ,GAAE,mBAAmB,CAAC,eAAe,EAAE,gBAAgB,CAAC,EAAO,EACvE,uBAAuB,GAAE,oCAAoC,CAAC,eAAe,EAAE,gBAAgB,CAAM,GACtG,OAAO,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAoLnD"}