@continuumdao/ctm-mpc-defi 0.2.41 → 0.2.42
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/agent/catalog.cjs +12 -1
- package/dist/agent/catalog.cjs.map +1 -1
- package/dist/agent/catalog.js +12 -1
- package/dist/agent/catalog.js.map +1 -1
- package/dist/chains/evm/index.cjs +6 -2
- package/dist/chains/evm/index.cjs.map +1 -1
- package/dist/chains/evm/index.js +7 -3
- package/dist/chains/evm/index.js.map +1 -1
- package/dist/core/index.cjs +14 -0
- package/dist/core/index.cjs.map +1 -1
- package/dist/core/index.d.ts +7 -2
- package/dist/core/index.js +13 -2
- package/dist/core/index.js.map +1 -1
- package/dist/index.cjs +45 -6
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +44 -8
- package/dist/index.js.map +1 -1
- package/dist/protocols/evm/aave-v4/index.cjs +11 -7
- package/dist/protocols/evm/aave-v4/index.cjs.map +1 -1
- package/dist/protocols/evm/aave-v4/index.js +12 -8
- package/dist/protocols/evm/aave-v4/index.js.map +1 -1
- package/dist/protocols/evm/aerodrome/index.cjs +14 -2
- package/dist/protocols/evm/aerodrome/index.cjs.map +1 -1
- package/dist/protocols/evm/aerodrome/index.js +14 -2
- package/dist/protocols/evm/aerodrome/index.js.map +1 -1
- package/dist/protocols/evm/arcus/index.cjs +6 -2
- package/dist/protocols/evm/arcus/index.cjs.map +1 -1
- package/dist/protocols/evm/arcus/index.js +7 -3
- package/dist/protocols/evm/arcus/index.js.map +1 -1
- package/dist/protocols/evm/circle-cctp/index.cjs +7 -3
- package/dist/protocols/evm/circle-cctp/index.cjs.map +1 -1
- package/dist/protocols/evm/circle-cctp/index.js +8 -4
- package/dist/protocols/evm/circle-cctp/index.js.map +1 -1
- package/dist/protocols/evm/compound-v3/index.cjs +9 -3
- package/dist/protocols/evm/compound-v3/index.cjs.map +1 -1
- package/dist/protocols/evm/compound-v3/index.js +10 -4
- package/dist/protocols/evm/compound-v3/index.js.map +1 -1
- package/dist/protocols/evm/continuum-dao/index.cjs +11 -5
- package/dist/protocols/evm/continuum-dao/index.cjs.map +1 -1
- package/dist/protocols/evm/continuum-dao/index.js +12 -6
- package/dist/protocols/evm/continuum-dao/index.js.map +1 -1
- package/dist/protocols/evm/curve-dao/index.cjs +8 -4
- package/dist/protocols/evm/curve-dao/index.cjs.map +1 -1
- package/dist/protocols/evm/curve-dao/index.js +9 -5
- package/dist/protocols/evm/curve-dao/index.js.map +1 -1
- package/dist/protocols/evm/ethena/index.cjs +13 -9
- package/dist/protocols/evm/ethena/index.cjs.map +1 -1
- package/dist/protocols/evm/ethena/index.js +14 -10
- package/dist/protocols/evm/ethena/index.js.map +1 -1
- package/dist/protocols/evm/euler-v2/index.cjs +20 -16
- package/dist/protocols/evm/euler-v2/index.cjs.map +1 -1
- package/dist/protocols/evm/euler-v2/index.js +21 -17
- package/dist/protocols/evm/euler-v2/index.js.map +1 -1
- package/dist/protocols/evm/gmx/index.cjs +12 -8
- package/dist/protocols/evm/gmx/index.cjs.map +1 -1
- package/dist/protocols/evm/gmx/index.js +13 -9
- package/dist/protocols/evm/gmx/index.js.map +1 -1
- package/dist/protocols/evm/hyperliquid/index.cjs +5 -1
- package/dist/protocols/evm/hyperliquid/index.cjs.map +1 -1
- package/dist/protocols/evm/hyperliquid/index.js +6 -2
- package/dist/protocols/evm/hyperliquid/index.js.map +1 -1
- package/dist/protocols/evm/lido/index.cjs +7 -3
- package/dist/protocols/evm/lido/index.cjs.map +1 -1
- package/dist/protocols/evm/lido/index.js +8 -4
- package/dist/protocols/evm/lido/index.js.map +1 -1
- package/dist/protocols/evm/maple/index.cjs +7 -3
- package/dist/protocols/evm/maple/index.cjs.map +1 -1
- package/dist/protocols/evm/maple/index.js +8 -4
- package/dist/protocols/evm/maple/index.js.map +1 -1
- package/dist/protocols/evm/morpho/index.cjs +13 -9
- package/dist/protocols/evm/morpho/index.cjs.map +1 -1
- package/dist/protocols/evm/morpho/index.js +14 -10
- package/dist/protocols/evm/morpho/index.js.map +1 -1
- package/dist/protocols/evm/pendle/index.cjs +9 -3
- package/dist/protocols/evm/pendle/index.cjs.map +1 -1
- package/dist/protocols/evm/pendle/index.js +10 -4
- package/dist/protocols/evm/pendle/index.js.map +1 -1
- package/dist/protocols/evm/sky/index.cjs +17 -13
- package/dist/protocols/evm/sky/index.cjs.map +1 -1
- package/dist/protocols/evm/sky/index.js +18 -14
- package/dist/protocols/evm/sky/index.js.map +1 -1
- package/dist/protocols/evm/uniswap-v4/index.cjs +13 -7
- package/dist/protocols/evm/uniswap-v4/index.cjs.map +1 -1
- package/dist/protocols/evm/uniswap-v4/index.js +14 -8
- package/dist/protocols/evm/uniswap-v4/index.js.map +1 -1
- package/dist/protocols/evm/venice/index.cjs +10 -4
- package/dist/protocols/evm/venice/index.cjs.map +1 -1
- package/dist/protocols/evm/venice/index.js +10 -4
- package/dist/protocols/evm/venice/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createRequire } from 'module';
|
|
2
2
|
import { fileURLToPath } from 'url';
|
|
3
|
-
import { parseAbi, parseUnits, getAddress, formatUnits, defineChain, createPublicClient,
|
|
3
|
+
import { parseAbi, parseUnits, getAddress, formatUnits, defineChain, createPublicClient, encodeFunctionData, http, parseGwei, serializeTransaction, keccak256 } from 'viem';
|
|
4
4
|
import { fetchChainFeeParams, gasLimitFromEstimateAndChainConfig, gweiToDecimalString, proposalTxParamsToFeeSnapshot, alignEip1559FeesWithLatestBase, getClientIdFromKeyGenResult } from '@continuumdao/continuum-node-sdk';
|
|
5
5
|
|
|
6
6
|
// src/core/registry.ts
|
|
@@ -624,6 +624,10 @@ function gmxIsGmxStakeTokenAddress(chainId, tokenAddress) {
|
|
|
624
624
|
return false;
|
|
625
625
|
}
|
|
626
626
|
}
|
|
627
|
+
function defiEvmTransport(rpcUrl, opts) {
|
|
628
|
+
const url = rpcUrl.trim();
|
|
629
|
+
return http(url, opts);
|
|
630
|
+
}
|
|
627
631
|
|
|
628
632
|
// src/core/purpose.ts
|
|
629
633
|
function mergePurposeText(purposeText, purposeSuffix) {
|
|
@@ -715,7 +719,7 @@ async function buildEvmMultisignBatch(args) {
|
|
|
715
719
|
nativeCurrency: { decimals: 18, name: "Ether", symbol: "ETH" },
|
|
716
720
|
rpcUrls: { default: { http: [rpcUrl] } }
|
|
717
721
|
});
|
|
718
|
-
const publicClient = createPublicClient({ chain: ch, transport:
|
|
722
|
+
const publicClient = createPublicClient({ chain: ch, transport: defiEvmTransport(rpcUrl) });
|
|
719
723
|
const feeParams = await fetchChainFeeParams(rpcUrl, chainId);
|
|
720
724
|
const legacy = Boolean(chainDetail?.legacy) || !feeParams.isEip1559;
|
|
721
725
|
const latestBaseFeeWei = !legacy ? (await publicClient.getBlock({ blockTag: "latest" })).baseFeePerGas ?? 0n : 0n;
|
|
@@ -1270,7 +1274,7 @@ async function buildNativeCollateralPrepSteps(args) {
|
|
|
1270
1274
|
nativeCurrency: { decimals: 18, name: "Native", symbol: "N" },
|
|
1271
1275
|
rpcUrls: { default: { http: [args.rpcUrl] } }
|
|
1272
1276
|
});
|
|
1273
|
-
const publicClient = createPublicClient({ chain: ch, transport:
|
|
1277
|
+
const publicClient = createPublicClient({ chain: ch, transport: defiEvmTransport(args.rpcUrl) });
|
|
1274
1278
|
const steps = [];
|
|
1275
1279
|
const dataDeposit = encodeFunctionData({ abi: wethDepositAbi, functionName: "deposit", args: [] });
|
|
1276
1280
|
steps.push({ to: weth, data: dataDeposit, value: amountWei, fallbackGas: GMX_WETH_DEPOSIT_FALLBACK });
|
|
@@ -1528,7 +1532,7 @@ async function gmxLoadGasLimits(chainId, rpcUrl) {
|
|
|
1528
1532
|
nativeCurrency: { decimals: 18, name: "Native", symbol: "N" },
|
|
1529
1533
|
rpcUrls: { default: { http: [rpcUrl] } }
|
|
1530
1534
|
});
|
|
1531
|
-
const publicClient = createPublicClient({ chain: ch, transport:
|
|
1535
|
+
const publicClient = createPublicClient({ chain: ch, transport: defiEvmTransport(rpcUrl) });
|
|
1532
1536
|
const keys = [
|
|
1533
1537
|
["depositToken", depositGasLimitKey()],
|
|
1534
1538
|
["withdrawalMultiToken", withdrawalGasLimitKey()],
|
|
@@ -1578,7 +1582,7 @@ async function gmxEstimateGmExecutionFee(args) {
|
|
|
1578
1582
|
nativeCurrency: { decimals: 18, name: "Native", symbol: "N" },
|
|
1579
1583
|
rpcUrls: { default: { http: [args.rpcUrl] } }
|
|
1580
1584
|
});
|
|
1581
|
-
const publicClient = createPublicClient({ chain: ch, transport:
|
|
1585
|
+
const publicClient = createPublicClient({ chain: ch, transport: defiEvmTransport(args.rpcUrl) });
|
|
1582
1586
|
const gasPrice = await publicClient.getGasPrice();
|
|
1583
1587
|
const oraclePriceCount = 3n;
|
|
1584
1588
|
const estimatedGasLimit = args.operation === "deposit" ? estimateExecuteDepositGasLimit(gasLimits, { swapsCount: 0, callbackGasLimit: 0n }) : estimateExecuteWithdrawalGasLimit(gasLimits, { swapsCount: 0n, callbackGasLimit: 0n });
|
|
@@ -1613,7 +1617,7 @@ async function buildApproveStepsIfNeeded(args) {
|
|
|
1613
1617
|
nativeCurrency: { decimals: 18, name: "Native", symbol: "N" },
|
|
1614
1618
|
rpcUrls: { default: { http: [args.rpcUrl] } }
|
|
1615
1619
|
});
|
|
1616
|
-
const publicClient = createPublicClient({ chain: ch, transport:
|
|
1620
|
+
const publicClient = createPublicClient({ chain: ch, transport: defiEvmTransport(args.rpcUrl) });
|
|
1617
1621
|
const allowance = await publicClient.readContract({
|
|
1618
1622
|
address: args.token,
|
|
1619
1623
|
abi: erc20AllowanceAbi2,
|
|
@@ -1834,7 +1838,7 @@ async function buildEvmMultisignBodyGmxGmWithdrawBatch(args) {
|
|
|
1834
1838
|
nativeCurrency: { decimals: 18, name: "Ether", symbol: "ETH" },
|
|
1835
1839
|
rpcUrls: { default: { http: [args.rpcUrl] } }
|
|
1836
1840
|
});
|
|
1837
|
-
const publicClient = createPublicClient({ chain: ch, transport:
|
|
1841
|
+
const publicClient = createPublicClient({ chain: ch, transport: defiEvmTransport(args.rpcUrl) });
|
|
1838
1842
|
const onChain = await publicClient.readContract({
|
|
1839
1843
|
address: gmToken,
|
|
1840
1844
|
abi: erc20AllowanceAbi2,
|
|
@@ -1973,7 +1977,7 @@ async function buildGmxApproveSteps(args) {
|
|
|
1973
1977
|
nativeCurrency: { decimals: 18, name: "Native", symbol: "N" },
|
|
1974
1978
|
rpcUrls: { default: { http: [args.rpcUrl] } }
|
|
1975
1979
|
});
|
|
1976
|
-
const publicClient = createPublicClient({ chain: ch, transport:
|
|
1980
|
+
const publicClient = createPublicClient({ chain: ch, transport: defiEvmTransport(args.rpcUrl) });
|
|
1977
1981
|
const allowance = await publicClient.readContract({
|
|
1978
1982
|
address: args.gmxToken,
|
|
1979
1983
|
abi: erc20AllowanceAbi3,
|
|
@@ -2080,7 +2084,7 @@ async function gmxFetchGmLiquidityPositions(args) {
|
|
|
2080
2084
|
nativeCurrency: { decimals: 18, name: "Native", symbol: "N" },
|
|
2081
2085
|
rpcUrls: { default: { http: [rpcUrl] } }
|
|
2082
2086
|
});
|
|
2083
|
-
const publicClient = createPublicClient({ chain: ch, transport:
|
|
2087
|
+
const publicClient = createPublicClient({ chain: ch, transport: defiEvmTransport(rpcUrl) });
|
|
2084
2088
|
const rows = [];
|
|
2085
2089
|
await Promise.all(
|
|
2086
2090
|
markets.map(async (market) => {
|