typescript-retry-decorator 2.0.3 → 2.0.5
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/.eslintrc.js +1 -0
- package/dist/index.js +5 -1
- package/dist/index.js.map +1 -1
- package/dist/retry.decorator.d.ts +2 -1
- package/dist/retry.decorator.d.ts.map +1 -1
- package/dist/retry.decorator.js.map +1 -1
- package/dist/utils.d.ts +1 -1
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js.map +1 -1
- package/jest.config.js +1 -0
- package/package.json +10 -10
- package/src/retry.decorator.ts +6 -4
- package/src/utils.ts +1 -1
package/.eslintrc.js
CHANGED
package/dist/index.js
CHANGED
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
3
|
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
5
9
|
}) : (function(o, m, k, k2) {
|
|
6
10
|
if (k2 === undefined) k2 = k;
|
|
7
11
|
o[k2] = m[k];
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* @param options the 'RetryOptions'
|
|
5
5
|
*/
|
|
6
|
-
export declare function Retryable(options: RetryOptions):
|
|
6
|
+
export declare function Retryable(options: RetryOptions): DecoratorFunction;
|
|
7
7
|
export declare class MaxAttemptsError extends Error {
|
|
8
8
|
code: string;
|
|
9
9
|
}
|
|
@@ -22,4 +22,5 @@ export declare enum BackOffPolicy {
|
|
|
22
22
|
FixedBackOffPolicy = "FixedBackOffPolicy",
|
|
23
23
|
ExponentialBackOffPolicy = "ExponentialBackOffPolicy"
|
|
24
24
|
}
|
|
25
|
+
export declare type DecoratorFunction = (target: Record<string, any>, propertyKey: string, descriptor: TypedPropertyDescriptor<any>) => TypedPropertyDescriptor<any>;
|
|
25
26
|
//# sourceMappingURL=retry.decorator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"retry.decorator.d.ts","sourceRoot":"","sources":["../src/retry.decorator.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,YAAY,GAAG,
|
|
1
|
+
{"version":3,"file":"retry.decorator.d.ts","sourceRoot":"","sources":["../src/retry.decorator.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,YAAY,GAAG,iBAAiB,CAmElE;AAED,qBAAa,gBAAiB,SAAQ,KAAK;IACzC,IAAI,SAAS;CAMd;AAED,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC;IAC9B,KAAK,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC3B,iBAAiB,CAAC,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;CACjE;AAED,oBAAY,aAAa;IACvB,kBAAkB,uBAAuB;IACzC,wBAAwB,6BAA6B;CACtD;AAED,oBAAY,iBAAiB,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,uBAAuB,CAAC,GAAG,CAAC,KAAK,uBAAuB,CAAC,GAAG,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"retry.decorator.js","sourceRoot":"","sources":["../src/retry.decorator.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mCAAgC;AAEhC;;;;GAIG;AACH,SAAgB,SAAS,CAAC,OAAqB;IAC7C;;;;;;;;OAQG;IACH,OAAO,UAAS,MAA2B,EAAE,WAAmB,EAAE,UAAwC;QACxG,MAAM,UAAU,
|
|
1
|
+
{"version":3,"file":"retry.decorator.js","sourceRoot":"","sources":["../src/retry.decorator.ts"],"names":[],"mappings":"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"}
|
package/dist/utils.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const sleep:
|
|
1
|
+
export declare const sleep: (ms?: number) => void;
|
|
2
2
|
//# sourceMappingURL=utils.d.ts.map
|
package/dist/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,IAAuE,CAAC"}
|
package/dist/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;;AAAA,0EAA0E;AACnE,MAAM,KAAK,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;;AAAA,0EAA0E;AACnE,MAAM,KAAK,GAA0B,CAAC,EAAW,EAAE,EAAE,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAAhG,QAAA,KAAK,SAA2F"}
|
package/jest.config.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "typescript-retry-decorator",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.5",
|
|
4
4
|
"description": "A simple retry decorator for typescript with no dependency.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -27,15 +27,15 @@
|
|
|
27
27
|
},
|
|
28
28
|
"homepage": "https://github.com/vcfvct/typescript-retry-decorator#readme",
|
|
29
29
|
"devDependencies": {
|
|
30
|
-
"@types/jest": "^
|
|
31
|
-
"@types/node": "^
|
|
32
|
-
"@typescript-eslint/eslint-plugin": "^
|
|
33
|
-
"@typescript-eslint/parser": "^
|
|
34
|
-
"eslint": "^
|
|
30
|
+
"@types/jest": "^28.1.1",
|
|
31
|
+
"@types/node": "^17.0.41",
|
|
32
|
+
"@typescript-eslint/eslint-plugin": "^5.27.1",
|
|
33
|
+
"@typescript-eslint/parser": "^5.27.1",
|
|
34
|
+
"eslint": "^8.17.0",
|
|
35
35
|
"eslint-config-ts-vcfvct": "^1.0.0",
|
|
36
|
-
"jest": "^
|
|
37
|
-
"ts-jest": "^
|
|
38
|
-
"ts-node": "^
|
|
39
|
-
"typescript": "^4.
|
|
36
|
+
"jest": "^28.1.1",
|
|
37
|
+
"ts-jest": "^28.0.4",
|
|
38
|
+
"ts-node": "^10.8.1",
|
|
39
|
+
"typescript": "^4.7.3"
|
|
40
40
|
}
|
|
41
41
|
}
|
package/src/retry.decorator.ts
CHANGED
|
@@ -5,7 +5,7 @@ import { sleep } from './utils';
|
|
|
5
5
|
*
|
|
6
6
|
* @param options the 'RetryOptions'
|
|
7
7
|
*/
|
|
8
|
-
export function Retryable(options: RetryOptions):
|
|
8
|
+
export function Retryable(options: RetryOptions): DecoratorFunction {
|
|
9
9
|
/**
|
|
10
10
|
* target: The prototype of the class (Object)
|
|
11
11
|
* propertyKey: The name of the method (string | symbol).
|
|
@@ -16,7 +16,7 @@ export function Retryable(options: RetryOptions): Function {
|
|
|
16
16
|
*
|
|
17
17
|
*/
|
|
18
18
|
return function(target: Record<string, any>, propertyKey: string, descriptor: TypedPropertyDescriptor<any>) {
|
|
19
|
-
const originalFn
|
|
19
|
+
const originalFn = descriptor.value;
|
|
20
20
|
// set default value for ExponentialBackOffPolicy
|
|
21
21
|
if (options.backOffPolicy === BackOffPolicy.ExponentialBackOffPolicy) {
|
|
22
22
|
setExponentialBackOffPolicyDefault();
|
|
@@ -35,7 +35,7 @@ export function Retryable(options: RetryOptions): Function {
|
|
|
35
35
|
return descriptor;
|
|
36
36
|
};
|
|
37
37
|
|
|
38
|
-
async function retryAsync(fn:
|
|
38
|
+
async function retryAsync(fn: () => any, args: any[], maxAttempts: number, backOff?: number): Promise<any> {
|
|
39
39
|
try {
|
|
40
40
|
return await fn.apply(this, args);
|
|
41
41
|
} catch (e) {
|
|
@@ -75,7 +75,7 @@ export function Retryable(options: RetryOptions): Function {
|
|
|
75
75
|
}
|
|
76
76
|
|
|
77
77
|
export class MaxAttemptsError extends Error {
|
|
78
|
-
code = '429'
|
|
78
|
+
code = '429';
|
|
79
79
|
/* if target is ES5, need the 'new.target.prototype'
|
|
80
80
|
constructor(msg?: string) {
|
|
81
81
|
super(msg)
|
|
@@ -97,3 +97,5 @@ export enum BackOffPolicy {
|
|
|
97
97
|
ExponentialBackOffPolicy = 'ExponentialBackOffPolicy'
|
|
98
98
|
}
|
|
99
99
|
|
|
100
|
+
export type DecoratorFunction = (target: Record<string, any>, propertyKey: string, descriptor: TypedPropertyDescriptor<any>) => TypedPropertyDescriptor<any>;
|
|
101
|
+
|
package/src/utils.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
// wrap the native setTimeout with Promise so it can be used with `await`.
|
|
2
|
-
export const sleep:
|
|
2
|
+
export const sleep: (ms?: number) => void = (ms?: number) => new Promise(resolve => setTimeout(resolve, ms));
|