@lifi/sdk 4.0.0-alpha.13 → 4.0.0-alpha.14
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/dist/cjs/types/core.d.ts +2 -1
- package/dist/cjs/utils/waitForResult.d.ts +1 -1
- package/dist/cjs/utils/waitForResult.js +6 -2
- package/dist/cjs/utils/waitForResult.js.map +1 -1
- package/dist/cjs/version.d.ts +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/esm/types/core.d.ts +2 -1
- package/dist/esm/utils/waitForResult.d.ts +2 -2
- package/dist/esm/utils/waitForResult.js +7 -3
- package/dist/esm/utils/waitForResult.js.map +1 -1
- package/dist/esm/version.d.ts +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/types/types/core.d.ts +2 -1
- package/dist/types/types/core.d.ts.map +1 -1
- package/dist/types/utils/waitForResult.d.ts +2 -2
- package/dist/types/utils/waitForResult.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/package.json +1 -1
- package/src/types/core.ts +6 -1
- package/src/utils/waitForResult.ts +9 -4
- package/src/version.ts +1 -1
package/dist/cjs/types/core.d.ts
CHANGED
|
@@ -15,6 +15,7 @@ export interface SDKBaseConfig {
|
|
|
15
15
|
preloadChains?: boolean;
|
|
16
16
|
chainsRefetchInterval?: number;
|
|
17
17
|
requestInterceptor?: RequestInterceptor;
|
|
18
|
+
safeApiKey?: string;
|
|
18
19
|
}
|
|
19
20
|
export interface SDKConfig extends Partial<Omit<SDKBaseConfig, 'integrator'>> {
|
|
20
21
|
integrator: string;
|
|
@@ -164,4 +165,4 @@ export interface Execution {
|
|
|
164
165
|
internalTxLink?: string;
|
|
165
166
|
externalTxLink?: string;
|
|
166
167
|
}
|
|
167
|
-
export type TransactionMethodType = 'standard' | 'relayed' | 'batched';
|
|
168
|
+
export type TransactionMethodType = 'standard' | 'relayed' | 'batched' | 'safe-queued';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const waitForResult: <T>(fn: () => Promise<T | undefined>, interval?: number, maxRetries?: number, shouldRetry?: (count: number, error: unknown) => boolean) => Promise<T>;
|
|
1
|
+
export declare const waitForResult: <T>(fn: () => Promise<T | undefined>, interval?: number | ((poll: number) => number), maxRetries?: number, shouldRetry?: (count: number, error: unknown) => boolean) => Promise<T>;
|
|
@@ -5,11 +5,14 @@ const sleep_js_1 = require("./sleep.js");
|
|
|
5
5
|
const waitForResult = async (fn, interval = 5000, maxRetries = 3, shouldRetry = () => true) => {
|
|
6
6
|
let result;
|
|
7
7
|
let attempts = 0;
|
|
8
|
+
let polls = 0;
|
|
9
|
+
const getInterval = typeof interval === 'function' ? interval : () => interval;
|
|
8
10
|
while (!result) {
|
|
9
11
|
try {
|
|
10
12
|
result = await fn();
|
|
11
13
|
if (!result) {
|
|
12
|
-
await (0, sleep_js_1.sleep)(
|
|
14
|
+
await (0, sleep_js_1.sleep)(getInterval(polls));
|
|
15
|
+
polls++;
|
|
13
16
|
}
|
|
14
17
|
}
|
|
15
18
|
catch (error) {
|
|
@@ -20,7 +23,8 @@ const waitForResult = async (fn, interval = 5000, maxRetries = 3, shouldRetry =
|
|
|
20
23
|
if (attempts === maxRetries) {
|
|
21
24
|
throw error;
|
|
22
25
|
}
|
|
23
|
-
await (0, sleep_js_1.sleep)(
|
|
26
|
+
await (0, sleep_js_1.sleep)(getInterval(polls));
|
|
27
|
+
polls++;
|
|
24
28
|
}
|
|
25
29
|
}
|
|
26
30
|
return result;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"waitForResult.js","sourceRoot":"","sources":["../../../src/utils/waitForResult.ts"],"names":[],"mappings":";;;AAAA,yCAAkC;AAW3B,MAAM,aAAa,GAAG,KAAK,EAChC,EAAgC,EAChC,
|
|
1
|
+
{"version":3,"file":"waitForResult.js","sourceRoot":"","sources":["../../../src/utils/waitForResult.ts"],"names":[],"mappings":";;;AAAA,yCAAkC;AAW3B,MAAM,aAAa,GAAG,KAAK,EAChC,EAAgC,EAChC,WAAgD,IAAI,EACpD,UAAU,GAAG,CAAC,EACd,cAA0D,GAAG,EAAE,CAAC,IAAI,EACxD,EAAE;IACd,IAAI,MAAqB,CAAA;IACzB,IAAI,QAAQ,GAAG,CAAC,CAAA;IAChB,IAAI,KAAK,GAAG,CAAC,CAAA;IAEb,MAAM,WAAW,GAAG,OAAO,QAAQ,KAAK,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAA;IAE9E,OAAO,CAAC,MAAM,EAAE,CAAC;QACf,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,EAAE,EAAE,CAAA;YACnB,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,IAAA,gBAAK,EAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAA;gBAC/B,KAAK,EAAE,CAAA;YACT,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;gBAClC,MAAM,KAAK,CAAA;YACb,CAAC;YACD,QAAQ,EAAE,CAAA;YACV,IAAI,QAAQ,KAAK,UAAU,EAAE,CAAC;gBAC5B,MAAM,KAAK,CAAA;YACb,CAAC;YACD,MAAM,IAAA,gBAAK,EAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAA;YAC/B,KAAK,EAAE,CAAA;QACT,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AAjCY,QAAA,aAAa,iBAiCzB"}
|
package/dist/cjs/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export declare const name = "@lifi/sdk";
|
|
2
|
-
export declare const version = "4.0.0-alpha.
|
|
2
|
+
export declare const version = "4.0.0-alpha.14";
|
package/dist/cjs/version.js
CHANGED
package/dist/esm/types/core.d.ts
CHANGED
|
@@ -15,6 +15,7 @@ export interface SDKBaseConfig {
|
|
|
15
15
|
preloadChains?: boolean;
|
|
16
16
|
chainsRefetchInterval?: number;
|
|
17
17
|
requestInterceptor?: RequestInterceptor;
|
|
18
|
+
safeApiKey?: string;
|
|
18
19
|
}
|
|
19
20
|
export interface SDKConfig extends Partial<Omit<SDKBaseConfig, 'integrator'>> {
|
|
20
21
|
integrator: string;
|
|
@@ -167,4 +168,4 @@ export interface Execution {
|
|
|
167
168
|
internalTxLink?: string;
|
|
168
169
|
externalTxLink?: string;
|
|
169
170
|
}
|
|
170
|
-
export type TransactionMethodType = 'standard' | 'relayed' | 'batched';
|
|
171
|
+
export type TransactionMethodType = 'standard' | 'relayed' | 'batched' | 'safe-queued';
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Repeatedly calls a given asynchronous function until it resolves with a value
|
|
3
3
|
* @param fn The function that should be repeated
|
|
4
|
-
* @param interval The timeout in milliseconds between retries,
|
|
4
|
+
* @param interval The timeout in milliseconds between retries, or a function that receives the current poll count and returns the interval. Defaults to 5000
|
|
5
5
|
* @param maxRetries Maximum number of retries before throwing an error, defaults to 3
|
|
6
6
|
* @param shouldRetry Optional predicate to determine if an error should trigger a retry
|
|
7
7
|
* @returns The result of the fn function
|
|
8
8
|
* @throws Error if maximum retries is reached, if function keeps returning undefined, or if shouldRetry returns false
|
|
9
9
|
*/
|
|
10
|
-
export declare const waitForResult: <T>(fn: () => Promise<T | undefined>, interval?: number, maxRetries?: number, shouldRetry?: (count: number, error: unknown) => boolean) => Promise<T>;
|
|
10
|
+
export declare const waitForResult: <T>(fn: () => Promise<T | undefined>, interval?: number | ((poll: number) => number), maxRetries?: number, shouldRetry?: (count: number, error: unknown) => boolean) => Promise<T>;
|
|
@@ -2,7 +2,7 @@ import { sleep } from './sleep.js';
|
|
|
2
2
|
/**
|
|
3
3
|
* Repeatedly calls a given asynchronous function until it resolves with a value
|
|
4
4
|
* @param fn The function that should be repeated
|
|
5
|
-
* @param interval The timeout in milliseconds between retries,
|
|
5
|
+
* @param interval The timeout in milliseconds between retries, or a function that receives the current poll count and returns the interval. Defaults to 5000
|
|
6
6
|
* @param maxRetries Maximum number of retries before throwing an error, defaults to 3
|
|
7
7
|
* @param shouldRetry Optional predicate to determine if an error should trigger a retry
|
|
8
8
|
* @returns The result of the fn function
|
|
@@ -11,11 +11,14 @@ import { sleep } from './sleep.js';
|
|
|
11
11
|
export const waitForResult = async (fn, interval = 5000, maxRetries = 3, shouldRetry = () => true) => {
|
|
12
12
|
let result;
|
|
13
13
|
let attempts = 0;
|
|
14
|
+
let polls = 0;
|
|
15
|
+
const getInterval = typeof interval === 'function' ? interval : () => interval;
|
|
14
16
|
while (!result) {
|
|
15
17
|
try {
|
|
16
18
|
result = await fn();
|
|
17
19
|
if (!result) {
|
|
18
|
-
await sleep(
|
|
20
|
+
await sleep(getInterval(polls));
|
|
21
|
+
polls++;
|
|
19
22
|
}
|
|
20
23
|
}
|
|
21
24
|
catch (error) {
|
|
@@ -26,7 +29,8 @@ export const waitForResult = async (fn, interval = 5000, maxRetries = 3, shouldR
|
|
|
26
29
|
if (attempts === maxRetries) {
|
|
27
30
|
throw error;
|
|
28
31
|
}
|
|
29
|
-
await sleep(
|
|
32
|
+
await sleep(getInterval(polls));
|
|
33
|
+
polls++;
|
|
30
34
|
}
|
|
31
35
|
}
|
|
32
36
|
return result;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"waitForResult.js","sourceRoot":"","sources":["../../../src/utils/waitForResult.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAElC;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,EAChC,EAAgC,EAChC,
|
|
1
|
+
{"version":3,"file":"waitForResult.js","sourceRoot":"","sources":["../../../src/utils/waitForResult.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAElC;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,EAChC,EAAgC,EAChC,WAAgD,IAAI,EACpD,UAAU,GAAG,CAAC,EACd,cAA0D,GAAG,EAAE,CAAC,IAAI,EACxD,EAAE;IACd,IAAI,MAAqB,CAAA;IACzB,IAAI,QAAQ,GAAG,CAAC,CAAA;IAChB,IAAI,KAAK,GAAG,CAAC,CAAA;IAEb,MAAM,WAAW,GAAG,OAAO,QAAQ,KAAK,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAA;IAE9E,OAAO,CAAC,MAAM,EAAE,CAAC;QACf,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,EAAE,EAAE,CAAA;YACnB,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAA;gBAC/B,KAAK,EAAE,CAAA;YACT,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;gBAClC,MAAM,KAAK,CAAA;YACb,CAAC;YACD,QAAQ,EAAE,CAAA;YACV,IAAI,QAAQ,KAAK,UAAU,EAAE,CAAC;gBAC5B,MAAM,KAAK,CAAA;YACb,CAAC;YACD,MAAM,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAA;YAC/B,KAAK,EAAE,CAAA;QACT,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC,CAAA"}
|
package/dist/esm/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export declare const name = "@lifi/sdk";
|
|
2
|
-
export declare const version = "4.0.0-alpha.
|
|
2
|
+
export declare const version = "4.0.0-alpha.14";
|
package/dist/esm/version.js
CHANGED
|
@@ -15,6 +15,7 @@ export interface SDKBaseConfig {
|
|
|
15
15
|
preloadChains?: boolean;
|
|
16
16
|
chainsRefetchInterval?: number;
|
|
17
17
|
requestInterceptor?: RequestInterceptor;
|
|
18
|
+
safeApiKey?: string;
|
|
18
19
|
}
|
|
19
20
|
export interface SDKConfig extends Partial<Omit<SDKBaseConfig, 'integrator'>> {
|
|
20
21
|
integrator: string;
|
|
@@ -167,5 +168,5 @@ export interface Execution {
|
|
|
167
168
|
internalTxLink?: string;
|
|
168
169
|
externalTxLink?: string;
|
|
169
170
|
}
|
|
170
|
-
export type TransactionMethodType = 'standard' | 'relayed' | 'batched';
|
|
171
|
+
export type TransactionMethodType = 'standard' | 'relayed' | 'batched' | 'safe-queued';
|
|
171
172
|
//# sourceMappingURL=core.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/types/core.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,SAAS,EACT,OAAO,EACP,YAAY,EACZ,aAAa,EACb,OAAO,EACP,OAAO,EACP,QAAQ,EACR,KAAK,EACL,YAAY,EACZ,IAAI,EACJ,SAAS,EACT,KAAK,EACL,WAAW,EACZ,MAAM,aAAa,CAAA;AACpB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAEvD,MAAM,MAAM,kBAAkB,GAAG,CAC/B,OAAO,EAAE,mBAAmB,KACzB,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAA;AAEvD,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B,gBAAgB,CAAC,EAAE,gBAAgB,CAAA;IACnC,OAAO,EAAE,OAAO,CAAA;IAChB,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,KAAK,EAAE,OAAO,CAAA;IACd,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAC9B,kBAAkB,CAAC,EAAE,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/types/core.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Repeatedly calls a given asynchronous function until it resolves with a value
|
|
3
3
|
* @param fn The function that should be repeated
|
|
4
|
-
* @param interval The timeout in milliseconds between retries,
|
|
4
|
+
* @param interval The timeout in milliseconds between retries, or a function that receives the current poll count and returns the interval. Defaults to 5000
|
|
5
5
|
* @param maxRetries Maximum number of retries before throwing an error, defaults to 3
|
|
6
6
|
* @param shouldRetry Optional predicate to determine if an error should trigger a retry
|
|
7
7
|
* @returns The result of the fn function
|
|
8
8
|
* @throws Error if maximum retries is reached, if function keeps returning undefined, or if shouldRetry returns false
|
|
9
9
|
*/
|
|
10
|
-
export declare const waitForResult: <T>(fn: () => Promise<T | undefined>, interval?: number, maxRetries?: number, shouldRetry?: (count: number, error: unknown) => boolean) => Promise<T>;
|
|
10
|
+
export declare const waitForResult: <T>(fn: () => Promise<T | undefined>, interval?: number | ((poll: number) => number), maxRetries?: number, shouldRetry?: (count: number, error: unknown) => boolean) => Promise<T>;
|
|
11
11
|
//# sourceMappingURL=waitForResult.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"waitForResult.d.ts","sourceRoot":"","sources":["../../../src/utils/waitForResult.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AACH,eAAO,MAAM,aAAa,GAAU,CAAC,EACnC,IAAI,MAAM,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,EAChC,
|
|
1
|
+
{"version":3,"file":"waitForResult.d.ts","sourceRoot":"","sources":["../../../src/utils/waitForResult.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AACH,eAAO,MAAM,aAAa,GAAU,CAAC,EACnC,IAAI,MAAM,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,EAChC,WAAU,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAQ,EACpD,mBAAc,EACd,cAAa,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,OAAoB,KACnE,OAAO,CAAC,CAAC,CA4BX,CAAA"}
|
package/dist/types/version.d.ts
CHANGED
package/package.json
CHANGED
package/src/types/core.ts
CHANGED
|
@@ -34,6 +34,7 @@ export interface SDKBaseConfig {
|
|
|
34
34
|
preloadChains?: boolean
|
|
35
35
|
chainsRefetchInterval?: number
|
|
36
36
|
requestInterceptor?: RequestInterceptor
|
|
37
|
+
safeApiKey?: string
|
|
37
38
|
}
|
|
38
39
|
|
|
39
40
|
export interface SDKConfig extends Partial<Omit<SDKBaseConfig, 'integrator'>> {
|
|
@@ -255,4 +256,8 @@ export interface Execution {
|
|
|
255
256
|
externalTxLink?: string
|
|
256
257
|
}
|
|
257
258
|
|
|
258
|
-
export type TransactionMethodType =
|
|
259
|
+
export type TransactionMethodType =
|
|
260
|
+
| 'standard'
|
|
261
|
+
| 'relayed'
|
|
262
|
+
| 'batched'
|
|
263
|
+
| 'safe-queued'
|
|
@@ -3,7 +3,7 @@ import { sleep } from './sleep.js'
|
|
|
3
3
|
/**
|
|
4
4
|
* Repeatedly calls a given asynchronous function until it resolves with a value
|
|
5
5
|
* @param fn The function that should be repeated
|
|
6
|
-
* @param interval The timeout in milliseconds between retries,
|
|
6
|
+
* @param interval The timeout in milliseconds between retries, or a function that receives the current poll count and returns the interval. Defaults to 5000
|
|
7
7
|
* @param maxRetries Maximum number of retries before throwing an error, defaults to 3
|
|
8
8
|
* @param shouldRetry Optional predicate to determine if an error should trigger a retry
|
|
9
9
|
* @returns The result of the fn function
|
|
@@ -11,18 +11,22 @@ import { sleep } from './sleep.js'
|
|
|
11
11
|
*/
|
|
12
12
|
export const waitForResult = async <T>(
|
|
13
13
|
fn: () => Promise<T | undefined>,
|
|
14
|
-
interval = 5000,
|
|
14
|
+
interval: number | ((poll: number) => number) = 5000,
|
|
15
15
|
maxRetries = 3,
|
|
16
16
|
shouldRetry: (count: number, error: unknown) => boolean = () => true
|
|
17
17
|
): Promise<T> => {
|
|
18
18
|
let result: T | undefined
|
|
19
19
|
let attempts = 0
|
|
20
|
+
let polls = 0
|
|
21
|
+
|
|
22
|
+
const getInterval = typeof interval === 'function' ? interval : () => interval
|
|
20
23
|
|
|
21
24
|
while (!result) {
|
|
22
25
|
try {
|
|
23
26
|
result = await fn()
|
|
24
27
|
if (!result) {
|
|
25
|
-
await sleep(
|
|
28
|
+
await sleep(getInterval(polls))
|
|
29
|
+
polls++
|
|
26
30
|
}
|
|
27
31
|
} catch (error) {
|
|
28
32
|
if (!shouldRetry(attempts, error)) {
|
|
@@ -32,7 +36,8 @@ export const waitForResult = async <T>(
|
|
|
32
36
|
if (attempts === maxRetries) {
|
|
33
37
|
throw error
|
|
34
38
|
}
|
|
35
|
-
await sleep(
|
|
39
|
+
await sleep(getInterval(polls))
|
|
40
|
+
polls++
|
|
36
41
|
}
|
|
37
42
|
}
|
|
38
43
|
|
package/src/version.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export const name = '@lifi/sdk'
|
|
2
|
-
export const version = '4.0.0-alpha.
|
|
2
|
+
export const version = '4.0.0-alpha.14'
|