@moonwell-fi/moonwell-sdk 0.7.10 → 0.8.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/CHANGELOG.md +12 -0
- package/_cjs/actions/beam/common.js +504 -0
- package/_cjs/actions/beam/common.js.map +1 -0
- package/_cjs/actions/beam/getBeamQuote.js +9 -0
- package/_cjs/actions/beam/getBeamQuote.js.map +1 -0
- package/_cjs/actions/beam/getBeamTokenLimits.js +56 -0
- package/_cjs/actions/beam/getBeamTokenLimits.js.map +1 -0
- package/_cjs/actions/beam/getBeamTokenRoutes.js +133 -0
- package/_cjs/actions/beam/getBeamTokenRoutes.js.map +1 -0
- package/_cjs/actions/core/getUserBalances.js +1 -2
- package/_cjs/actions/core/getUserBalances.js.map +1 -1
- package/_cjs/actions/core/markets/common.js.map +1 -1
- package/_cjs/actions/core/markets/getMarket.js +1 -2
- package/_cjs/actions/core/markets/getMarket.js.map +1 -1
- package/_cjs/actions/core/markets/getMarketSnapshots.js +1 -2
- package/_cjs/actions/core/markets/getMarketSnapshots.js.map +1 -1
- package/_cjs/actions/core/markets/getMarkets.js +1 -2
- package/_cjs/actions/core/markets/getMarkets.js.map +1 -1
- package/_cjs/actions/core/user-positions/common.js.map +1 -1
- package/_cjs/actions/core/user-positions/getUserPosition.js +1 -2
- package/_cjs/actions/core/user-positions/getUserPosition.js.map +1 -1
- package/_cjs/actions/core/user-positions/getUserPositionSnapshots.js +1 -2
- package/_cjs/actions/core/user-positions/getUserPositionSnapshots.js.map +1 -1
- package/_cjs/actions/core/user-positions/getUserPositions.js +1 -2
- package/_cjs/actions/core/user-positions/getUserPositions.js.map +1 -1
- package/_cjs/actions/core/user-rewards/common.js.map +1 -1
- package/_cjs/actions/core/user-rewards/getUserReward.js +1 -2
- package/_cjs/actions/core/user-rewards/getUserReward.js.map +1 -1
- package/_cjs/actions/core/user-rewards/getUserRewards.js +1 -2
- package/_cjs/actions/core/user-rewards/getUserRewards.js.map +1 -1
- package/_cjs/actions/governance/getCirculatingSupplySnapshots.js +1 -2
- package/_cjs/actions/governance/getCirculatingSupplySnapshots.js.map +1 -1
- package/_cjs/actions/governance/getDelegates.js +1 -2
- package/_cjs/actions/governance/getDelegates.js.map +1 -1
- package/_cjs/actions/governance/getDiscussions.js +1 -2
- package/_cjs/actions/governance/getDiscussions.js.map +1 -1
- package/_cjs/actions/governance/getGovernanceTokenInfo.js +1 -2
- package/_cjs/actions/governance/getGovernanceTokenInfo.js.map +1 -1
- package/_cjs/actions/governance/getStakingInfo.js +1 -2
- package/_cjs/actions/governance/getStakingInfo.js.map +1 -1
- package/_cjs/actions/governance/getStakingSnapshots.js +1 -2
- package/_cjs/actions/governance/getStakingSnapshots.js.map +1 -1
- package/_cjs/actions/governance/getUserStakingInfo.js +1 -2
- package/_cjs/actions/governance/getUserStakingInfo.js.map +1 -1
- package/_cjs/actions/governance/getUserVoteReceipt.js +1 -2
- package/_cjs/actions/governance/getUserVoteReceipt.js.map +1 -1
- package/_cjs/actions/governance/getUserVotingPowers.js +1 -2
- package/_cjs/actions/governance/getUserVotingPowers.js.map +1 -1
- package/_cjs/actions/governance/proposals/common.js +1 -1
- package/_cjs/actions/governance/proposals/common.js.map +1 -1
- package/_cjs/actions/governance/proposals/getProposal.js +1 -2
- package/_cjs/actions/governance/proposals/getProposal.js.map +1 -1
- package/_cjs/actions/governance/proposals/getProposals.js +1 -2
- package/_cjs/actions/governance/proposals/getProposals.js.map +1 -1
- package/_cjs/actions/governance/snapshot/common.js.map +1 -1
- package/_cjs/actions/governance/snapshot/getSnapshotProposal.js +1 -2
- package/_cjs/actions/governance/snapshot/getSnapshotProposal.js.map +1 -1
- package/_cjs/actions/governance/snapshot/getSnapshotProposals.js +1 -2
- package/_cjs/actions/governance/snapshot/getSnapshotProposals.js.map +1 -1
- package/_cjs/actions/morpho/getMorphoUserBalances.js +1 -2
- package/_cjs/actions/morpho/getMorphoUserBalances.js.map +1 -1
- package/_cjs/actions/morpho/markets/common.js +1 -2
- package/_cjs/actions/morpho/markets/common.js.map +1 -1
- package/_cjs/actions/morpho/markets/getMorphoMarket.js +1 -2
- package/_cjs/actions/morpho/markets/getMorphoMarket.js.map +1 -1
- package/_cjs/actions/morpho/markets/getMorphoMarkets.js +1 -2
- package/_cjs/actions/morpho/markets/getMorphoMarkets.js.map +1 -1
- package/_cjs/actions/morpho/user-positions/common.js +2 -3
- package/_cjs/actions/morpho/user-positions/common.js.map +1 -1
- package/_cjs/actions/morpho/user-positions/getMorphoMarketUserPosition.js +1 -2
- package/_cjs/actions/morpho/user-positions/getMorphoMarketUserPosition.js.map +1 -1
- package/_cjs/actions/morpho/user-positions/getMorphoMarketUserPositions.js +1 -2
- package/_cjs/actions/morpho/user-positions/getMorphoMarketUserPositions.js.map +1 -1
- package/_cjs/actions/morpho/user-positions/getMorphoVaultUserPosition.js +1 -2
- package/_cjs/actions/morpho/user-positions/getMorphoVaultUserPosition.js.map +1 -1
- package/_cjs/actions/morpho/user-positions/getMorphoVaultUserPositionSnapshots.js +1 -2
- package/_cjs/actions/morpho/user-positions/getMorphoVaultUserPositionSnapshots.js.map +1 -1
- package/_cjs/actions/morpho/user-positions/getMorphoVaultUserPositions.js +1 -2
- package/_cjs/actions/morpho/user-positions/getMorphoVaultUserPositions.js.map +1 -1
- package/_cjs/actions/morpho/user-rewards/common.js +2 -3
- package/_cjs/actions/morpho/user-rewards/common.js.map +1 -1
- package/_cjs/actions/morpho/user-rewards/getMorphoUserRewards.js +1 -2
- package/_cjs/actions/morpho/user-rewards/getMorphoUserRewards.js.map +1 -1
- package/_cjs/actions/morpho/user-rewards/getMorphoUserStakingRewards.js +1 -2
- package/_cjs/actions/morpho/user-rewards/getMorphoUserStakingRewards.js.map +1 -1
- package/_cjs/actions/morpho/utils/accrueInterests.js.map +1 -1
- package/_cjs/actions/morpho/utils/graphql.js +2 -3
- package/_cjs/actions/morpho/utils/graphql.js.map +1 -1
- package/_cjs/actions/morpho/vaults/common.js +2 -3
- package/_cjs/actions/morpho/vaults/common.js.map +1 -1
- package/_cjs/actions/morpho/vaults/getMorphoVault.js +1 -2
- package/_cjs/actions/morpho/vaults/getMorphoVault.js.map +1 -1
- package/_cjs/actions/morpho/vaults/getMorphoVaultSnapshots.js +1 -2
- package/_cjs/actions/morpho/vaults/getMorphoVaultSnapshots.js.map +1 -1
- package/_cjs/actions/morpho/vaults/getMorphoVaultStakingSnapshots.js +1 -2
- package/_cjs/actions/morpho/vaults/getMorphoVaultStakingSnapshots.js.map +1 -1
- package/_cjs/actions/morpho/vaults/getMorphoVaults.js +1 -2
- package/_cjs/actions/morpho/vaults/getMorphoVaults.js.map +1 -1
- package/_cjs/client/createActions.js +6 -0
- package/_cjs/client/createActions.js.map +1 -1
- package/_cjs/common/amount.js.map +1 -1
- package/_cjs/common/error.js +2 -2
- package/_cjs/common/error.js.map +1 -1
- package/_cjs/common/fetch-headers.js +2 -1
- package/_cjs/common/fetch-headers.js.map +1 -1
- package/_cjs/common/index.js +2 -2
- package/_cjs/common/index.js.map +1 -1
- package/_cjs/environments/definitions/arbitrum/environment.js +6 -1
- package/_cjs/environments/definitions/arbitrum/environment.js.map +1 -1
- package/_cjs/environments/definitions/avalanche/environment.js +6 -1
- package/_cjs/environments/definitions/avalanche/environment.js.map +1 -1
- package/_cjs/environments/definitions/base/environment.js +6 -1
- package/_cjs/environments/definitions/base/environment.js.map +1 -1
- package/_cjs/environments/definitions/ethereum/environment.js +6 -1
- package/_cjs/environments/definitions/ethereum/environment.js.map +1 -1
- package/_cjs/environments/definitions/moonbeam/environment.js +6 -1
- package/_cjs/environments/definitions/moonbeam/environment.js.map +1 -1
- package/_cjs/environments/definitions/moonriver/environment.js +6 -1
- package/_cjs/environments/definitions/moonriver/environment.js.map +1 -1
- package/_cjs/environments/definitions/optimism/environment.js +6 -1
- package/_cjs/environments/definitions/optimism/environment.js.map +1 -1
- package/_cjs/environments/definitions/polygon/environment.js +6 -1
- package/_cjs/environments/definitions/polygon/environment.js.map +1 -1
- package/_cjs/environments/index.js.map +1 -1
- package/_cjs/environments/types/config.js +1 -1
- package/_cjs/environments/types/config.js.map +1 -1
- package/_cjs/environments/utils/index.js.map +1 -1
- package/_cjs/errors/version.js +1 -1
- package/_cjs/errors/version.js.map +1 -1
- package/_cjs/logger/console.js +2 -3
- package/_cjs/logger/console.js.map +1 -1
- package/_cjs/types/beam.js +3 -0
- package/_cjs/types/beam.js.map +1 -0
- package/_cjs/types/proposal.js +2 -2
- package/_cjs/types/proposal.js.map +1 -1
- package/_esm/actions/beam/common.js +576 -0
- package/_esm/actions/beam/common.js.map +1 -0
- package/_esm/actions/beam/getBeamQuote.js +9 -0
- package/_esm/actions/beam/getBeamQuote.js.map +1 -0
- package/_esm/actions/beam/getBeamTokenLimits.js +53 -0
- package/_esm/actions/beam/getBeamTokenLimits.js.map +1 -0
- package/_esm/actions/beam/getBeamTokenRoutes.js +130 -0
- package/_esm/actions/beam/getBeamTokenRoutes.js.map +1 -0
- package/_esm/actions/core/getUserBalances.js.map +1 -1
- package/_esm/actions/core/markets/common.js.map +1 -1
- package/_esm/actions/core/markets/getMarket.js.map +1 -1
- package/_esm/actions/core/markets/getMarketSnapshots.js.map +1 -1
- package/_esm/actions/core/markets/getMarkets.js.map +1 -1
- package/_esm/actions/core/user-positions/common.js.map +1 -1
- package/_esm/actions/core/user-positions/getUserPosition.js.map +1 -1
- package/_esm/actions/core/user-positions/getUserPositionSnapshots.js.map +1 -1
- package/_esm/actions/core/user-rewards/common.js.map +1 -1
- package/_esm/actions/core/user-rewards/getUserReward.js.map +1 -1
- package/_esm/actions/governance/getCirculatingSupplySnapshots.js.map +1 -1
- package/_esm/actions/governance/getDelegates.js.map +1 -1
- package/_esm/actions/governance/getDiscussions.js.map +1 -1
- package/_esm/actions/governance/getGovernanceTokenInfo.js.map +1 -1
- package/_esm/actions/governance/getStakingSnapshots.js.map +1 -1
- package/_esm/actions/governance/getUserVoteReceipt.js.map +1 -1
- package/_esm/actions/governance/proposals/common.js +3 -3
- package/_esm/actions/governance/proposals/common.js.map +1 -1
- package/_esm/actions/governance/proposals/getProposal.js.map +1 -1
- package/_esm/actions/governance/snapshot/common.js.map +1 -1
- package/_esm/actions/governance/snapshot/getSnapshotProposal.js.map +1 -1
- package/_esm/actions/morpho/getMorphoUserBalances.js.map +1 -1
- package/_esm/actions/morpho/markets/common.js +4 -4
- package/_esm/actions/morpho/markets/common.js.map +1 -1
- package/_esm/actions/morpho/markets/getMorphoMarket.js.map +1 -1
- package/_esm/actions/morpho/user-positions/getMorphoMarketUserPosition.js.map +1 -1
- package/_esm/actions/morpho/user-positions/getMorphoVaultUserPosition.js.map +1 -1
- package/_esm/actions/morpho/user-positions/getMorphoVaultUserPositionSnapshots.js.map +1 -1
- package/_esm/actions/morpho/user-rewards/common.js.map +1 -1
- package/_esm/actions/morpho/utils/accrueInterests.js.map +1 -1
- package/_esm/actions/morpho/utils/graphql.js.map +1 -1
- package/_esm/actions/morpho/vaults/common.js.map +1 -1
- package/_esm/actions/morpho/vaults/getMorphoVault.js.map +1 -1
- package/_esm/actions/morpho/vaults/getMorphoVaultSnapshots.js.map +1 -1
- package/_esm/actions/morpho/vaults/getMorphoVaultStakingSnapshots.js.map +1 -1
- package/_esm/client/createActions.js +6 -0
- package/_esm/client/createActions.js.map +1 -1
- package/_esm/common/amount.js.map +1 -1
- package/_esm/common/fetch-headers.js +2 -1
- package/_esm/common/fetch-headers.js.map +1 -1
- package/_esm/common/index.js.map +1 -1
- package/_esm/environments/definitions/arbitrum/environment.js +6 -1
- package/_esm/environments/definitions/arbitrum/environment.js.map +1 -1
- package/_esm/environments/definitions/avalanche/environment.js +6 -1
- package/_esm/environments/definitions/avalanche/environment.js.map +1 -1
- package/_esm/environments/definitions/base/environment.js +6 -1
- package/_esm/environments/definitions/base/environment.js.map +1 -1
- package/_esm/environments/definitions/ethereum/environment.js +6 -1
- package/_esm/environments/definitions/ethereum/environment.js.map +1 -1
- package/_esm/environments/definitions/moonbeam/environment.js +6 -1
- package/_esm/environments/definitions/moonbeam/environment.js.map +1 -1
- package/_esm/environments/definitions/moonriver/environment.js +6 -1
- package/_esm/environments/definitions/moonriver/environment.js.map +1 -1
- package/_esm/environments/definitions/optimism/environment.js +6 -1
- package/_esm/environments/definitions/optimism/environment.js.map +1 -1
- package/_esm/environments/definitions/polygon/environment.js +6 -1
- package/_esm/environments/definitions/polygon/environment.js.map +1 -1
- package/_esm/environments/index.js.map +1 -1
- package/_esm/environments/types/config.js +1 -1
- package/_esm/environments/types/config.js.map +1 -1
- package/_esm/environments/utils/index.js.map +1 -1
- package/_esm/errors/version.js +1 -1
- package/_esm/errors/version.js.map +1 -1
- package/_esm/logger/console.js.map +1 -1
- package/_esm/types/beam.js +2 -0
- package/_esm/types/beam.js.map +1 -0
- package/_types/actions/beam/common.d.ts +5 -0
- package/_types/actions/beam/common.d.ts.map +1 -0
- package/_types/actions/beam/getBeamQuote.d.ts +88 -0
- package/_types/actions/beam/getBeamQuote.d.ts.map +1 -0
- package/_types/actions/beam/getBeamTokenLimits.d.ts +13 -0
- package/_types/actions/beam/getBeamTokenLimits.d.ts.map +1 -0
- package/_types/actions/beam/getBeamTokenRoutes.d.ts +10 -0
- package/_types/actions/beam/getBeamTokenRoutes.d.ts.map +1 -0
- package/_types/actions/governance/snapshot/common.d.ts.map +1 -1
- package/_types/client/createActions.d.ts +7 -10
- package/_types/client/createActions.d.ts.map +1 -1
- package/_types/client/createMoonwellClient.d.ts +4048 -4048
- package/_types/client/createMoonwellClient.d.ts.map +1 -1
- package/_types/common/fetch-headers.d.ts.map +1 -1
- package/_types/environments/definitions/arbitrum/environment.d.ts.map +1 -1
- package/_types/environments/definitions/arbitrum/tokens.d.ts +10 -10
- package/_types/environments/definitions/avalanche/environment.d.ts.map +1 -1
- package/_types/environments/definitions/avalanche/tokens.d.ts +10 -10
- package/_types/environments/definitions/base/contracts.d.ts +15 -15
- package/_types/environments/definitions/base/core-markets.d.ts +76 -76
- package/_types/environments/definitions/base/environment.d.ts +108 -107
- package/_types/environments/definitions/base/environment.d.ts.map +1 -1
- package/_types/environments/definitions/base/morpho-markets.d.ts +57 -57
- package/_types/environments/definitions/base/morpho-vaults.d.ts +12 -12
- package/_types/environments/definitions/base/tokens.d.ts +275 -275
- package/_types/environments/definitions/ethereum/environment.d.ts.map +1 -1
- package/_types/environments/definitions/ethereum/tokens.d.ts +10 -10
- package/_types/environments/definitions/governance.d.ts.map +1 -1
- package/_types/environments/definitions/moonbeam/contracts.d.ts +10 -10
- package/_types/environments/definitions/moonbeam/core-markets.d.ts +53 -53
- package/_types/environments/definitions/moonbeam/environment.d.ts +230 -230
- package/_types/environments/definitions/moonbeam/environment.d.ts.map +1 -1
- package/_types/environments/definitions/moonbeam/tokens.d.ts +167 -167
- package/_types/environments/definitions/moonriver/contracts.d.ts +8 -8
- package/_types/environments/definitions/moonriver/core-markets.d.ts +25 -25
- package/_types/environments/definitions/moonriver/environment.d.ts +140 -140
- package/_types/environments/definitions/moonriver/environment.d.ts.map +1 -1
- package/_types/environments/definitions/moonriver/tokens.d.ts +101 -101
- package/_types/environments/definitions/optimism/contracts.d.ts +15 -15
- package/_types/environments/definitions/optimism/core-markets.d.ts +39 -39
- package/_types/environments/definitions/optimism/environment.d.ts +237 -237
- package/_types/environments/definitions/optimism/environment.d.ts.map +1 -1
- package/_types/environments/definitions/optimism/morpho-markets.d.ts +8 -8
- package/_types/environments/definitions/optimism/morpho-vaults.d.ts +4 -4
- package/_types/environments/definitions/optimism/tokens.d.ts +179 -179
- package/_types/environments/definitions/polygon/environment.d.ts.map +1 -1
- package/_types/environments/definitions/polygon/tokens.d.ts +10 -10
- package/_types/environments/index.d.ts +1250 -1242
- package/_types/environments/index.d.ts.map +1 -1
- package/_types/environments/types/config.d.ts +6 -6
- package/_types/environments/types/config.d.ts.map +1 -1
- package/_types/errors/version.d.ts +1 -1
- package/_types/errors/version.d.ts.map +1 -1
- package/_types/types/beam.d.ts +24 -0
- package/_types/types/beam.d.ts.map +1 -0
- package/actions/beam/common.ts +776 -0
- package/actions/beam/getBeamQuote.ts +107 -0
- package/actions/beam/getBeamTokenLimits.ts +89 -0
- package/actions/beam/getBeamTokenRoutes.ts +245 -0
- package/client/createActions.ts +29 -0
- package/common/fetch-headers.ts +4 -1
- package/environments/definitions/arbitrum/environment.ts +6 -1
- package/environments/definitions/avalanche/environment.ts +6 -1
- package/environments/definitions/base/environment.ts +6 -1
- package/environments/definitions/ethereum/environment.ts +6 -1
- package/environments/definitions/moonbeam/environment.ts +6 -1
- package/environments/definitions/moonriver/environment.ts +6 -1
- package/environments/definitions/optimism/environment.ts +6 -1
- package/environments/definitions/polygon/environment.ts +6 -1
- package/errors/version.ts +1 -1
- package/package.json +5 -2
- package/types/beam.ts +20 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# @moonwell-fi/moonwell-sdk
|
|
2
2
|
|
|
3
|
+
## 0.8.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#127](https://github.com/moonwell-fi/moonwell-sdk/pull/127) [`e1af835cf9e8984d58e2ebc22a4246004e21cda0`](https://github.com/moonwell-fi/moonwell-sdk/commit/e1af835cf9e8984d58e2ebc22a4246004e21cda0) Thanks [@x0s0l](https://github.com/x0s0l)! - Moonwell Beam - Deposit / Supply from multiple chains using Biconomy MEE and Across
|
|
8
|
+
|
|
9
|
+
## 0.7.11
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- [#125](https://github.com/moonwell-fi/moonwell-sdk/pull/125) [`90bd92a22dc78f396617971d3b0c4de363382391`](https://github.com/moonwell-fi/moonwell-sdk/commit/90bd92a22dc78f396617971d3b0c4de363382391) Thanks [@hishboy](https://github.com/hishboy)! - Include User-Agent for only non-browser environment
|
|
14
|
+
|
|
3
15
|
## 0.7.10
|
|
4
16
|
|
|
5
17
|
### Patch Changes
|
|
@@ -0,0 +1,504 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.getQuote = getQuote;
|
|
7
|
+
const app_sdk_1 = require("@across-protocol/app-sdk");
|
|
8
|
+
const abstractjs_1 = require("@biconomy/abstractjs");
|
|
9
|
+
const viem_1 = require("viem");
|
|
10
|
+
const index_js_1 = require("../../common/index.js");
|
|
11
|
+
const marketTokenAbi_js_1 = __importDefault(require("../../environments/abis/marketTokenAbi.js"));
|
|
12
|
+
const morphoBlueAbi_js_1 = __importDefault(require("../../environments/abis/morphoBlueAbi.js"));
|
|
13
|
+
const morphoVaultAbi_js_1 = __importDefault(require("../../environments/abis/morphoVaultAbi.js"));
|
|
14
|
+
const index_js_2 = require("../../environments/index.js");
|
|
15
|
+
const ACROSS_ABI = (0, viem_1.parseAbi)([
|
|
16
|
+
"function deposit(bytes32 depositor, bytes32 recipient, bytes32 inputToken, bytes32 outputToken, uint256 inputAmount, uint256 outputAmount, uint256 destinationChainId, bytes32 exclusiveRelayer, uint32 quoteTimestamp, uint32 fillDeadline, uint32 exclusivityParameter, bytes message)",
|
|
17
|
+
"function depositV3(address depositor,address recipient,address inputToken,address outputToken,uint256 inputAmount,uint256 outputAmount,uint256 destinationChainId,address exclusiveRelayer,uint32 quoteTimestamp,uint32 fillDeadline,uint32 exclusivityParameter,bytes message)",
|
|
18
|
+
]);
|
|
19
|
+
const WRAP_ABI = (0, viem_1.parseAbi)(["function deposit()"]);
|
|
20
|
+
const MEE_CLIENT_API_KEY = "mee_3ZkX3T823ZDfwsNiFsqj5oZS";
|
|
21
|
+
const ACROSS_INTEGRATOR_ID = "0x008e";
|
|
22
|
+
const findMarketToken = (environments, chainId, underlyingTokenAddress) => {
|
|
23
|
+
const originEnvironment = environments.find((env) => chainId === env.chainId);
|
|
24
|
+
if (originEnvironment) {
|
|
25
|
+
const underlyingTokenConfig = Object.keys(originEnvironment.config.tokens)
|
|
26
|
+
.map((token) => {
|
|
27
|
+
const marketToken = originEnvironment.config.tokens[token];
|
|
28
|
+
return {
|
|
29
|
+
...marketToken,
|
|
30
|
+
key: token,
|
|
31
|
+
};
|
|
32
|
+
})
|
|
33
|
+
.find((token) => token.address === underlyingTokenAddress);
|
|
34
|
+
if (underlyingTokenConfig) {
|
|
35
|
+
const originMarket = Object.values(originEnvironment.config.markets).find((market) => market.underlyingToken === underlyingTokenConfig.key);
|
|
36
|
+
if (originMarket) {
|
|
37
|
+
return {
|
|
38
|
+
underlyingToken: originEnvironment.config.tokens[originMarket.underlyingToken],
|
|
39
|
+
marketToken: originEnvironment.config.tokens[originMarket.marketToken],
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
return undefined;
|
|
45
|
+
};
|
|
46
|
+
const findIsolatedMarketToken = (environments, chainId, underlyingTokenAddress) => {
|
|
47
|
+
const originEnvironment = environments.find((env) => chainId === env.chainId);
|
|
48
|
+
if (originEnvironment) {
|
|
49
|
+
const underlyingTokenConfig = Object.keys(originEnvironment.config.tokens)
|
|
50
|
+
.map((token) => {
|
|
51
|
+
const marketToken = originEnvironment.config.tokens[token];
|
|
52
|
+
return {
|
|
53
|
+
...marketToken,
|
|
54
|
+
key: token,
|
|
55
|
+
};
|
|
56
|
+
})
|
|
57
|
+
.find((token) => token.address === underlyingTokenAddress);
|
|
58
|
+
if (underlyingTokenConfig) {
|
|
59
|
+
const originMarket = Object.values(originEnvironment.config.morphoMarkets).find((market) => market.collateralToken === underlyingTokenConfig.key);
|
|
60
|
+
if (originMarket) {
|
|
61
|
+
return {
|
|
62
|
+
underlyingToken: originEnvironment.config.tokens[originMarket.collateralToken],
|
|
63
|
+
marketToken: originEnvironment.config.tokens[originMarket.loanToken],
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
return undefined;
|
|
69
|
+
};
|
|
70
|
+
const findVaultToken = (environments, chainId, underlyingTokenAddress) => {
|
|
71
|
+
const originEnvironment = environments.find((env) => chainId === env.chainId);
|
|
72
|
+
if (originEnvironment) {
|
|
73
|
+
const underlyingTokenConfig = Object.keys(originEnvironment.config.tokens)
|
|
74
|
+
.map((token) => {
|
|
75
|
+
const marketToken = originEnvironment.config.tokens[token];
|
|
76
|
+
return {
|
|
77
|
+
...marketToken,
|
|
78
|
+
key: token,
|
|
79
|
+
};
|
|
80
|
+
})
|
|
81
|
+
.find((token) => token.address === underlyingTokenAddress);
|
|
82
|
+
if (underlyingTokenConfig) {
|
|
83
|
+
const originMarket = Object.values(originEnvironment.config.vaults).find((market) => market.underlyingToken === underlyingTokenConfig.key);
|
|
84
|
+
if (originMarket) {
|
|
85
|
+
return {
|
|
86
|
+
underlyingToken: originEnvironment.config.tokens[originMarket.underlyingToken],
|
|
87
|
+
marketToken: originEnvironment.config.tokens[originMarket.vaultToken],
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
return undefined;
|
|
93
|
+
};
|
|
94
|
+
async function getQuote(client, args) {
|
|
95
|
+
const envs = (0, index_js_1.getEnvironmentsFromArgs)(client, undefined, false).filter((env) => env.chainId !== index_js_2.moonbeam.id && env.chainId !== index_js_2.moonriver.id);
|
|
96
|
+
const chains = Object.values(envs).map((env) => env.chain);
|
|
97
|
+
const transports = chains.map((chain) => (0, viem_1.http)(chain.rpcUrls.default.http[0]));
|
|
98
|
+
const smartAccount = await (0, abstractjs_1.toMultichainNexusAccount)({
|
|
99
|
+
signer: args.wallet,
|
|
100
|
+
chains,
|
|
101
|
+
transports,
|
|
102
|
+
});
|
|
103
|
+
const meeClient = await (0, abstractjs_1.createMeeClient)({
|
|
104
|
+
account: smartAccount,
|
|
105
|
+
apiKey: MEE_CLIENT_API_KEY,
|
|
106
|
+
});
|
|
107
|
+
const accrossClient = (0, app_sdk_1.createAcrossClient)({
|
|
108
|
+
integratorId: ACROSS_INTEGRATOR_ID,
|
|
109
|
+
chains,
|
|
110
|
+
useTestnet: false,
|
|
111
|
+
});
|
|
112
|
+
if (args.type === "supply" ||
|
|
113
|
+
args.type === "morpho-supply" ||
|
|
114
|
+
args.type === "vault-deposit") {
|
|
115
|
+
const tokenConfig = args.type === "supply"
|
|
116
|
+
? findMarketToken(envs, args.destination.chainId, args.destination.address)
|
|
117
|
+
: args.type === "morpho-supply"
|
|
118
|
+
? findIsolatedMarketToken(envs, args.destination.chainId, args.destination.address)
|
|
119
|
+
: findVaultToken(envs, args.destination.chainId, args.destination.address);
|
|
120
|
+
if (tokenConfig) {
|
|
121
|
+
const quotes = [];
|
|
122
|
+
const instructions = [];
|
|
123
|
+
const approvals = [];
|
|
124
|
+
const transfers = [];
|
|
125
|
+
let totalOutput = 0n;
|
|
126
|
+
const nativeAmounts = [];
|
|
127
|
+
const cleanUps = [];
|
|
128
|
+
for (const source of args.sources) {
|
|
129
|
+
const sourceChain = chains.find((r) => r.id === source.chainId);
|
|
130
|
+
const publicClient = (0, viem_1.createPublicClient)({
|
|
131
|
+
chain: sourceChain,
|
|
132
|
+
transport: (0, viem_1.http)(sourceChain.rpcUrls.default.http[0]),
|
|
133
|
+
});
|
|
134
|
+
const nativeBalance = await publicClient.getBalance({
|
|
135
|
+
address: args.wallet.account?.address,
|
|
136
|
+
});
|
|
137
|
+
nativeAmounts.push({
|
|
138
|
+
chainId: source.chainId,
|
|
139
|
+
amount: nativeBalance,
|
|
140
|
+
});
|
|
141
|
+
if (source.address === viem_1.zeroAddress) {
|
|
142
|
+
const nativeBalanceSmartAccount = await publicClient.getBalance({
|
|
143
|
+
address: smartAccount.addressOn(source.chainId),
|
|
144
|
+
});
|
|
145
|
+
if (nativeBalanceSmartAccount < source.amount) {
|
|
146
|
+
transfers.push({
|
|
147
|
+
amount: source.amount - nativeBalanceSmartAccount,
|
|
148
|
+
chainId: source.chainId,
|
|
149
|
+
to: smartAccount.addressOn(source.chainId),
|
|
150
|
+
});
|
|
151
|
+
}
|
|
152
|
+
cleanUps.push({
|
|
153
|
+
tokenAddress: source.address,
|
|
154
|
+
chainId: source.chainId,
|
|
155
|
+
recipientAddress: args.wallet.account.address,
|
|
156
|
+
});
|
|
157
|
+
}
|
|
158
|
+
else {
|
|
159
|
+
const erc20Abi = (0, viem_1.parseAbi)([
|
|
160
|
+
"function allowance(address owner, address spender) view returns (uint256)",
|
|
161
|
+
]);
|
|
162
|
+
const erc20Contract = (0, viem_1.getContract)({
|
|
163
|
+
address: source.routeTokenAddress,
|
|
164
|
+
abi: erc20Abi,
|
|
165
|
+
client: publicClient,
|
|
166
|
+
});
|
|
167
|
+
const allowance = await erc20Contract.read.allowance([
|
|
168
|
+
args.wallet.account?.address,
|
|
169
|
+
smartAccount.addressOn(source.chainId),
|
|
170
|
+
]);
|
|
171
|
+
if (allowance < source.amount) {
|
|
172
|
+
approvals.push({
|
|
173
|
+
spender: smartAccount.addressOn(source.chainId),
|
|
174
|
+
tokenAddress: source.routeTokenAddress,
|
|
175
|
+
chainId: source.chainId,
|
|
176
|
+
amount: source.amount,
|
|
177
|
+
});
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
let transferOrWrapInstruction = [];
|
|
181
|
+
if (source.address === viem_1.zeroAddress) {
|
|
182
|
+
const wrapData = (0, viem_1.encodeFunctionData)({
|
|
183
|
+
abi: WRAP_ABI,
|
|
184
|
+
functionName: "deposit",
|
|
185
|
+
args: [],
|
|
186
|
+
});
|
|
187
|
+
transferOrWrapInstruction = await smartAccount.buildComposable({
|
|
188
|
+
type: "rawCalldata",
|
|
189
|
+
data: {
|
|
190
|
+
calldata: wrapData,
|
|
191
|
+
to: source.routeTokenAddress,
|
|
192
|
+
chainId: source.chainId,
|
|
193
|
+
value: source.amount,
|
|
194
|
+
},
|
|
195
|
+
});
|
|
196
|
+
}
|
|
197
|
+
else {
|
|
198
|
+
transferOrWrapInstruction = await smartAccount.buildComposable({
|
|
199
|
+
type: "transferFrom",
|
|
200
|
+
data: {
|
|
201
|
+
sender: args.wallet.account?.address,
|
|
202
|
+
recipient: smartAccount.addressOn(source.chainId),
|
|
203
|
+
tokenAddress: source.routeTokenAddress,
|
|
204
|
+
amount: source.amount,
|
|
205
|
+
chainId: source.chainId,
|
|
206
|
+
},
|
|
207
|
+
});
|
|
208
|
+
}
|
|
209
|
+
if (source.chainId !== args.destination.chainId) {
|
|
210
|
+
const acrossQuote = await accrossClient.getQuote({
|
|
211
|
+
route: {
|
|
212
|
+
originChainId: source.chainId,
|
|
213
|
+
inputToken: source.routeTokenAddress,
|
|
214
|
+
destinationChainId: args.destination.chainId,
|
|
215
|
+
outputToken: args.destination.routeTokenAddress,
|
|
216
|
+
},
|
|
217
|
+
inputAmount: source.amount.toString(),
|
|
218
|
+
recipient: smartAccount.addressOn(args.destination.chainId),
|
|
219
|
+
});
|
|
220
|
+
const acrossChainInfo = await accrossClient.getChainInfo(source.chainId);
|
|
221
|
+
const approveAcrossSpendInstructions = await smartAccount.buildComposable({
|
|
222
|
+
type: "approve",
|
|
223
|
+
data: {
|
|
224
|
+
tokenAddress: source.routeTokenAddress,
|
|
225
|
+
amount: source.amount,
|
|
226
|
+
chainId: source.chainId,
|
|
227
|
+
spender: acrossChainInfo.spokePool,
|
|
228
|
+
},
|
|
229
|
+
});
|
|
230
|
+
const bridgeData = (0, viem_1.encodeFunctionData)({
|
|
231
|
+
abi: ACROSS_ABI,
|
|
232
|
+
functionName: "depositV3",
|
|
233
|
+
args: [
|
|
234
|
+
smartAccount.addressOn(source.chainId),
|
|
235
|
+
smartAccount.addressOn(args.destination.chainId),
|
|
236
|
+
acrossQuote.deposit.inputToken,
|
|
237
|
+
acrossQuote.deposit.outputToken,
|
|
238
|
+
acrossQuote.deposit.inputAmount,
|
|
239
|
+
acrossQuote.deposit.outputAmount,
|
|
240
|
+
acrossQuote.deposit.destinationChainId,
|
|
241
|
+
acrossQuote.deposit.exclusiveRelayer,
|
|
242
|
+
acrossQuote.deposit.quoteTimestamp,
|
|
243
|
+
acrossQuote.deposit.fillDeadline,
|
|
244
|
+
acrossQuote.deposit.exclusivityDeadline,
|
|
245
|
+
acrossQuote.deposit.message,
|
|
246
|
+
],
|
|
247
|
+
});
|
|
248
|
+
totalOutput += acrossQuote.deposit.outputAmount;
|
|
249
|
+
const bridgeInstructions = await smartAccount.buildComposable({
|
|
250
|
+
type: "rawCalldata",
|
|
251
|
+
data: {
|
|
252
|
+
calldata: bridgeData,
|
|
253
|
+
to: acrossChainInfo.spokePool,
|
|
254
|
+
chainId: source.chainId,
|
|
255
|
+
},
|
|
256
|
+
});
|
|
257
|
+
quotes.push(acrossQuote);
|
|
258
|
+
instructions.push(await smartAccount.buildComposable({
|
|
259
|
+
type: "batch",
|
|
260
|
+
data: {
|
|
261
|
+
instructions: [
|
|
262
|
+
transferOrWrapInstruction,
|
|
263
|
+
approveAcrossSpendInstructions,
|
|
264
|
+
bridgeInstructions,
|
|
265
|
+
],
|
|
266
|
+
},
|
|
267
|
+
}));
|
|
268
|
+
}
|
|
269
|
+
else {
|
|
270
|
+
totalOutput += source.amount;
|
|
271
|
+
instructions.push(transferOrWrapInstruction);
|
|
272
|
+
}
|
|
273
|
+
}
|
|
274
|
+
const approveSupplyInstructions = await smartAccount.buildComposable({
|
|
275
|
+
type: "approve",
|
|
276
|
+
data: {
|
|
277
|
+
tokenAddress: args.destination.routeTokenAddress,
|
|
278
|
+
amount: (0, abstractjs_1.runtimeERC20BalanceOf)({
|
|
279
|
+
tokenAddress: args.destination.routeTokenAddress,
|
|
280
|
+
targetAddress: smartAccount.addressOn(args.destination.chainId, true),
|
|
281
|
+
constraints: [(0, abstractjs_1.greaterThanOrEqualTo)(totalOutput)],
|
|
282
|
+
}),
|
|
283
|
+
chainId: args.destination.chainId,
|
|
284
|
+
spender: args.type === "morpho-supply"
|
|
285
|
+
? args.destination.morphoBlue
|
|
286
|
+
: tokenConfig.marketToken.address,
|
|
287
|
+
},
|
|
288
|
+
});
|
|
289
|
+
if (args.type === "supply") {
|
|
290
|
+
const supplyInstructions = await smartAccount.buildComposable({
|
|
291
|
+
type: "default",
|
|
292
|
+
data: {
|
|
293
|
+
to: tokenConfig.marketToken.address,
|
|
294
|
+
abi: marketTokenAbi_js_1.default,
|
|
295
|
+
functionName: "mint",
|
|
296
|
+
args: [
|
|
297
|
+
(0, abstractjs_1.runtimeEncodeAbiParameters)([{ name: "amount", type: "uint256" }], [
|
|
298
|
+
(0, abstractjs_1.runtimeERC20BalanceOf)({
|
|
299
|
+
targetAddress: smartAccount.addressOn(args.destination.chainId, true),
|
|
300
|
+
tokenAddress: args.destination
|
|
301
|
+
.routeTokenAddress,
|
|
302
|
+
constraints: [(0, abstractjs_1.greaterThanOrEqualTo)(totalOutput)],
|
|
303
|
+
}),
|
|
304
|
+
]),
|
|
305
|
+
],
|
|
306
|
+
chainId: args.destination.chainId,
|
|
307
|
+
},
|
|
308
|
+
});
|
|
309
|
+
const transferBack = await smartAccount.buildComposable({
|
|
310
|
+
type: "transfer",
|
|
311
|
+
data: {
|
|
312
|
+
amount: (0, abstractjs_1.runtimeERC20BalanceOf)({
|
|
313
|
+
tokenAddress: tokenConfig.marketToken.address,
|
|
314
|
+
targetAddress: smartAccount.addressOn(args.destination.chainId, true),
|
|
315
|
+
constraints: [(0, abstractjs_1.greaterThanOrEqualTo)(1n)],
|
|
316
|
+
}),
|
|
317
|
+
chainId: args.destination.chainId,
|
|
318
|
+
recipient: args.wallet.account.address,
|
|
319
|
+
tokenAddress: tokenConfig.marketToken.address,
|
|
320
|
+
},
|
|
321
|
+
});
|
|
322
|
+
const batchedInstructions = await smartAccount.buildComposable({
|
|
323
|
+
type: "batch",
|
|
324
|
+
data: {
|
|
325
|
+
instructions: [
|
|
326
|
+
approveSupplyInstructions,
|
|
327
|
+
supplyInstructions,
|
|
328
|
+
transferBack,
|
|
329
|
+
],
|
|
330
|
+
},
|
|
331
|
+
});
|
|
332
|
+
instructions.push(batchedInstructions);
|
|
333
|
+
}
|
|
334
|
+
else if (args.type === "morpho-supply") {
|
|
335
|
+
const supplyCollateralData = (0, viem_1.encodeFunctionData)({
|
|
336
|
+
abi: morphoBlueAbi_js_1.default,
|
|
337
|
+
functionName: "supplyCollateral",
|
|
338
|
+
args: [
|
|
339
|
+
{
|
|
340
|
+
loanToken: args.destination.marketParams?.loanToken,
|
|
341
|
+
collateralToken: args.destination.marketParams?.collateralToken,
|
|
342
|
+
oracle: args.destination.marketParams?.oracle,
|
|
343
|
+
irm: args.destination.marketParams?.irm,
|
|
344
|
+
lltv: args.destination.marketParams?.lltv,
|
|
345
|
+
},
|
|
346
|
+
totalOutput,
|
|
347
|
+
args.wallet.account.address,
|
|
348
|
+
"0x",
|
|
349
|
+
],
|
|
350
|
+
});
|
|
351
|
+
const supplyInstructions = await smartAccount.buildComposable({
|
|
352
|
+
type: "rawCalldata",
|
|
353
|
+
data: {
|
|
354
|
+
calldata: supplyCollateralData,
|
|
355
|
+
to: args.destination.morphoBlue,
|
|
356
|
+
chainId: args.destination.chainId,
|
|
357
|
+
value: 0n,
|
|
358
|
+
},
|
|
359
|
+
});
|
|
360
|
+
const batchedInstructions = await smartAccount.buildComposable({
|
|
361
|
+
type: "batch",
|
|
362
|
+
data: {
|
|
363
|
+
instructions: [approveSupplyInstructions, supplyInstructions],
|
|
364
|
+
},
|
|
365
|
+
});
|
|
366
|
+
instructions.push(batchedInstructions);
|
|
367
|
+
}
|
|
368
|
+
else if (args.type === "vault-deposit") {
|
|
369
|
+
const depositData = (0, viem_1.encodeFunctionData)({
|
|
370
|
+
abi: morphoVaultAbi_js_1.default,
|
|
371
|
+
functionName: "deposit",
|
|
372
|
+
args: [totalOutput, args.wallet.account.address],
|
|
373
|
+
});
|
|
374
|
+
const depositInstructions = await smartAccount.buildComposable({
|
|
375
|
+
type: "rawCalldata",
|
|
376
|
+
data: {
|
|
377
|
+
calldata: depositData,
|
|
378
|
+
to: tokenConfig.marketToken.address,
|
|
379
|
+
chainId: args.destination.chainId,
|
|
380
|
+
value: 0n,
|
|
381
|
+
},
|
|
382
|
+
});
|
|
383
|
+
const batchedInstructions = await smartAccount.buildComposable({
|
|
384
|
+
type: "batch",
|
|
385
|
+
data: {
|
|
386
|
+
instructions: [approveSupplyInstructions, depositInstructions],
|
|
387
|
+
},
|
|
388
|
+
});
|
|
389
|
+
instructions.push(batchedInstructions);
|
|
390
|
+
}
|
|
391
|
+
const fusionQuote = await meeClient.getFusionQuote({
|
|
392
|
+
trigger: {
|
|
393
|
+
tokenAddress: viem_1.zeroAddress,
|
|
394
|
+
chainId: args.destination.chainId,
|
|
395
|
+
amount: 1n,
|
|
396
|
+
},
|
|
397
|
+
feeToken: {
|
|
398
|
+
address: viem_1.zeroAddress,
|
|
399
|
+
chainId: args.destination.chainId,
|
|
400
|
+
},
|
|
401
|
+
instructions,
|
|
402
|
+
cleanUps: [
|
|
403
|
+
...cleanUps,
|
|
404
|
+
{
|
|
405
|
+
tokenAddress: args.destination.routeTokenAddress,
|
|
406
|
+
chainId: args.destination.chainId,
|
|
407
|
+
recipientAddress: args.wallet.account.address,
|
|
408
|
+
},
|
|
409
|
+
],
|
|
410
|
+
});
|
|
411
|
+
return {
|
|
412
|
+
status: "success",
|
|
413
|
+
checks: {
|
|
414
|
+
approvals,
|
|
415
|
+
transfers,
|
|
416
|
+
},
|
|
417
|
+
account: args.wallet.account,
|
|
418
|
+
instructions,
|
|
419
|
+
quote: {
|
|
420
|
+
hash: fusionQuote.quote.hash,
|
|
421
|
+
node: fusionQuote.quote.node,
|
|
422
|
+
commitment: fusionQuote.quote.commitment,
|
|
423
|
+
fee: {
|
|
424
|
+
tokenAmount: fusionQuote.quote.paymentInfo.tokenAmount,
|
|
425
|
+
tokenWeiAmount: fusionQuote.quote.paymentInfo.tokenWeiAmount,
|
|
426
|
+
tokenValue: fusionQuote.quote.paymentInfo.tokenValue,
|
|
427
|
+
},
|
|
428
|
+
userOps: fusionQuote.quote.userOps.map((operation) => ({
|
|
429
|
+
sender: operation.userOp.sender,
|
|
430
|
+
nonce: operation.userOp.nonce,
|
|
431
|
+
initCode: operation.userOp.initCode,
|
|
432
|
+
callData: operation.userOp.callData,
|
|
433
|
+
})),
|
|
434
|
+
fusionQuote,
|
|
435
|
+
},
|
|
436
|
+
execute: async () => {
|
|
437
|
+
try {
|
|
438
|
+
const superTx = await meeClient.executeFusionQuote({
|
|
439
|
+
fusionQuote,
|
|
440
|
+
});
|
|
441
|
+
return {
|
|
442
|
+
hash: superTx.hash,
|
|
443
|
+
wait: async (confirmations) => {
|
|
444
|
+
await meeClient.waitForSupertransactionReceipt({
|
|
445
|
+
hash: superTx.hash,
|
|
446
|
+
confirmations,
|
|
447
|
+
});
|
|
448
|
+
return;
|
|
449
|
+
},
|
|
450
|
+
status: async () => {
|
|
451
|
+
const receipt = await meeClient.getSupertransactionReceipt({
|
|
452
|
+
hash: superTx.hash,
|
|
453
|
+
});
|
|
454
|
+
if (args.type === "supply" ||
|
|
455
|
+
args.type === "morpho-supply" ||
|
|
456
|
+
args.type === "vault-deposit") {
|
|
457
|
+
try {
|
|
458
|
+
receipt.userOps.splice(receipt.userOps.length - (1 + cleanUps.length));
|
|
459
|
+
const supplyOp = receipt.userOps.splice(receipt.userOps.length - 1);
|
|
460
|
+
const acrossOps = [...receipt.userOps];
|
|
461
|
+
const acrossOpsPending = acrossOps.filter((op) => op.executionStatus === "MINING" ||
|
|
462
|
+
op.executionStatus === "PENDING").length > 0;
|
|
463
|
+
const acrossOpsFailed = acrossOps.filter((op) => op.executionStatus === "FAILED" ||
|
|
464
|
+
op.executionStatus === "MINED_FAIL").length > 0;
|
|
465
|
+
const acrossOpsSucceed = acrossOps.filter((op) => op.executionStatus === "MINED_SUCCESS" ||
|
|
466
|
+
op.executionStatus === "SUCCESS").length === acrossOps.length;
|
|
467
|
+
const supplyOpPending = supplyOp.filter((op) => op.executionStatus === "MINING" ||
|
|
468
|
+
op.executionStatus === "PENDING").length > 0;
|
|
469
|
+
const supplyOpFailed = supplyOp.filter((op) => op.executionStatus === "FAILED" ||
|
|
470
|
+
op.executionStatus === "MINED_FAIL").length > 0;
|
|
471
|
+
const supplyOpSucceed = supplyOp.filter((op) => op.executionStatus === "MINED_SUCCESS" ||
|
|
472
|
+
op.executionStatus === "SUCCESS").length === supplyOp.length;
|
|
473
|
+
if (acrossOpsFailed || supplyOpFailed) {
|
|
474
|
+
return "reverted";
|
|
475
|
+
}
|
|
476
|
+
if (acrossOpsPending || supplyOpPending) {
|
|
477
|
+
return "processing";
|
|
478
|
+
}
|
|
479
|
+
if (acrossOpsSucceed || supplyOpSucceed) {
|
|
480
|
+
return "success";
|
|
481
|
+
}
|
|
482
|
+
}
|
|
483
|
+
catch (ex) {
|
|
484
|
+
return "pending";
|
|
485
|
+
}
|
|
486
|
+
}
|
|
487
|
+
return "pending";
|
|
488
|
+
},
|
|
489
|
+
};
|
|
490
|
+
}
|
|
491
|
+
catch (ex) {
|
|
492
|
+
console.log(ex);
|
|
493
|
+
throw ex;
|
|
494
|
+
}
|
|
495
|
+
},
|
|
496
|
+
};
|
|
497
|
+
}
|
|
498
|
+
}
|
|
499
|
+
return {
|
|
500
|
+
status: "error",
|
|
501
|
+
error: "Token not found",
|
|
502
|
+
};
|
|
503
|
+
}
|
|
504
|
+
//# sourceMappingURL=common.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../../actions/beam/common.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getBeamQuote = getBeamQuote;
|
|
4
|
+
const common_js_1 = require("./common.js");
|
|
5
|
+
async function getBeamQuote(client, args) {
|
|
6
|
+
const quote = await (0, common_js_1.getQuote)(client, args);
|
|
7
|
+
return quote;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=getBeamQuote.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getBeamQuote.js","sourceRoot":"","sources":["../../../actions/beam/getBeamQuote.ts"],"names":[],"mappings":";;AAiGA,oCASC;AAnGD,2CAAuC;AA0FhC,KAAK,UAAU,YAAY,CAIhC,MAAsB,EACtB,IAAmD;IAEnD,MAAM,KAAK,GAAG,MAAM,IAAA,oBAAQ,EAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC3C,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.getBeamTokenLimits = getBeamTokenLimits;
|
|
7
|
+
const axios_1 = __importDefault(require("axios"));
|
|
8
|
+
const index_js_1 = require("../../common/index.js");
|
|
9
|
+
async function getBeamTokenLimits(args) {
|
|
10
|
+
const { direction, route } = args;
|
|
11
|
+
const limits = [];
|
|
12
|
+
for (const path of args.route.routes) {
|
|
13
|
+
const inputToken = direction === "withdraw"
|
|
14
|
+
? route.routeTokenAddress
|
|
15
|
+
: path.routeTokenAddress;
|
|
16
|
+
const outputToken = direction === "withdraw"
|
|
17
|
+
? path.routeTokenAddress
|
|
18
|
+
: route.routeTokenAddress;
|
|
19
|
+
const inputChainId = direction === "withdraw" ? route.chainId : path.chainId;
|
|
20
|
+
const outputChainId = direction === "withdraw" ? path.chainId : route.chainId;
|
|
21
|
+
try {
|
|
22
|
+
const acrossLimitsResponse = await axios_1.default.get(`https://app.across.to/api/limits?inputToken=${inputToken}&outputToken=${outputToken}&originChainId=${inputChainId}&destinationChainId=${outputChainId}`);
|
|
23
|
+
limits.push({
|
|
24
|
+
from: {
|
|
25
|
+
address: direction === "withdraw" ? route.address : path.address,
|
|
26
|
+
chainId: direction === "withdraw" ? route.chainId : path.chainId,
|
|
27
|
+
decimals: direction === "withdraw" ? route.decimals : path.decimals,
|
|
28
|
+
name: direction === "withdraw" ? route.name : path.name,
|
|
29
|
+
routeTokenAddress: direction === "withdraw"
|
|
30
|
+
? route.routeTokenAddress
|
|
31
|
+
: path.routeTokenAddress,
|
|
32
|
+
symbol: direction === "withdraw" ? route.symbol : path.symbol,
|
|
33
|
+
},
|
|
34
|
+
to: {
|
|
35
|
+
address: direction === "withdraw" ? path.address : route.address,
|
|
36
|
+
chainId: direction === "withdraw" ? path.chainId : route.chainId,
|
|
37
|
+
decimals: direction === "withdraw" ? path.decimals : route.decimals,
|
|
38
|
+
name: direction === "withdraw" ? path.name : route.name,
|
|
39
|
+
routeTokenAddress: direction === "withdraw"
|
|
40
|
+
? path.routeTokenAddress
|
|
41
|
+
: route.routeTokenAddress,
|
|
42
|
+
symbol: direction === "withdraw" ? path.symbol : route.symbol,
|
|
43
|
+
},
|
|
44
|
+
max: new index_js_1.Amount(BigInt(acrossLimitsResponse.data.maxDepositInstant), route.decimals),
|
|
45
|
+
min: new index_js_1.Amount(BigInt(acrossLimitsResponse.data.minDeposit), route.decimals),
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
catch (ex) {
|
|
49
|
+
console.log({
|
|
50
|
+
error: ex,
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
return limits;
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=getBeamTokenLimits.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getBeamTokenLimits.js","sourceRoot":"","sources":["../../../actions/beam/getBeamTokenLimits.ts"],"names":[],"mappings":"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"}
|