@emmvish/stable-request 1.1.7 → 1.2.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.
package/README.md CHANGED
@@ -29,11 +29,23 @@ npm install @emmvish/stable-request
29
29
  ```typescript
30
30
  import { stableRequest } from '@emmvish/stable-request';
31
31
 
32
+ interface RequestBodyParams {
33
+ page: number,
34
+ offset: number
35
+ }
36
+
37
+ interface ResponseParams {
38
+ id: number,
39
+ name: string
40
+ }
41
+
32
42
  const getStableResponse = async () => {
33
- const data = await stableRequest({
43
+ const data = await stableRequest<RequestBodyParams, ResponseParams>({
34
44
  reqData: {
35
45
  hostname: 'api.example.com',
36
- path: '/users/123'
46
+ path: '/users/123',
47
+ headers: { Authorization: `Bearer ${token}` }
48
+ body: { page: 10, offset: 5 }
37
49
  },
38
50
  resReq: true // Return the response data
39
51
  });
@@ -1,3 +1,4 @@
1
1
  export { sendStableRequest as stableRequest } from './send-stable-request.js';
2
2
  export { stableApiGateway } from './stable-api-gateway.js';
3
+ export { stableWorkflow } from './stable-workflow.js';
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,IAAI,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,IAAI,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC"}
@@ -1,3 +1,4 @@
1
1
  export { sendStableRequest as stableRequest } from './send-stable-request.js';
2
2
  export { stableApiGateway } from './stable-api-gateway.js';
3
+ export { stableWorkflow } from './stable-workflow.js';
3
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,IAAI,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,IAAI,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { RETRY_STRATEGIES, RESPONSE_ERRORS } from '../enums/index.js';
2
2
  import { generateAxiosRequestConfig, getNewDelayTime, delay, reqFn, safelyExecuteUnknownFunction, safelyStringify, validateTrialModeProbabilities } from '../utilities/index.js';
3
3
  export async function sendStableRequest(options) {
4
- const { reqData: givenReqData, responseAnalyzer = ({ reqData, data, trialMode = { enabled: false } }) => true, resReq = false, attempts: givenAttempts = 1, performAllAttempts = false, wait = 1000, maxAllowedWait = 60000, retryStrategy = RETRY_STRATEGIES.FIXED, logAllErrors = false, handleErrors = ({ reqData, errorLog, maxSerializableChars = 1000 }) => console.log('Request data:\n', safelyStringify(reqData, maxSerializableChars), '\nError log:\n', safelyStringify(errorLog, maxSerializableChars)), logAllSuccessfulAttempts = false, handleSuccessfulAttemptData = ({ reqData, successfulAttemptData, maxSerializableChars = 1000 }) => console.log('Request data:\n', safelyStringify(reqData, maxSerializableChars), '\nSuccessful attempt:\n', safelyStringify(successfulAttemptData, maxSerializableChars)), maxSerializableChars = 1000, finalErrorAnalyzer = ({ reqData, error, trialMode = { enabled: false } }) => false, trialMode = { enabled: false }, hookParams = {} } = options;
4
+ const { reqData: givenReqData, responseAnalyzer = ({ reqData, data, trialMode = { enabled: false } }) => true, resReq = false, attempts: givenAttempts = 1, performAllAttempts = false, wait = 1000, maxAllowedWait = 60000, retryStrategy = RETRY_STRATEGIES.FIXED, logAllErrors = false, handleErrors = ({ reqData, errorLog, maxSerializableChars = 1000 }) => console.error('Request data:\n', safelyStringify(reqData, maxSerializableChars), '\nError log:\n', safelyStringify(errorLog, maxSerializableChars)), logAllSuccessfulAttempts = false, handleSuccessfulAttemptData = ({ reqData, successfulAttemptData, maxSerializableChars = 1000 }) => console.info('Request data:\n', safelyStringify(reqData, maxSerializableChars), '\nSuccessful attempt:\n', safelyStringify(successfulAttemptData, maxSerializableChars)), maxSerializableChars = 1000, finalErrorAnalyzer = ({ reqData, error, trialMode = { enabled: false } }) => false, trialMode = { enabled: false }, hookParams = {} } = options;
5
5
  let attempts = givenAttempts;
6
6
  const reqData = generateAxiosRequestConfig(givenReqData);
7
7
  try {
@@ -28,11 +28,11 @@ export async function sendStableRequest(options) {
28
28
  reqData,
29
29
  data: res?.data,
30
30
  trialMode,
31
- params: hookParams.responseAnalyzerParams
31
+ params: hookParams?.responseAnalyzerParams
32
32
  }));
33
33
  }
34
34
  catch (e) {
35
- console.log(`stable-request: Unable to analyze the response returned on attempt #${currentAttempt}. Response: ${safelyStringify(res?.data, maxSerializableChars)}`);
35
+ console.error(`stable-request: Unable to analyze the response returned on attempt #${currentAttempt}. Response: ${safelyStringify(res?.data, maxSerializableChars)}`);
36
36
  performNextAttempt = true;
37
37
  }
38
38
  }
@@ -57,7 +57,7 @@ export async function sendStableRequest(options) {
57
57
  });
58
58
  }
59
59
  catch (e) {
60
- console.log('stable-request: Unable to report errors due to issues with error handler!');
60
+ console.error('stable-request: Unable to report errors due to issues with error handler!');
61
61
  }
62
62
  }
63
63
  if (res.ok && !performNextAttempt) {
@@ -79,7 +79,7 @@ export async function sendStableRequest(options) {
79
79
  });
80
80
  }
81
81
  catch (e) {
82
- console.log('stable-request: Unable to report successful attempts due to issues with successful attempt data handler!');
82
+ console.error('stable-request: Unable to report successful attempts due to issues with successful attempt data handler!');
83
83
  }
84
84
  }
85
85
  }
@@ -96,14 +96,14 @@ export async function sendStableRequest(options) {
96
96
  ((res.isRetryable && !res.ok) || performAllAttempts));
97
97
  if (performAllAttempts && hadAtLeastOneSuccess) {
98
98
  if (trialMode.enabled) {
99
- console.log('Final response (performAllAttempts mode):\n', safelyStringify(lastSuccessfulAttemptData, maxSerializableChars));
99
+ console.info('stable-request: Final response (performAllAttempts mode):\n', safelyStringify(lastSuccessfulAttemptData, maxSerializableChars));
100
100
  }
101
101
  return resReq ? lastSuccessfulAttemptData : true;
102
102
  }
103
103
  else if (res.ok) {
104
104
  if (trialMode.enabled) {
105
105
  const finalResponse = res?.data ?? lastSuccessfulAttemptData;
106
- console.log('Final response:\n', safelyStringify(finalResponse, maxSerializableChars));
106
+ console.info('stable-request: Final response:\n', safelyStringify(finalResponse, maxSerializableChars));
107
107
  }
108
108
  return resReq ? res?.data ?? lastSuccessfulAttemptData : true;
109
109
  }
@@ -116,13 +116,13 @@ export async function sendStableRequest(options) {
116
116
  }
117
117
  catch (e) {
118
118
  if (trialMode.enabled) {
119
- console.log('Final error:\n', e.message);
119
+ console.error('stable-request: Final error:\n', e.message);
120
120
  }
121
121
  const errorAnalysisResult = await safelyExecuteUnknownFunction(finalErrorAnalyzer, {
122
122
  reqData,
123
123
  error: e,
124
124
  trialMode,
125
- params: hookParams.finalErrorAnalyzerParams
125
+ params: hookParams?.finalErrorAnalyzerParams
126
126
  });
127
127
  if (!errorAnalysisResult) {
128
128
  throw e;
@@ -1 +1 @@
1
- {"version":3,"file":"send-stable-request.js","sourceRoot":"","sources":["../../src/core/send-stable-request.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,gBAAgB,EAChB,eAAe,EAChB,MAAM,mBAAmB,CAAC;AAS3B,OAAO,EACH,0BAA0B,EAC1B,eAAe,EACf,KAAK,EACL,KAAK,EACL,4BAA4B,EAC5B,eAAe,EACf,8BAA8B,EACjC,MAAM,uBAAuB,CAAC;AAE/B,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,OAA0D;IAE1D,MAAM,EACJ,OAAO,EAAE,YAAY,EACrB,gBAAgB,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAC9E,MAAM,GAAG,KAAK,EACd,QAAQ,EAAE,aAAa,GAAG,CAAC,EAC3B,kBAAkB,GAAG,KAAK,EAC1B,IAAI,GAAG,IAAI,EACX,cAAc,GAAG,KAAK,EACtB,aAAa,GAAG,gBAAgB,CAAC,KAAK,EACtC,YAAY,GAAG,KAAK,EACpB,YAAY,GAAG,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,oBAAoB,GAAG,IAAI,EAAE,EAAE,EAAE,CACpE,OAAO,CAAC,GAAG,CACT,iBAAiB,EACjB,eAAe,CAAC,OAAO,EAAE,oBAAoB,CAAC,EAC9C,gBAAgB,EAChB,eAAe,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAChD,EACH,wBAAwB,GAAG,KAAK,EAChC,2BAA2B,GAAG,CAAC,EAAE,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,GAAG,IAAI,EAAE,EAAE,EAAE,CAChG,OAAO,CAAC,GAAG,CACT,iBAAiB,EACjB,eAAe,CAAC,OAAO,EAAE,oBAAoB,CAAC,EAC9C,yBAAyB,EACzB,eAAe,CAAC,qBAAqB,EAAE,oBAAoB,CAAC,CAC7D,EACH,oBAAoB,GAAG,IAAI,EAC3B,kBAAkB,GAAG,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,CAAC,KAAK,EAClF,SAAS,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,EAC9B,UAAU,GAAG,EAAE,EAChB,GAAG,OAAO,CAAC;IACZ,IAAI,QAAQ,GAAG,aAAa,CAAC;IAC7B,MAAM,OAAO,GAAwC,0BAA0B,CAAkB,YAAY,CAAC,CAAC;IAC/G,IAAI,CAAC;QACH,8BAA8B,CAAC,SAAS,CAAC,CAAC;QAC1C,IAAI,GAAG,GAAkB;YACvB,EAAE,EAAE,KAAK;YACT,WAAW,EAAE,IAAI;YACjB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,aAAa,EAAE,CAAC;YAChB,UAAU,EAAE,CAAC;SACd,CAAC;QACF,MAAM,WAAW,GAAG,QAAQ,CAAC;QAC7B,IAAI,yBAAyB,GAAiC,SAAS,CAAC;QACxE,IAAI,oBAAoB,GAAG,KAAK,CAAC;QACjC,GAAG,CAAC;YACF,QAAQ,EAAE,CAAC;YACX,MAAM,cAAc,GAAG,WAAW,GAAG,QAAQ,CAAC;YAC9C,GAAG,GAAG,MAAM,KAAK,CAAoC,OAAO,EAAE,MAAM,EAAE,oBAAoB,EAAE,SAAS,CAAC,CAAC;YACvG,MAAM,aAAa,GAAG,GAAG,CAAC,EAAE,CAAC;YAC7B,IAAI,kBAAkB,GAAY,KAAK,CAAC;YACxC,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC;gBACX,IAAI,CAAC;oBACH,kBAAkB,GAAG,CAAC,CAAC,MAAM,4BAA4B,CACvD,gBAAgB,EAChB;wBACE,OAAO;wBACP,IAAI,EAAE,GAAG,EAAE,IAAI;wBACf,SAAS;wBACT,MAAM,EAAE,UAAU,CAAC,sBAAsB;qBAC1C,CACF,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACX,OAAO,CAAC,GAAG,CACT,uEAAuE,cAAc,eAAe,eAAe,CACjH,GAAG,EAAE,IAAI,EACT,oBAAoB,CACrB,EAAE,CACJ,CAAC;oBACF,kBAAkB,GAAG,IAAI,CAAC;gBAC5B,CAAC;YACH,CAAC;YACD,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,kBAAkB,CAAC,CAAC,IAAI,YAAY,EAAE,CAAC;gBAChE,MAAM,QAAQ,GAAc;oBAC1B,SAAS,EAAE,GAAG,CAAC,SAAS;oBACxB,OAAO,EAAE,GAAG,cAAc,IAAI,WAAW,EAAE;oBAC3C,KAAK,EACH,GAAG,EAAE,KAAK;wBACV,2EAA2E,eAAe,CACxF,GAAG,EAAE,IAAI,EACT,oBAAoB,CACrB,EAAE;oBACL,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE;wBACX,CAAC,CAAC,eAAe,CAAC,UAAU;wBAC5B,CAAC,CAAC,eAAe,CAAC,eAAe;oBACnC,WAAW,EAAE,GAAG,CAAC,WAAW;oBAC5B,aAAa,EAAE,GAAG,CAAC,aAAa;oBAChC,UAAU,EAAE,GAAG,CAAC,UAAU;iBAC3B,CAAC;gBACF,IAAI,CAAC;oBACH,MAAM,4BAA4B,CAChC,YAAY,EACZ;wBACE,OAAO;wBACP,QAAQ;wBACR,oBAAoB;qBACrB,CACF,CAAC;gBACJ,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACX,OAAO,CAAC,GAAG,CACT,2EAA2E,CAC5E,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,IAAI,GAAG,CAAC,EAAE,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBAClC,oBAAoB,GAAG,IAAI,CAAC;gBAC5B,yBAAyB,GAAG,GAAG,EAAE,IAAI,CAAC;gBACtC,IAAI,wBAAwB,EAAE,CAAC;oBAC7B,MAAM,oBAAoB,GAA8C;wBACtE,OAAO,EAAE,GAAG,cAAc,IAAI,WAAW,EAAE;wBAC3C,SAAS,EAAE,GAAG,CAAC,SAAS;wBACxB,IAAI,EAAE,GAAG,EAAE,IAAI;wBACf,aAAa,EAAE,GAAG,CAAC,aAAa;wBAChC,UAAU,EAAE,GAAG,CAAC,UAAU;qBAC3B,CAAC;oBACF,IAAI,CAAC;wBACH,MAAM,4BAA4B,CAChC,2BAA2B,EAC3B;4BACE,OAAO;4BACP,qBAAqB,EAAE,oBAAoB;4BAC3C,oBAAoB;yBACrB,CACF,CAAC;oBACJ,CAAC;oBAAC,OAAO,CAAC,EAAE,CAAC;wBACX,OAAO,CAAC,GAAG,CACT,0GAA0G,CAC3G,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;YACD,IAAI,kBAAkB,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC;gBAC1C,GAAG,CAAC,EAAE,GAAG,KAAK,CAAC;YACjB,CAAC;YACD,IACE,QAAQ,GAAG,CAAC;gBACZ,CAAC,CAAC,CAAC,aAAa,IAAI,GAAG,CAAC,WAAW,CAAC;oBAClC,CAAC,aAAa,IAAI,kBAAkB,CAAC;oBACrC,kBAAkB,CAAC,EACrB,CAAC;gBACD,MAAM,KAAK,CAAC,eAAe,CAAC,aAAa,EAAE,IAAI,EAAE,cAAc,CAAC,EAAE,cAAc,CAAC,CAAC;YACpF,CAAC;QACH,CAAC,QACC,QAAQ,GAAG,CAAC;YACZ,CAAC,CAAC,GAAG,CAAC,WAAW,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,kBAAkB,CAAC,EACpD;QAEF,IAAI,kBAAkB,IAAI,oBAAoB,EAAE,CAAC;YAC/C,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;gBACtB,OAAO,CAAC,GAAG,CACT,6CAA6C,EAC7C,eAAe,CAAC,yBAAgD,EAAE,oBAAoB,CAAC,CACxF,CAAC;YACJ,CAAC;YACD,OAAO,MAAM,CAAC,CAAC,CAAC,yBAA0B,CAAC,CAAC,CAAC,IAAI,CAAC;QACpD,CAAC;aAAM,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC;YAClB,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;gBACtB,MAAM,aAAa,GAAG,GAAG,EAAE,IAAI,IAAI,yBAAyB,CAAC;gBAC7D,OAAO,CAAC,GAAG,CACT,mBAAmB,EACnB,eAAe,CAAC,aAAa,EAAE,oBAAoB,CAAC,CACrD,CAAC;YACJ,CAAC;YACD,OAAO,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,IAAI,yBAA0B,CAAC,CAAC,CAAC,IAAI,CAAC;QACjE,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CACb,eAAe,CACb;gBACE,KAAK,EAAE,GAAG,EAAE,KAAK;gBACjB,cAAc,EAAE,OAAO;aACxB,EACD,oBAAoB,CACrB,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,OAAO,CAAM,EAAE,CAAC;QAChB,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;YACtB,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;QAC3C,CAAC;QACD,MAAM,mBAAmB,GAAG,MAAM,4BAA4B,CAC5D,kBAAkB,EAClB;YACE,OAAO;YACP,KAAK,EAAE,CAAC;YACR,SAAS;YACT,MAAM,EAAE,UAAU,CAAC,wBAAwB;SAC5C,CACF,CAAC;QACF,IAAG,CAAC,mBAAmB,EAAE,CAAC;YACxB,MAAM,CAAC,CAAC;QACV,CAAC;aAAM,CAAC;YACN,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"send-stable-request.js","sourceRoot":"","sources":["../../src/core/send-stable-request.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { STABLE_WORKFLOW_OPTIONS, STABLE_WORKFLOW_PHASE, STABLE_WORKFLOW_RESULT } from '../types/index.js';
2
+ export declare function stableWorkflow<RequestDataType = any, ResponseDataType = any>(phases: STABLE_WORKFLOW_PHASE<RequestDataType, ResponseDataType>[], options?: STABLE_WORKFLOW_OPTIONS<RequestDataType, ResponseDataType>): Promise<STABLE_WORKFLOW_RESULT<ResponseDataType>>;
3
+ //# sourceMappingURL=stable-workflow.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stable-workflow.d.ts","sourceRoot":"","sources":["../../src/core/stable-workflow.ts"],"names":[],"mappings":"AACA,OAAO,EACH,uBAAuB,EACvB,qBAAqB,EACrB,sBAAsB,EACzB,MAAM,mBAAmB,CAAC;AAG3B,wBAAsB,cAAc,CAAC,eAAe,GAAG,GAAG,EAAE,gBAAgB,GAAG,GAAG,EAC9E,MAAM,EAAE,qBAAqB,CAAC,eAAe,EAAE,gBAAgB,CAAC,EAAE,EAClE,OAAO,GAAE,uBAAuB,CAAC,eAAe,EAAE,gBAAgB,CAAM,GACzE,OAAO,CAAC,sBAAsB,CAAC,gBAAgB,CAAC,CAAC,CAgNnD"}
@@ -0,0 +1,150 @@
1
+ import { stableApiGateway } from './stable-api-gateway.js';
2
+ import { safelyExecuteUnknownFunction } from '../utilities/index.js';
3
+ export async function stableWorkflow(phases, options = {}) {
4
+ const { stopOnFirstPhaseError = false, logPhaseResults = false, handlePhaseCompletion, handlePhaseError, maxSerializableChars = 1000, requestGroups = [], workflowHookParams = {}, ...commonGatewayOptions } = options;
5
+ const workflowStartTime = Date.now();
6
+ const workflowId = options.workflowId || `workflow-${Date.now()}`;
7
+ const phaseResults = [];
8
+ let totalRequests = 0;
9
+ let successfulRequests = 0;
10
+ let failedRequests = 0;
11
+ try {
12
+ for (let i = 0; i < phases.length; i++) {
13
+ const phase = phases[i];
14
+ const phaseId = phase.id || `phase-${i + 1}`;
15
+ const phaseStartTime = Date.now();
16
+ if (logPhaseResults) {
17
+ console.info(`\nstable-request: [Workflow: ${workflowId}] Starting Phase ${i + 1}/${phases.length}: ${phaseId}`);
18
+ }
19
+ const phaseGatewayOptions = {
20
+ ...commonGatewayOptions,
21
+ ...(phase.commonConfig || {}),
22
+ concurrentExecution: phase.concurrentExecution ?? true,
23
+ stopOnFirstError: phase.stopOnFirstError ?? false,
24
+ requestGroups,
25
+ };
26
+ try {
27
+ const phaseResponses = await stableApiGateway(phase.requests, phaseGatewayOptions);
28
+ const phaseExecutionTime = Date.now() - phaseStartTime;
29
+ const phaseSuccessCount = phaseResponses.filter(r => r.success).length;
30
+ const phaseFailureCount = phaseResponses.filter(r => !r.success).length;
31
+ totalRequests += phaseResponses.length;
32
+ successfulRequests += phaseSuccessCount;
33
+ failedRequests += phaseFailureCount;
34
+ const phaseResult = {
35
+ phaseId,
36
+ phaseIndex: i,
37
+ success: phaseFailureCount === 0,
38
+ executionTime: phaseExecutionTime,
39
+ timestamp: new Date(phaseStartTime).toISOString(),
40
+ totalRequests: phaseResponses.length,
41
+ successfulRequests: phaseSuccessCount,
42
+ failedRequests: phaseFailureCount,
43
+ responses: phaseResponses
44
+ };
45
+ phaseResults.push(phaseResult);
46
+ if (logPhaseResults) {
47
+ console.info(`stable-request: [Workflow: ${workflowId}] Phase ${phaseId} completed:`, `${phaseSuccessCount}/${phaseResponses.length} successful`, `(${phaseExecutionTime}ms)`);
48
+ }
49
+ if (handlePhaseCompletion) {
50
+ try {
51
+ await safelyExecuteUnknownFunction(handlePhaseCompletion, {
52
+ workflowId,
53
+ phaseResult,
54
+ maxSerializableChars,
55
+ params: workflowHookParams?.handlePhaseCompletionParams
56
+ });
57
+ }
58
+ catch (hookError) {
59
+ console.error(`stable-request: [Workflow: ${workflowId}] Error in handlePhaseCompletion hook:`, hookError);
60
+ }
61
+ }
62
+ if (phaseFailureCount > 0 && stopOnFirstPhaseError) {
63
+ if (logPhaseResults) {
64
+ console.error(`stable-request: [Workflow: ${workflowId}] Stopping workflow due to phase failure`);
65
+ }
66
+ break;
67
+ }
68
+ }
69
+ catch (phaseError) {
70
+ const phaseExecutionTime = Date.now() - phaseStartTime;
71
+ const phaseResult = {
72
+ phaseId,
73
+ phaseIndex: i,
74
+ success: false,
75
+ executionTime: phaseExecutionTime,
76
+ timestamp: new Date(phaseStartTime).toISOString(),
77
+ totalRequests: phase.requests.length,
78
+ successfulRequests: 0,
79
+ failedRequests: phase.requests.length,
80
+ responses: [],
81
+ error: phaseError.message
82
+ };
83
+ phaseResults.push(phaseResult);
84
+ totalRequests += phase.requests.length;
85
+ failedRequests += phase.requests.length;
86
+ if (logPhaseResults) {
87
+ console.error(`stable-request: [Workflow: ${workflowId}] Phase ${phaseId} failed:`, phaseError.message);
88
+ }
89
+ if (handlePhaseError) {
90
+ try {
91
+ await safelyExecuteUnknownFunction(handlePhaseError, {
92
+ workflowId,
93
+ phaseResult,
94
+ error: phaseError,
95
+ maxSerializableChars,
96
+ params: workflowHookParams?.handlePhaseErrorParams
97
+ });
98
+ }
99
+ catch (hookError) {
100
+ console.error(`stable-request: [Workflow: ${workflowId}] Error in handlePhaseError hook:`, hookError);
101
+ }
102
+ }
103
+ if (stopOnFirstPhaseError) {
104
+ if (logPhaseResults) {
105
+ console.error(`stable-request: [Workflow: ${workflowId}] Stopping workflow due to phase error`);
106
+ }
107
+ break;
108
+ }
109
+ }
110
+ }
111
+ const workflowExecutionTime = Date.now() - workflowStartTime;
112
+ const workflowSuccess = failedRequests === 0;
113
+ const result = {
114
+ workflowId,
115
+ success: workflowSuccess,
116
+ executionTime: workflowExecutionTime,
117
+ timestamp: new Date(workflowStartTime).toISOString(),
118
+ totalPhases: phases.length,
119
+ completedPhases: phaseResults.length,
120
+ totalRequests,
121
+ successfulRequests,
122
+ failedRequests,
123
+ phases: phaseResults
124
+ };
125
+ if (logPhaseResults) {
126
+ console.info(`\nstable-request: [Workflow: ${workflowId}] Completed:`, `${successfulRequests}/${totalRequests} requests successful`, `across ${phaseResults.length}/${phases.length} phases`, `(${workflowExecutionTime}ms)`);
127
+ }
128
+ return result;
129
+ }
130
+ catch (workflowError) {
131
+ const workflowExecutionTime = Date.now() - workflowStartTime;
132
+ if (logPhaseResults) {
133
+ console.error(`stable-request: [Workflow: ${workflowId}] Fatal error:`, workflowError.message);
134
+ }
135
+ return {
136
+ workflowId,
137
+ success: false,
138
+ executionTime: workflowExecutionTime,
139
+ timestamp: new Date(workflowStartTime).toISOString(),
140
+ totalPhases: phases.length,
141
+ completedPhases: phaseResults.length,
142
+ totalRequests,
143
+ successfulRequests,
144
+ failedRequests,
145
+ phases: phaseResults,
146
+ error: workflowError.message
147
+ };
148
+ }
149
+ }
150
+ //# sourceMappingURL=stable-workflow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stable-workflow.js","sourceRoot":"","sources":["../../src/core/stable-workflow.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- export { stableRequest, stableApiGateway } from './core/index.js';
1
+ export { stableRequest, stableApiGateway, stableWorkflow } from './core/index.js';
2
2
  export { INVALID_AXIOS_RESPONSES, REQUEST_METHODS, RESPONSE_ERRORS, RETRY_STRATEGIES, VALID_REQUEST_PROTOCOLS } from './enums/index.js';
3
- export type { API_GATEWAY_OPTIONS, API_GATEWAY_REQUEST, API_GATEWAY_REQUEST_OPTIONS_TYPE, API_GATEWAY_RESPONSE, CONCURRENT_REQUEST_EXECUTION_OPTIONS, ERROR_LOG, FinalErrorAnalysisHookOptions, HandleErrorHookOptions, HandleSuccessfulAttemptDataHookOptions, HookParams, ReqFnResponse, REQUEST_DATA, RequestGroup, REQUEST_METHOD_TYPES, ResponseAnalysisHookOptions, RETRY_STRATEGY_TYPES, SEQUENTIAL_REQUEST_EXECUTION_OPTIONS, STABLE_REQUEST, SUCCESSFUL_ATTEMPT_DATA, VALID_REQUEST_PROTOCOL_TYPES, TRIAL_MODE_OPTIONS } from './types/index.js';
3
+ export type { API_GATEWAY_OPTIONS, API_GATEWAY_REQUEST, API_GATEWAY_REQUEST_OPTIONS_TYPE, API_GATEWAY_RESPONSE, CONCURRENT_REQUEST_EXECUTION_OPTIONS, ERROR_LOG, FinalErrorAnalysisHookOptions, HandleErrorHookOptions, HandlePhaseCompletionHookOptions, HandlePhaseErrorHookOptions, HandleSuccessfulAttemptDataHookOptions, HookParams, ReqFnResponse, REQUEST_DATA, RequestGroup, REQUEST_METHOD_TYPES, ResponseAnalysisHookOptions, RETRY_STRATEGY_TYPES, SEQUENTIAL_REQUEST_EXECUTION_OPTIONS, STABLE_REQUEST, STABLE_WORKFLOW_PHASE, STABLE_WORKFLOW_OPTIONS, STABLE_WORKFLOW_PHASE_RESULT, STABLE_WORKFLOW_RESULT, SUCCESSFUL_ATTEMPT_DATA, VALID_REQUEST_PROTOCOL_TYPES, TRIAL_MODE_OPTIONS } from './types/index.js';
4
4
  export { delay, executeConcurrently, executeSequentially, extractCommonRequestConfigOptions, generateAxiosRequestConfig, getNewDelayTime, isRetryableError, prepareApiRequestData, prepareApiRequestOptions, reqFn, safelyExecuteUnknownFunction, safelyStringify, validateTrialModeProbabilities } from './utilities/index.js';
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,aAAa,EACb,gBAAgB,EACnB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACH,uBAAuB,EACvB,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,uBAAuB,EAC1B,MAAM,kBAAkB,CAAC;AAE1B,YAAY,EACR,mBAAmB,EACnB,mBAAmB,EACnB,gCAAgC,EAChC,oBAAoB,EACpB,oCAAoC,EACpC,SAAS,EACT,6BAA6B,EAC7B,sBAAsB,EACtB,sCAAsC,EACtC,UAAU,EACV,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,oBAAoB,EACpB,2BAA2B,EAC3B,oBAAoB,EACpB,oCAAoC,EACpC,cAAc,EACd,uBAAuB,EACvB,4BAA4B,EAC5B,kBAAkB,EACrB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACH,KAAK,EACL,mBAAmB,EACnB,mBAAmB,EACnB,iCAAiC,EACjC,0BAA0B,EAC1B,eAAe,EACf,gBAAgB,EAChB,qBAAqB,EACrB,wBAAwB,EACxB,KAAK,EACL,4BAA4B,EAC5B,eAAe,EACf,8BAA8B,EACjC,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,aAAa,EACb,gBAAgB,EAChB,cAAc,EACjB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACH,uBAAuB,EACvB,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,uBAAuB,EAC1B,MAAM,kBAAkB,CAAC;AAE1B,YAAY,EACR,mBAAmB,EACnB,mBAAmB,EACnB,gCAAgC,EAChC,oBAAoB,EACpB,oCAAoC,EACpC,SAAS,EACT,6BAA6B,EAC7B,sBAAsB,EACtB,gCAAgC,EAChC,2BAA2B,EAC3B,sCAAsC,EACtC,UAAU,EACV,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,oBAAoB,EACpB,2BAA2B,EAC3B,oBAAoB,EACpB,oCAAoC,EACpC,cAAc,EACd,qBAAqB,EACrB,uBAAuB,EACvB,4BAA4B,EAC5B,sBAAsB,EACtB,uBAAuB,EACvB,4BAA4B,EAC5B,kBAAkB,EACrB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACH,KAAK,EACL,mBAAmB,EACnB,mBAAmB,EACnB,iCAAiC,EACjC,0BAA0B,EAC1B,eAAe,EACf,gBAAgB,EAChB,qBAAqB,EACrB,wBAAwB,EACxB,KAAK,EACL,4BAA4B,EAC5B,eAAe,EACf,8BAA8B,EACjC,MAAM,sBAAsB,CAAC"}
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- export { stableRequest, stableApiGateway } from './core/index.js';
1
+ export { stableRequest, stableApiGateway, stableWorkflow } from './core/index.js';
2
2
  export { INVALID_AXIOS_RESPONSES, REQUEST_METHODS, RESPONSE_ERRORS, RETRY_STRATEGIES, VALID_REQUEST_PROTOCOLS } from './enums/index.js';
3
3
  export { delay, executeConcurrently, executeSequentially, extractCommonRequestConfigOptions, generateAxiosRequestConfig, getNewDelayTime, isRetryableError, prepareApiRequestData, prepareApiRequestOptions, reqFn, safelyExecuteUnknownFunction, safelyStringify, validateTrialModeProbabilities } from './utilities/index.js';
4
4
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,aAAa,EACb,gBAAgB,EACnB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACH,uBAAuB,EACvB,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,uBAAuB,EAC1B,MAAM,kBAAkB,CAAC;AA0B1B,OAAO,EACH,KAAK,EACL,mBAAmB,EACnB,mBAAmB,EACnB,iCAAiC,EACjC,0BAA0B,EAC1B,eAAe,EACf,gBAAgB,EAChB,qBAAqB,EACrB,wBAAwB,EACxB,KAAK,EACL,4BAA4B,EAC5B,eAAe,EACf,8BAA8B,EACjC,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,aAAa,EACb,gBAAgB,EAChB,cAAc,EACjB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACH,uBAAuB,EACvB,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,uBAAuB,EAC1B,MAAM,kBAAkB,CAAC;AAgC1B,OAAO,EACH,KAAK,EACL,mBAAmB,EACnB,mBAAmB,EACnB,iCAAiC,EACjC,0BAA0B,EAC1B,eAAe,EACf,gBAAgB,EAChB,qBAAqB,EACrB,wBAAwB,EACxB,KAAK,EACL,4BAA4B,EAC5B,eAAe,EACf,8BAA8B,EACjC,MAAM,sBAAsB,CAAC"}
@@ -138,5 +138,59 @@ export interface TRIAL_MODE_OPTIONS {
138
138
  retryFailureProbability?: number;
139
139
  }
140
140
  export type VALID_REQUEST_PROTOCOL_TYPES = VALID_REQUEST_PROTOCOLS.HTTP | VALID_REQUEST_PROTOCOLS.HTTPS;
141
+ export interface STABLE_WORKFLOW_PHASE<RequestDataType = any, ResponseDataType = any> {
142
+ id?: string;
143
+ requests: API_GATEWAY_REQUEST<RequestDataType, ResponseDataType>[];
144
+ concurrentExecution?: boolean;
145
+ stopOnFirstError?: boolean;
146
+ commonConfig?: Omit<API_GATEWAY_OPTIONS<RequestDataType, ResponseDataType>, 'concurrentExecution' | 'stopOnFirstError' | 'requestGroups'>;
147
+ }
148
+ export interface STABLE_WORKFLOW_OPTIONS<RequestDataType = any, ResponseDataType = any> extends Omit<API_GATEWAY_OPTIONS<RequestDataType, ResponseDataType>, 'concurrentExecution' | 'stopOnFirstError'> {
149
+ workflowId?: string;
150
+ stopOnFirstPhaseError?: boolean;
151
+ logPhaseResults?: boolean;
152
+ handlePhaseCompletion?: (options: HandlePhaseCompletionHookOptions<ResponseDataType>) => any | Promise<any>;
153
+ handlePhaseError?: (options: HandlePhaseErrorHookOptions<ResponseDataType>) => any | Promise<any>;
154
+ maxSerializableChars?: number;
155
+ workflowHookParams?: WorkflowHookParams;
156
+ }
157
+ export interface STABLE_WORKFLOW_PHASE_RESULT<ResponseDataType = any> {
158
+ phaseId: string;
159
+ phaseIndex: number;
160
+ success: boolean;
161
+ executionTime: number;
162
+ timestamp: string;
163
+ totalRequests: number;
164
+ successfulRequests: number;
165
+ failedRequests: number;
166
+ responses: API_GATEWAY_RESPONSE<ResponseDataType>[];
167
+ error?: string;
168
+ }
169
+ export interface STABLE_WORKFLOW_RESULT<ResponseDataType = any> {
170
+ workflowId: string;
171
+ success: boolean;
172
+ executionTime: number;
173
+ timestamp: string;
174
+ totalPhases: number;
175
+ completedPhases: number;
176
+ totalRequests: number;
177
+ successfulRequests: number;
178
+ failedRequests: number;
179
+ phases: STABLE_WORKFLOW_PHASE_RESULT<ResponseDataType>[];
180
+ error?: string;
181
+ }
182
+ export interface WorkflowHookParams {
183
+ handlePhaseCompletionParams?: any;
184
+ handlePhaseErrorParams?: any;
185
+ }
186
+ export interface HandlePhaseCompletionHookOptions<ResponseDataType = any> {
187
+ workflowId: string;
188
+ phaseResult: STABLE_WORKFLOW_PHASE_RESULT<ResponseDataType>;
189
+ maxSerializableChars?: number;
190
+ params?: any;
191
+ }
192
+ export interface HandlePhaseErrorHookOptions<ResponseDataType = any> extends HandlePhaseCompletionHookOptions<ResponseDataType> {
193
+ error: any;
194
+ }
141
195
  export {};
142
196
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import { INVALID_AXIOS_RESPONSES } from '../enums/index.js';
2
2
  export function isRetryableError(error, trialMode = { enabled: false }) {
3
3
  if (trialMode.enabled) {
4
4
  if (Math.random() <= (trialMode?.retryFailureProbability ?? 0)) {
5
- console.log('Retry failed in trial mode.');
5
+ console.error('stable-request: Retry failed in trial mode.');
6
6
  return false;
7
7
  }
8
8
  return true;
@@ -1 +1 @@
1
- {"version":3,"file":"is-retryable-error.js","sourceRoot":"","sources":["../../src/utilities/is-retryable-error.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAE5D,MAAM,UAAU,gBAAgB,CAC9B,KAAiB,EACjB,YAAgC,EAAE,OAAO,EAAE,KAAK,EAAE;IAElD,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;QACtB,IAAI,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,uBAAuB,IAAI,CAAC,CAAC,EAAE,CAAC;YAC/D,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;YAC3C,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,UAAU,GAAG,KAAK,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,CAAC;IAClD,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC;IAE7B,OAAO,CACL,UAAU,IAAI,GAAG;QACjB,UAAU,KAAK,GAAG;QAClB,UAAU,KAAK,GAAG;QAClB,UAAU,KAAK,GAAG;QAClB,SAAS,KAAK,uBAAuB,CAAC,KAAK;QAC3C,SAAS,KAAK,uBAAuB,CAAC,QAAQ;QAC9C,SAAS,KAAK,uBAAuB,CAAC,OAAO;QAC7C,SAAS,KAAK,uBAAuB,CAAC,QAAQ;QAC9C,SAAS,KAAK,uBAAuB,CAAC,SAAS,CAChD,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"is-retryable-error.js","sourceRoot":"","sources":["../../src/utilities/is-retryable-error.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAE5D,MAAM,UAAU,gBAAgB,CAC9B,KAAiB,EACjB,YAAgC,EAAE,OAAO,EAAE,KAAK,EAAE;IAElD,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;QACtB,IAAI,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,uBAAuB,IAAI,CAAC,CAAC,EAAE,CAAC;YAC/D,OAAO,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;YAC7D,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,UAAU,GAAG,KAAK,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,CAAC;IAClD,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC;IAE7B,OAAO,CACL,UAAU,IAAI,GAAG;QACjB,UAAU,KAAK,GAAG;QAClB,UAAU,KAAK,GAAG;QAClB,UAAU,KAAK,GAAG;QAClB,SAAS,KAAK,uBAAuB,CAAC,KAAK;QAC3C,SAAS,KAAK,uBAAuB,CAAC,QAAQ;QAC9C,SAAS,KAAK,uBAAuB,CAAC,OAAO;QAC7C,SAAS,KAAK,uBAAuB,CAAC,QAAQ;QAC9C,SAAS,KAAK,uBAAuB,CAAC,SAAS,CAChD,CAAC;AACJ,CAAC"}
@@ -7,7 +7,7 @@ export function prepareApiRequestData(request, commonRequestExecutionOptions) {
7
7
  ...(localOptions.reqData || {})
8
8
  };
9
9
  if (!result.hostname) {
10
- console.log('stable-request: Hostname is missing in gateway request data. Setting it to an empty string to avoid errors.');
10
+ console.info('stable-request: Hostname is missing in gateway request data. Setting it to an empty string to avoid errors.');
11
11
  result.hostname = '';
12
12
  }
13
13
  return result;
@@ -1 +1 @@
1
- {"version":3,"file":"prepare-api-request-data.js","sourceRoot":"","sources":["../../src/utilities/prepare-api-request-data.ts"],"names":[],"mappings":"AAOA,MAAM,UAAU,qBAAqB,CACjC,OAA+D,EAC/D,6BACmG;IAEnG,MAAM,EAAE,cAAc,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC;IACjD,MAAM,QAAQ,GAAG,CAAC,OAAO,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,6BAA6B,CAAC,aAAa,CAAC,CAAE,CAAC,CAAC,CAAC,6BAA6B,CAAC,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAEzM,MAAM,MAAM,GAAG;QACX,GAAG,CAAC,6BAA6B,CAAC,iBAAiB,IAAI,EAAE,CAAC;QAC1D,GAAG,CAAC,QAAQ,EAAE,YAAY,EAAE,iBAAiB,IAAI,EAAE,CAAC;QACpD,GAAG,CAAC,YAAY,CAAC,OAAO,IAAI,EAAE,CAAC;KAClC,CAAC;IAEF,IAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,6GAA6G,CAAC,CAAC;QAC3H,MAAM,CAAC,QAAQ,GAAG,EAAE,CAAC;IACzB,CAAC;IACD,OAAO,MAAuC,CAAC;AACnD,CAAC"}
1
+ {"version":3,"file":"prepare-api-request-data.js","sourceRoot":"","sources":["../../src/utilities/prepare-api-request-data.ts"],"names":[],"mappings":"AAOA,MAAM,UAAU,qBAAqB,CACjC,OAA+D,EAC/D,6BACmG;IAEnG,MAAM,EAAE,cAAc,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC;IACjD,MAAM,QAAQ,GAAG,CAAC,OAAO,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,6BAA6B,CAAC,aAAa,CAAC,CAAE,CAAC,CAAC,CAAC,6BAA6B,CAAC,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAEzM,MAAM,MAAM,GAAG;QACX,GAAG,CAAC,6BAA6B,CAAC,iBAAiB,IAAI,EAAE,CAAC;QAC1D,GAAG,CAAC,QAAQ,EAAE,YAAY,EAAE,iBAAiB,IAAI,EAAE,CAAC;QACpD,GAAG,CAAC,YAAY,CAAC,OAAO,IAAI,EAAE,CAAC;KAClC,CAAC;IAEF,IAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QAClB,OAAO,CAAC,IAAI,CAAC,6GAA6G,CAAC,CAAC;QAC5H,MAAM,CAAC,QAAQ,GAAG,EAAE,CAAC;IACzB,CAAC;IACD,OAAO,MAAuC,CAAC;AACnD,CAAC"}
@@ -9,7 +9,7 @@ export async function reqFn(reqData, resReq = false, maxSerializableChars = 1000
9
9
  if (trialMode.enabled) {
10
10
  const trialCondition = Math.random() <= (trialMode?.reqFailureProbability ?? 0);
11
11
  if (trialCondition) {
12
- console.log('Request failed in trial mode.\nRequest data:\n', safelyStringify(reqData, maxSerializableChars));
12
+ console.error('stable-request: Request failed in trial mode.\nRequest data:\n', safelyStringify(reqData, maxSerializableChars));
13
13
  throw new Error('Request failed in trial mode.');
14
14
  }
15
15
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"req-fn.js","sourceRoot":"","sources":["../../src/utilities/req-fn.ts"],"names":[],"mappings":"AAAA,OAAO,KAAyC,MAAM,OAAO,CAAC;AAE9D,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,MAAM,CAAC,KAAK,UAAU,KAAK,CACzB,OAA4C,EAC5C,MAAM,GAAG,KAAK,EACd,oBAAoB,GAAG,IAAI,EAC3B,YAAgC,EAAE,OAAO,EAAE,KAAK,EAAE;IAElD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;IACpD,IAAI,CAAC;QACH,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;YACtB,MAAM,cAAc,GAClB,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,qBAAqB,IAAI,CAAC,CAAC,CAAC;YAC3D,IAAI,cAAc,EAAE,CAAC;gBACnB,OAAO,CAAC,GAAG,CACT,gDAAgD,EAChD,eAAe,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAC/C,CAAC;gBACF,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;YACnD,CAAC;iBAAM,CAAC;gBACN,OAAO;oBACL,EAAE,EAAE,IAAI;oBACR,WAAW,EAAE,IAAI;oBACjB,SAAS;oBACT,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;oBACrC,UAAU,EAAE,GAAG;oBACf,GAAG,CAAC,MAAM,IAAI,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE,CAAC;iBACvC,CAAC;YACJ,CAAC;QACH,CAAC;QACD,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,OAAO,CAAmB,OAAO,CAAC,CAAC;QAC3D,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACtB,OAAO,MAAM;YACX,CAAC,CAAC;gBACE,EAAE,EAAE,IAAI;gBACR,WAAW,EAAE,IAAI;gBACjB,IAAI,EAAE,GAAG,EAAE,IAAI;gBACf,SAAS;gBACT,aAAa,EAAE,QAAQ,GAAG,SAAS;gBACnC,UAAU,EAAE,GAAG,EAAE,MAAM,IAAI,GAAG;aAC/B;YACH,CAAC,CAAC;gBACE,EAAE,EAAE,IAAI;gBACR,WAAW,EAAE,IAAI;gBACjB,SAAS;gBACT,aAAa,EAAE,QAAQ,GAAG,SAAS;gBACnC,UAAU,EAAE,GAAG,EAAE,MAAM,IAAI,GAAG;aAC/B,CAAC;IACR,CAAC;IAAC,OAAO,CAAM,EAAE,CAAC;QAChB,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACtB,IAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;YACrB,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,KAAK,EAAE,wBAAwB;gBAC/B,WAAW,EAAE,KAAK;gBAClB,SAAS;gBACT,aAAa,EAAE,QAAQ,GAAG,SAAS;gBACnC,UAAU,EAAG,CAAgB,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;aACrD,CAAC;QACJ,CAAC;QACD,OAAO;YACL,EAAE,EAAE,KAAK;YACT,KAAK,EAAG,CAAgB,EAAE,QAAQ,EAAE,IAAI,IAAI,CAAC,EAAE,OAAO;YACtD,WAAW,EAAE,gBAAgB,CAAC,CAAe,EAAE,SAAS,CAAC;YACzD,SAAS;YACT,aAAa,EAAE,QAAQ,GAAG,SAAS;YACnC,UAAU,EAAG,CAAgB,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;SACrD,CAAC;IACJ,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"req-fn.js","sourceRoot":"","sources":["../../src/utilities/req-fn.ts"],"names":[],"mappings":"AAAA,OAAO,KAAyC,MAAM,OAAO,CAAC;AAE9D,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,MAAM,CAAC,KAAK,UAAU,KAAK,CACzB,OAA4C,EAC5C,MAAM,GAAG,KAAK,EACd,oBAAoB,GAAG,IAAI,EAC3B,YAAgC,EAAE,OAAO,EAAE,KAAK,EAAE;IAElD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;IACpD,IAAI,CAAC;QACH,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;YACtB,MAAM,cAAc,GAClB,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,qBAAqB,IAAI,CAAC,CAAC,CAAC;YAC3D,IAAI,cAAc,EAAE,CAAC;gBACnB,OAAO,CAAC,KAAK,CACX,gEAAgE,EAChE,eAAe,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAC/C,CAAC;gBACF,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;YACnD,CAAC;iBAAM,CAAC;gBACN,OAAO;oBACL,EAAE,EAAE,IAAI;oBACR,WAAW,EAAE,IAAI;oBACjB,SAAS;oBACT,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;oBACrC,UAAU,EAAE,GAAG;oBACf,GAAG,CAAC,MAAM,IAAI,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE,CAAC;iBACvC,CAAC;YACJ,CAAC;QACH,CAAC;QACD,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,OAAO,CAAmB,OAAO,CAAC,CAAC;QAC3D,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACtB,OAAO,MAAM;YACX,CAAC,CAAC;gBACE,EAAE,EAAE,IAAI;gBACR,WAAW,EAAE,IAAI;gBACjB,IAAI,EAAE,GAAG,EAAE,IAAI;gBACf,SAAS;gBACT,aAAa,EAAE,QAAQ,GAAG,SAAS;gBACnC,UAAU,EAAE,GAAG,EAAE,MAAM,IAAI,GAAG;aAC/B;YACH,CAAC,CAAC;gBACE,EAAE,EAAE,IAAI;gBACR,WAAW,EAAE,IAAI;gBACjB,SAAS;gBACT,aAAa,EAAE,QAAQ,GAAG,SAAS;gBACnC,UAAU,EAAE,GAAG,EAAE,MAAM,IAAI,GAAG;aAC/B,CAAC;IACR,CAAC;IAAC,OAAO,CAAM,EAAE,CAAC;QAChB,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACtB,IAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;YACrB,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,KAAK,EAAE,wBAAwB;gBAC/B,WAAW,EAAE,KAAK;gBAClB,SAAS;gBACT,aAAa,EAAE,QAAQ,GAAG,SAAS;gBACnC,UAAU,EAAG,CAAgB,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;aACrD,CAAC;QACJ,CAAC;QACD,OAAO;YACL,EAAE,EAAE,KAAK;YACT,KAAK,EAAG,CAAgB,EAAE,QAAQ,EAAE,IAAI,IAAI,CAAC,EAAE,OAAO;YACtD,WAAW,EAAE,gBAAgB,CAAC,CAAe,EAAE,SAAS,CAAC;YACzD,SAAS;YACT,aAAa,EAAE,QAAQ,GAAG,SAAS;YACnC,UAAU,EAAG,CAAgB,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;SACrD,CAAC;IACJ,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@emmvish/stable-request",
3
- "version": "1.1.7",
3
+ "version": "1.2.0",
4
4
  "description": "stable-request is a TypeScript-first HTTP reliability toolkit for workflow-driven API integrations, that goes beyond status-code retries by validating response content, handling eventual consistency, coordinating batch workflows with intelligent grouping, and providing deep observability into every request attempt. It is designed for real-world distributed systems where HTTP success does not guarantee business success. It also provides extensive support for managing multiple requests so as to achieve workflow automation.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",