@lifi/sdk 3.6.0 → 3.6.2-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/package.json +3 -3
- package/src/_cjs/core/BaseStepExecutor.js +13 -38
- package/src/_cjs/core/BaseStepExecutor.js.map +1 -1
- package/src/_cjs/core/EVM/EVMStepExecutor.js +329 -359
- package/src/_cjs/core/EVM/EVMStepExecutor.js.map +1 -1
- package/src/_cjs/core/EVM/checkAllowance.js +18 -9
- package/src/_cjs/core/EVM/checkAllowance.js.map +1 -1
- package/src/_cjs/core/EVM/checkPermitSupport.js +2 -2
- package/src/_cjs/core/EVM/checkPermitSupport.js.map +1 -1
- package/src/_cjs/core/EVM/permits/allowanceTransfer.js +8 -8
- package/src/_cjs/core/EVM/permits/allowanceTransfer.js.map +1 -1
- package/src/_cjs/core/EVM/permits/getNativePermit.js +12 -10
- package/src/_cjs/core/EVM/permits/getNativePermit.js.map +1 -1
- package/src/_cjs/core/EVM/permits/signPermit2Message.js +27 -26
- package/src/_cjs/core/EVM/permits/signPermit2Message.js.map +1 -1
- package/src/_cjs/core/EVM/permits/signatureTransfer.js +8 -8
- package/src/_cjs/core/EVM/permits/signatureTransfer.js.map +1 -1
- package/src/_cjs/core/EVM/typeguards.js +5 -2
- package/src/_cjs/core/EVM/typeguards.js.map +1 -1
- package/src/_cjs/core/EVM/types.js.map +1 -1
- package/src/_cjs/core/Solana/KeypairWalletAdapter.js +8 -33
- package/src/_cjs/core/Solana/KeypairWalletAdapter.js.map +1 -1
- package/src/_cjs/core/Solana/SolanaStepExecutor.js +97 -112
- package/src/_cjs/core/Solana/SolanaStepExecutor.js.map +1 -1
- package/src/_cjs/core/StatusManager.js +103 -136
- package/src/_cjs/core/StatusManager.js.map +1 -1
- package/src/_cjs/core/UTXO/UTXOStepExecutor.js +136 -151
- package/src/_cjs/core/UTXO/UTXOStepExecutor.js.map +1 -1
- package/src/_cjs/core/prepareRestart.js +7 -1
- package/src/_cjs/core/prepareRestart.js.map +1 -1
- package/src/_cjs/errors/SDKError.js +5 -30
- package/src/_cjs/errors/SDKError.js.map +1 -1
- package/src/_cjs/errors/baseError.js +2 -12
- package/src/_cjs/errors/baseError.js.map +1 -1
- package/src/_cjs/errors/httpError.js +6 -36
- package/src/_cjs/errors/httpError.js.map +1 -1
- package/src/_cjs/index.js +3 -2
- package/src/_cjs/index.js.map +1 -1
- package/src/_cjs/services/api.js +2 -4
- package/src/_cjs/services/api.js.map +1 -1
- package/src/_cjs/utils/withDedupe.js +1 -6
- package/src/_cjs/utils/withDedupe.js.map +1 -1
- package/src/_cjs/version.js +1 -1
- package/src/_cjs/version.js.map +1 -1
- package/src/_esm/core/BaseStepExecutor.js +13 -38
- package/src/_esm/core/BaseStepExecutor.js.map +1 -1
- package/src/_esm/core/EVM/EVMStepExecutor.js +367 -397
- package/src/_esm/core/EVM/EVMStepExecutor.js.map +1 -1
- package/src/_esm/core/EVM/checkAllowance.js +18 -9
- package/src/_esm/core/EVM/checkAllowance.js.map +1 -1
- package/src/_esm/core/EVM/checkPermitSupport.js +2 -2
- package/src/_esm/core/EVM/checkPermitSupport.js.map +1 -1
- package/src/_esm/core/EVM/permits/allowanceTransfer.js +8 -8
- package/src/_esm/core/EVM/permits/allowanceTransfer.js.map +1 -1
- package/src/_esm/core/EVM/permits/getNativePermit.js +12 -10
- package/src/_esm/core/EVM/permits/getNativePermit.js.map +1 -1
- package/src/_esm/core/EVM/permits/signPermit2Message.js +29 -28
- package/src/_esm/core/EVM/permits/signPermit2Message.js.map +1 -1
- package/src/_esm/core/EVM/permits/signatureTransfer.js +8 -8
- package/src/_esm/core/EVM/permits/signatureTransfer.js.map +1 -1
- package/src/_esm/core/EVM/typeguards.js +4 -2
- package/src/_esm/core/EVM/typeguards.js.map +1 -1
- package/src/_esm/core/EVM/types.js.map +1 -1
- package/src/_esm/core/Solana/KeypairWalletAdapter.js +12 -37
- package/src/_esm/core/Solana/KeypairWalletAdapter.js.map +1 -1
- package/src/_esm/core/Solana/SolanaStepExecutor.js +105 -120
- package/src/_esm/core/Solana/SolanaStepExecutor.js.map +1 -1
- package/src/_esm/core/StatusManager.js +132 -165
- package/src/_esm/core/StatusManager.js.map +1 -1
- package/src/_esm/core/UTXO/UTXOStepExecutor.js +144 -159
- package/src/_esm/core/UTXO/UTXOStepExecutor.js.map +1 -1
- package/src/_esm/core/prepareRestart.js +10 -1
- package/src/_esm/core/prepareRestart.js.map +1 -1
- package/src/_esm/errors/SDKError.js +5 -30
- package/src/_esm/errors/SDKError.js.map +1 -1
- package/src/_esm/errors/baseError.js +2 -12
- package/src/_esm/errors/baseError.js.map +1 -1
- package/src/_esm/errors/httpError.js +6 -36
- package/src/_esm/errors/httpError.js.map +1 -1
- package/src/_esm/index.js +1 -1
- package/src/_esm/index.js.map +1 -1
- package/src/_esm/services/api.js +2 -4
- package/src/_esm/services/api.js.map +1 -1
- package/src/_esm/utils/withDedupe.js +1 -6
- package/src/_esm/utils/withDedupe.js.map +1 -1
- package/src/_esm/version.js +1 -1
- package/src/_esm/version.js.map +1 -1
- package/src/_types/core/EVM/EVMStepExecutor.d.ts.map +1 -1
- package/src/_types/core/EVM/checkAllowance.d.ts +2 -3
- package/src/_types/core/EVM/checkAllowance.d.ts.map +1 -1
- package/src/_types/core/EVM/checkPermitSupport.d.ts.map +1 -1
- package/src/_types/core/EVM/permits/allowanceTransfer.d.ts +4 -4
- package/src/_types/core/EVM/permits/allowanceTransfer.d.ts.map +1 -1
- package/src/_types/core/EVM/permits/getNativePermit.d.ts +1 -2
- package/src/_types/core/EVM/permits/getNativePermit.d.ts.map +1 -1
- package/src/_types/core/EVM/permits/signPermit2Message.d.ts +2 -11
- package/src/_types/core/EVM/permits/signPermit2Message.d.ts.map +1 -1
- package/src/_types/core/EVM/permits/signatureTransfer.d.ts +2 -2
- package/src/_types/core/EVM/permits/signatureTransfer.d.ts.map +1 -1
- package/src/_types/core/EVM/permits/types.d.ts +3 -9
- package/src/_types/core/EVM/permits/types.d.ts.map +1 -1
- package/src/_types/core/EVM/typeguards.d.ts +6 -2
- package/src/_types/core/EVM/typeguards.d.ts.map +1 -1
- package/src/_types/core/EVM/types.d.ts +2 -5
- package/src/_types/core/EVM/types.d.ts.map +1 -1
- package/src/_types/core/StatusManager.d.ts.map +1 -1
- package/src/_types/core/prepareRestart.d.ts.map +1 -1
- package/src/_types/core/types.d.ts +2 -0
- package/src/_types/core/types.d.ts.map +1 -1
- package/src/_types/index.d.ts +1 -1
- package/src/_types/index.d.ts.map +1 -1
- package/src/_types/services/api.d.ts +2 -2
- package/src/_types/services/api.d.ts.map +1 -1
- package/src/_types/version.d.ts +1 -1
- package/src/_types/version.d.ts.map +1 -1
- package/src/core/EVM/EVMStepExecutor.ts +39 -44
- package/src/core/EVM/checkAllowance.ts +28 -19
- package/src/core/EVM/checkPermitSupport.ts +14 -2
- package/src/core/EVM/permits/allowanceTransfer.ts +14 -10
- package/src/core/EVM/permits/getNativePermit.ts +13 -11
- package/src/core/EVM/permits/signPermit2Message.ts +43 -63
- package/src/core/EVM/permits/signatureTransfer.ts +10 -10
- package/src/core/EVM/permits/types.ts +3 -16
- package/src/core/EVM/typeguards.ts +14 -4
- package/src/core/EVM/types.ts +2 -6
- package/src/core/StatusManager.ts +5 -3
- package/src/core/prepareRestart.ts +14 -2
- package/src/core/types.ts +2 -0
- package/src/index.ts +1 -1
- package/src/services/api.ts +3 -6
- package/src/version.ts +1 -1
- package/src/_cjs/core/EVM/permits/signNativePermitMessage.js +0 -20
- package/src/_cjs/core/EVM/permits/signNativePermitMessage.js.map +0 -1
- package/src/_cjs/core/EVM/permits/utils.js +0 -31
- package/src/_cjs/core/EVM/permits/utils.js.map +0 -1
- package/src/_esm/core/EVM/permits/signNativePermitMessage.js +0 -16
- package/src/_esm/core/EVM/permits/signNativePermitMessage.js.map +0 -1
- package/src/_esm/core/EVM/permits/utils.js +0 -26
- package/src/_esm/core/EVM/permits/utils.js.map +0 -1
- package/src/_types/core/EVM/permits/signNativePermitMessage.d.ts +0 -4
- package/src/_types/core/EVM/permits/signNativePermitMessage.d.ts.map +0 -1
- package/src/_types/core/EVM/permits/utils.d.ts +0 -6
- package/src/_types/core/EVM/permits/utils.d.ts.map +0 -1
- package/src/core/EVM/permits/signNativePermitMessage.ts +0 -27
- package/src/core/EVM/permits/utils.ts +0 -40
|
@@ -16,168 +16,153 @@ const waitForDestinationChainTransaction_js_1 = require("../waitForDestinationCh
|
|
|
16
16
|
const getUTXOPublicClient_js_1 = require("./getUTXOPublicClient.js");
|
|
17
17
|
const parseUTXOErrors_js_1 = require("./parseUTXOErrors.js");
|
|
18
18
|
class UTXOStepExecutor extends BaseStepExecutor_js_1.BaseStepExecutor {
|
|
19
|
+
client;
|
|
19
20
|
constructor(options) {
|
|
20
21
|
super(options);
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
22
|
+
this.client = options.client;
|
|
23
|
+
}
|
|
24
|
+
checkClient = (step) => {
|
|
25
|
+
if (this.client.account?.address !== step.action.fromAddress) {
|
|
26
|
+
throw new errors_js_1.TransactionError(constants_js_1.LiFiErrorCode.WalletChangedDuringExecution, 'The wallet address that requested the quote does not match the wallet address attempting to sign the transaction.');
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
executeStep = async (step) => {
|
|
30
|
+
step.execution = this.statusManager.initExecutionObject(step);
|
|
31
|
+
const fromChain = await config_js_1.config.getChainById(step.action.fromChainId);
|
|
32
|
+
const toChain = await config_js_1.config.getChainById(step.action.toChainId);
|
|
33
|
+
const isBridgeExecution = fromChain.id !== toChain.id;
|
|
34
|
+
const currentProcessType = isBridgeExecution ? 'CROSS_CHAIN' : 'SWAP';
|
|
35
|
+
let process = this.statusManager.findOrCreateProcess({
|
|
36
|
+
step,
|
|
37
|
+
type: currentProcessType,
|
|
38
|
+
chainId: fromChain.id,
|
|
26
39
|
});
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
if (
|
|
33
|
-
|
|
40
|
+
const publicClient = await (0, getUTXOPublicClient_js_1.getUTXOPublicClient)(types_1.ChainId.BTC);
|
|
41
|
+
if (process.status !== 'DONE') {
|
|
42
|
+
try {
|
|
43
|
+
let txHash;
|
|
44
|
+
let txHex;
|
|
45
|
+
if (process.txHash) {
|
|
46
|
+
this.checkClient(step);
|
|
47
|
+
txHash = process.txHash;
|
|
48
|
+
txHex = process.txHex;
|
|
34
49
|
}
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
}
|
|
62
|
-
else {
|
|
63
|
-
process = this.statusManager.updateProcess(step, process.type, 'STARTED');
|
|
64
|
-
await (0, checkBalance_js_1.checkBalance)(this.client.account.address, step);
|
|
65
|
-
if (!step.transactionRequest) {
|
|
66
|
-
const { execution, ...stepBase } = step;
|
|
67
|
-
const updatedStep = await (0, api_js_1.getStepTransaction)(stepBase);
|
|
68
|
-
const comparedStep = await (0, stepComparison_js_1.stepComparison)(this.statusManager, step, updatedStep, this.allowUserInteraction, this.executionOptions);
|
|
69
|
-
Object.assign(step, {
|
|
70
|
-
...comparedStep,
|
|
71
|
-
execution: step.execution,
|
|
72
|
-
});
|
|
73
|
-
}
|
|
74
|
-
if (!step.transactionRequest?.data) {
|
|
75
|
-
throw new errors_js_1.TransactionError(constants_js_1.LiFiErrorCode.TransactionUnprepared, 'Unable to prepare transaction.');
|
|
76
|
-
}
|
|
77
|
-
process = this.statusManager.updateProcess(step, process.type, 'ACTION_REQUIRED');
|
|
78
|
-
if (!this.allowUserInteraction) {
|
|
79
|
-
return step;
|
|
80
|
-
}
|
|
81
|
-
let transactionRequest = {
|
|
82
|
-
data: step.transactionRequest.data,
|
|
83
|
-
};
|
|
84
|
-
if (this.executionOptions?.updateTransactionRequestHook) {
|
|
85
|
-
const customizedTransactionRequest = await this.executionOptions.updateTransactionRequestHook({
|
|
86
|
-
requestType: 'transaction',
|
|
87
|
-
...transactionRequest,
|
|
88
|
-
});
|
|
89
|
-
transactionRequest = {
|
|
90
|
-
...transactionRequest,
|
|
91
|
-
...customizedTransactionRequest,
|
|
92
|
-
};
|
|
93
|
-
}
|
|
94
|
-
if (!transactionRequest.data) {
|
|
95
|
-
throw new errors_js_1.TransactionError(constants_js_1.LiFiErrorCode.TransactionUnprepared, 'Unable to prepare transaction.');
|
|
96
|
-
}
|
|
97
|
-
this.checkClient(step);
|
|
98
|
-
const psbtHex = transactionRequest.data;
|
|
99
|
-
const psbt = bitcoinjs_lib_1.Psbt.fromHex(psbtHex, { network: bitcoinjs_lib_1.networks.bitcoin });
|
|
100
|
-
const inputsToSign = Array.from(psbt.data.inputs
|
|
101
|
-
.reduce((map, input, index) => {
|
|
102
|
-
const accountAddress = input.witnessUtxo
|
|
103
|
-
? bitcoinjs_lib_1.address.fromOutputScript(input.witnessUtxo.script, bitcoinjs_lib_1.networks.bitcoin)
|
|
104
|
-
: this.client.account?.address;
|
|
105
|
-
if (map.has(accountAddress)) {
|
|
106
|
-
map.get(accountAddress).signingIndexes.push(index);
|
|
107
|
-
}
|
|
108
|
-
else {
|
|
109
|
-
map.set(accountAddress, {
|
|
110
|
-
address: accountAddress,
|
|
111
|
-
sigHash: 1,
|
|
112
|
-
signingIndexes: [index],
|
|
113
|
-
});
|
|
114
|
-
}
|
|
115
|
-
return map;
|
|
116
|
-
}, new Map())
|
|
117
|
-
.values());
|
|
118
|
-
const signedPsbtHex = await (0, viem_1.withTimeout)(() => (0, core_1.signPsbt)(this.client, {
|
|
119
|
-
psbt: psbtHex,
|
|
120
|
-
inputsToSign: inputsToSign,
|
|
121
|
-
finalize: false,
|
|
122
|
-
}), {
|
|
123
|
-
timeout: 600_000,
|
|
124
|
-
errorInstance: new errors_js_1.TransactionError(constants_js_1.LiFiErrorCode.TransactionExpired, 'Transaction has expired.'),
|
|
125
|
-
});
|
|
126
|
-
const signedPsbt = bitcoinjs_lib_1.Psbt.fromHex(signedPsbtHex).finalizeAllInputs();
|
|
127
|
-
txHex = signedPsbt.extractTransaction().toHex();
|
|
128
|
-
txHash = await publicClient.sendUTXOTransaction({
|
|
129
|
-
hex: txHex,
|
|
130
|
-
});
|
|
131
|
-
process = this.statusManager.updateProcess(step, process.type, 'PENDING', {
|
|
132
|
-
txHash: txHash,
|
|
133
|
-
txLink: `${fromChain.metamask.blockExplorerUrls[0]}tx/${txHash}`,
|
|
134
|
-
txHex,
|
|
135
|
-
});
|
|
136
|
-
}
|
|
137
|
-
let replacementReason;
|
|
138
|
-
const transaction = await (0, core_1.waitForTransaction)(publicClient, {
|
|
139
|
-
txId: txHash,
|
|
140
|
-
txHex,
|
|
141
|
-
senderAddress: this.client.account?.address,
|
|
142
|
-
onReplaced: (response) => {
|
|
143
|
-
replacementReason = response.reason;
|
|
144
|
-
process = this.statusManager.updateProcess(step, process.type, 'PENDING', {
|
|
145
|
-
txHash: response.transaction.txid,
|
|
146
|
-
txLink: `${fromChain.metamask.blockExplorerUrls[0]}tx/${response.transaction.txid}`,
|
|
147
|
-
});
|
|
148
|
-
},
|
|
50
|
+
else {
|
|
51
|
+
process = this.statusManager.updateProcess(step, process.type, 'STARTED');
|
|
52
|
+
await (0, checkBalance_js_1.checkBalance)(this.client.account.address, step);
|
|
53
|
+
if (!step.transactionRequest) {
|
|
54
|
+
const { execution, ...stepBase } = step;
|
|
55
|
+
const updatedStep = await (0, api_js_1.getStepTransaction)(stepBase);
|
|
56
|
+
const comparedStep = await (0, stepComparison_js_1.stepComparison)(this.statusManager, step, updatedStep, this.allowUserInteraction, this.executionOptions);
|
|
57
|
+
Object.assign(step, {
|
|
58
|
+
...comparedStep,
|
|
59
|
+
execution: step.execution,
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
if (!step.transactionRequest?.data) {
|
|
63
|
+
throw new errors_js_1.TransactionError(constants_js_1.LiFiErrorCode.TransactionUnprepared, 'Unable to prepare transaction.');
|
|
64
|
+
}
|
|
65
|
+
process = this.statusManager.updateProcess(step, process.type, 'ACTION_REQUIRED');
|
|
66
|
+
if (!this.allowUserInteraction) {
|
|
67
|
+
return step;
|
|
68
|
+
}
|
|
69
|
+
let transactionRequest = {
|
|
70
|
+
data: step.transactionRequest.data,
|
|
71
|
+
};
|
|
72
|
+
if (this.executionOptions?.updateTransactionRequestHook) {
|
|
73
|
+
const customizedTransactionRequest = await this.executionOptions.updateTransactionRequestHook({
|
|
74
|
+
requestType: 'transaction',
|
|
75
|
+
...transactionRequest,
|
|
149
76
|
});
|
|
150
|
-
|
|
151
|
-
|
|
77
|
+
transactionRequest = {
|
|
78
|
+
...transactionRequest,
|
|
79
|
+
...customizedTransactionRequest,
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
if (!transactionRequest.data) {
|
|
83
|
+
throw new errors_js_1.TransactionError(constants_js_1.LiFiErrorCode.TransactionUnprepared, 'Unable to prepare transaction.');
|
|
84
|
+
}
|
|
85
|
+
this.checkClient(step);
|
|
86
|
+
const psbtHex = transactionRequest.data;
|
|
87
|
+
const psbt = bitcoinjs_lib_1.Psbt.fromHex(psbtHex, { network: bitcoinjs_lib_1.networks.bitcoin });
|
|
88
|
+
const inputsToSign = Array.from(psbt.data.inputs
|
|
89
|
+
.reduce((map, input, index) => {
|
|
90
|
+
const accountAddress = input.witnessUtxo
|
|
91
|
+
? bitcoinjs_lib_1.address.fromOutputScript(input.witnessUtxo.script, bitcoinjs_lib_1.networks.bitcoin)
|
|
92
|
+
: this.client.account?.address;
|
|
93
|
+
if (map.has(accountAddress)) {
|
|
94
|
+
map.get(accountAddress).signingIndexes.push(index);
|
|
152
95
|
}
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
96
|
+
else {
|
|
97
|
+
map.set(accountAddress, {
|
|
98
|
+
address: accountAddress,
|
|
99
|
+
sigHash: 1,
|
|
100
|
+
signingIndexes: [index],
|
|
157
101
|
});
|
|
158
102
|
}
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
103
|
+
return map;
|
|
104
|
+
}, new Map())
|
|
105
|
+
.values());
|
|
106
|
+
const signedPsbtHex = await (0, viem_1.withTimeout)(() => (0, core_1.signPsbt)(this.client, {
|
|
107
|
+
psbt: psbtHex,
|
|
108
|
+
inputsToSign: inputsToSign,
|
|
109
|
+
finalize: false,
|
|
110
|
+
}), {
|
|
111
|
+
timeout: 600_000,
|
|
112
|
+
errorInstance: new errors_js_1.TransactionError(constants_js_1.LiFiErrorCode.TransactionExpired, 'Transaction has expired.'),
|
|
113
|
+
});
|
|
114
|
+
const signedPsbt = bitcoinjs_lib_1.Psbt.fromHex(signedPsbtHex).finalizeAllInputs();
|
|
115
|
+
txHex = signedPsbt.extractTransaction().toHex();
|
|
116
|
+
txHash = await publicClient.sendUTXOTransaction({
|
|
117
|
+
hex: txHex,
|
|
118
|
+
});
|
|
119
|
+
process = this.statusManager.updateProcess(step, process.type, 'PENDING', {
|
|
120
|
+
txHash: txHash,
|
|
121
|
+
txLink: `${fromChain.metamask.blockExplorerUrls[0]}tx/${txHash}`,
|
|
122
|
+
txHex,
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
let replacementReason;
|
|
126
|
+
const transaction = await (0, core_1.waitForTransaction)(publicClient, {
|
|
127
|
+
txId: txHash,
|
|
128
|
+
txHex,
|
|
129
|
+
senderAddress: this.client.account?.address,
|
|
130
|
+
onReplaced: (response) => {
|
|
131
|
+
replacementReason = response.reason;
|
|
132
|
+
process = this.statusManager.updateProcess(step, process.type, 'PENDING', {
|
|
133
|
+
txHash: response.transaction.txid,
|
|
134
|
+
txLink: `${fromChain.metamask.blockExplorerUrls[0]}tx/${response.transaction.txid}`,
|
|
170
135
|
});
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
136
|
+
},
|
|
137
|
+
});
|
|
138
|
+
if (replacementReason === 'cancelled') {
|
|
139
|
+
throw new errors_js_1.TransactionError(constants_js_1.LiFiErrorCode.TransactionCanceled, 'User canceled transaction.');
|
|
140
|
+
}
|
|
141
|
+
if (transaction.txid !== txHash) {
|
|
142
|
+
process = this.statusManager.updateProcess(step, process.type, 'PENDING', {
|
|
143
|
+
txHash: transaction.txid,
|
|
144
|
+
txLink: `${fromChain.metamask.blockExplorerUrls[0]}tx/${transaction.txid}`,
|
|
145
|
+
});
|
|
146
|
+
}
|
|
147
|
+
if (isBridgeExecution) {
|
|
148
|
+
process = this.statusManager.updateProcess(step, process.type, 'DONE');
|
|
174
149
|
}
|
|
175
|
-
await (0, waitForDestinationChainTransaction_js_1.waitForDestinationChainTransaction)(step, process, fromChain, toChain, this.statusManager, 10_000);
|
|
176
|
-
return step;
|
|
177
150
|
}
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
151
|
+
catch (e) {
|
|
152
|
+
const error = await (0, parseUTXOErrors_js_1.parseUTXOErrors)(e, step, process);
|
|
153
|
+
process = this.statusManager.updateProcess(step, process.type, 'FAILED', {
|
|
154
|
+
error: {
|
|
155
|
+
message: error.cause.message,
|
|
156
|
+
code: error.code,
|
|
157
|
+
},
|
|
158
|
+
});
|
|
159
|
+
this.statusManager.updateExecution(step, 'FAILED');
|
|
160
|
+
throw error;
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
await (0, waitForDestinationChainTransaction_js_1.waitForDestinationChainTransaction)(step, process, fromChain, toChain, this.statusManager, 10_000);
|
|
164
|
+
return step;
|
|
165
|
+
};
|
|
181
166
|
}
|
|
182
167
|
exports.UTXOStepExecutor = UTXOStepExecutor;
|
|
183
168
|
//# sourceMappingURL=UTXOStepExecutor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UTXOStepExecutor.js","sourceRoot":"","sources":["../../../core/UTXO/UTXOStepExecutor.ts"],"names":[],"mappings":";;;AAAA,sCAA0D;AAE1D,uCAAqC;AACrC,iDAAuD;AACvD,+BAA+C;AAC/C,+CAAwC;AACxC,4DAAyD;AACzD,sDAAyD;AACzD,kDAA0D;AAC1D,gEAAyD;AACzD,wDAAiD;AACjD,4DAAqD;AAMrD,oGAA6F;AAC7F,qEAA8D;AAC9D,6DAAsD;AAMtD,MAAa,gBAAiB,SAAQ,sCAAgB;
|
|
1
|
+
{"version":3,"file":"UTXOStepExecutor.js","sourceRoot":"","sources":["../../../core/UTXO/UTXOStepExecutor.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,13 @@ const prepareRestart = async (route) => {
|
|
|
5
5
|
for (let index = 0; index < route.steps.length; index++) {
|
|
6
6
|
const step = route.steps[index];
|
|
7
7
|
if (step.execution) {
|
|
8
|
-
|
|
8
|
+
const lastValidIndex = step.execution.process.findLastIndex((process) => !!process.txHash);
|
|
9
|
+
if (lastValidIndex >= 0) {
|
|
10
|
+
step.execution.process = step.execution.process.slice(0, lastValidIndex + 1);
|
|
11
|
+
}
|
|
12
|
+
else {
|
|
13
|
+
step.execution.process = [];
|
|
14
|
+
}
|
|
9
15
|
}
|
|
10
16
|
step.transactionRequest = undefined;
|
|
11
17
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prepareRestart.js","sourceRoot":"","sources":["../../core/prepareRestart.ts"],"names":[],"mappings":";;;AAEO,MAAM,cAAc,GAAG,KAAK,EAAE,KAAoB,EAAE,EAAE;IAC3D,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;QACxD,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAC/B,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"prepareRestart.js","sourceRoot":"","sources":["../../core/prepareRestart.ts"],"names":[],"mappings":";;;AAEO,MAAM,cAAc,GAAG,KAAK,EAAE,KAAoB,EAAE,EAAE;IAC3D,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;QACxD,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAC/B,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YAEnB,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,CACzD,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAC9B,CAAA;YAGD,IAAI,cAAc,IAAI,CAAC,EAAE,CAAC;gBACxB,IAAI,CAAC,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CACnD,CAAC,EACD,cAAc,GAAG,CAAC,CACnB,CAAA;YACH,CAAC;iBAAM,CAAC;gBAEN,IAAI,CAAC,SAAS,CAAC,OAAO,GAAG,EAAE,CAAA;YAC7B,CAAC;QACH,CAAC;QACD,IAAI,CAAC,kBAAkB,GAAG,SAAS,CAAA;IACrC,CAAC;AACH,CAAC,CAAA;AAtBY,QAAA,cAAc,kBAsB1B"}
|
|
@@ -3,39 +3,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.SDKError = void 0;
|
|
4
4
|
const version_js_1 = require("../version.js");
|
|
5
5
|
class SDKError extends Error {
|
|
6
|
+
step;
|
|
7
|
+
process;
|
|
8
|
+
code;
|
|
9
|
+
name = 'SDKError';
|
|
10
|
+
cause;
|
|
6
11
|
constructor(cause, step, process) {
|
|
7
12
|
const errorMessage = `${cause.message ? `[${cause.name}] ${cause.message}` : 'Unknown error occurred'}\nLI.FI SDK version: ${version_js_1.version}`;
|
|
8
13
|
super(errorMessage);
|
|
9
|
-
Object.defineProperty(this, "step", {
|
|
10
|
-
enumerable: true,
|
|
11
|
-
configurable: true,
|
|
12
|
-
writable: true,
|
|
13
|
-
value: void 0
|
|
14
|
-
});
|
|
15
|
-
Object.defineProperty(this, "process", {
|
|
16
|
-
enumerable: true,
|
|
17
|
-
configurable: true,
|
|
18
|
-
writable: true,
|
|
19
|
-
value: void 0
|
|
20
|
-
});
|
|
21
|
-
Object.defineProperty(this, "code", {
|
|
22
|
-
enumerable: true,
|
|
23
|
-
configurable: true,
|
|
24
|
-
writable: true,
|
|
25
|
-
value: void 0
|
|
26
|
-
});
|
|
27
|
-
Object.defineProperty(this, "name", {
|
|
28
|
-
enumerable: true,
|
|
29
|
-
configurable: true,
|
|
30
|
-
writable: true,
|
|
31
|
-
value: 'SDKError'
|
|
32
|
-
});
|
|
33
|
-
Object.defineProperty(this, "cause", {
|
|
34
|
-
enumerable: true,
|
|
35
|
-
configurable: true,
|
|
36
|
-
writable: true,
|
|
37
|
-
value: void 0
|
|
38
|
-
});
|
|
39
14
|
this.name = 'SDKError';
|
|
40
15
|
this.step = step;
|
|
41
16
|
this.process = process;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SDKError.js","sourceRoot":"","sources":["../../errors/SDKError.ts"],"names":[],"mappings":";;;AAEA,8CAAuC;AAMvC,MAAa,QAAS,SAAQ,KAAK;
|
|
1
|
+
{"version":3,"file":"SDKError.js","sourceRoot":"","sources":["../../errors/SDKError.ts"],"names":[],"mappings":";;;AAEA,8CAAuC;AAMvC,MAAa,QAAS,SAAQ,KAAK;IACjC,IAAI,CAAW;IACf,OAAO,CAAU;IACjB,IAAI,CAAW;IACN,IAAI,GAAG,UAAU,CAAA;IACjB,KAAK,CAAW;IAEzB,YAAY,KAAgB,EAAE,IAAe,EAAE,OAAiB;QAC9D,MAAM,YAAY,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,wBAAwB,wBAAwB,oBAAO,EAAE,CAAA;QACtI,KAAK,CAAC,YAAY,CAAC,CAAA;QACnB,IAAI,CAAC,IAAI,GAAG,UAAU,CAAA;QACtB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAA;QAC7B,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAA;IACxB,CAAC;CACF;AAjBD,4BAiBC"}
|
|
@@ -3,20 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.BaseError = void 0;
|
|
4
4
|
const rootCause_js_1 = require("./utils/rootCause.js");
|
|
5
5
|
class BaseError extends Error {
|
|
6
|
+
code;
|
|
7
|
+
cause;
|
|
6
8
|
constructor(name, code, message, cause) {
|
|
7
9
|
super(message);
|
|
8
|
-
Object.defineProperty(this, "code", {
|
|
9
|
-
enumerable: true,
|
|
10
|
-
configurable: true,
|
|
11
|
-
writable: true,
|
|
12
|
-
value: void 0
|
|
13
|
-
});
|
|
14
|
-
Object.defineProperty(this, "cause", {
|
|
15
|
-
enumerable: true,
|
|
16
|
-
configurable: true,
|
|
17
|
-
writable: true,
|
|
18
|
-
value: void 0
|
|
19
|
-
});
|
|
20
10
|
this.name = name;
|
|
21
11
|
this.code = code;
|
|
22
12
|
this.cause = cause;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"baseError.js","sourceRoot":"","sources":["../../errors/baseError.ts"],"names":[],"mappings":";;;AACA,uDAAmD;AAInD,MAAa,SAAU,SAAQ,KAAK;
|
|
1
|
+
{"version":3,"file":"baseError.js","sourceRoot":"","sources":["../../errors/baseError.ts"],"names":[],"mappings":";;;AACA,uDAAmD;AAInD,MAAa,SAAU,SAAQ,KAAK;IAClC,IAAI,CAAW;IACN,KAAK,CAAQ;IAEtB,YAAY,IAAe,EAAE,IAAY,EAAE,OAAe,EAAE,KAAa;QACvE,KAAK,CAAC,OAAO,CAAC,CAAA;QAEd,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAElB,MAAM,SAAS,GAAG,IAAA,2BAAY,EAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC1C,IAAI,SAAS,EAAE,KAAK,EAAE,CAAC;YACrB,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,KAAK,CAAA;QAC9B,CAAC;IACH,CAAC;CACF;AAhBD,8BAgBC"}
|
|
@@ -32,6 +32,12 @@ const createInitialMessage = (response) => {
|
|
|
32
32
|
return `Request failed with ${reason}`;
|
|
33
33
|
};
|
|
34
34
|
class HTTPError extends baseError_js_1.BaseError {
|
|
35
|
+
response;
|
|
36
|
+
status;
|
|
37
|
+
url;
|
|
38
|
+
fetchOptions;
|
|
39
|
+
type;
|
|
40
|
+
responseBody;
|
|
35
41
|
constructor(response, url, options) {
|
|
36
42
|
const errorClassification = getErrorClassificationFromStatusCode(response.status);
|
|
37
43
|
const additionalMessage = errorClassification?.message
|
|
@@ -39,42 +45,6 @@ class HTTPError extends baseError_js_1.BaseError {
|
|
|
39
45
|
: '';
|
|
40
46
|
const message = createInitialMessage(response) + additionalMessage;
|
|
41
47
|
super(constants_js_2.ErrorName.HTTPError, errorClassification.code, message);
|
|
42
|
-
Object.defineProperty(this, "response", {
|
|
43
|
-
enumerable: true,
|
|
44
|
-
configurable: true,
|
|
45
|
-
writable: true,
|
|
46
|
-
value: void 0
|
|
47
|
-
});
|
|
48
|
-
Object.defineProperty(this, "status", {
|
|
49
|
-
enumerable: true,
|
|
50
|
-
configurable: true,
|
|
51
|
-
writable: true,
|
|
52
|
-
value: void 0
|
|
53
|
-
});
|
|
54
|
-
Object.defineProperty(this, "url", {
|
|
55
|
-
enumerable: true,
|
|
56
|
-
configurable: true,
|
|
57
|
-
writable: true,
|
|
58
|
-
value: void 0
|
|
59
|
-
});
|
|
60
|
-
Object.defineProperty(this, "fetchOptions", {
|
|
61
|
-
enumerable: true,
|
|
62
|
-
configurable: true,
|
|
63
|
-
writable: true,
|
|
64
|
-
value: void 0
|
|
65
|
-
});
|
|
66
|
-
Object.defineProperty(this, "type", {
|
|
67
|
-
enumerable: true,
|
|
68
|
-
configurable: true,
|
|
69
|
-
writable: true,
|
|
70
|
-
value: void 0
|
|
71
|
-
});
|
|
72
|
-
Object.defineProperty(this, "responseBody", {
|
|
73
|
-
enumerable: true,
|
|
74
|
-
configurable: true,
|
|
75
|
-
writable: true,
|
|
76
|
-
value: void 0
|
|
77
|
-
});
|
|
78
48
|
this.type = errorClassification.type;
|
|
79
49
|
this.response = response;
|
|
80
50
|
this.status = response.status;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"httpError.js","sourceRoot":"","sources":["../../errors/httpError.ts"],"names":[],"mappings":";;;AAEA,iDAA0C;AAC1C,iDAA8C;AAC9C,iDAAwD;AAQxD,MAAM,kCAAkC,GAAG,IAAI,GAAG,CAAC;IACjD;QACE,GAAG;QACH,EAAE,IAAI,EAAE,wBAAS,CAAC,eAAe,EAAE,IAAI,EAAE,4BAAa,CAAC,eAAe,EAAE;KACzE;IACD,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,wBAAS,CAAC,aAAa,EAAE,IAAI,EAAE,4BAAa,CAAC,QAAQ,EAAE,CAAC;IACtE;QACE,GAAG;QACH;YACE,IAAI,EAAE,wBAAS,CAAC,aAAa;YAC7B,IAAI,EAAE,4BAAa,CAAC,aAAa;YACjC,OAAO,EAAE,2BAAY,CAAC,aAAa;SACpC;KACF;IACD,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,wBAAS,CAAC,WAAW,EAAE,IAAI,EAAE,4BAAa,CAAC,aAAa,EAAE,CAAC;CAC1E,CAAC,CAAA;AAEF,MAAM,oCAAoC,GAAG,CAAC,IAAY,EAAE,EAAE,CAC5D,kCAAkC,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI;IAC9C,IAAI,EAAE,wBAAS,CAAC,WAAW;IAC3B,IAAI,EAAE,4BAAa,CAAC,aAAa;CAClC,CAAA;AAEH,MAAM,oBAAoB,GAAG,CAAC,QAAkB,EAAE,EAAE;IAClD,MAAM,UAAU,GACd,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAA;IACjE,MAAM,KAAK,GAAG,QAAQ,CAAC,UAAU,IAAI,EAAE,CAAA;IACvC,MAAM,MAAM,GAAG,GAAG,UAAU,IAAI,KAAK,EAAE,CAAC,IAAI,EAAE,CAAA;IAC9C,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,eAAe,MAAM,EAAE,CAAC,CAAC,CAAC,kBAAkB,CAAA;IACpE,OAAO,uBAAuB,MAAM,EAAE,CAAA;AACxC,CAAC,CAAA;AAED,MAAa,SAAU,SAAQ,wBAAS;
|
|
1
|
+
{"version":3,"file":"httpError.js","sourceRoot":"","sources":["../../errors/httpError.ts"],"names":[],"mappings":"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"}
|
package/src/_cjs/index.js
CHANGED
|
@@ -14,8 +14,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.
|
|
18
|
-
exports.SDKError = exports.HTTPError = exports.ValidationError = exports.UnknownError = exports.TransactionError = exports.ServerError = exports.RPCError = exports.ProviderError = exports.BalanceError = void 0;
|
|
17
|
+
exports.ErrorName = exports.ErrorMessage = exports.BaseError = exports.getNameServiceAddress = exports.getTokenBalancesByChain = exports.getTokenBalances = exports.getTokenBalance = exports.getTransactionHistory = exports.getTools = exports.getTokens = exports.getToken = exports.getStepTransaction = exports.getStatus = exports.getRoutes = exports.getRelayerQuote = exports.getQuote = exports.getGasRecommendation = exports.getContractCallsQuote = exports.getConnections = exports.getChains = exports.fetchTxErrorDetails = exports.convertQuoteToRoute = exports.checkPackageUpdates = exports.createConfig = exports.isUTXO = exports.UTXO = exports.isSolana = exports.Solana = exports.KeypairWalletName = exports.KeypairWalletAdapter = exports.isSVMAddress = exports.updateRouteExecution = exports.stopRouteExecution = exports.resumeRoute = exports.getActiveRoutes = exports.getActiveRoute = exports.executeRoute = exports.StatusManager = exports.isGaslessStep = exports.isRelayerStep = exports.convertExtendedChain = exports.isExtendedChain = exports.isBatchingSupported = exports.isEVM = exports.setTokenAllowance = exports.revokeTokenApproval = exports.getTokenAllowanceMulticall = exports.getTokenAllowance = exports.EVM = exports.config = void 0;
|
|
18
|
+
exports.SDKError = exports.HTTPError = exports.ValidationError = exports.UnknownError = exports.TransactionError = exports.ServerError = exports.RPCError = exports.ProviderError = exports.BalanceError = exports.LiFiErrorCode = void 0;
|
|
19
19
|
__exportStar(require("@lifi/types"), exports);
|
|
20
20
|
var config_js_1 = require("./config.js");
|
|
21
21
|
Object.defineProperty(exports, "config", { enumerable: true, get: function () { return config_js_1.config; } });
|
|
@@ -36,6 +36,7 @@ Object.defineProperty(exports, "isExtendedChain", { enumerable: true, get: funct
|
|
|
36
36
|
Object.defineProperty(exports, "convertExtendedChain", { enumerable: true, get: function () { return utils_js_1.convertExtendedChain; } });
|
|
37
37
|
var typeguards_js_1 = require("./core/EVM/typeguards.js");
|
|
38
38
|
Object.defineProperty(exports, "isRelayerStep", { enumerable: true, get: function () { return typeguards_js_1.isRelayerStep; } });
|
|
39
|
+
Object.defineProperty(exports, "isGaslessStep", { enumerable: true, get: function () { return typeguards_js_1.isGaslessStep; } });
|
|
39
40
|
var StatusManager_js_1 = require("./core/StatusManager.js");
|
|
40
41
|
Object.defineProperty(exports, "StatusManager", { enumerable: true, get: function () { return StatusManager_js_1.StatusManager; } });
|
|
41
42
|
var execution_js_1 = require("./core/execution.js");
|
package/src/_cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAEA,8CAA2B;AAC3B,yCAAoC;AAA3B,mGAAA,MAAM,OAAA;AACf,4CAAuC;AAA9B,6FAAA,GAAG,OAAA;AACZ,8DAGmC;AAFjC,oHAAA,iBAAiB,OAAA;AACjB,6HAAA,0BAA0B,OAAA;AAE5B,8DAGmC;AAFjC,sHAAA,mBAAmB,OAAA;AACnB,oHAAA,iBAAiB,OAAA;AAEnB,gDAA2C;AAAlC,iGAAA,KAAK,OAAA;AACd,4EAAuE;AAA9D,6HAAA,mBAAmB,OAAA;AAC5B,gDAA2E;AAAlE,2GAAA,eAAe,OAAA;AAAE,gHAAA,oBAAoB,OAAA;AAC9C,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAEA,8CAA2B;AAC3B,yCAAoC;AAA3B,mGAAA,MAAM,OAAA;AACf,4CAAuC;AAA9B,6FAAA,GAAG,OAAA;AACZ,8DAGmC;AAFjC,oHAAA,iBAAiB,OAAA;AACjB,6HAAA,0BAA0B,OAAA;AAE5B,8DAGmC;AAFjC,sHAAA,mBAAmB,OAAA;AACnB,oHAAA,iBAAiB,OAAA;AAEnB,gDAA2C;AAAlC,iGAAA,KAAK,OAAA;AACd,4EAAuE;AAA9D,6HAAA,mBAAmB,OAAA;AAC5B,gDAA2E;AAAlE,2GAAA,eAAe,OAAA;AAAE,gHAAA,oBAAoB,OAAA;AAC9C,0DAAuE;AAA9D,8GAAA,aAAa,OAAA;AAAE,8GAAA,aAAa,OAAA;AAKrC,4DAAuD;AAA9C,iHAAA,aAAa,OAAA;AACtB,oDAO4B;AAN1B,4GAAA,YAAY,OAAA;AACZ,8GAAA,cAAc,OAAA;AACd,+GAAA,eAAe,OAAA;AACf,2GAAA,WAAW,OAAA;AACX,kHAAA,kBAAkB,OAAA;AAClB,oHAAA,oBAAoB,OAAA;AA6BtB,iEAA4D;AAAnD,+GAAA,YAAY,OAAA;AACrB,iFAG8C;AAF5C,+HAAA,oBAAoB,OAAA;AACpB,4HAAA,iBAAiB,OAAA;AAEnB,qDAAgD;AAAvC,mGAAA,MAAM,OAAA;AACf,mDAAiD;AAAxC,oGAAA,QAAQ,OAAA;AAKjB,+CAA0C;AAAjC,+FAAA,IAAI,OAAA;AACb,iDAA6C;AAApC,kGAAA,MAAM,OAAA;AAEf,qDAAgD;AAAvC,+GAAA,YAAY,OAAA;AACrB,yEAAoE;AAA3D,6HAAA,mBAAmB,OAAA;AAC5B,yEAAoE;AAA3D,6HAAA,mBAAmB,OAAA;AAC5B,yEAAoE;AAA3D,6HAAA,mBAAmB,OAAA;AAC5B,4CAc0B;AAbxB,mGAAA,SAAS,OAAA;AACT,wGAAA,cAAc,OAAA;AACd,+GAAA,qBAAqB,OAAA;AACrB,8GAAA,oBAAoB,OAAA;AACpB,kGAAA,QAAQ,OAAA;AACR,yGAAA,eAAe,OAAA;AACf,mGAAA,SAAS,OAAA;AACT,mGAAA,SAAS,OAAA;AACT,4GAAA,kBAAkB,OAAA;AAClB,kGAAA,QAAQ,OAAA;AACR,mGAAA,SAAS,OAAA;AACT,kGAAA,QAAQ,OAAA;AACR,+GAAA,qBAAqB,OAAA;AAEvB,oDAI8B;AAH5B,6GAAA,eAAe,OAAA;AACf,8GAAA,gBAAgB,OAAA;AAChB,qHAAA,uBAAuB,OAAA;AAEzB,gFAA2E;AAAlE,iIAAA,qBAAqB,OAAA;AAE9B,sDAAiD;AAAxC,yGAAA,SAAS,OAAA;AAClB,sDAI8B;AAH5B,4GAAA,YAAY,OAAA;AACZ,yGAAA,SAAS,OAAA;AACT,6GAAA,aAAa,OAAA;AAGf,gDAQ2B;AAPzB,yGAAA,YAAY,OAAA;AACZ,0GAAA,aAAa,OAAA;AACb,qGAAA,QAAQ,OAAA;AACR,wGAAA,WAAW,OAAA;AACX,6GAAA,gBAAgB,OAAA;AAChB,yGAAA,YAAY,OAAA;AACZ,4GAAA,eAAe,OAAA;AAEjB,sDAAiD;AAAxC,yGAAA,SAAS,OAAA;AAClB,oDAA+C;AAAtC,uGAAA,QAAQ,OAAA"}
|
package/src/_cjs/services/api.js
CHANGED
|
@@ -171,10 +171,8 @@ const getRelayerQuote = async (params, options) => {
|
|
|
171
171
|
exports.getRelayerQuote = getRelayerQuote;
|
|
172
172
|
const relayTransaction = async (params, options) => {
|
|
173
173
|
const requiredParameters = [
|
|
174
|
-
'
|
|
175
|
-
'
|
|
176
|
-
'permits',
|
|
177
|
-
'callData',
|
|
174
|
+
'typedData',
|
|
175
|
+
'transactionRequest',
|
|
178
176
|
];
|
|
179
177
|
for (const requiredParameter of requiredParameters) {
|
|
180
178
|
if (!params[requiredParameter]) {
|