@lifi/sdk 4.0.0-alpha.9 → 4.0.0-beta.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/dist/cjs/actions/getQuote.js +2 -1
- package/dist/cjs/actions/getQuote.js.map +1 -1
- package/dist/cjs/actions/getRelayedTransactionStatus.js +1 -1
- package/dist/cjs/actions/getRelayedTransactionStatus.js.map +1 -1
- package/dist/cjs/actions/getRelayerQuote.js +2 -1
- package/dist/cjs/actions/getRelayerQuote.js.map +1 -1
- package/dist/cjs/actions/getStepTransaction.js +18 -1
- package/dist/cjs/actions/getStepTransaction.js.map +1 -1
- package/dist/cjs/core/BaseStepExecutionTask.d.ts +5 -0
- package/dist/cjs/core/BaseStepExecutionTask.js +10 -0
- package/dist/cjs/core/BaseStepExecutionTask.js.map +1 -0
- package/dist/cjs/core/BaseStepExecutor.d.ts +10 -3
- package/dist/cjs/core/BaseStepExecutor.js +53 -0
- package/dist/cjs/core/BaseStepExecutor.js.map +1 -1
- package/dist/cjs/core/StatusManager.d.ts +12 -10
- package/dist/cjs/core/StatusManager.js +35 -33
- package/dist/cjs/core/StatusManager.js.map +1 -1
- package/dist/cjs/core/TaskPipeline.d.ts +7 -0
- package/dist/cjs/core/TaskPipeline.js +27 -0
- package/dist/cjs/core/TaskPipeline.js.map +1 -0
- package/dist/cjs/core/actionMessages.js +19 -3
- package/dist/cjs/core/actionMessages.js.map +1 -1
- package/dist/cjs/core/execution.js +13 -1
- package/dist/cjs/core/execution.js.map +1 -1
- package/dist/cjs/core/prepareRestart.js +3 -3
- package/dist/cjs/core/prepareRestart.js.map +1 -1
- package/dist/cjs/core/storage.d.ts +17 -0
- package/dist/cjs/core/storage.js +36 -0
- package/dist/cjs/core/storage.js.map +1 -0
- package/dist/cjs/core/tasks/CheckBalanceTask.d.ts +5 -0
- package/dist/cjs/core/tasks/CheckBalanceTask.js +26 -0
- package/dist/cjs/core/tasks/CheckBalanceTask.js.map +1 -0
- package/dist/cjs/core/tasks/PrepareTransactionTask.d.ts +5 -0
- package/dist/cjs/core/tasks/PrepareTransactionTask.js +36 -0
- package/dist/cjs/core/tasks/PrepareTransactionTask.js.map +1 -0
- package/dist/cjs/core/tasks/WaitForTransactionStatusTask.d.ts +8 -0
- package/dist/cjs/core/tasks/WaitForTransactionStatusTask.js +73 -0
- package/dist/cjs/core/tasks/WaitForTransactionStatusTask.js.map +1 -0
- package/dist/cjs/core/{checkBalance.d.ts → tasks/helpers/checkBalance.d.ts} +1 -1
- package/dist/cjs/core/{checkBalance.js → tasks/helpers/checkBalance.js} +4 -4
- package/dist/cjs/core/tasks/helpers/checkBalance.js.map +1 -0
- package/dist/cjs/core/tasks/helpers/getTransactionRequestData.d.ts +2 -0
- package/dist/cjs/core/tasks/helpers/getTransactionRequestData.js +30 -0
- package/dist/cjs/core/tasks/helpers/getTransactionRequestData.js.map +1 -0
- package/dist/cjs/core/{stepComparison.d.ts → tasks/helpers/stepComparison.d.ts} +2 -2
- package/dist/cjs/core/{stepComparison.js → tasks/helpers/stepComparison.js} +3 -3
- package/dist/cjs/core/tasks/helpers/stepComparison.js.map +1 -0
- package/dist/cjs/core/{waitForTransactionStatus.d.ts → tasks/helpers/waitForTransactionStatus.d.ts} +2 -2
- package/dist/cjs/core/{waitForTransactionStatus.js → tasks/helpers/waitForTransactionStatus.js} +7 -5
- package/dist/cjs/core/tasks/helpers/waitForTransactionStatus.js.map +1 -0
- package/dist/cjs/core/utils.d.ts +6 -1
- package/dist/cjs/errors/constants.d.ts +2 -1
- package/dist/cjs/errors/constants.js +1 -0
- package/dist/cjs/errors/constants.js.map +1 -1
- package/dist/cjs/errors/errors.d.ts +5 -0
- package/dist/cjs/errors/errors.js +9 -1
- package/dist/cjs/errors/errors.js.map +1 -1
- package/dist/cjs/index.d.ts +15 -6
- package/dist/cjs/index.js +26 -7
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/core.d.ts +15 -6
- package/dist/cjs/types/execution.d.ts +22 -0
- package/dist/cjs/types/execution.js +3 -0
- package/dist/cjs/types/execution.js.map +1 -0
- 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/utils/withDedupe.d.ts +5 -0
- package/dist/cjs/utils/withDedupe.js +2 -0
- package/dist/cjs/utils/withDedupe.js.map +1 -1
- package/dist/cjs/version.d.ts +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/version.js.map +1 -1
- package/dist/esm/actions/getQuote.js +2 -1
- package/dist/esm/actions/getQuote.js.map +1 -1
- package/dist/esm/actions/getRelayedTransactionStatus.js +1 -1
- package/dist/esm/actions/getRelayedTransactionStatus.js.map +1 -1
- package/dist/esm/actions/getRelayerQuote.js +2 -1
- package/dist/esm/actions/getRelayerQuote.js.map +1 -1
- package/dist/esm/actions/getStepTransaction.js +18 -1
- package/dist/esm/actions/getStepTransaction.js.map +1 -1
- package/dist/esm/core/BaseStepExecutionTask.d.ts +5 -0
- package/dist/esm/core/BaseStepExecutionTask.js +6 -0
- package/dist/esm/core/BaseStepExecutionTask.js.map +1 -0
- package/dist/esm/core/BaseStepExecutor.d.ts +10 -3
- package/dist/esm/core/BaseStepExecutor.js +53 -0
- package/dist/esm/core/BaseStepExecutor.js.map +1 -1
- package/dist/esm/core/StatusManager.d.ts +29 -27
- package/dist/esm/core/StatusManager.js +52 -50
- package/dist/esm/core/StatusManager.js.map +1 -1
- package/dist/esm/core/TaskPipeline.d.ts +7 -0
- package/dist/esm/core/TaskPipeline.js +23 -0
- package/dist/esm/core/TaskPipeline.js.map +1 -0
- package/dist/esm/core/actionMessages.js +19 -3
- package/dist/esm/core/actionMessages.js.map +1 -1
- package/dist/esm/core/execution.js +14 -3
- package/dist/esm/core/execution.js.map +1 -1
- package/dist/esm/core/prepareRestart.js +4 -3
- package/dist/esm/core/prepareRestart.js.map +1 -1
- package/dist/esm/core/storage.d.ts +17 -0
- package/dist/esm/core/storage.js +30 -0
- package/dist/esm/core/storage.js.map +1 -0
- package/dist/esm/core/tasks/CheckBalanceTask.d.ts +5 -0
- package/dist/esm/core/tasks/CheckBalanceTask.js +22 -0
- package/dist/esm/core/tasks/CheckBalanceTask.js.map +1 -0
- package/dist/esm/core/tasks/PrepareTransactionTask.d.ts +5 -0
- package/dist/esm/core/tasks/PrepareTransactionTask.js +32 -0
- package/dist/esm/core/tasks/PrepareTransactionTask.js.map +1 -0
- package/dist/esm/core/tasks/WaitForTransactionStatusTask.d.ts +8 -0
- package/dist/esm/core/tasks/WaitForTransactionStatusTask.js +74 -0
- package/dist/esm/core/tasks/WaitForTransactionStatusTask.js.map +1 -0
- package/dist/esm/core/{checkBalance.d.ts → tasks/helpers/checkBalance.d.ts} +1 -1
- package/dist/esm/core/{checkBalance.js → tasks/helpers/checkBalance.js} +4 -4
- package/dist/esm/core/tasks/helpers/checkBalance.js.map +1 -0
- package/dist/esm/core/tasks/helpers/getTransactionRequestData.d.ts +2 -0
- package/dist/esm/core/tasks/helpers/getTransactionRequestData.js +26 -0
- package/dist/esm/core/tasks/helpers/getTransactionRequestData.js.map +1 -0
- package/dist/esm/core/{stepComparison.d.ts → tasks/helpers/stepComparison.d.ts} +2 -2
- package/dist/esm/core/{stepComparison.js → tasks/helpers/stepComparison.js} +3 -3
- package/dist/esm/core/tasks/helpers/stepComparison.js.map +1 -0
- package/dist/esm/core/{waitForTransactionStatus.d.ts → tasks/helpers/waitForTransactionStatus.d.ts} +2 -2
- package/dist/esm/core/{waitForTransactionStatus.js → tasks/helpers/waitForTransactionStatus.js} +7 -5
- package/dist/esm/core/tasks/helpers/waitForTransactionStatus.js.map +1 -0
- package/dist/esm/core/utils.d.ts +6 -1
- package/dist/esm/errors/constants.d.ts +2 -1
- package/dist/esm/errors/constants.js +1 -0
- package/dist/esm/errors/constants.js.map +1 -1
- package/dist/esm/errors/errors.d.ts +10 -0
- package/dist/esm/errors/errors.js +12 -0
- package/dist/esm/errors/errors.js.map +1 -1
- package/dist/esm/index.d.ts +15 -6
- package/dist/esm/index.js +12 -5
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types/core.d.ts +19 -6
- package/dist/esm/types/execution.d.ts +23 -0
- package/dist/esm/types/execution.js +2 -0
- package/dist/esm/types/execution.js.map +1 -0
- 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/utils/withDedupe.d.ts +10 -0
- package/dist/esm/utils/withDedupe.js +1 -1
- package/dist/esm/utils/withDedupe.js.map +1 -1
- package/dist/esm/version.d.ts +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/esm/version.js.map +1 -1
- package/dist/types/actions/getRelayerQuote.d.ts.map +1 -1
- package/dist/types/actions/getStepTransaction.d.ts.map +1 -1
- package/dist/types/core/BaseStepExecutionTask.d.ts +6 -0
- package/dist/types/core/BaseStepExecutionTask.d.ts.map +1 -0
- package/dist/types/core/BaseStepExecutor.d.ts +10 -3
- package/dist/types/core/BaseStepExecutor.d.ts.map +1 -1
- package/dist/types/core/StatusManager.d.ts +29 -27
- package/dist/types/core/StatusManager.d.ts.map +1 -1
- package/dist/types/core/TaskPipeline.d.ts +8 -0
- package/dist/types/core/TaskPipeline.d.ts.map +1 -0
- package/dist/types/core/actionMessages.d.ts.map +1 -1
- package/dist/types/core/execution.d.ts.map +1 -1
- package/dist/types/core/prepareRestart.d.ts.map +1 -1
- package/dist/types/core/storage.d.ts +18 -0
- package/dist/types/core/storage.d.ts.map +1 -0
- package/dist/types/core/tasks/CheckBalanceTask.d.ts +6 -0
- package/dist/types/core/tasks/CheckBalanceTask.d.ts.map +1 -0
- package/dist/types/core/tasks/PrepareTransactionTask.d.ts +6 -0
- package/dist/types/core/tasks/PrepareTransactionTask.d.ts.map +1 -0
- package/dist/types/core/tasks/WaitForTransactionStatusTask.d.ts +9 -0
- package/dist/types/core/tasks/WaitForTransactionStatusTask.d.ts.map +1 -0
- package/dist/types/core/{checkBalance.d.ts → tasks/helpers/checkBalance.d.ts} +1 -1
- package/dist/types/core/tasks/helpers/checkBalance.d.ts.map +1 -0
- package/dist/types/core/tasks/helpers/getTransactionRequestData.d.ts +3 -0
- package/dist/types/core/tasks/helpers/getTransactionRequestData.d.ts.map +1 -0
- package/dist/types/core/{stepComparison.d.ts → tasks/helpers/stepComparison.d.ts} +2 -2
- package/dist/types/core/tasks/helpers/stepComparison.d.ts.map +1 -0
- package/dist/types/core/{waitForTransactionStatus.d.ts → tasks/helpers/waitForTransactionStatus.d.ts} +2 -2
- package/dist/types/core/tasks/helpers/waitForTransactionStatus.d.ts.map +1 -0
- package/dist/types/core/utils.d.ts +6 -1
- package/dist/types/core/utils.d.ts.map +1 -1
- package/dist/types/errors/constants.d.ts +2 -1
- package/dist/types/errors/constants.d.ts.map +1 -1
- package/dist/types/errors/errors.d.ts +10 -0
- package/dist/types/errors/errors.d.ts.map +1 -1
- package/dist/types/index.d.ts +15 -6
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/types/core.d.ts +19 -6
- package/dist/types/types/core.d.ts.map +1 -1
- package/dist/types/types/execution.d.ts +24 -0
- package/dist/types/types/execution.d.ts.map +1 -0
- package/dist/types/utils/waitForResult.d.ts +2 -2
- package/dist/types/utils/waitForResult.d.ts.map +1 -1
- package/dist/types/utils/withDedupe.d.ts +10 -0
- package/dist/types/utils/withDedupe.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/dist/types/version.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/actions/getQuote.ts +4 -1
- package/src/actions/getRelayedTransactionStatus.ts +1 -1
- package/src/actions/getRelayerQuote.ts +4 -1
- package/src/actions/getStepTransaction.ts +27 -11
- package/src/core/BaseStepExecutionTask.ts +9 -0
- package/src/core/BaseStepExecutor.ts +91 -2
- package/src/core/StatusManager.ts +66 -61
- package/src/core/TaskPipeline.ts +28 -0
- package/src/core/actionMessages.ts +20 -3
- package/src/core/execution.ts +17 -3
- package/src/core/prepareRestart.ts +4 -3
- package/src/core/storage.ts +42 -0
- package/src/core/tasks/CheckBalanceTask.ts +29 -0
- package/src/core/tasks/PrepareTransactionTask.ts +62 -0
- package/src/core/tasks/WaitForTransactionStatusTask.ts +114 -0
- package/src/core/{checkBalance.ts → tasks/helpers/checkBalance.ts} +5 -5
- package/src/core/tasks/helpers/getTransactionRequestData.ts +47 -0
- package/src/core/{stepComparison.ts → tasks/helpers/stepComparison.ts} +5 -5
- package/src/core/{waitForTransactionStatus.ts → tasks/helpers/waitForTransactionStatus.ts} +9 -7
- package/src/errors/constants.ts +1 -0
- package/src/errors/errors.ts +24 -0
- package/src/index.ts +24 -4
- package/src/types/core.ts +23 -13
- package/src/types/execution.ts +32 -0
- package/src/utils/waitForResult.ts +9 -4
- package/src/utils/withDedupe.ts +1 -1
- package/src/version.ts +1 -1
- package/dist/cjs/core/checkBalance.js.map +0 -1
- package/dist/cjs/core/stepComparison.js.map +0 -1
- package/dist/cjs/core/waitForDestinationChainTransaction.d.ts +0 -4
- package/dist/cjs/core/waitForDestinationChainTransaction.js +0 -71
- package/dist/cjs/core/waitForDestinationChainTransaction.js.map +0 -1
- package/dist/cjs/core/waitForTransactionStatus.js.map +0 -1
- package/dist/esm/core/checkBalance.js.map +0 -1
- package/dist/esm/core/stepComparison.js.map +0 -1
- package/dist/esm/core/waitForDestinationChainTransaction.d.ts +0 -4
- package/dist/esm/core/waitForDestinationChainTransaction.js +0 -74
- package/dist/esm/core/waitForDestinationChainTransaction.js.map +0 -1
- package/dist/esm/core/waitForTransactionStatus.js.map +0 -1
- package/dist/types/core/checkBalance.d.ts.map +0 -1
- package/dist/types/core/stepComparison.d.ts.map +0 -1
- package/dist/types/core/waitForDestinationChainTransaction.d.ts +0 -5
- package/dist/types/core/waitForDestinationChainTransaction.d.ts.map +0 -1
- package/dist/types/core/waitForTransactionStatus.d.ts.map +0 -1
- package/src/core/waitForDestinationChainTransaction.ts +0 -112
package/dist/cjs/types/core.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { ChainId, ChainType, CoinKey, ContractCall, ExtendedChain, FeeCost, GasCost, LiFiStep, Route, RouteOptions, Step, Substatus, Token, TokenAmount } from '@lifi/types';
|
|
2
|
+
import type { SDKStorage } from '../core/storage.js';
|
|
2
3
|
import type { ExtendedRequestInit } from './request.js';
|
|
3
4
|
export type RequestInterceptor = (request: ExtendedRequestInit) => ExtendedRequestInit | Promise<ExtendedRequestInit>;
|
|
4
5
|
export interface SDKBaseConfig {
|
|
@@ -15,6 +16,7 @@ export interface SDKBaseConfig {
|
|
|
15
16
|
preloadChains?: boolean;
|
|
16
17
|
chainsRefetchInterval?: number;
|
|
17
18
|
requestInterceptor?: RequestInterceptor;
|
|
19
|
+
storage?: SDKStorage;
|
|
18
20
|
}
|
|
19
21
|
export interface SDKConfig extends Partial<Omit<SDKBaseConfig, 'integrator'>> {
|
|
20
22
|
integrator: string;
|
|
@@ -47,11 +49,12 @@ export interface InteractionSettings {
|
|
|
47
49
|
allowUpdates?: boolean;
|
|
48
50
|
allowExecution?: boolean;
|
|
49
51
|
}
|
|
52
|
+
export type ExecuteStepRetryParams = Record<string, unknown>;
|
|
50
53
|
export interface StepExecutor {
|
|
51
54
|
allowUserInteraction: boolean;
|
|
52
55
|
allowExecution: boolean;
|
|
53
56
|
setInteraction(settings?: InteractionSettings): void;
|
|
54
|
-
executeStep(client: SDKClient, step: LiFiStepExtended): Promise<LiFiStepExtended>;
|
|
57
|
+
executeStep(client: SDKClient, step: LiFiStepExtended, retryParams?: ExecuteStepRetryParams): Promise<LiFiStepExtended>;
|
|
55
58
|
}
|
|
56
59
|
export interface RouteExecutionData {
|
|
57
60
|
route: Route;
|
|
@@ -128,34 +131,35 @@ export interface ExecutionOptions {
|
|
|
128
131
|
getContractCalls?: GetContractCallsHook;
|
|
129
132
|
adjustZeroOutputFromPreviousStep?: boolean;
|
|
130
133
|
executeInBackground?: boolean;
|
|
131
|
-
disableMessageSigning?: boolean;
|
|
132
134
|
infiniteApproval?: boolean;
|
|
133
135
|
}
|
|
134
136
|
export type ExecutionStatus = 'ACTION_REQUIRED' | 'PENDING' | 'FAILED' | 'DONE';
|
|
135
137
|
export type ExecutionActionStatus = 'STARTED' | 'ACTION_REQUIRED' | 'MESSAGE_REQUIRED' | 'RESET_REQUIRED' | 'PENDING' | 'FAILED' | 'DONE' | 'CANCELLED';
|
|
136
|
-
export type ExecutionActionType = '
|
|
138
|
+
export type ExecutionActionType = 'PERMIT' | 'CHECK_ALLOWANCE' | 'NATIVE_PERMIT' | 'RESET_ALLOWANCE' | 'SET_ALLOWANCE' | 'SWAP' | 'CROSS_CHAIN' | 'RECEIVING_CHAIN';
|
|
137
139
|
export type ExecutionAction = {
|
|
138
140
|
type: ExecutionActionType;
|
|
139
141
|
status: ExecutionActionStatus;
|
|
142
|
+
message?: string;
|
|
140
143
|
substatus?: Substatus;
|
|
144
|
+
substatusMessage?: string;
|
|
141
145
|
chainId?: number;
|
|
142
146
|
txHash?: string;
|
|
143
|
-
taskId?: string;
|
|
144
147
|
txLink?: string;
|
|
148
|
+
taskId?: string;
|
|
145
149
|
txType?: TransactionMethodType;
|
|
146
|
-
|
|
150
|
+
txHex?: string;
|
|
147
151
|
error?: {
|
|
148
152
|
code: string | number;
|
|
149
153
|
message: string;
|
|
150
154
|
htmlMessage?: string;
|
|
151
155
|
};
|
|
152
|
-
[key: string]: any;
|
|
153
156
|
};
|
|
154
157
|
export interface Execution {
|
|
155
158
|
startedAt: number;
|
|
156
159
|
signedAt?: number;
|
|
157
160
|
status: ExecutionStatus;
|
|
158
161
|
actions: Array<ExecutionAction>;
|
|
162
|
+
lastActionType?: ExecutionActionType;
|
|
159
163
|
fromAmount?: string;
|
|
160
164
|
toAmount?: string;
|
|
161
165
|
toToken?: Token;
|
|
@@ -163,5 +167,10 @@ export interface Execution {
|
|
|
163
167
|
gasCosts?: GasCost[];
|
|
164
168
|
internalTxLink?: string;
|
|
165
169
|
externalTxLink?: string;
|
|
170
|
+
error?: {
|
|
171
|
+
code: string | number;
|
|
172
|
+
message: string;
|
|
173
|
+
htmlMessage?: string;
|
|
174
|
+
};
|
|
166
175
|
}
|
|
167
176
|
export type TransactionMethodType = 'standard' | 'relayed' | 'batched';
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { ExtendedChain } from '@lifi/types';
|
|
2
|
+
import type { StatusManager } from '../core/StatusManager.js';
|
|
3
|
+
import type { ExecuteStepRetryParams, ExecutionOptions, LiFiStepExtended, SDKClient } from './core.js';
|
|
4
|
+
export interface StepExecutorBaseContext {
|
|
5
|
+
statusManager: StatusManager;
|
|
6
|
+
executionOptions?: ExecutionOptions;
|
|
7
|
+
fromChain: ExtendedChain;
|
|
8
|
+
toChain: ExtendedChain;
|
|
9
|
+
isBridgeExecution: boolean;
|
|
10
|
+
client: SDKClient;
|
|
11
|
+
step: LiFiStepExtended;
|
|
12
|
+
allowUserInteraction: boolean;
|
|
13
|
+
retryParams?: ExecuteStepRetryParams;
|
|
14
|
+
}
|
|
15
|
+
export interface StepExecutorContext extends StepExecutorBaseContext {
|
|
16
|
+
pollingIntervalMs?: number;
|
|
17
|
+
}
|
|
18
|
+
export interface TaskResult<TContext = Record<string, unknown>> {
|
|
19
|
+
status: TaskStatus;
|
|
20
|
+
context?: TContext;
|
|
21
|
+
}
|
|
22
|
+
export type TaskStatus = 'COMPLETED' | 'PAUSED';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"execution.js","sourceRoot":"","sources":["../../../src/types/execution.ts"],"names":[],"mappings":""}
|
|
@@ -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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LruMap = void 0;
|
|
3
4
|
exports.withDedupe = withDedupe;
|
|
4
5
|
class LruMap extends Map {
|
|
5
6
|
maxSize;
|
|
@@ -15,6 +16,7 @@ class LruMap extends Map {
|
|
|
15
16
|
return this;
|
|
16
17
|
}
|
|
17
18
|
}
|
|
19
|
+
exports.LruMap = LruMap;
|
|
18
20
|
const promiseCache = new LruMap(8192);
|
|
19
21
|
function withDedupe(fn, { enabled = true, id }) {
|
|
20
22
|
if (!enabled || !id) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withDedupe.js","sourceRoot":"","sources":["../../../src/utils/withDedupe.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"withDedupe.js","sourceRoot":"","sources":["../../../src/utils/withDedupe.ts"],"names":[],"mappings":";;;AA+BA,gCAaC;AAvCD,MAAa,MAAwB,SAAQ,GAAkB;IAC7D,OAAO,CAAQ;IAEf,YAAY,IAAY;QACtB,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;IACrB,CAAC;IAEQ,GAAG,CAAC,GAAW,EAAE,KAAY;QACpC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;QACrB,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;YAC7C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAM,CAAC,CAAA;QACxC,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;CACF;AAfD,wBAeC;AAGD,MAAM,YAAY,GAAiB,IAAI,MAAM,CAAe,IAAI,CAAC,CAAA;AAQjE,SAAgB,UAAU,CACxB,EAAoB,EACpB,EAAE,OAAO,GAAG,IAAI,EAAE,EAAE,EAAqB;IAEzC,IAAI,CAAC,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC;QACpB,OAAO,EAAE,EAAE,CAAA;IACb,CAAC;IACD,IAAI,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;QACzB,OAAO,YAAY,CAAC,GAAG,CAAC,EAAE,CAAE,CAAA;IAC9B,CAAC;IACD,MAAM,OAAO,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAA;IAC3D,YAAY,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,CAAA;IAC7B,OAAO,OAAO,CAAA;AAChB,CAAC"}
|
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-
|
|
2
|
+
export declare const version = "4.0.0-beta.0";
|
package/dist/cjs/version.js
CHANGED
package/dist/cjs/version.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":";;;AAAa,QAAA,IAAI,GAAG,WAAW,CAAA;AAClB,QAAA,OAAO,GAAG,
|
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":";;;AAAa,QAAA,IAAI,GAAG,WAAW,CAAA;AAClB,QAAA,OAAO,GAAG,cAAc,CAAA"}
|
|
@@ -35,7 +35,8 @@ export async function getQuote(client, params, options) {
|
|
|
35
35
|
params.denyExchanges ??= client.config.routeOptions?.exchanges?.deny;
|
|
36
36
|
params.preferExchanges ??= client.config.routeOptions?.exchanges?.prefer;
|
|
37
37
|
for (const key of Object.keys(params)) {
|
|
38
|
-
if (
|
|
38
|
+
if (params[key] === undefined ||
|
|
39
|
+
params[key] === null) {
|
|
39
40
|
delete params[key];
|
|
40
41
|
}
|
|
41
42
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getQuote.js","sourceRoot":"","sources":["../../../src/actions/getQuote.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAOhD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAoB7C,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,MAAiB,EACjB,MAAoB,EACpB,OAAwB;IAExB,MAAM,kBAAkB,GAA8B;QACpD,WAAW;QACX,WAAW;QACX,aAAa;QACb,SAAS;QACT,SAAS;KACV,CAAA;IAED,KAAK,MAAM,iBAAiB,IAAI,kBAAkB,EAAE,CAAC;QACnD,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAC/B,MAAM,IAAI,QAAQ,CAChB,IAAI,eAAe,CACjB,uBAAuB,iBAAiB,eAAe,CACxD,CACF,CAAA;QACH,CAAC;IACH,CAAC;IAED,MAAM,mBAAmB,GACvB,YAAY,IAAI,MAAM,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS,CAAA;IAC3D,MAAM,iBAAiB,GACrB,UAAU,IAAI,MAAM,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAA;IAEvD,IAAI,CAAC,mBAAmB,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC/C,MAAM,IAAI,QAAQ,CAChB,IAAI,eAAe,CACjB,2DAA2D,CAC5D,CACF,CAAA;IACH,CAAC;IAED,IAAI,mBAAmB,IAAI,iBAAiB,EAAE,CAAC;QAC7C,MAAM,IAAI,QAAQ,CAChB,IAAI,eAAe,CACjB,6DAA6D,CAC9D,CACF,CAAA;IACH,CAAC;IAED,iBAAiB;IACjB,MAAM,CAAC,UAAU,KAAK,MAAM,CAAC,MAAM,CAAC,UAAU,CAAA;IAC9C,MAAM,CAAC,KAAK,KAAK,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,KAAK,CAAA;IAClD,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAA;IACxD,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAA;IACxD,MAAM,CAAC,GAAG,KAAK,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,GAAG,CAAA;IAC9C,MAAM,CAAC,YAAY,KAAK,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,OAAO,EAAE,KAAK,CAAA;IAClE,MAAM,CAAC,WAAW,KAAK,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,OAAO,EAAE,IAAI,CAAA;IAChE,MAAM,CAAC,aAAa,KAAK,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,OAAO,EAAE,MAAM,CAAA;IACpE,MAAM,CAAC,cAAc,KAAK,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,SAAS,EAAE,KAAK,CAAA;IACtE,MAAM,CAAC,aAAa,KAAK,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,SAAS,EAAE,IAAI,CAAA;IACpE,MAAM,CAAC,eAAe,KAAK,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,SAAS,EAAE,MAAM,CAAA;IAExE,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACtC,
|
|
1
|
+
{"version":3,"file":"getQuote.js","sourceRoot":"","sources":["../../../src/actions/getQuote.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,7 +21,7 @@ export const getRelayedTransactionStatus = async (client, params, options) => {
|
|
|
21
21
|
const queryParams = new URLSearchParams(otherParams);
|
|
22
22
|
const decodedTaskId = decodeTaskId(taskId);
|
|
23
23
|
// Temporary solution during the transition between status endpoints
|
|
24
|
-
if (decodedTaskId.length
|
|
24
|
+
if (decodedTaskId.length >= 3) {
|
|
25
25
|
return (await getStatus(client, params, options));
|
|
26
26
|
}
|
|
27
27
|
const result = await request(client.config, `${client.config.apiUrl}/relayer/status/${taskId}?${queryParams}`, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getRelayedTransactionStatus.js","sourceRoot":"","sources":["../../../src/actions/getRelayedTransactionStatus.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAEhD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE1C;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,KAAK,EAC9C,MAAiB,EACjB,MAA0B,EAC1B,OAAwB,EACU,EAAE;IACpC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,IAAI,QAAQ,CAChB,IAAI,eAAe,CAAC,yCAAyC,CAAC,CAC/D,CAAA;IACH,CAAC;IAED,MAAM,EAAE,MAAM,EAAE,GAAG,WAAW,EAAE,GAAG,MAAM,CAAA;IACzC,MAAM,WAAW,GAAG,IAAI,eAAe,CACrC,WAAgD,CACjD,CAAA;IAED,MAAM,aAAa,GAAG,YAAY,CAAC,MAAM,CAAC,CAAA;IAC1C,oEAAoE;IACpE,IAAI,aAAa,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"getRelayedTransactionStatus.js","sourceRoot":"","sources":["../../../src/actions/getRelayedTransactionStatus.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAEhD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE1C;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,KAAK,EAC9C,MAAiB,EACjB,MAA0B,EAC1B,OAAwB,EACU,EAAE;IACpC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,IAAI,QAAQ,CAChB,IAAI,eAAe,CAAC,yCAAyC,CAAC,CAC/D,CAAA;IACH,CAAC;IAED,MAAM,EAAE,MAAM,EAAE,GAAG,WAAW,EAAE,GAAG,MAAM,CAAA;IACzC,MAAM,WAAW,GAAG,IAAI,eAAe,CACrC,WAAgD,CACjD,CAAA;IAED,MAAM,aAAa,GAAG,YAAY,CAAC,MAAM,CAAC,CAAA;IAC1C,oEAAoE;IACpE,IAAI,aAAa,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;QAC9B,OAAO,CAAC,MAAM,SAAS,CACrB,MAAM,EACN,MAAM,EACN,OAAO,CACR,CAAuC,CAAA;IAC1C,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,OAAO,CAC1B,MAAM,CAAC,MAAM,EACb,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,mBAAmB,MAAM,IAAI,WAAW,EAAE,EACjE;QACE,MAAM,EAAE,OAAO,EAAE,MAAM;KACxB,CACF,CAAA;IAED,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;QAC9B,MAAM,IAAI,SAAS,CACjB,SAAS,CAAC,WAAW,EACrB,MAAM,CAAC,IAAI,CAAC,IAAI,EAChB,MAAM,CAAC,IAAI,CAAC,OAAO,CACpB,CAAA;IACH,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAA;AACpB,CAAC,CAAA"}
|
|
@@ -38,7 +38,8 @@ export const getRelayerQuote = async (client, params, options) => {
|
|
|
38
38
|
params.denyExchanges ??= client.config.routeOptions?.exchanges?.deny;
|
|
39
39
|
params.preferExchanges ??= client.config.routeOptions?.exchanges?.prefer;
|
|
40
40
|
for (const key of Object.keys(params)) {
|
|
41
|
-
if (
|
|
41
|
+
if (params[key] === undefined ||
|
|
42
|
+
params[key] === null) {
|
|
42
43
|
delete params[key];
|
|
43
44
|
}
|
|
44
45
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getRelayerQuote.js","sourceRoot":"","sources":["../../../src/actions/getRelayerQuote.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAGhD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAE7C;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAClC,MAAiB,EACjB,MAA8B,EAC9B,OAAwB,EACL,EAAE;IACrB,MAAM,kBAAkB,GAAwC;QAC9D,WAAW;QACX,WAAW;QACX,aAAa;QACb,YAAY;QACZ,SAAS;QACT,SAAS;KACV,CAAA;IACD,KAAK,MAAM,iBAAiB,IAAI,kBAAkB,EAAE,CAAC;QACnD,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAC/B,MAAM,IAAI,QAAQ,CAChB,IAAI,eAAe,CACjB,uBAAuB,iBAAiB,eAAe,CACxD,CACF,CAAA;QACH,CAAC;IACH,CAAC;IAED,iBAAiB;IACjB,MAAM,CAAC,UAAU,KAAK,MAAM,CAAC,MAAM,CAAC,UAAU,CAAA;IAC9C,MAAM,CAAC,KAAK,KAAK,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,KAAK,CAAA;IAClD,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAA;IACxD,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAA;IACxD,MAAM,CAAC,GAAG,KAAK,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,GAAG,CAAA;IAC9C,MAAM,CAAC,YAAY,KAAK,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,OAAO,EAAE,KAAK,CAAA;IAClE,MAAM,CAAC,WAAW,KAAK,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,OAAO,EAAE,IAAI,CAAA;IAChE,MAAM,CAAC,aAAa,KAAK,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,OAAO,EAAE,MAAM,CAAA;IACpE,MAAM,CAAC,cAAc,KAAK,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,SAAS,EAAE,KAAK,CAAA;IACtE,MAAM,CAAC,aAAa,KAAK,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,SAAS,EAAE,IAAI,CAAA;IACpE,MAAM,CAAC,eAAe,KAAK,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,SAAS,EAAE,MAAM,CAAA;IAExE,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACtC,
|
|
1
|
+
{"version":3,"file":"getRelayerQuote.js","sourceRoot":"","sources":["../../../src/actions/getRelayerQuote.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAGhD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAE7C;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAClC,MAAiB,EACjB,MAA8B,EAC9B,OAAwB,EACL,EAAE;IACrB,MAAM,kBAAkB,GAAwC;QAC9D,WAAW;QACX,WAAW;QACX,aAAa;QACb,YAAY;QACZ,SAAS;QACT,SAAS;KACV,CAAA;IACD,KAAK,MAAM,iBAAiB,IAAI,kBAAkB,EAAE,CAAC;QACnD,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAC/B,MAAM,IAAI,QAAQ,CAChB,IAAI,eAAe,CACjB,uBAAuB,iBAAiB,eAAe,CACxD,CACF,CAAA;QACH,CAAC;IACH,CAAC;IAED,iBAAiB;IACjB,MAAM,CAAC,UAAU,KAAK,MAAM,CAAC,MAAM,CAAC,UAAU,CAAA;IAC9C,MAAM,CAAC,KAAK,KAAK,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,KAAK,CAAA;IAClD,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAA;IACxD,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAA;IACxD,MAAM,CAAC,GAAG,KAAK,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,GAAG,CAAA;IAC9C,MAAM,CAAC,YAAY,KAAK,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,OAAO,EAAE,KAAK,CAAA;IAClE,MAAM,CAAC,WAAW,KAAK,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,OAAO,EAAE,IAAI,CAAA;IAChE,MAAM,CAAC,aAAa,KAAK,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,OAAO,EAAE,MAAM,CAAA;IACpE,MAAM,CAAC,cAAc,KAAK,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,SAAS,EAAE,KAAK,CAAA;IACtE,MAAM,CAAC,aAAa,KAAK,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,SAAS,EAAE,IAAI,CAAA;IACpE,MAAM,CAAC,eAAe,KAAK,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,SAAS,EAAE,MAAM,CAAA;IAExE,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACtC,IACE,MAAM,CAAC,GAAyB,CAAC,KAAK,SAAS;YAC/C,MAAM,CAAC,GAAyB,CAAC,KAAK,IAAI,EAC1C,CAAC;YACD,OAAO,MAAM,CAAC,GAAyB,CAAC,CAAA;QAC1C,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,OAAO,CAC1B,MAAM,CAAC,MAAM,EACb,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,kBAAkB,IAAI,eAAe,CAC1D,MAA2C,CAC5C,EAAE,EACH;QACE,MAAM,EAAE,OAAO,EAAE,MAAM;KACxB,CACF,CAAA;IAED,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;QAC9B,MAAM,IAAI,SAAS,CACjB,SAAS,CAAC,WAAW,EACrB,MAAM,CAAC,IAAI,CAAC,IAAI,EAChB,MAAM,CAAC,IAAI,CAAC,OAAO,CACpB,CAAA;IACH,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAA;AACpB,CAAC,CAAA"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { ChainId } from '@lifi/types';
|
|
1
2
|
import { isStep } from '../utils/isStep.js';
|
|
2
3
|
import { request } from '../utils/request.js';
|
|
3
4
|
/**
|
|
@@ -13,7 +14,23 @@ export const getStepTransaction = async (client, step, options) => {
|
|
|
13
14
|
// While the validation fails for some users we should not enforce it
|
|
14
15
|
console.warn('SDK Validation: Invalid Step', step);
|
|
15
16
|
}
|
|
16
|
-
|
|
17
|
+
const { config } = client;
|
|
18
|
+
let requestUrl = `${config.apiUrl}/advanced/stepTransaction`;
|
|
19
|
+
const jitoBundle = config.routeOptions?.jitoBundle;
|
|
20
|
+
const svmSponsor = config.routeOptions?.svmSponsor;
|
|
21
|
+
if (step.action.fromChainId === ChainId.SOL) {
|
|
22
|
+
const queryParams = new URLSearchParams();
|
|
23
|
+
if (jitoBundle) {
|
|
24
|
+
queryParams.set('jitoBundle', jitoBundle.toString());
|
|
25
|
+
}
|
|
26
|
+
if (svmSponsor) {
|
|
27
|
+
queryParams.set('svmSponsor', svmSponsor);
|
|
28
|
+
}
|
|
29
|
+
if (queryParams.size > 0) {
|
|
30
|
+
requestUrl = `${requestUrl}?${queryParams}`;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
return await request(config, requestUrl, {
|
|
17
34
|
method: 'POST',
|
|
18
35
|
headers: {
|
|
19
36
|
'Content-Type': 'application/json',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getStepTransaction.js","sourceRoot":"","sources":["../../../src/actions/getStepTransaction.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"getStepTransaction.js","sourceRoot":"","sources":["../../../src/actions/getStepTransaction.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAErC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAE7C;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,EACrC,MAAiB,EACjB,IAA+B,EAC/B,OAAwB,EACL,EAAE;IACrB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QAClB,qEAAqE;QACrE,OAAO,CAAC,IAAI,CAAC,8BAA8B,EAAE,IAAI,CAAC,CAAA;IACpD,CAAC;IAED,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAA;IAEzB,IAAI,UAAU,GAAG,GAAG,MAAM,CAAC,MAAM,2BAA2B,CAAA;IAC5D,MAAM,UAAU,GAAG,MAAM,CAAC,YAAY,EAAE,UAAU,CAAA;IAClD,MAAM,UAAU,GAAG,MAAM,CAAC,YAAY,EAAE,UAAU,CAAA;IAElD,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,KAAK,OAAO,CAAC,GAAG,EAAE,CAAC;QAC5C,MAAM,WAAW,GAAG,IAAI,eAAe,EAAE,CAAA;QACzC,IAAI,UAAU,EAAE,CAAC;YACf,WAAW,CAAC,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAA;QACtD,CAAC;QACD,IAAI,UAAU,EAAE,CAAC;YACf,WAAW,CAAC,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC,CAAA;QAC3C,CAAC;QACD,IAAI,WAAW,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YACzB,UAAU,GAAG,GAAG,UAAU,IAAI,WAAW,EAAE,CAAA;QAC7C,CAAC;IACH,CAAC;IAED,OAAO,MAAM,OAAO,CAAW,MAAM,EAAE,UAAU,EAAE;QACjD,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;SACnC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;QAC1B,MAAM,EAAE,OAAO,EAAE,MAAM;KACxB,CAAC,CAAA;AACJ,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseStepExecutionTask.js","sourceRoot":"","sources":["../../../src/core/BaseStepExecutionTask.ts"],"names":[],"mappings":"AAEA,MAAM,OAAgB,qBAAqB;IACzC,SAAS,CAAC,QAA6B;QACrC,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAC9B,CAAC;CAGF"}
|
|
@@ -1,6 +1,9 @@
|
|
|
1
|
-
import
|
|
2
|
-
import type {
|
|
1
|
+
import { ExecuteStepRetryError } from '../errors/errors.js';
|
|
2
|
+
import type { SDKError } from '../errors/SDKError.js';
|
|
3
|
+
import type { ExecuteStepRetryParams, ExecutionAction, ExecutionOptions, InteractionSettings, LiFiStepExtended, SDKClient, StepExecutor, StepExecutorOptions } from '../types/core.js';
|
|
4
|
+
import type { StepExecutorBaseContext, StepExecutorContext } from '../types/execution.js';
|
|
3
5
|
import { StatusManager } from './StatusManager.js';
|
|
6
|
+
import type { TaskPipeline } from './TaskPipeline.js';
|
|
4
7
|
export declare abstract class BaseStepExecutor implements StepExecutor {
|
|
5
8
|
protected executionOptions?: ExecutionOptions;
|
|
6
9
|
protected statusManager: StatusManager;
|
|
@@ -8,5 +11,9 @@ export declare abstract class BaseStepExecutor implements StepExecutor {
|
|
|
8
11
|
allowExecution: boolean;
|
|
9
12
|
constructor(options: StepExecutorOptions);
|
|
10
13
|
setInteraction: (settings?: InteractionSettings) => void;
|
|
11
|
-
|
|
14
|
+
private createBaseContext;
|
|
15
|
+
abstract createContext(baseContext: StepExecutorBaseContext): Promise<StepExecutorContext>;
|
|
16
|
+
abstract createPipeline(context: StepExecutorContext): TaskPipeline;
|
|
17
|
+
abstract parseErrors(error: Error, step?: LiFiStepExtended, action?: ExecutionAction, retryParams?: ExecuteStepRetryParams): Promise<SDKError | ExecuteStepRetryError>;
|
|
18
|
+
executeStep: (client: SDKClient, step: LiFiStepExtended, retryParams?: ExecuteStepRetryParams) => Promise<LiFiStepExtended>;
|
|
12
19
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { ExecuteStepRetryError } from '../errors/errors.js';
|
|
1
2
|
import { StatusManager } from './StatusManager.js';
|
|
2
3
|
// Please be careful when changing the defaults as it may break the behavior (e.g., background execution)
|
|
3
4
|
const defaultInteractionSettings = {
|
|
@@ -23,5 +24,57 @@ export class BaseStepExecutor {
|
|
|
23
24
|
this.statusManager.allowUpdates(interactionSettings.allowUpdates);
|
|
24
25
|
this.allowExecution = interactionSettings.allowExecution;
|
|
25
26
|
};
|
|
27
|
+
createBaseContext = async (client, step, retryParams) => {
|
|
28
|
+
const fromChain = await client.getChainById(step.action.fromChainId);
|
|
29
|
+
const toChain = await client.getChainById(step.action.toChainId);
|
|
30
|
+
const isBridgeExecution = fromChain.id !== toChain.id;
|
|
31
|
+
return {
|
|
32
|
+
client,
|
|
33
|
+
step,
|
|
34
|
+
fromChain,
|
|
35
|
+
toChain,
|
|
36
|
+
isBridgeExecution,
|
|
37
|
+
retryParams,
|
|
38
|
+
statusManager: this.statusManager,
|
|
39
|
+
executionOptions: this.executionOptions,
|
|
40
|
+
allowUserInteraction: this.allowUserInteraction,
|
|
41
|
+
};
|
|
42
|
+
};
|
|
43
|
+
executeStep = async (client, step, retryParams) => {
|
|
44
|
+
try {
|
|
45
|
+
step.execution = this.statusManager.initializeExecution(step);
|
|
46
|
+
const baseContext = await this.createBaseContext(client, step, retryParams);
|
|
47
|
+
const context = await this.createContext(baseContext);
|
|
48
|
+
const pipeline = this.createPipeline(context);
|
|
49
|
+
await pipeline.run(context);
|
|
50
|
+
return step;
|
|
51
|
+
}
|
|
52
|
+
catch (error) {
|
|
53
|
+
const action = step.execution?.lastActionType
|
|
54
|
+
? this.statusManager.findAction(step, step.execution.lastActionType)
|
|
55
|
+
: undefined;
|
|
56
|
+
const parsed = await this.parseErrors(error, step, action, retryParams);
|
|
57
|
+
if (!(parsed instanceof ExecuteStepRetryError)) {
|
|
58
|
+
if (action) {
|
|
59
|
+
this.statusManager.updateAction(step, action.type, 'FAILED', {
|
|
60
|
+
error: {
|
|
61
|
+
message: parsed.cause?.message,
|
|
62
|
+
code: parsed.code,
|
|
63
|
+
},
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
else {
|
|
67
|
+
this.statusManager.updateExecution(step, {
|
|
68
|
+
status: 'FAILED',
|
|
69
|
+
error: {
|
|
70
|
+
message: parsed.cause?.message,
|
|
71
|
+
code: parsed.code,
|
|
72
|
+
},
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
throw parsed;
|
|
77
|
+
}
|
|
78
|
+
};
|
|
26
79
|
}
|
|
27
80
|
//# sourceMappingURL=BaseStepExecutor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseStepExecutor.js","sourceRoot":"","sources":["../../../src/core/BaseStepExecutor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"BaseStepExecutor.js","sourceRoot":"","sources":["../../../src/core/BaseStepExecutor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAgB3D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAGlD,yGAAyG;AACzG,MAAM,0BAA0B,GAAG;IACjC,gBAAgB,EAAE,IAAI;IACtB,YAAY,EAAE,IAAI;IAClB,cAAc,EAAE,IAAI;CACrB,CAAA;AAED,MAAM,OAAgB,gBAAgB;IAC1B,gBAAgB,CAAmB;IACnC,aAAa,CAAe;IAE/B,oBAAoB,GAAG,IAAI,CAAA;IAC3B,cAAc,GAAG,IAAI,CAAA;IAE5B,YAAY,OAA4B;QACtC,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QACvD,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAA;IAClD,CAAC;IAED,cAAc,GAAG,CAAC,QAA8B,EAAQ,EAAE;QACxD,MAAM,mBAAmB,GAAG;YAC1B,GAAG,0BAA0B;YAC7B,GAAG,QAAQ;SACZ,CAAA;QACD,IAAI,CAAC,oBAAoB,GAAG,mBAAmB,CAAC,gBAAgB,CAAA;QAChE,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAA;QACjE,IAAI,CAAC,cAAc,GAAG,mBAAmB,CAAC,cAAc,CAAA;IAC1D,CAAC,CAAA;IAEO,iBAAiB,GAAG,KAAK,EAC/B,MAAiB,EACjB,IAAsB,EACtB,WAAoC,EACF,EAAE;QACpC,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;QACpE,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QAEhE,MAAM,iBAAiB,GAAG,SAAS,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,CAAA;QAErD,OAAO;YACL,MAAM;YACN,IAAI;YACJ,SAAS;YACT,OAAO;YACP,iBAAiB;YACjB,WAAW;YACX,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;SAChD,CAAA;IACH,CAAC,CAAA;IAeD,WAAW,GAAG,KAAK,EACjB,MAAiB,EACjB,IAAsB,EACtB,WAAoC,EACT,EAAE;QAC7B,IAAI,CAAC;YACH,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAA;YAE7D,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAC9C,MAAM,EACN,IAAI,EACJ,WAAW,CACZ,CAAA;YACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,CAAA;YACrD,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAA;YAE7C,MAAM,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;YAE3B,OAAO,IAAI,CAAA;QACb,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,cAAc;gBAC3C,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC;gBACpE,CAAC,CAAC,SAAS,CAAA;YACb,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,CAAA;YACvE,IAAI,CAAC,CAAC,MAAM,YAAY,qBAAqB,CAAC,EAAE,CAAC;gBAC/C,IAAI,MAAM,EAAE,CAAC;oBACX,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,QAAQ,EAAE;wBAC3D,KAAK,EAAE;4BACL,OAAO,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO;4BAC9B,IAAI,EAAE,MAAM,CAAC,IAAI;yBAClB;qBACF,CAAC,CAAA;gBACJ,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,IAAI,EAAE;wBACvC,MAAM,EAAE,QAAQ;wBAChB,KAAK,EAAE;4BACL,OAAO,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO;4BAC9B,IAAI,EAAE,MAAM,CAAC,IAAI;yBAClB;qBACF,CAAC,CAAA;gBACJ,CAAC;YACH,CAAC;YACD,MAAM,MAAM,CAAA;QACd,CAAC;IACH,CAAC,CAAA;CACF"}
|
|
@@ -1,15 +1,13 @@
|
|
|
1
1
|
import type { ChainId, LiFiStep } from '@lifi/types';
|
|
2
|
-
import type { Execution, ExecutionAction, ExecutionActionStatus, ExecutionActionType,
|
|
3
|
-
type
|
|
2
|
+
import type { Execution, ExecutionAction, ExecutionActionStatus, ExecutionActionType, LiFiStepExtended } from '../types/core.js';
|
|
3
|
+
type ActionProps = {
|
|
4
4
|
step: LiFiStepExtended;
|
|
5
5
|
type: ExecutionActionType;
|
|
6
|
-
chainId
|
|
7
|
-
status
|
|
6
|
+
chainId: ChainId;
|
|
7
|
+
status: ExecutionActionStatus;
|
|
8
8
|
};
|
|
9
9
|
/**
|
|
10
|
-
* Manages status updates of a route and provides various functions for tracking actions
|
|
11
|
-
* @param {string} routeId The route dd this StatusManger belongs to.
|
|
12
|
-
* @returns {StatusManager} An instance of StatusManager.
|
|
10
|
+
* Manages status updates of a route and provides various functions for tracking actions.
|
|
13
11
|
*/
|
|
14
12
|
export declare class StatusManager {
|
|
15
13
|
private readonly routeId;
|
|
@@ -17,35 +15,43 @@ export declare class StatusManager {
|
|
|
17
15
|
constructor(routeId: string);
|
|
18
16
|
/**
|
|
19
17
|
* Initializes the execution object of a Step.
|
|
20
|
-
* @param step
|
|
21
|
-
* @returns The initialized execution object for this step
|
|
18
|
+
* @param step The current step in execution
|
|
19
|
+
* @returns The initialized execution object for this step
|
|
22
20
|
*/
|
|
23
|
-
|
|
21
|
+
initializeExecution: (step: LiFiStepExtended) => Execution;
|
|
24
22
|
/**
|
|
25
23
|
* Updates the execution object of a Step.
|
|
26
|
-
* @param step
|
|
27
|
-
* @param
|
|
28
|
-
* @param execution Optional. Information about received tokens
|
|
24
|
+
* @param step The current step in execution
|
|
25
|
+
* @param execution Partial execution data to merge
|
|
29
26
|
* @returns The step with the updated execution object
|
|
30
27
|
*/
|
|
31
|
-
updateExecution(step: LiFiStepExtended,
|
|
28
|
+
updateExecution(step: LiFiStepExtended, execution: Partial<Execution>): LiFiStep;
|
|
32
29
|
/**
|
|
33
30
|
* Finds an action of the specified type in the step's execution
|
|
34
31
|
* @param step The step to search in
|
|
35
32
|
* @param type The action type to find
|
|
36
|
-
* @param status Optional status to update the action with if found
|
|
37
33
|
* @returns The found action or undefined if not found
|
|
38
34
|
*/
|
|
39
|
-
findAction(step: LiFiStepExtended, type: ExecutionActionType
|
|
35
|
+
findAction(step: LiFiStepExtended, type: ExecutionActionType): ExecutionAction | undefined;
|
|
40
36
|
/**
|
|
41
37
|
* Create and push a new action into the execution.
|
|
38
|
+
* Caller is responsible for ensuring an action of this type does not already exist.
|
|
42
39
|
* @param step The step that should contain the new action.
|
|
43
|
-
* @param type Type of the action.
|
|
40
|
+
* @param type Type of the action.
|
|
44
41
|
* @param chainId Chain Id of the action.
|
|
45
|
-
* @param status
|
|
46
|
-
* @returns
|
|
42
|
+
* @param status The initial status for the new action.
|
|
43
|
+
* @returns The created action.
|
|
44
|
+
*/
|
|
45
|
+
createAction: ({ step, type, chainId, status, }: ActionProps) => ExecutionAction;
|
|
46
|
+
/**
|
|
47
|
+
* Find an existing action by type and update it, or create a new one if none exists.
|
|
48
|
+
* @param step The step that should contain the action.
|
|
49
|
+
* @param type Type of the action. Used to identify already existing actions.
|
|
50
|
+
* @param chainId Chain Id of the action (used when creating).
|
|
51
|
+
* @param status The status to set on the found or newly created action.
|
|
52
|
+
* @returns The updated or newly created action.
|
|
47
53
|
*/
|
|
48
|
-
|
|
54
|
+
initializeAction: ({ step, type, chainId, status, }: ActionProps) => ExecutionAction;
|
|
49
55
|
/**
|
|
50
56
|
* Update an action object.
|
|
51
57
|
* @param step The step where the action should be updated
|
|
@@ -54,13 +60,9 @@ export declare class StatusManager {
|
|
|
54
60
|
* @param [params] Additional parameters to append to the action.
|
|
55
61
|
* @returns The updated action
|
|
56
62
|
*/
|
|
57
|
-
updateAction: (step: LiFiStepExtended, type: ExecutionActionType, status: ExecutionActionStatus, params?: Partial<ExecutionAction
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
* @param step The step where the action should be removed from
|
|
61
|
-
* @param type The action type to remove
|
|
62
|
-
*/
|
|
63
|
-
removeAction: (step: LiFiStepExtended, type: ExecutionActionType) => void;
|
|
63
|
+
updateAction: (step: LiFiStepExtended, type: ExecutionActionType, status: ExecutionActionStatus, params?: Partial<ExecutionAction & {
|
|
64
|
+
signedAt?: number;
|
|
65
|
+
}>) => ExecutionAction;
|
|
64
66
|
updateStepInRoute: (step: LiFiStep) => LiFiStep;
|
|
65
67
|
allowUpdates(value: boolean): void;
|
|
66
68
|
}
|