@emmvish/stable-request 2.8.4 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (138) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +1153 -2319
  3. package/dist/constants/index.d.ts +0 -10
  4. package/dist/constants/index.d.ts.map +1 -1
  5. package/dist/constants/index.js +0 -113
  6. package/dist/constants/index.js.map +1 -1
  7. package/dist/core/index.d.ts +0 -5
  8. package/dist/core/index.d.ts.map +1 -1
  9. package/dist/core/index.js +0 -5
  10. package/dist/core/index.js.map +1 -1
  11. package/dist/core/stable-request.d.ts.map +1 -1
  12. package/dist/core/stable-request.js +22 -7
  13. package/dist/core/stable-request.js.map +1 -1
  14. package/dist/enums/index.d.ts +0 -37
  15. package/dist/enums/index.d.ts.map +1 -1
  16. package/dist/enums/index.js +0 -43
  17. package/dist/enums/index.js.map +1 -1
  18. package/dist/index.d.ts +4 -4
  19. package/dist/index.d.ts.map +1 -1
  20. package/dist/index.js +18 -3
  21. package/dist/index.js.map +1 -1
  22. package/dist/types/index.d.ts +100 -1135
  23. package/dist/types/index.d.ts.map +1 -1
  24. package/dist/utilities/index.d.ts +0 -18
  25. package/dist/utilities/index.d.ts.map +1 -1
  26. package/dist/utilities/index.js +0 -18
  27. package/dist/utilities/index.js.map +1 -1
  28. package/dist/utilities/infrastructure-persistence.d.ts +0 -1
  29. package/dist/utilities/infrastructure-persistence.d.ts.map +1 -1
  30. package/dist/utilities/infrastructure-persistence.js +12 -15
  31. package/dist/utilities/infrastructure-persistence.js.map +1 -1
  32. package/dist/utilities/metrics-aggregator.d.ts +2 -13
  33. package/dist/utilities/metrics-aggregator.d.ts.map +1 -1
  34. package/dist/utilities/metrics-aggregator.js +9 -251
  35. package/dist/utilities/metrics-aggregator.js.map +1 -1
  36. package/dist/utilities/metrics-validator.d.ts +6 -76
  37. package/dist/utilities/metrics-validator.d.ts.map +1 -1
  38. package/dist/utilities/metrics-validator.js +12 -181
  39. package/dist/utilities/metrics-validator.js.map +1 -1
  40. package/dist/utilities/validate-trial-mode-probabilities.js +2 -2
  41. package/dist/utilities/validate-trial-mode-probabilities.js.map +1 -1
  42. package/package.json +20 -24
  43. package/dist/core/stable-api-gateway.d.ts +0 -4
  44. package/dist/core/stable-api-gateway.d.ts.map +0 -1
  45. package/dist/core/stable-api-gateway.js +0 -136
  46. package/dist/core/stable-api-gateway.js.map +0 -1
  47. package/dist/core/stable-function.d.ts +0 -11
  48. package/dist/core/stable-function.d.ts.map +0 -1
  49. package/dist/core/stable-function.js +0 -340
  50. package/dist/core/stable-function.js.map +0 -1
  51. package/dist/core/stable-scheduler.d.ts +0 -71
  52. package/dist/core/stable-scheduler.d.ts.map +0 -1
  53. package/dist/core/stable-scheduler.js +0 -768
  54. package/dist/core/stable-scheduler.js.map +0 -1
  55. package/dist/core/stable-workflow-graph.d.ts +0 -3
  56. package/dist/core/stable-workflow-graph.d.ts.map +0 -1
  57. package/dist/core/stable-workflow-graph.js +0 -5
  58. package/dist/core/stable-workflow-graph.js.map +0 -1
  59. package/dist/core/stable-workflow.d.ts +0 -3
  60. package/dist/core/stable-workflow.d.ts.map +0 -1
  61. package/dist/core/stable-workflow.js +0 -362
  62. package/dist/core/stable-workflow.js.map +0 -1
  63. package/dist/stable-runner/index.d.ts +0 -2
  64. package/dist/stable-runner/index.d.ts.map +0 -1
  65. package/dist/stable-runner/index.js +0 -324
  66. package/dist/stable-runner/index.js.map +0 -1
  67. package/dist/utilities/concurrency-limiter.d.ts +0 -46
  68. package/dist/utilities/concurrency-limiter.d.ts.map +0 -1
  69. package/dist/utilities/concurrency-limiter.js +0 -172
  70. package/dist/utilities/concurrency-limiter.js.map +0 -1
  71. package/dist/utilities/execute-branch-workflow.d.ts +0 -3
  72. package/dist/utilities/execute-branch-workflow.d.ts.map +0 -1
  73. package/dist/utilities/execute-branch-workflow.js +0 -730
  74. package/dist/utilities/execute-branch-workflow.js.map +0 -1
  75. package/dist/utilities/execute-concurrently.d.ts +0 -3
  76. package/dist/utilities/execute-concurrently.d.ts.map +0 -1
  77. package/dist/utilities/execute-concurrently.js +0 -258
  78. package/dist/utilities/execute-concurrently.js.map +0 -1
  79. package/dist/utilities/execute-gateway-item.d.ts +0 -6
  80. package/dist/utilities/execute-gateway-item.d.ts.map +0 -1
  81. package/dist/utilities/execute-gateway-item.js +0 -127
  82. package/dist/utilities/execute-gateway-item.js.map +0 -1
  83. package/dist/utilities/execute-non-linear-workflow.d.ts +0 -3
  84. package/dist/utilities/execute-non-linear-workflow.d.ts.map +0 -1
  85. package/dist/utilities/execute-non-linear-workflow.js +0 -483
  86. package/dist/utilities/execute-non-linear-workflow.js.map +0 -1
  87. package/dist/utilities/execute-phase.d.ts +0 -3
  88. package/dist/utilities/execute-phase.d.ts.map +0 -1
  89. package/dist/utilities/execute-phase.js +0 -129
  90. package/dist/utilities/execute-phase.js.map +0 -1
  91. package/dist/utilities/execute-sequentially.d.ts +0 -3
  92. package/dist/utilities/execute-sequentially.d.ts.map +0 -1
  93. package/dist/utilities/execute-sequentially.js +0 -49
  94. package/dist/utilities/execute-sequentially.js.map +0 -1
  95. package/dist/utilities/execute-with-timeout.d.ts +0 -6
  96. package/dist/utilities/execute-with-timeout.d.ts.map +0 -1
  97. package/dist/utilities/execute-with-timeout.js +0 -28
  98. package/dist/utilities/execute-with-timeout.js.map +0 -1
  99. package/dist/utilities/execute-workflow-graph.d.ts +0 -3
  100. package/dist/utilities/execute-workflow-graph.d.ts.map +0 -1
  101. package/dist/utilities/execute-workflow-graph.js +0 -429
  102. package/dist/utilities/execute-workflow-graph.js.map +0 -1
  103. package/dist/utilities/extract-common-request-config-options.d.ts +0 -3
  104. package/dist/utilities/extract-common-request-config-options.d.ts.map +0 -1
  105. package/dist/utilities/extract-common-request-config-options.js +0 -12
  106. package/dist/utilities/extract-common-request-config-options.js.map +0 -1
  107. package/dist/utilities/fn-exec.d.ts +0 -3
  108. package/dist/utilities/fn-exec.d.ts.map +0 -1
  109. package/dist/utilities/fn-exec.js +0 -66
  110. package/dist/utilities/fn-exec.js.map +0 -1
  111. package/dist/utilities/function-cache-manager.d.ts +0 -32
  112. package/dist/utilities/function-cache-manager.d.ts.map +0 -1
  113. package/dist/utilities/function-cache-manager.js +0 -172
  114. package/dist/utilities/function-cache-manager.js.map +0 -1
  115. package/dist/utilities/prepare-api-function-options.d.ts +0 -3
  116. package/dist/utilities/prepare-api-function-options.d.ts.map +0 -1
  117. package/dist/utilities/prepare-api-function-options.js +0 -51
  118. package/dist/utilities/prepare-api-function-options.js.map +0 -1
  119. package/dist/utilities/prepare-api-request-data.d.ts +0 -3
  120. package/dist/utilities/prepare-api-request-data.d.ts.map +0 -1
  121. package/dist/utilities/prepare-api-request-data.js +0 -15
  122. package/dist/utilities/prepare-api-request-data.js.map +0 -1
  123. package/dist/utilities/prepare-api-request-options.d.ts +0 -3
  124. package/dist/utilities/prepare-api-request-options.d.ts.map +0 -1
  125. package/dist/utilities/prepare-api-request-options.js +0 -22
  126. package/dist/utilities/prepare-api-request-options.js.map +0 -1
  127. package/dist/utilities/rate-limiter.d.ts +0 -49
  128. package/dist/utilities/rate-limiter.d.ts.map +0 -1
  129. package/dist/utilities/rate-limiter.js +0 -197
  130. package/dist/utilities/rate-limiter.js.map +0 -1
  131. package/dist/utilities/validate-workflow-graph.d.ts +0 -7
  132. package/dist/utilities/validate-workflow-graph.d.ts.map +0 -1
  133. package/dist/utilities/validate-workflow-graph.js +0 -235
  134. package/dist/utilities/validate-workflow-graph.js.map +0 -1
  135. package/dist/utilities/workflow-graph-builder.d.ts +0 -37
  136. package/dist/utilities/workflow-graph-builder.d.ts.map +0 -1
  137. package/dist/utilities/workflow-graph-builder.js +0 -225
  138. package/dist/utilities/workflow-graph-builder.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"execute-branch-workflow.js","sourceRoot":"","sources":["../../src/utilities/execute-branch-workflow.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- import { API_GATEWAY_REQUEST, API_GATEWAY_ITEM, API_GATEWAY_RESPONSE, CONCURRENT_REQUEST_EXECUTION_OPTIONS } from '../types/index.js';
2
- export declare function executeConcurrently<RequestDataType = any, ResponseDataType = any, FunctionArgsType extends any[] = any[], FunctionReturnType = any>(items?: API_GATEWAY_REQUEST<RequestDataType, ResponseDataType>[] | API_GATEWAY_ITEM<RequestDataType, ResponseDataType, FunctionArgsType, FunctionReturnType>[], requestExecutionOptions?: CONCURRENT_REQUEST_EXECUTION_OPTIONS<RequestDataType, ResponseDataType, FunctionArgsType, FunctionReturnType>): Promise<API_GATEWAY_RESPONSE<ResponseDataType | FunctionReturnType>[]>;
3
- //# sourceMappingURL=execute-concurrently.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"execute-concurrently.d.ts","sourceRoot":"","sources":["../../src/utilities/execute-concurrently.ts"],"names":[],"mappings":"AACA,OAAO,EACH,mBAAmB,EACnB,gBAAgB,EAChB,oBAAoB,EACpB,oCAAoC,EACvC,MAAM,mBAAmB,CAAC;AAM3B,wBAAsB,mBAAmB,CAAC,eAAe,GAAG,GAAG,EAAE,gBAAgB,GAAG,GAAG,EAAE,gBAAgB,SAAS,GAAG,EAAE,GAAG,GAAG,EAAE,EAAE,kBAAkB,GAAG,GAAG,EACrJ,KAAK,GAAE,mBAAmB,CAAC,eAAe,EAAE,gBAAgB,CAAC,EAAE,GAAG,gBAAgB,CAAC,eAAe,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,kBAAkB,CAAC,EAAO,EAClK,uBAAuB,GAAE,oCAAoC,CAAC,eAAe,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,kBAAkB,CAAM,GAC5I,OAAO,CAAC,oBAAoB,CAAC,gBAAgB,GAAG,kBAAkB,CAAC,EAAE,CAAC,CAqSxE"}
@@ -1,258 +0,0 @@
1
- import { RequestOrFunction } from '../enums/index.js';
2
- import { executeGatewayItem } from "./execute-gateway-item.js";
3
- import { ConcurrencyLimiter } from "./concurrency-limiter.js";
4
- import { RateLimiter } from "./rate-limiter.js";
5
- import { CircuitBreaker, CircuitBreakerOpenError } from "./circuit-breaker.js";
6
- export async function executeConcurrently(items = [], requestExecutionOptions = {}) {
7
- const responses = [];
8
- const stopOnFirstError = requestExecutionOptions.stopOnFirstError || false;
9
- const enableRacing = requestExecutionOptions.enableRacing || false;
10
- const circuitBreaker = requestExecutionOptions.circuitBreaker
11
- ? (requestExecutionOptions.circuitBreaker instanceof CircuitBreaker
12
- ? requestExecutionOptions.circuitBreaker
13
- : new CircuitBreaker(requestExecutionOptions.circuitBreaker))
14
- : null;
15
- const unifiedItems = items.map(item => {
16
- if ('type' in item) {
17
- return item;
18
- }
19
- return {
20
- type: RequestOrFunction.REQUEST,
21
- request: item
22
- };
23
- });
24
- const itemFunctions = unifiedItems.map((item) => {
25
- return async () => {
26
- return await executeGatewayItem(item, requestExecutionOptions, circuitBreaker);
27
- };
28
- });
29
- const hasConcurrencyLimit = requestExecutionOptions.maxConcurrentRequests &&
30
- requestExecutionOptions.maxConcurrentRequests > 0 &&
31
- requestExecutionOptions.maxConcurrentRequests < unifiedItems.length;
32
- const hasRateLimit = requestExecutionOptions.rateLimit &&
33
- requestExecutionOptions.rateLimit.maxRequests > 0 &&
34
- requestExecutionOptions.rateLimit.windowMs > 0;
35
- let itemResults;
36
- let settledResponses;
37
- if (enableRacing) {
38
- const abortControllers = new Map();
39
- const concurrencyLimiter = hasConcurrencyLimit
40
- ? new ConcurrencyLimiter(requestExecutionOptions.maxConcurrentRequests)
41
- : null;
42
- const rateLimiter = hasRateLimit
43
- ? new RateLimiter(requestExecutionOptions.rateLimit.maxRequests, requestExecutionOptions.rateLimit.windowMs)
44
- : null;
45
- const createExecutor = (fn, index) => {
46
- const wrappedFn = async () => {
47
- const controller = new AbortController();
48
- abortControllers.set(index, controller);
49
- try {
50
- const result = await fn();
51
- return result;
52
- }
53
- finally {
54
- abortControllers.delete(index);
55
- }
56
- };
57
- if (concurrencyLimiter && rateLimiter) {
58
- return () => concurrencyLimiter.execute(() => rateLimiter.execute(wrappedFn));
59
- }
60
- else if (concurrencyLimiter) {
61
- return () => concurrencyLimiter.execute(wrappedFn);
62
- }
63
- else if (rateLimiter) {
64
- return () => rateLimiter.execute(wrappedFn);
65
- }
66
- return wrappedFn;
67
- };
68
- const racePromises = itemFunctions.map((fn, index) => {
69
- const executor = createExecutor(fn, index);
70
- return executor().then(result => ({ index, result, error: null }), error => ({ index, result: null, error }));
71
- });
72
- try {
73
- const winner = await Promise.race(racePromises);
74
- abortControllers.forEach(controller => {
75
- try {
76
- controller.abort();
77
- }
78
- catch (e) {
79
- }
80
- });
81
- if (winner.result && winner.result.success) {
82
- responses.push(winner.result);
83
- for (let i = 0; i < unifiedItems.length; i++) {
84
- if (i !== winner.index) {
85
- const item = unifiedItems[i];
86
- const itemId = item.type === RequestOrFunction.REQUEST ? item.request.id : item.function.id;
87
- const groupId = item.type === RequestOrFunction.REQUEST ? item.request.groupId : item.function.groupId;
88
- responses.push({
89
- requestId: itemId,
90
- ...(groupId && { groupId }),
91
- success: false,
92
- error: 'Cancelled - another request/function won the race',
93
- type: item.type
94
- });
95
- }
96
- }
97
- }
98
- else {
99
- const allResults = await Promise.allSettled(racePromises);
100
- let foundSuccess = false;
101
- for (const settled of allResults) {
102
- if (settled.status === 'fulfilled' && settled.value.result && settled.value.result.success) {
103
- responses.push(settled.value.result);
104
- foundSuccess = true;
105
- break;
106
- }
107
- }
108
- if (!foundSuccess) {
109
- if (winner.result) {
110
- responses.push(winner.result);
111
- }
112
- else if (winner.error) {
113
- const item = unifiedItems[winner.index];
114
- const itemId = item.type === RequestOrFunction.REQUEST ? item.request.id : item.function.id;
115
- const groupId = item.type === RequestOrFunction.REQUEST ? item.request.groupId : item.function.groupId;
116
- const isCircuitBreakerError = winner.error instanceof CircuitBreakerOpenError;
117
- responses.push({
118
- requestId: itemId,
119
- ...(groupId && { groupId }),
120
- success: false,
121
- error: isCircuitBreakerError
122
- ? `Circuit breaker open: ${winner.error.message}`
123
- : (winner.error?.message || 'An error occurred! Error description is unavailable.'),
124
- type: item.type
125
- });
126
- }
127
- }
128
- for (let i = 0; i < unifiedItems.length; i++) {
129
- if (i !== winner.index) {
130
- const item = unifiedItems[i];
131
- const itemId = item.type === RequestOrFunction.REQUEST ? item.request.id : item.function.id;
132
- const groupId = item.type === RequestOrFunction.REQUEST ? item.request.groupId : item.function.groupId;
133
- responses.push({
134
- requestId: itemId,
135
- ...(groupId && { groupId }),
136
- success: false,
137
- error: 'Cancelled - racing mode',
138
- type: item.type
139
- });
140
- }
141
- }
142
- }
143
- }
144
- catch (error) {
145
- for (let i = 0; i < unifiedItems.length; i++) {
146
- const item = unifiedItems[i];
147
- const itemId = item.type === RequestOrFunction.REQUEST ? item.request.id : item.function.id;
148
- const groupId = item.type === RequestOrFunction.REQUEST ? item.request.groupId : item.function.groupId;
149
- responses.push({
150
- requestId: itemId,
151
- ...(groupId && { groupId }),
152
- success: false,
153
- error: error instanceof Error ? error.message : 'An error occurred during racing',
154
- type: item.type
155
- });
156
- }
157
- }
158
- return responses;
159
- }
160
- if (stopOnFirstError) {
161
- const results = [];
162
- let errorDetected = false;
163
- const activePromises = new Set();
164
- const concurrencyLimiter = hasConcurrencyLimit
165
- ? new ConcurrencyLimiter(requestExecutionOptions.maxConcurrentRequests)
166
- : null;
167
- const rateLimiter = hasRateLimit
168
- ? new RateLimiter(requestExecutionOptions.rateLimit.maxRequests, requestExecutionOptions.rateLimit.windowMs)
169
- : null;
170
- const createExecutor = (fn) => {
171
- if (concurrencyLimiter && rateLimiter) {
172
- return () => concurrencyLimiter.execute(() => rateLimiter.execute(fn));
173
- }
174
- else if (concurrencyLimiter) {
175
- return () => concurrencyLimiter.execute(fn);
176
- }
177
- else if (rateLimiter) {
178
- return () => rateLimiter.execute(fn);
179
- }
180
- return fn;
181
- };
182
- for (let i = 0; i < itemFunctions.length; i++) {
183
- if (errorDetected) {
184
- break;
185
- }
186
- const executor = createExecutor(itemFunctions[i]);
187
- const executeItem = async (index) => {
188
- try {
189
- const result = await executor();
190
- results[index] = { status: 'fulfilled', value: result };
191
- if (!result.success) {
192
- errorDetected = true;
193
- }
194
- }
195
- catch (error) {
196
- results[index] = { status: 'rejected', reason: error };
197
- errorDetected = true;
198
- }
199
- };
200
- const promise = executeItem(i);
201
- activePromises.add(promise);
202
- promise.finally(() => activePromises.delete(promise));
203
- if (i < itemFunctions.length - 1) {
204
- await Promise.race([
205
- promise,
206
- new Promise(resolve => setTimeout(resolve, 0))
207
- ]);
208
- }
209
- }
210
- if (activePromises.size > 0) {
211
- await Promise.all(Array.from(activePromises));
212
- }
213
- settledResponses = results.filter(r => r !== undefined);
214
- }
215
- else {
216
- if (hasConcurrencyLimit && hasRateLimit) {
217
- const concurrencyLimiter = new ConcurrencyLimiter(requestExecutionOptions.maxConcurrentRequests);
218
- const rateLimiter = new RateLimiter(requestExecutionOptions.rateLimit.maxRequests, requestExecutionOptions.rateLimit.windowMs);
219
- itemResults = itemFunctions.map(fn => concurrencyLimiter.execute(() => rateLimiter.execute(fn)));
220
- }
221
- else if (hasConcurrencyLimit) {
222
- const concurrencyLimiter = new ConcurrencyLimiter(requestExecutionOptions.maxConcurrentRequests);
223
- itemResults = itemFunctions.map(fn => concurrencyLimiter.execute(fn));
224
- }
225
- else if (hasRateLimit) {
226
- const rateLimiter = new RateLimiter(requestExecutionOptions.rateLimit.maxRequests, requestExecutionOptions.rateLimit.windowMs);
227
- itemResults = itemFunctions.map(fn => rateLimiter.execute(fn));
228
- }
229
- else {
230
- itemResults = itemFunctions.map(fn => fn());
231
- }
232
- settledResponses = await Promise.allSettled(itemResults);
233
- }
234
- for (let i = 0; i < settledResponses.length; i++) {
235
- const res = settledResponses[i];
236
- if (res.status === 'fulfilled') {
237
- responses.push(res.value);
238
- }
239
- else {
240
- const error = res.reason;
241
- const item = unifiedItems[i];
242
- const itemId = item.type === RequestOrFunction.REQUEST ? item.request.id : item.function.id;
243
- const groupId = item.type === RequestOrFunction.REQUEST ? item.request.groupId : item.function.groupId;
244
- const isCircuitBreakerError = error instanceof CircuitBreakerOpenError;
245
- responses.push({
246
- requestId: itemId,
247
- ...(groupId && { groupId }),
248
- success: false,
249
- error: isCircuitBreakerError
250
- ? `Circuit breaker open: ${error.message}`
251
- : (error?.message || 'An error occurred! Error description is unavailable.'),
252
- type: item.type
253
- });
254
- }
255
- }
256
- return responses;
257
- }
258
- //# sourceMappingURL=execute-concurrently.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"execute-concurrently.js","sourceRoot":"","sources":["../../src/utilities/execute-concurrently.ts"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- import { API_GATEWAY_REQUEST, API_GATEWAY_FUNCTION, API_GATEWAY_ITEM, API_GATEWAY_RESPONSE, API_GATEWAY_OPTIONS } from '../types/index.js';
2
- import { CircuitBreaker } from "./circuit-breaker.js";
3
- export declare function executeGatewayItem<RequestDataType = any, ResponseDataType = any, FunctionArgsType extends any[] = any[], FunctionReturnType = any>(item: API_GATEWAY_ITEM<RequestDataType, ResponseDataType, FunctionArgsType, FunctionReturnType>, gatewayOptions: API_GATEWAY_OPTIONS<RequestDataType, ResponseDataType, FunctionArgsType, FunctionReturnType>, circuitBreaker: CircuitBreaker | null): Promise<API_GATEWAY_RESPONSE<ResponseDataType, FunctionReturnType>>;
4
- export declare function executeGatewayRequest<RequestDataType = any, ResponseDataType = any, FunctionArgsType extends any[] = any[], FunctionReturnType = any>(req: API_GATEWAY_REQUEST<RequestDataType, ResponseDataType>, gatewayOptions: API_GATEWAY_OPTIONS<RequestDataType, ResponseDataType, FunctionArgsType, FunctionReturnType>, circuitBreaker: CircuitBreaker | null): Promise<API_GATEWAY_RESPONSE<ResponseDataType, FunctionReturnType>>;
5
- export declare function executeGatewayFunction<TArgs extends any[] = any[], TReturn = any>(func: API_GATEWAY_FUNCTION<TArgs, TReturn>, gatewayOptions: API_GATEWAY_OPTIONS<any, any, TArgs, TReturn>, circuitBreaker: CircuitBreaker | null): Promise<API_GATEWAY_RESPONSE<any, TReturn>>;
6
- //# sourceMappingURL=execute-gateway-item.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"execute-gateway-item.d.ts","sourceRoot":"","sources":["../../src/utilities/execute-gateway-item.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,mBAAmB,EACnB,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EAGtB,MAAM,mBAAmB,CAAC;AAI3B,OAAO,EAAE,cAAc,EAA2B,MAAM,sBAAsB,CAAC;AAG/E,wBAAsB,kBAAkB,CAAC,eAAe,GAAG,GAAG,EAAE,gBAAgB,GAAG,GAAG,EAAE,gBAAgB,SAAS,GAAG,EAAE,GAAG,GAAG,EAAE,EAAE,kBAAkB,GAAG,GAAG,EACpJ,IAAI,EAAE,gBAAgB,CAAC,eAAe,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,kBAAkB,CAAC,EAC/F,cAAc,EAAE,mBAAmB,CAAC,eAAe,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,kBAAkB,CAAC,EAC5G,cAAc,EAAE,cAAc,GAAG,IAAI,GACtC,OAAO,CAAC,oBAAoB,CAAC,gBAAgB,EAAE,kBAAkB,CAAC,CAAC,CAMrE;AAED,wBAAsB,qBAAqB,CAAC,eAAe,GAAG,GAAG,EAAE,gBAAgB,GAAG,GAAG,EAAE,gBAAgB,SAAS,GAAG,EAAE,GAAG,GAAG,EAAE,EAAE,kBAAkB,GAAG,GAAG,EACvJ,GAAG,EAAE,mBAAmB,CAAC,eAAe,EAAE,gBAAgB,CAAC,EAC3D,cAAc,EAAE,mBAAmB,CAAC,eAAe,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,kBAAkB,CAAC,EAC5G,cAAc,EAAE,cAAc,GAAG,IAAI,GACtC,OAAO,CAAC,oBAAoB,CAAC,gBAAgB,EAAE,kBAAkB,CAAC,CAAC,CAuDrE;AAED,wBAAsB,sBAAsB,CAAC,KAAK,SAAS,GAAG,EAAE,GAAG,GAAG,EAAE,EAAE,OAAO,GAAG,GAAG,EACnF,IAAI,EAAE,oBAAoB,CAAC,KAAK,EAAE,OAAO,CAAC,EAC1C,cAAc,EAAE,mBAAmB,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,EAC7D,cAAc,EAAE,cAAc,GAAG,IAAI,GACtC,OAAO,CAAC,oBAAoB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAkE7C"}
@@ -1,127 +0,0 @@
1
- import { stableRequest, stableFunction } from "../core/index.js";
2
- import { prepareApiRequestData } from "./prepare-api-request-data.js";
3
- import { prepareApiRequestOptions } from "./prepare-api-request-options.js";
4
- import { prepareApiFunctionOptions } from "./prepare-api-function-options.js";
5
- import { CircuitBreakerOpenError } from "./circuit-breaker.js";
6
- import { RequestOrFunction } from "../enums/index.js";
7
- export async function executeGatewayItem(item, gatewayOptions, circuitBreaker) {
8
- if (item.type === RequestOrFunction.REQUEST) {
9
- return await executeGatewayRequest(item.request, gatewayOptions, circuitBreaker);
10
- }
11
- else {
12
- return await executeGatewayFunction(item.function, gatewayOptions, circuitBreaker);
13
- }
14
- }
15
- export async function executeGatewayRequest(req, gatewayOptions, circuitBreaker) {
16
- if (circuitBreaker && !circuitBreaker.getState().config.trackIndividualAttempts) {
17
- const canExecute = await circuitBreaker.canExecute();
18
- if (!canExecute) {
19
- throw new CircuitBreakerOpenError(`stable-request: Circuit breaker is ${circuitBreaker.getState().state}. Request blocked.`);
20
- }
21
- }
22
- const finalRequestOptions = {
23
- reqData: prepareApiRequestData(req, gatewayOptions),
24
- ...prepareApiRequestOptions(req, gatewayOptions),
25
- commonBuffer: gatewayOptions.sharedBuffer ?? req.requestOptions.commonBuffer,
26
- ...(circuitBreaker ? { circuitBreaker } : {}),
27
- executionContext: {
28
- ...gatewayOptions.executionContext,
29
- requestId: req.id
30
- }
31
- };
32
- try {
33
- const result = await stableRequest(finalRequestOptions);
34
- if (circuitBreaker && !circuitBreaker.getState().config.trackIndividualAttempts) {
35
- if (result.success) {
36
- circuitBreaker.recordSuccess();
37
- }
38
- else {
39
- circuitBreaker.recordFailure();
40
- }
41
- }
42
- return {
43
- requestId: req.id,
44
- groupId: req.groupId,
45
- success: result.success,
46
- data: result.data,
47
- error: result.error,
48
- type: RequestOrFunction.REQUEST
49
- };
50
- }
51
- catch (error) {
52
- if (circuitBreaker &&
53
- !(error instanceof CircuitBreakerOpenError) &&
54
- !circuitBreaker.getState().config.trackIndividualAttempts) {
55
- circuitBreaker.recordFailure();
56
- }
57
- return {
58
- requestId: req.id,
59
- groupId: req.groupId,
60
- success: false,
61
- error: error.message || String(error),
62
- type: RequestOrFunction.REQUEST
63
- };
64
- }
65
- }
66
- export async function executeGatewayFunction(func, gatewayOptions, circuitBreaker) {
67
- if (!func.functionOptions.fn || !func.functionOptions.args) {
68
- return {
69
- requestId: func.id,
70
- groupId: func.groupId,
71
- success: false,
72
- error: 'Function or args not provided',
73
- type: RequestOrFunction.FUNCTION
74
- };
75
- }
76
- if (circuitBreaker && !circuitBreaker.getState().config.trackIndividualAttempts) {
77
- const canExecute = await circuitBreaker.canExecute();
78
- if (!canExecute) {
79
- throw new CircuitBreakerOpenError(`stable-request: Circuit breaker is ${circuitBreaker.getState().state}. Function execution blocked.`);
80
- }
81
- }
82
- const finalFunctionOptions = {
83
- fn: func.functionOptions.fn,
84
- args: func.functionOptions.args,
85
- ...prepareApiFunctionOptions(func, gatewayOptions),
86
- commonBuffer: gatewayOptions.sharedBuffer ?? func.functionOptions.commonBuffer,
87
- ...(circuitBreaker ? { circuitBreaker } : {}),
88
- executionContext: {
89
- ...gatewayOptions.executionContext,
90
- requestId: func.id
91
- }
92
- };
93
- try {
94
- const result = await stableFunction(finalFunctionOptions);
95
- if (circuitBreaker && !circuitBreaker.getState().config.trackIndividualAttempts) {
96
- if (result.success) {
97
- circuitBreaker.recordSuccess();
98
- }
99
- else {
100
- circuitBreaker.recordFailure();
101
- }
102
- }
103
- return {
104
- requestId: func.id,
105
- groupId: func.groupId,
106
- success: result.success,
107
- data: result.data,
108
- error: result.error,
109
- type: RequestOrFunction.FUNCTION
110
- };
111
- }
112
- catch (error) {
113
- if (circuitBreaker &&
114
- !(error instanceof CircuitBreakerOpenError) &&
115
- !circuitBreaker.getState().config.trackIndividualAttempts) {
116
- circuitBreaker.recordFailure();
117
- }
118
- return {
119
- requestId: func.id,
120
- groupId: func.groupId,
121
- success: false,
122
- error: error.message || String(error),
123
- type: RequestOrFunction.FUNCTION
124
- };
125
- }
126
- }
127
- //# sourceMappingURL=execute-gateway-item.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"execute-gateway-item.js","sourceRoot":"","sources":["../../src/utilities/execute-gateway-item.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAUjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EAAkB,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtD,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACpC,IAA+F,EAC/F,cAA4G,EAC5G,cAAqC;IAErC,IAAI,IAAI,CAAC,IAAI,KAAK,iBAAiB,CAAC,OAAO,EAAE,CAAC;QAC1C,OAAO,MAAM,qBAAqB,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;IACrF,CAAC;SAAM,CAAC;QACJ,OAAO,MAAM,sBAAsB,CAAC,IAAI,CAAC,QAAQ,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;IACvF,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACvC,GAA2D,EAC3D,cAA4G,EAC5G,cAAqC;IAErC,IAAI,cAAc,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,uBAAuB,EAAE,CAAC;QAC9E,MAAM,UAAU,GAAG,MAAM,cAAc,CAAC,UAAU,EAAE,CAAC;QACrD,IAAI,CAAC,UAAU,EAAE,CAAC;YACd,MAAM,IAAI,uBAAuB,CAC7B,sCAAsC,cAAc,CAAC,QAAQ,EAAE,CAAC,KAAK,oBAAoB,CAC5F,CAAC;QACN,CAAC;IACL,CAAC;IAED,MAAM,mBAAmB,GAAG;QACxB,OAAO,EAAE,qBAAqB,CAAC,GAAG,EAAE,cAAc,CAAC;QACnD,GAAG,wBAAwB,CAAC,GAAG,EAAE,cAAc,CAAC;QAChD,YAAY,EAAE,cAAc,CAAC,YAAY,IAAI,GAAG,CAAC,cAAc,CAAC,YAAY;QAC5E,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7C,gBAAgB,EAAE;YACd,GAAG,cAAc,CAAC,gBAAgB;YAClC,SAAS,EAAE,GAAG,CAAC,EAAE;SACpB;KACJ,CAAC;IAEF,IAAI,CAAC;QACD,MAAM,MAAM,GAA4C,MAAM,aAAa,CAAoC,mBAAmB,CAAC,CAAC;QAEpI,IAAI,cAAc,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,uBAAuB,EAAE,CAAC;YAC9E,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACjB,cAAc,CAAC,aAAa,EAAE,CAAC;YACnC,CAAC;iBAAM,CAAC;gBACJ,cAAc,CAAC,aAAa,EAAE,CAAC;YACnC,CAAC;QACL,CAAC;QAED,OAAO;YACH,SAAS,EAAE,GAAG,CAAC,EAAE;YACjB,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,IAAI,EAAE,iBAAiB,CAAC,OAAO;SAClC,CAAC;IACN,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QAClB,IAAI,cAAc;YACd,CAAC,CAAC,KAAK,YAAY,uBAAuB,CAAC;YAC3C,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,uBAAuB,EAAE,CAAC;YAC5D,cAAc,CAAC,aAAa,EAAE,CAAC;QACnC,CAAC;QAED,OAAO;YACH,SAAS,EAAE,GAAG,CAAC,EAAE;YACjB,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,KAAK,CAAC,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC;YACrC,IAAI,EAAE,iBAAiB,CAAC,OAAO;SAClC,CAAC;IACN,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CACxC,IAA0C,EAC1C,cAA6D,EAC7D,cAAqC;IAErC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;QACzD,OAAO;YACH,SAAS,EAAE,IAAI,CAAC,EAAE;YAClB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,+BAA+B;YACtC,IAAI,EAAE,iBAAiB,CAAC,QAAQ;SACnC,CAAC;IACN,CAAC;IAED,IAAI,cAAc,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,uBAAuB,EAAE,CAAC;QAC9E,MAAM,UAAU,GAAG,MAAM,cAAc,CAAC,UAAU,EAAE,CAAC;QACrD,IAAI,CAAC,UAAU,EAAE,CAAC;YACd,MAAM,IAAI,uBAAuB,CAC7B,sCAAsC,cAAc,CAAC,QAAQ,EAAE,CAAC,KAAK,+BAA+B,CACvG,CAAC;QACN,CAAC;IACL,CAAC;IAED,MAAM,oBAAoB,GAAG;QACzB,EAAE,EAAE,IAAI,CAAC,eAAe,CAAC,EAAE;QAC3B,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI;QAC/B,GAAG,yBAAyB,CAAC,IAAI,EAAE,cAAc,CAAC;QAClD,YAAY,EAAE,cAAc,CAAC,YAAY,IAAI,IAAI,CAAC,eAAe,CAAC,YAAY;QAC9E,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7C,gBAAgB,EAAE;YACd,GAAG,cAAc,CAAC,gBAAgB;YAClC,SAAS,EAAE,IAAI,CAAC,EAAE;SACrB;KACJ,CAAC;IAEF,IAAI,CAAC;QACD,MAAM,MAAM,GAAoC,MAAM,cAAc,CAAiB,oBAAoB,CAAC,CAAC;QAE3G,IAAI,cAAc,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,uBAAuB,EAAE,CAAC;YAC9E,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACjB,cAAc,CAAC,aAAa,EAAE,CAAC;YACnC,CAAC;iBAAM,CAAC;gBACJ,cAAc,CAAC,aAAa,EAAE,CAAC;YACnC,CAAC;QACL,CAAC;QAED,OAAO;YACH,SAAS,EAAE,IAAI,CAAC,EAAE;YAClB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,IAAI,EAAE,iBAAiB,CAAC,QAAQ;SACnC,CAAC;IACN,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QAClB,IAAI,cAAc;YACd,CAAC,CAAC,KAAK,YAAY,uBAAuB,CAAC;YAC3C,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,uBAAuB,EAAE,CAAC;YAC5D,cAAc,CAAC,aAAa,EAAE,CAAC;QACnC,CAAC;QAED,OAAO;YACH,SAAS,EAAE,IAAI,CAAC,EAAE;YAClB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,KAAK,CAAC,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC;YACrC,IAAI,EAAE,iBAAiB,CAAC,QAAQ;SACnC,CAAC;IACN,CAAC;AACL,CAAC"}
@@ -1,3 +0,0 @@
1
- import { EXECUTE_NON_LINEAR_WORKFLOW_RESPONSE, NonLinearWorkflowContext } from '../types/index.js';
2
- export declare function executeNonLinearWorkflow<RequestDataType = any, ResponseDataType = any, FunctionArgsType extends any[] = any[], FunctionReturnType = any>(context: NonLinearWorkflowContext<RequestDataType, ResponseDataType, FunctionArgsType, FunctionReturnType>): Promise<EXECUTE_NON_LINEAR_WORKFLOW_RESPONSE<RequestDataType, ResponseDataType, FunctionArgsType, FunctionReturnType>>;
3
- //# sourceMappingURL=execute-non-linear-workflow.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"execute-non-linear-workflow.d.ts","sourceRoot":"","sources":["../../src/utilities/execute-non-linear-workflow.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,oCAAoC,EACpC,wBAAwB,EAKzB,MAAM,mBAAmB,CAAC;AAE3B,wBAAsB,wBAAwB,CAAC,eAAe,GAAG,GAAG,EAAE,gBAAgB,GAAG,GAAG,EAAE,gBAAgB,SAAS,GAAG,EAAE,GAAG,GAAG,EAAE,EAAE,kBAAkB,GAAG,GAAG,EAC5J,OAAO,EAAE,wBAAwB,CAAC,eAAe,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,kBAAkB,CAAC,GACzG,OAAO,CAAC,oCAAoC,CAAC,eAAe,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,kBAAkB,CAAC,CAAC,CAmqBxH"}