@emmvish/stable-request 1.6.5 → 1.7.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 (38) hide show
  1. package/README.md +353 -1
  2. package/dist/constants/index.d.ts.map +1 -1
  3. package/dist/constants/index.js +4 -0
  4. package/dist/constants/index.js.map +1 -1
  5. package/dist/core/stable-request.d.ts.map +1 -1
  6. package/dist/core/stable-request.js +13 -13
  7. package/dist/core/stable-request.js.map +1 -1
  8. package/dist/core/stable-workflow.d.ts.map +1 -1
  9. package/dist/core/stable-workflow.js +3 -3
  10. package/dist/core/stable-workflow.js.map +1 -1
  11. package/dist/index.d.ts +2 -2
  12. package/dist/index.d.ts.map +1 -1
  13. package/dist/index.js +1 -1
  14. package/dist/index.js.map +1 -1
  15. package/dist/types/index.d.ts +21 -1
  16. package/dist/types/index.d.ts.map +1 -1
  17. package/dist/utilities/execute-branch-workflow.d.ts.map +1 -1
  18. package/dist/utilities/execute-branch-workflow.js +11 -11
  19. package/dist/utilities/execute-branch-workflow.js.map +1 -1
  20. package/dist/utilities/execute-non-linear-workflow.d.ts.map +1 -1
  21. package/dist/utilities/execute-non-linear-workflow.js +9 -9
  22. package/dist/utilities/execute-non-linear-workflow.js.map +1 -1
  23. package/dist/utilities/execute-phase.d.ts.map +1 -1
  24. package/dist/utilities/execute-phase.js +3 -3
  25. package/dist/utilities/execute-phase.js.map +1 -1
  26. package/dist/utilities/execute-with-persistence.d.ts +3 -0
  27. package/dist/utilities/execute-with-persistence.d.ts.map +1 -0
  28. package/dist/utilities/execute-with-persistence.js +34 -0
  29. package/dist/utilities/execute-with-persistence.js.map +1 -0
  30. package/dist/utilities/get-new-delay-time.d.ts +1 -1
  31. package/dist/utilities/get-new-delay-time.d.ts.map +1 -1
  32. package/dist/utilities/get-new-delay-time.js +16 -5
  33. package/dist/utilities/get-new-delay-time.js.map +1 -1
  34. package/dist/utilities/index.d.ts +1 -0
  35. package/dist/utilities/index.d.ts.map +1 -1
  36. package/dist/utilities/index.js +1 -0
  37. package/dist/utilities/index.js.map +1 -1
  38. package/package.json +2 -2
@@ -1,5 +1,5 @@
1
1
  import { stableApiGateway } from '../core/index.js';
2
- import { safelyExecuteUnknownFunction } from './safely-execute-unknown-function';
2
+ import { executeWithPersistence } from './execute-with-persistence.js';
3
3
  import { formatLogContext } from './format-log-context';
4
4
  export async function executePhase(phase, phaseIndex, workflowId, commonGatewayOptions, requestGroups, logPhaseResults, handlePhaseCompletion, maxSerializableChars, workflowHookParams, sharedBuffer, branchId) {
5
5
  const phaseId = phase.id || `phase-${phaseIndex + 1}`;
@@ -48,14 +48,14 @@ export async function executePhase(phase, phaseIndex, workflowId, commonGatewayO
48
48
  }
49
49
  if (handlePhaseCompletion) {
50
50
  try {
51
- await safelyExecuteUnknownFunction(handlePhaseCompletion, {
51
+ await executeWithPersistence(handlePhaseCompletion, {
52
52
  workflowId,
53
53
  ...(branchId && { branchId }),
54
54
  phaseResult,
55
55
  maxSerializableChars,
56
56
  params: workflowHookParams?.handlePhaseCompletionParams,
57
57
  sharedBuffer
58
- });
58
+ }, phase.statePersistence, { workflowId, branchId, phaseId }, sharedBuffer || {});
59
59
  }
60
60
  catch (hookError) {
61
61
  console.error(`${formatLogContext({ workflowId, branchId, phaseId })}stable-request: Error in handlePhaseCompletion hook:`, hookError);
@@ -1 +1 @@
1
- {"version":3,"file":"execute-phase.js","sourceRoot":"","sources":["../../src/utilities/execute-phase.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execute-phase.js","sourceRoot":"","sources":["../../src/utilities/execute-phase.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { StatePersistenceConfig, ExecutionContext } from '../types/index.js';
2
+ export declare function executeWithPersistence<T = any>(hookFn: Function, hookOptions: any, persistenceConfig?: StatePersistenceConfig, executionContext?: ExecutionContext, buffer?: Record<string, any>): Promise<T>;
3
+ //# sourceMappingURL=execute-with-persistence.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execute-with-persistence.d.ts","sourceRoot":"","sources":["../../src/utilities/execute-with-persistence.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAI7E,wBAAsB,sBAAsB,CAAC,CAAC,GAAG,GAAG,EAClD,MAAM,EAAE,QAAQ,EAChB,WAAW,EAAE,GAAG,EAChB,iBAAiB,CAAC,EAAE,sBAAsB,EAC1C,gBAAgB,GAAE,gBAAqB,EACvC,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,GAC/B,OAAO,CAAC,CAAC,CAAC,CA0CZ"}
@@ -0,0 +1,34 @@
1
+ import { safelyExecuteUnknownFunction } from './safely-execute-unknown-function.js';
2
+ import { formatLogContext } from './format-log-context.js';
3
+ export async function executeWithPersistence(hookFn, hookOptions, persistenceConfig, executionContext = {}, buffer = {}) {
4
+ if (persistenceConfig?.loadBeforeHooks && persistenceConfig.persistenceFunction) {
5
+ try {
6
+ const loadedState = await safelyExecuteUnknownFunction(persistenceConfig.persistenceFunction, {
7
+ executionContext,
8
+ params: persistenceConfig.persistenceParams,
9
+ buffer: { ...buffer }
10
+ });
11
+ if (loadedState && typeof loadedState === 'object') {
12
+ Object.assign(buffer, loadedState);
13
+ }
14
+ }
15
+ catch (error) {
16
+ console.error(`${formatLogContext(executionContext)}stable-request: \nState persistence: Failed to load state before hook execution: ${error.message}`);
17
+ }
18
+ }
19
+ const result = await safelyExecuteUnknownFunction(hookFn, hookOptions);
20
+ if (persistenceConfig?.storeAfterHooks && persistenceConfig.persistenceFunction) {
21
+ try {
22
+ await safelyExecuteUnknownFunction(persistenceConfig.persistenceFunction, {
23
+ executionContext,
24
+ params: persistenceConfig.persistenceParams,
25
+ buffer: { ...buffer }
26
+ });
27
+ }
28
+ catch (error) {
29
+ console.error(`${formatLogContext(executionContext)}stable-request: \nState persistence: Failed to store state after hook execution: ${error.message}`);
30
+ }
31
+ }
32
+ return result;
33
+ }
34
+ //# sourceMappingURL=execute-with-persistence.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execute-with-persistence.js","sourceRoot":"","sources":["../../src/utilities/execute-with-persistence.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,4BAA4B,EAAE,MAAM,sCAAsC,CAAC;AACpF,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,MAAgB,EAChB,WAAgB,EAChB,iBAA0C,EAC1C,mBAAqC,EAAE,EACvC,SAA8B,EAAE;IAEhC,IAAI,iBAAiB,EAAE,eAAe,IAAI,iBAAiB,CAAC,mBAAmB,EAAE,CAAC;QAChF,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,4BAA4B,CACpD,iBAAiB,CAAC,mBAAmB,EACrC;gBACE,gBAAgB;gBAChB,MAAM,EAAE,iBAAiB,CAAC,iBAAiB;gBAC3C,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE;aACtB,CACF,CAAC;YAEF,IAAI,WAAW,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;gBACnD,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YACrC,CAAC;QACH,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,OAAO,CAAC,KAAK,CACX,GAAG,gBAAgB,CAAC,gBAAgB,CAAC,oFAAoF,KAAK,CAAC,OAAO,EAAE,CACzI,CAAC;QACJ,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,4BAA4B,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAEvE,IAAI,iBAAiB,EAAE,eAAe,IAAI,iBAAiB,CAAC,mBAAmB,EAAE,CAAC;QAChF,IAAI,CAAC;YACH,MAAM,4BAA4B,CAChC,iBAAiB,CAAC,mBAAmB,EACrC;gBACE,gBAAgB;gBAChB,MAAM,EAAE,iBAAiB,CAAC,iBAAiB;gBAC3C,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE;aACtB,CACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,OAAO,CAAC,KAAK,CACX,GAAG,gBAAgB,CAAC,gBAAgB,CAAC,oFAAoF,KAAK,CAAC,OAAO,EAAE,CACzI,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -1,3 +1,3 @@
1
1
  import { RETRY_STRATEGIES } from "../enums/index.js";
2
- export declare function getNewDelayTime(retryStrategy?: RETRY_STRATEGIES, delay?: number, currentAttempt?: number): number;
2
+ export declare function getNewDelayTime(retryStrategy?: RETRY_STRATEGIES, delay?: number, currentAttempt?: number, jitter?: number): number;
3
3
  //# sourceMappingURL=get-new-delay-time.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"get-new-delay-time.d.ts","sourceRoot":"","sources":["../../src/utilities/get-new-delay-time.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAErD,wBAAgB,eAAe,CAC7B,aAAa,mBAAyB,EACtC,KAAK,SAAO,EACZ,cAAc,SAAI,UAenB"}
1
+ {"version":3,"file":"get-new-delay-time.d.ts","sourceRoot":"","sources":["../../src/utilities/get-new-delay-time.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAErD,wBAAgB,eAAe,CAC7B,aAAa,mBAAyB,EACtC,KAAK,SAAO,EACZ,cAAc,SAAI,EAClB,MAAM,SAAI,UA6BX"}
@@ -1,15 +1,26 @@
1
1
  import { RETRY_STRATEGIES } from "../enums/index.js";
2
- export function getNewDelayTime(retryStrategy = RETRY_STRATEGIES.FIXED, delay = 1000, currentAttempt = 1) {
2
+ export function getNewDelayTime(retryStrategy = RETRY_STRATEGIES.FIXED, delay = 1000, currentAttempt = 1, jitter = 0) {
3
+ let calculatedDelay;
3
4
  switch (retryStrategy) {
4
5
  case RETRY_STRATEGIES.FIXED:
5
- return delay;
6
+ calculatedDelay = delay;
7
+ break;
6
8
  case RETRY_STRATEGIES.LINEAR:
7
- return currentAttempt * delay;
9
+ calculatedDelay = currentAttempt * delay;
10
+ break;
8
11
  case RETRY_STRATEGIES.EXPONENTIAL:
9
- return (delay *
12
+ calculatedDelay = (delay *
10
13
  Math.pow(2, currentAttempt > 0 ? currentAttempt - 1 : currentAttempt));
14
+ break;
11
15
  default:
12
- return delay;
16
+ calculatedDelay = delay;
13
17
  }
18
+ if (jitter !== 0) {
19
+ const minFactor = 1 - jitter;
20
+ const maxFactor = 1 + jitter;
21
+ const randomFactor = minFactor + Math.random() * (maxFactor - minFactor);
22
+ calculatedDelay = Math.round(calculatedDelay * randomFactor);
23
+ }
24
+ return calculatedDelay;
14
25
  }
15
26
  //# sourceMappingURL=get-new-delay-time.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"get-new-delay-time.js","sourceRoot":"","sources":["../../src/utilities/get-new-delay-time.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAErD,MAAM,UAAU,eAAe,CAC7B,aAAa,GAAG,gBAAgB,CAAC,KAAK,EACtC,KAAK,GAAG,IAAI,EACZ,cAAc,GAAG,CAAC;IAElB,QAAQ,aAAa,EAAE,CAAC;QACtB,KAAK,gBAAgB,CAAC,KAAK;YACzB,OAAO,KAAK,CAAC;QACf,KAAK,gBAAgB,CAAC,MAAM;YAC1B,OAAO,cAAc,GAAG,KAAK,CAAC;QAChC,KAAK,gBAAgB,CAAC,WAAW;YAC/B,OAAO,CACL,KAAK;gBACL,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CACtE,CAAC;QACJ;YACE,OAAO,KAAK,CAAC;IACjB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"get-new-delay-time.js","sourceRoot":"","sources":["../../src/utilities/get-new-delay-time.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAErD,MAAM,UAAU,eAAe,CAC7B,aAAa,GAAG,gBAAgB,CAAC,KAAK,EACtC,KAAK,GAAG,IAAI,EACZ,cAAc,GAAG,CAAC,EAClB,MAAM,GAAG,CAAC;IAEV,IAAI,eAAuB,CAAC;IAE5B,QAAQ,aAAa,EAAE,CAAC;QACtB,KAAK,gBAAgB,CAAC,KAAK;YACzB,eAAe,GAAG,KAAK,CAAC;YACxB,MAAM;QACR,KAAK,gBAAgB,CAAC,MAAM;YAC1B,eAAe,GAAG,cAAc,GAAG,KAAK,CAAC;YACzC,MAAM;QACR,KAAK,gBAAgB,CAAC,WAAW;YAC/B,eAAe,GAAG,CAChB,KAAK;gBACL,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CACtE,CAAC;YACF,MAAM;QACR;YACE,eAAe,GAAG,KAAK,CAAC;IAC5B,CAAC;IAED,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;QACjB,MAAM,SAAS,GAAG,CAAC,GAAG,MAAM,CAAC;QAC7B,MAAM,SAAS,GAAG,CAAC,GAAG,MAAM,CAAC;QAC7B,MAAM,YAAY,GAAG,SAAS,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC;QACzE,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,YAAY,CAAC,CAAC;IAC/D,CAAC;IAED,OAAO,eAAe,CAAC;AACzB,CAAC"}
@@ -7,6 +7,7 @@ export { executeConcurrently } from './execute-concurrently.js';
7
7
  export { executeNonLinearWorkflow } from './execute-non-linear-workflow.js';
8
8
  export { executePhase } from './execute-phase.js';
9
9
  export { executeSequentially } from './execute-sequentially.js';
10
+ export { executeWithPersistence } from './execute-with-persistence.js';
10
11
  export { extractCommonRequestConfigOptions } from './extract-common-request-config-options.js';
11
12
  export { formatLogContext } from './format-log-context.js';
12
13
  export { generateAxiosRequestConfig } from './generate-axios-request-config.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utilities/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAClG,OAAO,EAAE,cAAc,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,iCAAiC,EAAE,MAAM,4CAA4C,CAAC;AAC/F,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAChF,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,4BAA4B,EAAE,MAAM,sCAAsC,CAAC;AACpF,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,8BAA8B,EAAE,MAAM,wCAAwC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utilities/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAClG,OAAO,EAAE,cAAc,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,iCAAiC,EAAE,MAAM,4CAA4C,CAAC;AAC/F,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAChF,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,4BAA4B,EAAE,MAAM,sCAAsC,CAAC;AACpF,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,8BAA8B,EAAE,MAAM,wCAAwC,CAAC"}
@@ -7,6 +7,7 @@ export { executeConcurrently } from './execute-concurrently.js';
7
7
  export { executeNonLinearWorkflow } from './execute-non-linear-workflow.js';
8
8
  export { executePhase } from './execute-phase.js';
9
9
  export { executeSequentially } from './execute-sequentially.js';
10
+ export { executeWithPersistence } from './execute-with-persistence.js';
10
11
  export { extractCommonRequestConfigOptions } from './extract-common-request-config-options.js';
11
12
  export { formatLogContext } from './format-log-context.js';
12
13
  export { generateAxiosRequestConfig } from './generate-axios-request-config.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utilities/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAClG,OAAO,EAAE,cAAc,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,iCAAiC,EAAE,MAAM,4CAA4C,CAAC;AAC/F,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAChF,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,4BAA4B,EAAE,MAAM,sCAAsC,CAAC;AACpF,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,8BAA8B,EAAE,MAAM,wCAAwC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utilities/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAClG,OAAO,EAAE,cAAc,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,iCAAiC,EAAE,MAAM,4CAA4C,CAAC;AAC/F,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAChF,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,4BAA4B,EAAE,MAAM,sCAAsC,CAAC;AACpF,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,8BAA8B,EAAE,MAAM,wCAAwC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@emmvish/stable-request",
3
- "version": "1.6.5",
3
+ "version": "1.7.0",
4
4
  "description": "A production-grade HTTP Workflow Execution Engine for Node.js that transforms unreliable API calls into resilient, observable, and sophisticated multi-phase workflows with intelligent retry strategies, circuit breakers, and advanced execution patterns.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -59,7 +59,7 @@
59
59
  "axios": "^1.12.2"
60
60
  },
61
61
  "repository": "github:Emmvish/stable-request",
62
- "homepage": "https://github.com/Emmvish/stable-request#readme",
62
+ "homepage": "https://emmvish.github.io/stable-request",
63
63
  "bugs": {
64
64
  "url": "https://github.com/Emmvish/stable-request/issues"
65
65
  }