otomato-sdk 1.5.65 → 1.5.67
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.
|
@@ -703,7 +703,6 @@ export const TRIGGERS = {
|
|
|
703
703
|
]
|
|
704
704
|
}
|
|
705
705
|
],
|
|
706
|
-
"before": "\n async (env) => {\n const otomatoSdk = await import('otomato-sdk');\n \n if (!env.parameters.chainId)\n throw new Error('You need to provide the chainId first');\n \n const getIonicTokenFromToken = (chain, tokenAddress) => {\n const CHAINS = otomatoSdk.CHAINS;\n if (chain == CHAINS.MODE) {\n switch (tokenAddress.toLowerCase()) {\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'USDT').contractAddress.toLowerCase():\n return '0x94812F2eEa03A49869f95e1b5868C6f3206ee3D3';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'USDC').contractAddress.toLowerCase():\n return '0x2BE717340023C9e14C1Bb12cb3ecBcfd3c3fB038';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'ezETH').contractAddress.toLowerCase():\n return '0x59e710215d45F584f44c0FEe83DA6d43D762D857';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'WETH').contractAddress.toLowerCase():\n return '0x71ef7EDa2Be775E5A7aa8afD02C45F059833e9d2';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'WBTC').contractAddress.toLowerCase():\n return '0xd70254C3baD29504789714A7c69d60Ec1127375C';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'STONE').contractAddress.toLowerCase():\n return '0x959FA710CCBb22c7Ce1e59Da82A247e686629310';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'wrsETH').contractAddress.toLowerCase():\n return '0x49950319aBE7CE5c3A6C90698381b45989C99b46';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'weETH.mode').contractAddress.toLowerCase():\n return '0xA0D844742B4abbbc43d8931a6Edb00C56325aA18';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'M-BTC').contractAddress.toLowerCase():\n return '0x19F245782b1258cf3e11Eda25784A378cC18c108';\n\n default: throw new Error('This asset is not available on Ionic');\n }\n }\n}\n \n let ionicTokenContractAddress = getIonicTokenFromToken(\n env.parameters.chainId,\n env.parameters.token.toLowerCase()\n );\n return {\n contractAddress: ionicTokenContractAddress\n };\n }",
|
|
707
706
|
"output": {
|
|
708
707
|
"lendingRate": "float"
|
|
709
708
|
},
|
|
@@ -822,6 +821,22 @@ export const TRIGGERS = {
|
|
|
822
821
|
"exchangeRate": "float",
|
|
823
822
|
"transactionHash": "string"
|
|
824
823
|
},
|
|
824
|
+
"frontendHelpers": {
|
|
825
|
+
"output": {
|
|
826
|
+
"inputAmount": {
|
|
827
|
+
"erc20Token": {
|
|
828
|
+
"contractAddress": "{{output.inputToken}}",
|
|
829
|
+
"chainId": "{{parameters.chainId}}"
|
|
830
|
+
}
|
|
831
|
+
},
|
|
832
|
+
"amountOut": {
|
|
833
|
+
"erc20Token": {
|
|
834
|
+
"contractAddress": "{{output.outputToken}}",
|
|
835
|
+
"chainId": "{{parameters.chainId}}"
|
|
836
|
+
}
|
|
837
|
+
}
|
|
838
|
+
}
|
|
839
|
+
},
|
|
825
840
|
"parameters": [
|
|
826
841
|
{
|
|
827
842
|
"key": "chainId",
|
|
@@ -1096,7 +1111,7 @@ export const ACTIONS = {
|
|
|
1096
1111
|
{
|
|
1097
1112
|
"key": "time",
|
|
1098
1113
|
"type": "string",
|
|
1099
|
-
"description": "The time to wait (in
|
|
1114
|
+
"description": "The time to wait (in seconds)",
|
|
1100
1115
|
"mandatory": true,
|
|
1101
1116
|
"category": 0
|
|
1102
1117
|
},
|
|
@@ -1181,6 +1196,22 @@ export const ACTIONS = {
|
|
|
1181
1196
|
"tokenOut": "erc20",
|
|
1182
1197
|
"transactionHash": "string"
|
|
1183
1198
|
},
|
|
1199
|
+
"frontendHelpers": {
|
|
1200
|
+
"output": {
|
|
1201
|
+
"amountIn": {
|
|
1202
|
+
"erc20Token": {
|
|
1203
|
+
"contractAddress": "{{output.tokenIn}}",
|
|
1204
|
+
"chainId": "{{parameters.chainId}}"
|
|
1205
|
+
}
|
|
1206
|
+
},
|
|
1207
|
+
"amountOut": {
|
|
1208
|
+
"erc20Token": {
|
|
1209
|
+
"contractAddress": "{{output.tokenOut}}",
|
|
1210
|
+
"chainId": "{{parameters.chainId}}"
|
|
1211
|
+
}
|
|
1212
|
+
}
|
|
1213
|
+
}
|
|
1214
|
+
},
|
|
1184
1215
|
"parameters": [
|
|
1185
1216
|
{
|
|
1186
1217
|
"key": "chainId",
|
|
@@ -1618,7 +1649,6 @@ export const ACTIONS = {
|
|
|
1618
1649
|
"to": "{{before.contractAddress}}"
|
|
1619
1650
|
}
|
|
1620
1651
|
],
|
|
1621
|
-
"before": "\n async (env) => {\n const otomatoSdk = await import('otomato-sdk');\n \n if (!env.parameters.chainId)\n throw new Error('You need to provide the chainId first');\n \n const getIonicTokenFromToken = (chain, tokenAddress) => {\n const CHAINS = otomatoSdk.CHAINS;\n if (chain == CHAINS.MODE) {\n switch (tokenAddress.toLowerCase()) {\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'USDT').contractAddress.toLowerCase():\n return '0x94812F2eEa03A49869f95e1b5868C6f3206ee3D3';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'USDC').contractAddress.toLowerCase():\n return '0x2BE717340023C9e14C1Bb12cb3ecBcfd3c3fB038';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'ezETH').contractAddress.toLowerCase():\n return '0x59e710215d45F584f44c0FEe83DA6d43D762D857';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'WETH').contractAddress.toLowerCase():\n return '0x71ef7EDa2Be775E5A7aa8afD02C45F059833e9d2';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'WBTC').contractAddress.toLowerCase():\n return '0xd70254C3baD29504789714A7c69d60Ec1127375C';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'STONE').contractAddress.toLowerCase():\n return '0x959FA710CCBb22c7Ce1e59Da82A247e686629310';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'wrsETH').contractAddress.toLowerCase():\n return '0x49950319aBE7CE5c3A6C90698381b45989C99b46';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'weETH.mode').contractAddress.toLowerCase():\n return '0xA0D844742B4abbbc43d8931a6Edb00C56325aA18';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'M-BTC').contractAddress.toLowerCase():\n return '0x19F245782b1258cf3e11Eda25784A378cC18c108';\n\n default: throw new Error('This asset is not available on Ionic');\n }\n }\n}\n \n let ionicTokenContractAddress = getIonicTokenFromToken(\n env.parameters.chainId,\n env.parameters.tokenToDeposit.toLowerCase()\n );\n return {\n contractAddress: ionicTokenContractAddress\n };\n }",
|
|
1622
1652
|
"output": {
|
|
1623
1653
|
"transactionHash": "string"
|
|
1624
1654
|
},
|
|
@@ -1708,7 +1738,6 @@ export const ACTIONS = {
|
|
|
1708
1738
|
}
|
|
1709
1739
|
],
|
|
1710
1740
|
"requiredApprovals": [],
|
|
1711
|
-
"before": "\n async (env) => {\n const otomatoSdk = await import('otomato-sdk');\n \n if (!env.parameters.chainId)\n throw new Error('You need to provide the chainId first');\n \n const getIonicTokenFromToken = (chain, tokenAddress) => {\n const CHAINS = otomatoSdk.CHAINS;\n if (chain == CHAINS.MODE) {\n switch (tokenAddress.toLowerCase()) {\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'USDT').contractAddress.toLowerCase():\n return '0x94812F2eEa03A49869f95e1b5868C6f3206ee3D3';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'USDC').contractAddress.toLowerCase():\n return '0x2BE717340023C9e14C1Bb12cb3ecBcfd3c3fB038';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'ezETH').contractAddress.toLowerCase():\n return '0x59e710215d45F584f44c0FEe83DA6d43D762D857';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'WETH').contractAddress.toLowerCase():\n return '0x71ef7EDa2Be775E5A7aa8afD02C45F059833e9d2';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'WBTC').contractAddress.toLowerCase():\n return '0xd70254C3baD29504789714A7c69d60Ec1127375C';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'STONE').contractAddress.toLowerCase():\n return '0x959FA710CCBb22c7Ce1e59Da82A247e686629310';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'wrsETH').contractAddress.toLowerCase():\n return '0x49950319aBE7CE5c3A6C90698381b45989C99b46';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'weETH.mode').contractAddress.toLowerCase():\n return '0xA0D844742B4abbbc43d8931a6Edb00C56325aA18';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'M-BTC').contractAddress.toLowerCase():\n return '0x19F245782b1258cf3e11Eda25784A378cC18c108';\n\n default: throw new Error('This asset is not available on Ionic');\n }\n }\n}\n \n let ionicTokenContractAddress = getIonicTokenFromToken(\n env.parameters.chainId,\n env.parameters.tokenToWithdraw.toLowerCase()\n );\n return {\n contractAddress: ionicTokenContractAddress\n };\n }",
|
|
1712
1741
|
"output": {
|
|
1713
1742
|
"transactionHash": "string"
|
|
1714
1743
|
},
|
|
@@ -1788,7 +1817,6 @@ export const ACTIONS = {
|
|
|
1788
1817
|
}
|
|
1789
1818
|
],
|
|
1790
1819
|
"requiredApprovals": [],
|
|
1791
|
-
"before": "\n async (env) => {\n const otomatoSdk = await import('otomato-sdk');\n \n if (!env.parameters.chainId)\n throw new Error('You need to provide the chainId first');\n \n const getIonicTokenFromToken = (chain, tokenAddress) => {\n const CHAINS = otomatoSdk.CHAINS;\n if (chain == CHAINS.MODE) {\n switch (tokenAddress.toLowerCase()) {\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'USDT').contractAddress.toLowerCase():\n return '0x94812F2eEa03A49869f95e1b5868C6f3206ee3D3';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'USDC').contractAddress.toLowerCase():\n return '0x2BE717340023C9e14C1Bb12cb3ecBcfd3c3fB038';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'ezETH').contractAddress.toLowerCase():\n return '0x59e710215d45F584f44c0FEe83DA6d43D762D857';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'WETH').contractAddress.toLowerCase():\n return '0x71ef7EDa2Be775E5A7aa8afD02C45F059833e9d2';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'WBTC').contractAddress.toLowerCase():\n return '0xd70254C3baD29504789714A7c69d60Ec1127375C';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'STONE').contractAddress.toLowerCase():\n return '0x959FA710CCBb22c7Ce1e59Da82A247e686629310';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'wrsETH').contractAddress.toLowerCase():\n return '0x49950319aBE7CE5c3A6C90698381b45989C99b46';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'weETH.mode').contractAddress.toLowerCase():\n return '0xA0D844742B4abbbc43d8931a6Edb00C56325aA18';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'M-BTC').contractAddress.toLowerCase():\n return '0x19F245782b1258cf3e11Eda25784A378cC18c108';\n\n default: throw new Error('This asset is not available on Ionic');\n }\n }\n}\n \n let ionicTokenContractAddress = getIonicTokenFromToken(\n env.parameters.chainId,\n env.parameters.tokenToBorrow.toLowerCase()\n );\n return {\n contractAddress: ionicTokenContractAddress\n };\n }",
|
|
1792
1820
|
"output": {
|
|
1793
1821
|
"transactionHash": "string"
|
|
1794
1822
|
},
|
|
@@ -1882,7 +1910,6 @@ export const ACTIONS = {
|
|
|
1882
1910
|
"to": "{{before.contractAddress}}"
|
|
1883
1911
|
}
|
|
1884
1912
|
],
|
|
1885
|
-
"before": "\n async (env) => {\n const otomatoSdk = await import('otomato-sdk');\n \n if (!env.parameters.chainId)\n throw new Error('You need to provide the chainId first');\n \n const getIonicTokenFromToken = (chain, tokenAddress) => {\n const CHAINS = otomatoSdk.CHAINS;\n if (chain == CHAINS.MODE) {\n switch (tokenAddress.toLowerCase()) {\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'USDT').contractAddress.toLowerCase():\n return '0x94812F2eEa03A49869f95e1b5868C6f3206ee3D3';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'USDC').contractAddress.toLowerCase():\n return '0x2BE717340023C9e14C1Bb12cb3ecBcfd3c3fB038';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'ezETH').contractAddress.toLowerCase():\n return '0x59e710215d45F584f44c0FEe83DA6d43D762D857';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'WETH').contractAddress.toLowerCase():\n return '0x71ef7EDa2Be775E5A7aa8afD02C45F059833e9d2';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'WBTC').contractAddress.toLowerCase():\n return '0xd70254C3baD29504789714A7c69d60Ec1127375C';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'STONE').contractAddress.toLowerCase():\n return '0x959FA710CCBb22c7Ce1e59Da82A247e686629310';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'wrsETH').contractAddress.toLowerCase():\n return '0x49950319aBE7CE5c3A6C90698381b45989C99b46';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'weETH.mode').contractAddress.toLowerCase():\n return '0xA0D844742B4abbbc43d8931a6Edb00C56325aA18';\n case otomatoSdk.getTokenFromSymbol(CHAINS.MODE, 'M-BTC').contractAddress.toLowerCase():\n return '0x19F245782b1258cf3e11Eda25784A378cC18c108';\n\n default: throw new Error('This asset is not available on Ionic');\n }\n }\n}\n \n let ionicTokenContractAddress = getIonicTokenFromToken(\n env.parameters.chainId,\n env.parameters.tokenToRepay.toLowerCase()\n );\n return {\n contractAddress: ionicTokenContractAddress\n };\n }",
|
|
1886
1913
|
"output": {
|
|
1887
1914
|
"transactionHash": "string"
|
|
1888
1915
|
},
|
|
@@ -1988,6 +2015,22 @@ export const ACTIONS = {
|
|
|
1988
2015
|
"tokenOut": "erc20",
|
|
1989
2016
|
"transactionHash": "string"
|
|
1990
2017
|
},
|
|
2018
|
+
"frontendHelpers": {
|
|
2019
|
+
"output": {
|
|
2020
|
+
"amountIn": {
|
|
2021
|
+
"erc20Token": {
|
|
2022
|
+
"contractAddress": "{{output.tokenIn}}",
|
|
2023
|
+
"chainId": "{{parameters.chainId}}"
|
|
2024
|
+
}
|
|
2025
|
+
},
|
|
2026
|
+
"amountOut": {
|
|
2027
|
+
"erc20Token": {
|
|
2028
|
+
"contractAddress": "{{output.tokenOut}}",
|
|
2029
|
+
"chainId": "{{parameters.chainId}}"
|
|
2030
|
+
}
|
|
2031
|
+
}
|
|
2032
|
+
}
|
|
2033
|
+
},
|
|
1991
2034
|
"parameters": [
|
|
1992
2035
|
{
|
|
1993
2036
|
"key": "chainId",
|
|
@@ -36,7 +36,6 @@ class RPCServices {
|
|
|
36
36
|
getTokenDetails(chainId, contractAddress) {
|
|
37
37
|
return __awaiter(this, void 0, void 0, function* () {
|
|
38
38
|
const rpcUrl = this.getRPC(chainId); // Get the RPC URL for the chain
|
|
39
|
-
// Create a provider using ethers.js
|
|
40
39
|
const provider = new ethers.JsonRpcProvider(rpcUrl);
|
|
41
40
|
// Define the contract ABI for the read-only functions (decimals, name, symbol)
|
|
42
41
|
const erc20ABI = [
|
|
@@ -44,14 +43,33 @@ class RPCServices {
|
|
|
44
43
|
'function name() view returns (string)',
|
|
45
44
|
'function symbol() view returns (string)',
|
|
46
45
|
];
|
|
47
|
-
// Create a contract instance
|
|
48
46
|
const contract = new ethers.Contract(contractAddress, erc20ABI, provider);
|
|
49
|
-
|
|
47
|
+
const maxRetries = 3; // Max number of retries
|
|
48
|
+
const retryDelay = (attempt) => Math.pow(2, attempt) * 1000; // Exponential backoff delay (in milliseconds)
|
|
49
|
+
// Define a helper function to retry the RPC call
|
|
50
|
+
const fetchWithRetry = (fn, retries) => __awaiter(this, void 0, void 0, function* () {
|
|
51
|
+
let attempt = 0;
|
|
52
|
+
while (attempt <= retries) {
|
|
53
|
+
try {
|
|
54
|
+
return yield fn();
|
|
55
|
+
}
|
|
56
|
+
catch (error) {
|
|
57
|
+
if (attempt === retries) {
|
|
58
|
+
throw new Error(`Error fetching token details ${contractAddress} on chain ${chainId}`);
|
|
59
|
+
}
|
|
60
|
+
attempt++;
|
|
61
|
+
console.warn(`Attempt ${attempt} to fetch token details failed. Retrying in ${retryDelay(attempt)}ms...`);
|
|
62
|
+
yield new Promise(resolve => setTimeout(resolve, retryDelay(attempt)));
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
throw new Error('Max retries exceeded');
|
|
66
|
+
});
|
|
67
|
+
// Fetch the decimals, name, and symbol with retries
|
|
50
68
|
try {
|
|
51
69
|
const [decimals, name, symbol] = yield Promise.all([
|
|
52
|
-
contract.decimals(),
|
|
53
|
-
contract.name(),
|
|
54
|
-
contract.symbol(),
|
|
70
|
+
fetchWithRetry(() => contract.decimals(), maxRetries),
|
|
71
|
+
fetchWithRetry(() => contract.name(), maxRetries),
|
|
72
|
+
fetchWithRetry(() => contract.symbol(), maxRetries),
|
|
55
73
|
]);
|
|
56
74
|
const token = {
|
|
57
75
|
contractAddress,
|
|
@@ -15,13 +15,10 @@ export function convertToTokenUnits(amount, chainId, contractAddress) {
|
|
|
15
15
|
const decimals = token.decimals;
|
|
16
16
|
// Calculate the result as a number first
|
|
17
17
|
const result = amount * Math.pow(10, decimals);
|
|
18
|
-
console.log("result", result);
|
|
19
18
|
// Check if the result is an integer
|
|
20
19
|
if (!Number.isInteger(result)) {
|
|
21
|
-
console.log("throwing");
|
|
22
20
|
throw new Error(`Conversion resulted in a non-integer value: ${result}. Please provide an amount that results in a whole number of token units.`);
|
|
23
21
|
}
|
|
24
|
-
console.log("is an integer");
|
|
25
22
|
// If we've reached here, the result is an integer, so we can safely convert to BigInt
|
|
26
23
|
return BigInt(Math.round(result));
|
|
27
24
|
});
|
|
@@ -238,7 +238,6 @@ export declare const TRIGGERS: {
|
|
|
238
238
|
value: string;
|
|
239
239
|
})[];
|
|
240
240
|
}[];
|
|
241
|
-
before: string;
|
|
242
241
|
output: {
|
|
243
242
|
lendingRate: string;
|
|
244
243
|
};
|
|
@@ -297,6 +296,22 @@ export declare const TRIGGERS: {
|
|
|
297
296
|
exchangeRate: string;
|
|
298
297
|
transactionHash: string;
|
|
299
298
|
};
|
|
299
|
+
frontendHelpers: {
|
|
300
|
+
output: {
|
|
301
|
+
inputAmount: {
|
|
302
|
+
erc20Token: {
|
|
303
|
+
contractAddress: string;
|
|
304
|
+
chainId: string;
|
|
305
|
+
};
|
|
306
|
+
};
|
|
307
|
+
amountOut: {
|
|
308
|
+
erc20Token: {
|
|
309
|
+
contractAddress: string;
|
|
310
|
+
chainId: string;
|
|
311
|
+
};
|
|
312
|
+
};
|
|
313
|
+
};
|
|
314
|
+
};
|
|
300
315
|
parameters: Parameter[];
|
|
301
316
|
examples: {
|
|
302
317
|
name: string;
|
|
@@ -480,6 +495,22 @@ export declare const ACTIONS: {
|
|
|
480
495
|
tokenOut: string;
|
|
481
496
|
transactionHash: string;
|
|
482
497
|
};
|
|
498
|
+
frontendHelpers: {
|
|
499
|
+
output: {
|
|
500
|
+
amountIn: {
|
|
501
|
+
erc20Token: {
|
|
502
|
+
contractAddress: string;
|
|
503
|
+
chainId: string;
|
|
504
|
+
};
|
|
505
|
+
};
|
|
506
|
+
amountOut: {
|
|
507
|
+
erc20Token: {
|
|
508
|
+
contractAddress: string;
|
|
509
|
+
chainId: string;
|
|
510
|
+
};
|
|
511
|
+
};
|
|
512
|
+
};
|
|
513
|
+
};
|
|
483
514
|
parameters: Parameter[];
|
|
484
515
|
examples: {
|
|
485
516
|
name: string;
|
|
@@ -672,7 +703,6 @@ export declare const ACTIONS: {
|
|
|
672
703
|
amount: string;
|
|
673
704
|
to: string;
|
|
674
705
|
}[];
|
|
675
|
-
before: string;
|
|
676
706
|
output: {
|
|
677
707
|
transactionHash: string;
|
|
678
708
|
};
|
|
@@ -715,7 +745,6 @@ export declare const ACTIONS: {
|
|
|
715
745
|
})[];
|
|
716
746
|
}[];
|
|
717
747
|
requiredApprovals: never[];
|
|
718
|
-
before: string;
|
|
719
748
|
output: {
|
|
720
749
|
transactionHash: string;
|
|
721
750
|
};
|
|
@@ -751,7 +780,6 @@ export declare const ACTIONS: {
|
|
|
751
780
|
})[];
|
|
752
781
|
}[];
|
|
753
782
|
requiredApprovals: never[];
|
|
754
|
-
before: string;
|
|
755
783
|
output: {
|
|
756
784
|
transactionHash: string;
|
|
757
785
|
};
|
|
@@ -797,7 +825,6 @@ export declare const ACTIONS: {
|
|
|
797
825
|
amount: string;
|
|
798
826
|
to: string;
|
|
799
827
|
}[];
|
|
800
|
-
before: string;
|
|
801
828
|
output: {
|
|
802
829
|
transactionHash: string;
|
|
803
830
|
};
|
|
@@ -866,6 +893,22 @@ export declare const ACTIONS: {
|
|
|
866
893
|
tokenOut: string;
|
|
867
894
|
transactionHash: string;
|
|
868
895
|
};
|
|
896
|
+
frontendHelpers: {
|
|
897
|
+
output: {
|
|
898
|
+
amountIn: {
|
|
899
|
+
erc20Token: {
|
|
900
|
+
contractAddress: string;
|
|
901
|
+
chainId: string;
|
|
902
|
+
};
|
|
903
|
+
};
|
|
904
|
+
amountOut: {
|
|
905
|
+
erc20Token: {
|
|
906
|
+
contractAddress: string;
|
|
907
|
+
chainId: string;
|
|
908
|
+
};
|
|
909
|
+
};
|
|
910
|
+
};
|
|
911
|
+
};
|
|
869
912
|
parameters: Parameter[];
|
|
870
913
|
examples: {
|
|
871
914
|
name: string;
|