@vultisig/core-chain 2.34.0 → 2.35.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 +14 -0
- package/dist/chainRegistry.d.ts +86 -0
- package/dist/chainRegistry.d.ts.map +1 -0
- package/dist/chainRegistry.js +79 -0
- package/dist/chainRegistry.js.map +1 -0
- package/dist/chains/cosmos/thor/securedAssets.d.ts +59 -0
- package/dist/chains/cosmos/thor/securedAssets.d.ts.map +1 -0
- package/dist/chains/cosmos/thor/securedAssets.js +173 -0
- package/dist/chains/cosmos/thor/securedAssets.js.map +1 -0
- package/dist/chains/evm/chainInfo.d.ts +4 -4
- package/dist/chains/evm/chainInfo.d.ts.map +1 -1
- package/dist/chains/evm/chainInfo.js +3 -2
- package/dist/chains/evm/chainInfo.js.map +1 -1
- package/dist/swap/general/GeneralSwapQuote.d.ts +16 -0
- package/dist/swap/general/GeneralSwapQuote.d.ts.map +1 -1
- package/dist/swap/general/swapkit/SwapKitErrors.d.ts +10 -0
- package/dist/swap/general/swapkit/SwapKitErrors.d.ts.map +1 -1
- package/dist/swap/general/swapkit/SwapKitErrors.js +10 -0
- package/dist/swap/general/swapkit/SwapKitErrors.js.map +1 -1
- package/dist/swap/general/swapkit/api/getSwapKitQuote.d.ts.map +1 -1
- package/dist/swap/general/swapkit/api/getSwapKitQuote.js +72 -7
- package/dist/swap/general/swapkit/api/getSwapKitQuote.js.map +1 -1
- package/dist/utils/getBlockExplorerUrl/index.d.ts +2 -2
- package/dist/utils/getBlockExplorerUrl/index.d.ts.map +1 -1
- package/dist/utils/getBlockExplorerUrl/index.js +3 -130
- package/dist/utils/getBlockExplorerUrl/index.js.map +1 -1
- package/package.json +11 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
# @vultisig/core-chain
|
|
2
2
|
|
|
3
|
+
## 2.35.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#1812](https://github.com/vultisig/vultisig-sdk/pull/1812) [`2e1b8bb`](https://github.com/vultisig/vultisig-sdk/commit/2e1b8bb597d2d0fa052a121ab2757efa228314f5) Thanks [@rcoderdev](https://github.com/rcoderdev)! - Export an exhaustive chain-descriptor registry with explorer metadata plus helpers for deriving consumer projections and attaching compile-safe consumer-local extensions.
|
|
8
|
+
|
|
9
|
+
- [#1817](https://github.com/vultisig/vultisig-sdk/pull/1817) [`67dd842`](https://github.com/vultisig/vultisig-sdk/commit/67dd8425a10f0c7b7833c02147fc0036e6ee7a64) Thanks [@Ehsan-saradar](https://github.com/Ehsan-saradar)! - Surface the affiliate fee SwapKit itemizes on EVM routes, and expose a route's price impact on `GeneralSwapQuote`.
|
|
10
|
+
|
|
11
|
+
The SwapKit EVM branch never populated `affiliateFee`, although the Solana branch already did, so an aggregator swap reached consumers with no swap fee to show and a total that omitted it. It now carries the fee. It stays absent when no amount can be vouched for — no fee entries, an itemized zero, or a shape that cannot be resolved — so consumers report the fee as part of the quoted rate rather than asserting a zero. Unresolvable shapes raise the new `SwapKitFeeShapeError`, which this branch swallows because the fee is not part of the signed EVM transaction; Solana still lets it throw, since its tx type requires the fee.
|
|
12
|
+
|
|
13
|
+
`GeneralSwapQuote.priceImpactFraction` carries a route's signed price impact as a fraction, read from SwapKit's `meta.priceImpact` and falling back to `totalSlippageBps`. Both are narrowed to finite numbers, since nothing validates the proxy's JSON on the way in. The unit is named in the field because the neighbouring price-impact guard exposes both fraction and percent entry points, and mixing them is a silent 100x. The field is absent for providers that publish no impact, so consumers can hide the row instead of substituting a fee figure for it.
|
|
14
|
+
|
|
15
|
+
- [#1703](https://github.com/vultisig/vultisig-sdk/pull/1703) [`3ea8b2c`](https://github.com/vultisig/vultisig-sdk/commit/3ea8b2c5133a16878991ec33d569fd8498837316) Thanks [@rcoderdev](https://github.com/rcoderdev)! - Expose a cached dynamic THORChain secured-asset catalog with an offline fallback for swap destination discovery.
|
|
16
|
+
|
|
3
17
|
## 2.34.0
|
|
4
18
|
|
|
5
19
|
### Minor Changes
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { Chain } from '@vultisig/core-chain/Chain';
|
|
2
|
+
import { type ChainKind, type DeriveChainKind } from '@vultisig/core-chain/ChainKind';
|
|
3
|
+
export type BlockExplorerEntity = 'address' | 'tx';
|
|
4
|
+
export type ChainExplorerDescriptor = {
|
|
5
|
+
readonly baseUrl: string;
|
|
6
|
+
readonly paths: Readonly<Record<BlockExplorerEntity, `/${string}`>>;
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* Public, consumer-facing metadata for one chain.
|
|
10
|
+
*
|
|
11
|
+
* Explorer metadata is the first migrated descriptor slice. Additional
|
|
12
|
+
* protocol facts can be added here as their existing exhaustive tables are
|
|
13
|
+
* migrated; product rollout policy remains consumer-owned.
|
|
14
|
+
*/
|
|
15
|
+
export type ChainDescriptor<C extends Chain = Chain> = {
|
|
16
|
+
readonly chain: C;
|
|
17
|
+
readonly kind: DeriveChainKind<C>;
|
|
18
|
+
readonly explorer: ChainExplorerDescriptor;
|
|
19
|
+
};
|
|
20
|
+
export type ChainDescriptorRegistry = {
|
|
21
|
+
readonly [C in Chain]: ChainDescriptor<C>;
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* Exhaustive SDK-owned chain metadata.
|
|
25
|
+
*
|
|
26
|
+
* Adding a member to {@link Chain} fails compilation here until its descriptor
|
|
27
|
+
* is present. Consumers should derive projections from this registry instead
|
|
28
|
+
* of copying the chain union or maintaining parallel metadata tables.
|
|
29
|
+
*/
|
|
30
|
+
export declare const chainRegistry: Readonly<{
|
|
31
|
+
readonly Bitcoin: ChainDescriptor<import("@vultisig/core-chain/Chain").UtxoChain.Bitcoin>;
|
|
32
|
+
readonly "Bitcoin-Cash": ChainDescriptor<import("@vultisig/core-chain/Chain").UtxoChain.BitcoinCash>;
|
|
33
|
+
readonly Litecoin: ChainDescriptor<import("@vultisig/core-chain/Chain").UtxoChain.Litecoin>;
|
|
34
|
+
readonly Dogecoin: ChainDescriptor<import("@vultisig/core-chain/Chain").UtxoChain.Dogecoin>;
|
|
35
|
+
readonly Dash: ChainDescriptor<import("@vultisig/core-chain/Chain").UtxoChain.Dash>;
|
|
36
|
+
readonly Solana: ChainDescriptor<import("@vultisig/core-chain/Chain").OtherChain.Solana>;
|
|
37
|
+
readonly Ethereum: ChainDescriptor<"Ethereum">;
|
|
38
|
+
readonly Cosmos: ChainDescriptor<"Cosmos">;
|
|
39
|
+
readonly Dydx: ChainDescriptor<"Dydx">;
|
|
40
|
+
readonly Kujira: ChainDescriptor<"Kujira">;
|
|
41
|
+
readonly Avalanche: ChainDescriptor<"Avalanche">;
|
|
42
|
+
readonly BSC: ChainDescriptor<"BSC">;
|
|
43
|
+
readonly Arbitrum: ChainDescriptor<"Arbitrum">;
|
|
44
|
+
readonly Base: ChainDescriptor<"Base">;
|
|
45
|
+
readonly Optimism: ChainDescriptor<"Optimism">;
|
|
46
|
+
readonly Polygon: ChainDescriptor<"Polygon">;
|
|
47
|
+
readonly Blast: ChainDescriptor<"Blast">;
|
|
48
|
+
readonly CronosChain: ChainDescriptor<"CronosChain">;
|
|
49
|
+
readonly Sui: ChainDescriptor<import("@vultisig/core-chain/Chain").OtherChain.Sui>;
|
|
50
|
+
readonly Polkadot: ChainDescriptor<import("@vultisig/core-chain/Chain").OtherChain.Polkadot>;
|
|
51
|
+
readonly Bittensor: ChainDescriptor<import("@vultisig/core-chain/Chain").OtherChain.Bittensor>;
|
|
52
|
+
readonly Zksync: ChainDescriptor<"Zksync">;
|
|
53
|
+
readonly Ton: ChainDescriptor<import("@vultisig/core-chain/Chain").OtherChain.Ton>;
|
|
54
|
+
readonly Osmosis: ChainDescriptor<"Osmosis">;
|
|
55
|
+
readonly Terra: ChainDescriptor<"Terra">;
|
|
56
|
+
readonly TerraClassic: ChainDescriptor<"TerraClassic">;
|
|
57
|
+
readonly Noble: ChainDescriptor<"Noble">;
|
|
58
|
+
readonly Ripple: ChainDescriptor<import("@vultisig/core-chain/Chain").OtherChain.Ripple>;
|
|
59
|
+
readonly THORChain: ChainDescriptor<"THORChain">;
|
|
60
|
+
readonly MayaChain: ChainDescriptor<"MayaChain">;
|
|
61
|
+
readonly Akash: ChainDescriptor<"Akash">;
|
|
62
|
+
readonly Tron: ChainDescriptor<import("@vultisig/core-chain/Chain").OtherChain.Tron>;
|
|
63
|
+
readonly Zcash: ChainDescriptor<import("@vultisig/core-chain/Chain").UtxoChain.Zcash>;
|
|
64
|
+
readonly Cardano: ChainDescriptor<import("@vultisig/core-chain/Chain").OtherChain.Cardano>;
|
|
65
|
+
readonly Mantle: ChainDescriptor<"Mantle">;
|
|
66
|
+
readonly Hyperliquid: ChainDescriptor<"Hyperliquid">;
|
|
67
|
+
readonly Sei: ChainDescriptor<"Sei">;
|
|
68
|
+
readonly Robinhood: ChainDescriptor<"Robinhood">;
|
|
69
|
+
readonly QBTC: ChainDescriptor<import("@vultisig/core-chain/Chain").OtherChain.QBTC>;
|
|
70
|
+
}>;
|
|
71
|
+
/** Build an exhaustive consumer projection without copying the chain set. */
|
|
72
|
+
export declare const deriveFromChainRegistry: <T>(derive: (descriptor: ChainDescriptor, chain: Chain) => T) => Record<Chain, T>;
|
|
73
|
+
export type ChainExtensionRecord = Readonly<Record<Chain, unknown>>;
|
|
74
|
+
export type ExtendedChainRegistry<Extensions extends ChainExtensionRecord> = {
|
|
75
|
+
readonly [C in Chain]: (typeof chainRegistry)[C] & {
|
|
76
|
+
readonly extension: Extensions[C];
|
|
77
|
+
};
|
|
78
|
+
};
|
|
79
|
+
/**
|
|
80
|
+
* Attach consumer-local policy or presentation fields without forking SDK
|
|
81
|
+
* metadata. The extension record is exhaustive, so a new SDK chain produces a
|
|
82
|
+
* compile error until the consumer marks it supported or explicitly unsupported.
|
|
83
|
+
*/
|
|
84
|
+
export declare const extendChainRegistry: <const Extensions extends ChainExtensionRecord>(extensions: Extensions) => ExtendedChainRegistry<Extensions>;
|
|
85
|
+
export type { ChainKind };
|
|
86
|
+
//# sourceMappingURL=chainRegistry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chainRegistry.d.ts","sourceRoot":"","sources":["../../../../packages/core/chain/chainRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAA;AAClD,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,eAAe,EAAgB,MAAM,gCAAgC,CAAA;AAEnG,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,IAAI,CAAA;AAElD,MAAM,MAAM,uBAAuB,GAAG;IACpC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,mBAAmB,EAAE,IAAI,MAAM,EAAE,CAAC,CAAC,CAAA;CACpE,CAAA;AAED;;;;;;GAMG;AACH,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,KAAK,GAAG,KAAK,IAAI;IACrD,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAA;IACjB,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC,CAAC,CAAA;IACjC,QAAQ,CAAC,QAAQ,EAAE,uBAAuB,CAAA;CAC3C,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG;IACpC,QAAQ,EAAE,CAAC,IAAI,KAAK,GAAG,eAAe,CAAC,CAAC,CAAC;CAC1C,CAAA;AAsBD;;;;;;GAMG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6CmB,CAAA;AAE7C,6EAA6E;AAC7E,eAAO,MAAM,uBAAuB,GAAI,CAAC,EACvC,QAAQ,CAAC,UAAU,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,KAAK,CAAC,KACvD,MAAM,CAAC,KAAK,EAAE,CAAC,CAIf,CAAA;AAEH,MAAM,MAAM,oBAAoB,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAA;AAEnE,MAAM,MAAM,qBAAqB,CAAC,UAAU,SAAS,oBAAoB,IAAI;IAC3E,QAAQ,EAAE,CAAC,IAAI,KAAK,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG;QACjD,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC,CAAA;KAClC;CACF,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,GAAI,KAAK,CAAC,UAAU,SAAS,oBAAoB,EAC/E,YAAY,UAAU,KACrB,qBAAqB,CAAC,UAAU,CAUM,CAAA;AAEzC,YAAY,EAAE,SAAS,EAAE,CAAA"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { Chain } from '@vultisig/core-chain/Chain';
|
|
2
|
+
import { getChainKind } from '@vultisig/core-chain/ChainKind';
|
|
3
|
+
const descriptor = (chain, baseUrl, addressPath, txPath) => Object.freeze({
|
|
4
|
+
chain,
|
|
5
|
+
kind: getChainKind(chain),
|
|
6
|
+
explorer: Object.freeze({
|
|
7
|
+
baseUrl,
|
|
8
|
+
paths: Object.freeze({
|
|
9
|
+
address: addressPath,
|
|
10
|
+
tx: txPath,
|
|
11
|
+
}),
|
|
12
|
+
}),
|
|
13
|
+
});
|
|
14
|
+
const cosmosBlockExplorer = 'https://www.mintscan.io';
|
|
15
|
+
/**
|
|
16
|
+
* Exhaustive SDK-owned chain metadata.
|
|
17
|
+
*
|
|
18
|
+
* Adding a member to {@link Chain} fails compilation here until its descriptor
|
|
19
|
+
* is present. Consumers should derive projections from this registry instead
|
|
20
|
+
* of copying the chain union or maintaining parallel metadata tables.
|
|
21
|
+
*/
|
|
22
|
+
export const chainRegistry = Object.freeze({
|
|
23
|
+
[Chain.Bitcoin]: descriptor(Chain.Bitcoin, 'https://mempool.space', '/address/', '/tx/'),
|
|
24
|
+
[Chain.BitcoinCash]: descriptor(Chain.BitcoinCash, 'https://blockchair.com/bitcoin-cash', '/address/', '/transaction/'),
|
|
25
|
+
[Chain.Litecoin]: descriptor(Chain.Litecoin, 'https://blockchair.com/litecoin', '/address/', '/transaction/'),
|
|
26
|
+
[Chain.Dogecoin]: descriptor(Chain.Dogecoin, 'https://blockchair.com/dogecoin', '/address/', '/transaction/'),
|
|
27
|
+
[Chain.Dash]: descriptor(Chain.Dash, 'https://blockchair.com/dash', '/address/', '/transaction/'),
|
|
28
|
+
[Chain.Solana]: descriptor(Chain.Solana, 'https://solscan.io', '/address/', '/tx/'),
|
|
29
|
+
[Chain.Ethereum]: descriptor(Chain.Ethereum, 'https://etherscan.io', '/address/', '/tx/'),
|
|
30
|
+
[Chain.Cosmos]: descriptor(Chain.Cosmos, `${cosmosBlockExplorer}/cosmos`, '/address/', '/tx/'),
|
|
31
|
+
[Chain.Dydx]: descriptor(Chain.Dydx, `${cosmosBlockExplorer}/dydx`, '/address/', '/tx/'),
|
|
32
|
+
[Chain.Kujira]: descriptor(Chain.Kujira, 'https://finder.kujira.network/kaiyo-1', '/address/', '/tx/'),
|
|
33
|
+
[Chain.Avalanche]: descriptor(Chain.Avalanche, 'https://snowtrace.io', '/address/', '/tx/'),
|
|
34
|
+
[Chain.BSC]: descriptor(Chain.BSC, 'https://bscscan.com', '/address/', '/tx/'),
|
|
35
|
+
[Chain.Arbitrum]: descriptor(Chain.Arbitrum, 'https://arbiscan.io', '/address/', '/tx/'),
|
|
36
|
+
[Chain.Base]: descriptor(Chain.Base, 'https://basescan.org', '/address/', '/tx/'),
|
|
37
|
+
[Chain.Optimism]: descriptor(Chain.Optimism, 'https://optimistic.etherscan.io', '/address/', '/tx/'),
|
|
38
|
+
[Chain.Polygon]: descriptor(Chain.Polygon, 'https://polygonscan.com', '/address/', '/tx/'),
|
|
39
|
+
[Chain.Blast]: descriptor(Chain.Blast, 'https://blastscan.io', '/address/', '/tx/'),
|
|
40
|
+
[Chain.CronosChain]: descriptor(Chain.CronosChain, 'https://cronoscan.com', '/address/', '/tx/'),
|
|
41
|
+
[Chain.Sui]: descriptor(Chain.Sui, 'https://suiscan.xyz/mainnet', '/address/', '/tx/'),
|
|
42
|
+
[Chain.Polkadot]: descriptor(Chain.Polkadot, 'https://assethub-polkadot.subscan.io', '/account/', '/extrinsic/'),
|
|
43
|
+
[Chain.Bittensor]: descriptor(Chain.Bittensor, 'https://taostats.io', '/account/', '/extrinsic/'),
|
|
44
|
+
[Chain.Zksync]: descriptor(Chain.Zksync, 'https://explorer.zksync.io', '/address/', '/tx/'),
|
|
45
|
+
[Chain.Ton]: descriptor(Chain.Ton, 'https://tonviewer.com', '/', '/transaction/'),
|
|
46
|
+
[Chain.Osmosis]: descriptor(Chain.Osmosis, `${cosmosBlockExplorer}/osmosis`, '/address/', '/tx/'),
|
|
47
|
+
[Chain.Terra]: descriptor(Chain.Terra, `${cosmosBlockExplorer}/terra`, '/address/', '/tx/'),
|
|
48
|
+
[Chain.TerraClassic]: descriptor(Chain.TerraClassic, 'https://finder.terra.money/classic', '/address/', '/tx/'),
|
|
49
|
+
[Chain.Noble]: descriptor(Chain.Noble, `${cosmosBlockExplorer}/noble`, '/address/', '/tx/'),
|
|
50
|
+
[Chain.Ripple]: descriptor(Chain.Ripple, 'https://xrpscan.com', '/account/', '/transaction/'),
|
|
51
|
+
[Chain.THORChain]: descriptor(Chain.THORChain, 'https://thorchain.net', '/address/', '/tx/'),
|
|
52
|
+
[Chain.MayaChain]: descriptor(Chain.MayaChain, 'https://www.explorer.mayachain.info', '/address/', '/tx/'),
|
|
53
|
+
[Chain.Akash]: descriptor(Chain.Akash, `${cosmosBlockExplorer}/akash`, '/address/', '/tx/'),
|
|
54
|
+
[Chain.Tron]: descriptor(Chain.Tron, 'https://tronscan.org/#', '/address/', '/transaction/'),
|
|
55
|
+
[Chain.Zcash]: descriptor(Chain.Zcash, 'https://blockexplorer.one/zcash/mainnet', '/address/', '/tx/'),
|
|
56
|
+
[Chain.Cardano]: descriptor(Chain.Cardano, 'https://cardanoscan.io', '/address/', '/transaction/'),
|
|
57
|
+
[Chain.Mantle]: descriptor(Chain.Mantle, 'https://explorer.mantle.xyz', '/address/', '/tx/'),
|
|
58
|
+
[Chain.Hyperliquid]: descriptor(Chain.Hyperliquid, 'https://hypurrscan.io/evm', '/address/', '/tx/'),
|
|
59
|
+
[Chain.Sei]: descriptor(Chain.Sei, 'https://seiscan.io', '/address/', '/tx/'),
|
|
60
|
+
[Chain.Robinhood]: descriptor(Chain.Robinhood, 'https://robinhoodchain.blockscout.com', '/address/', '/tx/'),
|
|
61
|
+
[Chain.QBTC]: descriptor(Chain.QBTC, 'https://explorer.qbtc.net/qbtc', '/account/', '/tx/'),
|
|
62
|
+
});
|
|
63
|
+
/** Build an exhaustive consumer projection without copying the chain set. */
|
|
64
|
+
export const deriveFromChainRegistry = (derive) => Object.fromEntries(Object.values(Chain).map(chain => [chain, derive(chainRegistry[chain], chain)]));
|
|
65
|
+
/**
|
|
66
|
+
* Attach consumer-local policy or presentation fields without forking SDK
|
|
67
|
+
* metadata. The extension record is exhaustive, so a new SDK chain produces a
|
|
68
|
+
* compile error until the consumer marks it supported or explicitly unsupported.
|
|
69
|
+
*/
|
|
70
|
+
export const extendChainRegistry = (extensions) => deriveFromChainRegistry(descriptor => {
|
|
71
|
+
if (!Object.prototype.hasOwnProperty.call(extensions, descriptor.chain)) {
|
|
72
|
+
throw new Error(`Missing chain extension for ${descriptor.chain}`);
|
|
73
|
+
}
|
|
74
|
+
return {
|
|
75
|
+
...descriptor,
|
|
76
|
+
extension: extensions[descriptor.chain],
|
|
77
|
+
};
|
|
78
|
+
});
|
|
79
|
+
//# sourceMappingURL=chainRegistry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chainRegistry.js","sourceRoot":"","sources":["../../../../packages/core/chain/chainRegistry.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { Chain } from '@vultisig/core-chain/Chain';
|
|
2
|
+
import { KnownCoin } from '@vultisig/core-chain/coin/Coin';
|
|
3
|
+
export type ThorchainSecuredAsset = KnownCoin & {
|
|
4
|
+
/** Canonical THORChain bank denom, e.g. `eth-usdc-0xa0b8…`. */
|
|
5
|
+
id: string;
|
|
6
|
+
/** Canonical L1 pool asset, e.g. `ETH.USDC-0XA0B8…`. */
|
|
7
|
+
l1Asset: string;
|
|
8
|
+
isSecured: true;
|
|
9
|
+
/** Live x/bank share supply. Omitted on the static offline fallback. */
|
|
10
|
+
supply?: string;
|
|
11
|
+
/** Live underlying L1 depth. Omitted on the static offline fallback. */
|
|
12
|
+
depth?: string;
|
|
13
|
+
};
|
|
14
|
+
export type ThorchainSecuredAssetCatalog = {
|
|
15
|
+
assets: ThorchainSecuredAsset[];
|
|
16
|
+
source: 'thorchain' | 'fallback';
|
|
17
|
+
};
|
|
18
|
+
export type ThorchainSecuredAssetCatalogFetcher = (options?: {
|
|
19
|
+
forceRefresh?: boolean;
|
|
20
|
+
}) => Promise<ThorchainSecuredAssetCatalog>;
|
|
21
|
+
export type ThorchainSwapDestinationAsset = KnownCoin & {
|
|
22
|
+
isSecured?: true;
|
|
23
|
+
l1Asset?: string;
|
|
24
|
+
};
|
|
25
|
+
type CreateThorchainSecuredAssetCatalogOptions = {
|
|
26
|
+
baseUrl?: string;
|
|
27
|
+
cacheTtlMs?: number;
|
|
28
|
+
fetchJson?: (url: string) => Promise<unknown>;
|
|
29
|
+
fallbackAssets?: readonly ThorchainSecuredAsset[];
|
|
30
|
+
now?: () => number;
|
|
31
|
+
};
|
|
32
|
+
export declare const parseThorchainSecuredAssets: (raw: unknown) => ThorchainSecuredAsset[];
|
|
33
|
+
export declare const thorchainSecuredAssetFallback: readonly ThorchainSecuredAsset[];
|
|
34
|
+
/**
|
|
35
|
+
* Creates a cached, coalescing THORChain secured-asset catalog reader.
|
|
36
|
+
*
|
|
37
|
+
* The live `/thorchain/securedassets` endpoint is authoritative. The static
|
|
38
|
+
* SDK table is returned only when the live read is unavailable or malformed,
|
|
39
|
+
* keeping destination discovery useful offline without presenting the fallback
|
|
40
|
+
* as fresh chain state.
|
|
41
|
+
*/
|
|
42
|
+
export declare const createThorchainSecuredAssetCatalog: ({ baseUrl, cacheTtlMs, fetchJson, fallbackAssets, now, }?: CreateThorchainSecuredAssetCatalogOptions) => ThorchainSecuredAssetCatalogFetcher;
|
|
43
|
+
export declare const getThorchainSecuredAssetCatalog: ThorchainSecuredAssetCatalogFetcher;
|
|
44
|
+
/**
|
|
45
|
+
* Returns the complete THORChain swap-destination universe for picker clients.
|
|
46
|
+
* Secured entries always come from the live catalog (or its explicit offline
|
|
47
|
+
* fallback); THORChain-native/Rujira entries remain sourced from the static
|
|
48
|
+
* token metadata because they are not part of `/thorchain/securedassets`.
|
|
49
|
+
*/
|
|
50
|
+
export declare const getThorchainSwapDestinationAssets: (options?: {
|
|
51
|
+
forceRefresh?: boolean;
|
|
52
|
+
fetchCatalog?: ThorchainSecuredAssetCatalogFetcher;
|
|
53
|
+
}) => Promise<ThorchainSwapDestinationAsset[]>;
|
|
54
|
+
export declare const getThorchainSecuredAssetL1Asset: (coin: {
|
|
55
|
+
chain: Chain;
|
|
56
|
+
id?: string;
|
|
57
|
+
}) => string | null;
|
|
58
|
+
export {};
|
|
59
|
+
//# sourceMappingURL=securedAssets.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"securedAssets.d.ts","sourceRoot":"","sources":["../../../../../../../packages/core/chain/chains/cosmos/thor/securedAssets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAA;AAElD,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAA;AAI1D,MAAM,MAAM,qBAAqB,GAAG,SAAS,GAAG;IAC9C,+DAA+D;IAC/D,EAAE,EAAE,MAAM,CAAA;IACV,wDAAwD;IACxD,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,IAAI,CAAA;IACf,wEAAwE;IACxE,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,wEAAwE;IACxE,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAED,MAAM,MAAM,4BAA4B,GAAG;IACzC,MAAM,EAAE,qBAAqB,EAAE,CAAA;IAC/B,MAAM,EAAE,WAAW,GAAG,UAAU,CAAA;CACjC,CAAA;AAED,MAAM,MAAM,mCAAmC,GAAG,CAAC,OAAO,CAAC,EAAE;IAC3D,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB,KAAK,OAAO,CAAC,4BAA4B,CAAC,CAAA;AAE3C,MAAM,MAAM,6BAA6B,GAAG,SAAS,GAAG;IACtD,SAAS,CAAC,EAAE,IAAI,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,KAAK,yCAAyC,GAAG;IAC/C,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;IAC7C,cAAc,CAAC,EAAE,SAAS,qBAAqB,EAAE,CAAA;IACjD,GAAG,CAAC,EAAE,MAAM,MAAM,CAAA;CACnB,CAAA;AAwED,eAAO,MAAM,2BAA2B,GAAI,KAAK,OAAO,KAAG,qBAAqB,EA6B/E,CAAA;AAED,eAAO,MAAM,6BAA6B,EAAE,SAAS,qBAAqB,EAIN,CAAA;AAOpE;;;;;;;GAOG;AACH,eAAO,MAAM,kCAAkC,GAAI,2DAMhD,yCAA8C,KAAG,mCA+CnD,CAAA;AAED,eAAO,MAAM,+BAA+B,qCAAuC,CAAA;AAWnF;;;;;GAKG;AACH,eAAO,MAAM,iCAAiC,GAC5C,UAAS;IACP,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,YAAY,CAAC,EAAE,mCAAmC,CAAA;CAC9C,KACL,OAAO,CAAC,6BAA6B,EAAE,CAIzC,CAAA;AAED,eAAO,MAAM,+BAA+B,GAAI,MAAM;IAAE,KAAK,EAAE,KAAK,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAA;CAAE,KAAG,MAAM,GAAG,IAG9F,CAAA"}
|
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
import { Chain } from '@vultisig/core-chain/Chain';
|
|
2
|
+
import { cosmosRpcUrl } from '@vultisig/core-chain/chains/cosmos/cosmosRpcUrl';
|
|
3
|
+
import { thorchainNativeTokensMetadata } from '@vultisig/core-chain/coin/knownTokens/thorchain';
|
|
4
|
+
import { queryUrl } from '@vultisig/lib-utils/query/queryUrl';
|
|
5
|
+
const DEFAULT_CACHE_TTL_MS = 5 * 60 * 1000;
|
|
6
|
+
const securedAssetsUrl = `${cosmosRpcUrl[Chain.THORChain]}/thorchain/securedassets`;
|
|
7
|
+
const parseSecuredDenom = (value) => {
|
|
8
|
+
const denom = value.trim().toLowerCase();
|
|
9
|
+
const separator = denom.indexOf('-');
|
|
10
|
+
if (separator <= 0 || separator === denom.length - 1 || denom.includes('/') || denom.includes('.')) {
|
|
11
|
+
return null;
|
|
12
|
+
}
|
|
13
|
+
const chainPrefix = denom.slice(0, separator);
|
|
14
|
+
const rest = denom.slice(separator + 1);
|
|
15
|
+
if (!/^[a-z0-9]+$/i.test(chainPrefix) ||
|
|
16
|
+
chainPrefix === 'thor' ||
|
|
17
|
+
chainPrefix === 'maya' ||
|
|
18
|
+
!/^[a-z0-9]+(?:-[a-z0-9]+)*$/i.test(rest)) {
|
|
19
|
+
return null;
|
|
20
|
+
}
|
|
21
|
+
const ticker = rest.split('-')[0].toUpperCase();
|
|
22
|
+
return {
|
|
23
|
+
denom,
|
|
24
|
+
l1Asset: `${chainPrefix.toUpperCase()}.${rest.toUpperCase()}`,
|
|
25
|
+
ticker,
|
|
26
|
+
};
|
|
27
|
+
};
|
|
28
|
+
const fallbackMetadataByTicker = new Map();
|
|
29
|
+
for (const metadata of Object.values(thorchainNativeTokensMetadata)) {
|
|
30
|
+
if (!fallbackMetadataByTicker.has(metadata.ticker.toUpperCase())) {
|
|
31
|
+
fallbackMetadataByTicker.set(metadata.ticker.toUpperCase(), metadata);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
const toSecuredAsset = (value, status) => {
|
|
35
|
+
const parsed = parseSecuredDenom(value);
|
|
36
|
+
if (!parsed)
|
|
37
|
+
return null;
|
|
38
|
+
const exactFallback = thorchainNativeTokensMetadata[parsed.denom];
|
|
39
|
+
const tickerFallback = fallbackMetadataByTicker.get(parsed.ticker);
|
|
40
|
+
const metadata = exactFallback ?? tickerFallback;
|
|
41
|
+
return {
|
|
42
|
+
chain: Chain.THORChain,
|
|
43
|
+
id: parsed.denom,
|
|
44
|
+
ticker: parsed.ticker,
|
|
45
|
+
logo: metadata?.logo ?? parsed.ticker.toLowerCase(),
|
|
46
|
+
decimals: 8,
|
|
47
|
+
...(metadata?.priceProviderId ? { priceProviderId: metadata.priceProviderId } : {}),
|
|
48
|
+
l1Asset: parsed.l1Asset,
|
|
49
|
+
isSecured: true,
|
|
50
|
+
...status,
|
|
51
|
+
};
|
|
52
|
+
};
|
|
53
|
+
const parseNonNegativeInteger = (value, field) => {
|
|
54
|
+
if (typeof value !== 'string' || !/^\d+$/.test(value)) {
|
|
55
|
+
throw new Error(`THORChain secured-assets response contains an invalid ${field}`);
|
|
56
|
+
}
|
|
57
|
+
return value;
|
|
58
|
+
};
|
|
59
|
+
export const parseThorchainSecuredAssets = (raw) => {
|
|
60
|
+
if (!Array.isArray(raw)) {
|
|
61
|
+
throw new Error(`THORChain secured-assets response must be an array, received ${typeof raw}`);
|
|
62
|
+
}
|
|
63
|
+
const result = [];
|
|
64
|
+
const seen = new Set();
|
|
65
|
+
for (const entry of raw) {
|
|
66
|
+
if (typeof entry?.asset !== 'string') {
|
|
67
|
+
throw new Error('THORChain secured-assets response contains an entry without a string asset');
|
|
68
|
+
}
|
|
69
|
+
const asset = toSecuredAsset(entry.asset, {
|
|
70
|
+
supply: parseNonNegativeInteger(entry.supply, 'supply'),
|
|
71
|
+
depth: parseNonNegativeInteger(entry.depth, 'depth'),
|
|
72
|
+
});
|
|
73
|
+
if (!asset) {
|
|
74
|
+
throw new Error(`THORChain returned an invalid secured asset: ${JSON.stringify(entry.asset)}`);
|
|
75
|
+
}
|
|
76
|
+
if (!seen.has(asset.id)) {
|
|
77
|
+
seen.add(asset.id);
|
|
78
|
+
result.push(asset);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
if (result.length === 0) {
|
|
82
|
+
throw new Error('THORChain secured-assets response is empty');
|
|
83
|
+
}
|
|
84
|
+
return result;
|
|
85
|
+
};
|
|
86
|
+
export const thorchainSecuredAssetFallback = Object.keys(thorchainNativeTokensMetadata)
|
|
87
|
+
.map(value => toSecuredAsset(value))
|
|
88
|
+
.filter((asset) => asset !== null);
|
|
89
|
+
const copyCatalog = (catalog) => ({
|
|
90
|
+
source: catalog.source,
|
|
91
|
+
assets: catalog.assets.map(asset => ({ ...asset })),
|
|
92
|
+
});
|
|
93
|
+
/**
|
|
94
|
+
* Creates a cached, coalescing THORChain secured-asset catalog reader.
|
|
95
|
+
*
|
|
96
|
+
* The live `/thorchain/securedassets` endpoint is authoritative. The static
|
|
97
|
+
* SDK table is returned only when the live read is unavailable or malformed,
|
|
98
|
+
* keeping destination discovery useful offline without presenting the fallback
|
|
99
|
+
* as fresh chain state.
|
|
100
|
+
*/
|
|
101
|
+
export const createThorchainSecuredAssetCatalog = ({ baseUrl = securedAssetsUrl, cacheTtlMs = DEFAULT_CACHE_TTL_MS, fetchJson = url => queryUrl(url), fallbackAssets = thorchainSecuredAssetFallback, now = Date.now, } = {}) => {
|
|
102
|
+
let snapshot;
|
|
103
|
+
let inFlight;
|
|
104
|
+
let requestGeneration = 0;
|
|
105
|
+
return async ({ forceRefresh = false } = {}) => {
|
|
106
|
+
const currentTime = now();
|
|
107
|
+
if (!forceRefresh && snapshot && currentTime < snapshot.expiresAt) {
|
|
108
|
+
return copyCatalog(snapshot.catalog);
|
|
109
|
+
}
|
|
110
|
+
if (inFlight && !forceRefresh) {
|
|
111
|
+
return copyCatalog(await inFlight);
|
|
112
|
+
}
|
|
113
|
+
const generation = ++requestGeneration;
|
|
114
|
+
const request = (async () => {
|
|
115
|
+
let catalog;
|
|
116
|
+
try {
|
|
117
|
+
catalog = {
|
|
118
|
+
assets: parseThorchainSecuredAssets(await fetchJson(baseUrl)),
|
|
119
|
+
source: 'thorchain',
|
|
120
|
+
};
|
|
121
|
+
}
|
|
122
|
+
catch {
|
|
123
|
+
catalog = {
|
|
124
|
+
assets: fallbackAssets.map(asset => ({ ...asset })),
|
|
125
|
+
source: 'fallback',
|
|
126
|
+
};
|
|
127
|
+
}
|
|
128
|
+
return catalog;
|
|
129
|
+
})();
|
|
130
|
+
inFlight = request;
|
|
131
|
+
try {
|
|
132
|
+
const catalog = await request;
|
|
133
|
+
if (generation === requestGeneration) {
|
|
134
|
+
snapshot = {
|
|
135
|
+
catalog,
|
|
136
|
+
expiresAt: now() + cacheTtlMs,
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
return copyCatalog(catalog);
|
|
140
|
+
}
|
|
141
|
+
finally {
|
|
142
|
+
if (inFlight === request) {
|
|
143
|
+
inFlight = undefined;
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
};
|
|
147
|
+
};
|
|
148
|
+
export const getThorchainSecuredAssetCatalog = createThorchainSecuredAssetCatalog();
|
|
149
|
+
const thorchainNonSecuredSwapDestinations = Object.entries(thorchainNativeTokensMetadata)
|
|
150
|
+
.filter(([id]) => parseSecuredDenom(id) === null)
|
|
151
|
+
.map(([id, metadata]) => ({
|
|
152
|
+
...metadata,
|
|
153
|
+
chain: Chain.THORChain,
|
|
154
|
+
id,
|
|
155
|
+
logo: metadata.logo ?? metadata.ticker.toLowerCase(),
|
|
156
|
+
}));
|
|
157
|
+
/**
|
|
158
|
+
* Returns the complete THORChain swap-destination universe for picker clients.
|
|
159
|
+
* Secured entries always come from the live catalog (or its explicit offline
|
|
160
|
+
* fallback); THORChain-native/Rujira entries remain sourced from the static
|
|
161
|
+
* token metadata because they are not part of `/thorchain/securedassets`.
|
|
162
|
+
*/
|
|
163
|
+
export const getThorchainSwapDestinationAssets = async (options = {}) => {
|
|
164
|
+
const { fetchCatalog = getThorchainSecuredAssetCatalog, forceRefresh } = options;
|
|
165
|
+
const catalog = await fetchCatalog({ forceRefresh });
|
|
166
|
+
return [...thorchainNonSecuredSwapDestinations.map(asset => ({ ...asset })), ...catalog.assets];
|
|
167
|
+
};
|
|
168
|
+
export const getThorchainSecuredAssetL1Asset = (coin) => {
|
|
169
|
+
if (coin.chain !== Chain.THORChain || !coin.id)
|
|
170
|
+
return null;
|
|
171
|
+
return parseSecuredDenom(coin.id)?.l1Asset ?? null;
|
|
172
|
+
};
|
|
173
|
+
//# sourceMappingURL=securedAssets.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"securedAssets.js","sourceRoot":"","sources":["../../../../../../../packages/core/chain/chains/cosmos/thor/securedAssets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAA;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,iDAAiD,CAAA;AAE9E,OAAO,EAAE,6BAA6B,EAAE,MAAM,iDAAiD,CAAA;AAC/F,OAAO,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAA;AAoC7D,MAAM,oBAAoB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAA;AAC1C,MAAM,gBAAgB,GAAG,GAAG,YAAY,CAAC,KAAK,CAAC,SAAS,CAAC,0BAA0B,CAAA;AAQnF,MAAM,iBAAiB,GAAG,CAAC,KAAa,EAA6D,EAAE;IACrG,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IACxC,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IACpC,IAAI,SAAS,IAAI,CAAC,IAAI,SAAS,KAAK,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACnG,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAA;IAC7C,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAA;IACvC,IACE,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC;QACjC,WAAW,KAAK,MAAM;QACtB,WAAW,KAAK,MAAM;QACtB,CAAC,6BAA6B,CAAC,IAAI,CAAC,IAAI,CAAC,EACzC,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;IAC/C,OAAO;QACL,KAAK;QACL,OAAO,EAAE,GAAG,WAAW,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE;QAC7D,MAAM;KACP,CAAA;AACH,CAAC,CAAA;AAED,MAAM,wBAAwB,GAAG,IAAI,GAAG,EAA0D,CAAA;AAClG,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,MAAM,CAAC,6BAA6B,CAAC,EAAE,CAAC;IACpE,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;QACjE,wBAAwB,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,QAAQ,CAAC,CAAA;IACvE,CAAC;AACH,CAAC;AAED,MAAM,cAAc,GAAG,CAAC,KAAa,EAAE,MAA0C,EAAgC,EAAE;IACjH,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAA;IACvC,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAA;IAExB,MAAM,aAAa,GAAG,6BAA6B,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IACjE,MAAM,cAAc,GAAG,wBAAwB,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAClE,MAAM,QAAQ,GAAG,aAAa,IAAI,cAAc,CAAA;IAEhD,OAAO;QACL,KAAK,EAAE,KAAK,CAAC,SAAS;QACtB,EAAE,EAAE,MAAM,CAAC,KAAK;QAChB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,IAAI,EAAE,QAAQ,EAAE,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE;QACnD,QAAQ,EAAE,CAAC;QACX,GAAG,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,QAAQ,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnF,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,SAAS,EAAE,IAAI;QACf,GAAG,MAAM;KACV,CAAA;AACH,CAAC,CAAA;AAED,MAAM,uBAAuB,GAAG,CAAC,KAAc,EAAE,KAAa,EAAU,EAAE;IACxE,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACtD,MAAM,IAAI,KAAK,CAAC,yDAAyD,KAAK,EAAE,CAAC,CAAA;IACnF,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,GAAY,EAA2B,EAAE;IACnF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,gEAAgE,OAAO,GAAG,EAAE,CAAC,CAAA;IAC/F,CAAC;IAED,MAAM,MAAM,GAA4B,EAAE,CAAA;IAC1C,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;IAC9B,KAAK,MAAM,KAAK,IAAI,GAAwB,EAAE,CAAC;QAC7C,IAAI,OAAO,KAAK,EAAE,KAAK,KAAK,QAAQ,EAAE,CAAC;YACrC,MAAM,IAAI,KAAK,CAAC,4EAA4E,CAAC,CAAA;QAC/F,CAAC;QACD,MAAM,KAAK,GAAG,cAAc,CAAC,KAAK,CAAC,KAAK,EAAE;YACxC,MAAM,EAAE,uBAAuB,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC;YACvD,KAAK,EAAE,uBAAuB,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC;SACrD,CAAC,CAAA;QACF,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,gDAAgD,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QAChG,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;YACxB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YAClB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACpB,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAA;IAC/D,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,6BAA6B,GAAqC,MAAM,CAAC,IAAI,CACxF,6BAA6B,CAC9B;KACE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;KACnC,MAAM,CAAC,CAAC,KAAK,EAAkC,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,CAAA;AAEpE,MAAM,WAAW,GAAG,CAAC,OAAqC,EAAgC,EAAE,CAAC,CAAC;IAC5F,MAAM,EAAE,OAAO,CAAC,MAAM;IACtB,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC;CACpD,CAAC,CAAA;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,kCAAkC,GAAG,CAAC,EACjD,OAAO,GAAG,gBAAgB,EAC1B,UAAU,GAAG,oBAAoB,EACjC,SAAS,GAAG,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAU,GAAG,CAAC,EACzC,cAAc,GAAG,6BAA6B,EAC9C,GAAG,GAAG,IAAI,CAAC,GAAG,MAC+B,EAAE,EAAuC,EAAE;IACxF,IAAI,QAAkF,CAAA;IACtF,IAAI,QAA2D,CAAA;IAC/D,IAAI,iBAAiB,GAAG,CAAC,CAAA;IAEzB,OAAO,KAAK,EAAE,EAAE,YAAY,GAAG,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE;QAC7C,MAAM,WAAW,GAAG,GAAG,EAAE,CAAA;QACzB,IAAI,CAAC,YAAY,IAAI,QAAQ,IAAI,WAAW,GAAG,QAAQ,CAAC,SAAS,EAAE,CAAC;YAClE,OAAO,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;QACtC,CAAC;QACD,IAAI,QAAQ,IAAI,CAAC,YAAY,EAAE,CAAC;YAC9B,OAAO,WAAW,CAAC,MAAM,QAAQ,CAAC,CAAA;QACpC,CAAC;QAED,MAAM,UAAU,GAAG,EAAE,iBAAiB,CAAA;QACtC,MAAM,OAAO,GAAG,CAAC,KAAK,IAAI,EAAE;YAC1B,IAAI,OAAqC,CAAA;YACzC,IAAI,CAAC;gBACH,OAAO,GAAG;oBACR,MAAM,EAAE,2BAA2B,CAAC,MAAM,SAAS,CAAC,OAAO,CAAC,CAAC;oBAC7D,MAAM,EAAE,WAAW;iBACpB,CAAA;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,GAAG;oBACR,MAAM,EAAE,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC;oBACnD,MAAM,EAAE,UAAU;iBACnB,CAAA;YACH,CAAC;YACD,OAAO,OAAO,CAAA;QAChB,CAAC,CAAC,EAAE,CAAA;QACJ,QAAQ,GAAG,OAAO,CAAA;QAElB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,OAAO,CAAA;YAC7B,IAAI,UAAU,KAAK,iBAAiB,EAAE,CAAC;gBACrC,QAAQ,GAAG;oBACT,OAAO;oBACP,SAAS,EAAE,GAAG,EAAE,GAAG,UAAU;iBAC9B,CAAA;YACH,CAAC;YACD,OAAO,WAAW,CAAC,OAAO,CAAC,CAAA;QAC7B,CAAC;gBAAS,CAAC;YACT,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;gBACzB,QAAQ,GAAG,SAAS,CAAA;YACtB,CAAC;QACH,CAAC;IACH,CAAC,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,+BAA+B,GAAG,kCAAkC,EAAE,CAAA;AAEnF,MAAM,mCAAmC,GAAyB,MAAM,CAAC,OAAO,CAAC,6BAA6B,CAAC;KAC5G,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC;KAChD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;IACxB,GAAG,QAAQ;IACX,KAAK,EAAE,KAAK,CAAC,SAAS;IACtB,EAAE;IACF,IAAI,EAAE,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE;CACrD,CAAC,CAAC,CAAA;AAEL;;;;;GAKG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAAG,KAAK,EACpD,UAGI,EAAE,EACoC,EAAE;IAC5C,MAAM,EAAE,YAAY,GAAG,+BAA+B,EAAE,YAAY,EAAE,GAAG,OAAO,CAAA;IAChF,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,EAAE,YAAY,EAAE,CAAC,CAAA;IACpD,OAAO,CAAC,GAAG,mCAAmC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;AACjG,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,IAAmC,EAAiB,EAAE;IACpG,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,EAAE;QAAE,OAAO,IAAI,CAAA;IAC3D,OAAO,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,OAAO,IAAI,IAAI,CAAA;AACpD,CAAC,CAAA"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { EvmChain } from '@vultisig/core-chain/Chain';
|
|
2
|
-
export declare const hyperliquidBlockExplorerUrl
|
|
2
|
+
export declare const hyperliquidBlockExplorerUrl: string;
|
|
3
3
|
export declare const hyperliquid: {
|
|
4
4
|
blockExplorers: {
|
|
5
5
|
readonly default: {
|
|
6
6
|
readonly name: "Hypurrscan";
|
|
7
|
-
readonly url:
|
|
7
|
+
readonly url: string;
|
|
8
8
|
};
|
|
9
9
|
};
|
|
10
10
|
blockTime?: number | undefined | undefined;
|
|
@@ -54,12 +54,12 @@ export declare const hyperliquid: {
|
|
|
54
54
|
verifyHash?: ((client: import("viem").Client, parameters: import("viem").VerifyHashActionParameters) => Promise<import("viem").VerifyHashActionReturnType>) | undefined;
|
|
55
55
|
readonly network: "hyperliquid";
|
|
56
56
|
};
|
|
57
|
-
export declare const robinhoodBlockExplorerUrl
|
|
57
|
+
export declare const robinhoodBlockExplorerUrl: string;
|
|
58
58
|
export declare const robinhood: {
|
|
59
59
|
blockExplorers: {
|
|
60
60
|
readonly default: {
|
|
61
61
|
readonly name: "Blockscout";
|
|
62
|
-
readonly url:
|
|
62
|
+
readonly url: string;
|
|
63
63
|
};
|
|
64
64
|
};
|
|
65
65
|
blockTime?: number | undefined | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chainInfo.d.ts","sourceRoot":"","sources":["../../../../../../packages/core/chain/chains/evm/chainInfo.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;
|
|
1
|
+
{"version":3,"file":"chainInfo.d.ts","sourceRoot":"","sources":["../../../../../../packages/core/chain/chains/evm/chainInfo.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AA2BrD,eAAO,MAAM,2BAA2B,QAAuD,CAAA;AAG/F,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgBtB,CAAA;AAGF,eAAO,MAAM,yBAAyB,QAAqD,CAAA;AAG3F,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgBpB,CAAA;AAsCF,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;mBA1Dc,CAAC;4BACT,CAAC;kBAA+C,CAAC;uBACxC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkEvC,CAAA;AAEF;;;;GAIG;AACH,eAAO,MAAM,YAAY,GAAI,OAAO,QAAQ,KAAG,MAA+D,CAAA;AAE9G,eAAO,MAAM,aAAa,GAAI,OAAO,QAAQ,KAAG,MAE/C,CAAA;AAED,eAAO,MAAM,oBAAoB,GAAI,SAAS,MAAM,KAAG,QAAQ,GAAG,SAEjE,CAAA"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { EvmChain } from '@vultisig/core-chain/Chain';
|
|
2
|
+
import { chainRegistry } from '@vultisig/core-chain/chainRegistry';
|
|
2
3
|
import { getCustomRpcOverride } from '@vultisig/core-chain/chains/customRpc/customRpcOverrides';
|
|
3
4
|
import { chainFeeCoin } from '@vultisig/core-chain/coin/chainFeeCoin';
|
|
4
5
|
import { rootApiUrl } from '@vultisig/core-config';
|
|
@@ -10,7 +11,7 @@ import { arbitrum, avalanche, base, blast, bsc, cronos, mainnet, mantle, optimis
|
|
|
10
11
|
const hyperliquidRpcUrl = `${rootApiUrl}/hyperevm/`;
|
|
11
12
|
// HyperEVM transactions and addresses live under hypurrscan's `/evm/` section.
|
|
12
13
|
// The bare `https://hypurrscan.io/tx/<hash>` path returns a server error.
|
|
13
|
-
export const hyperliquidBlockExplorerUrl =
|
|
14
|
+
export const hyperliquidBlockExplorerUrl = chainRegistry[EvmChain.Hyperliquid].explorer.baseUrl;
|
|
14
15
|
const hyperliquidNativeCoin = chainFeeCoin[EvmChain.Hyperliquid];
|
|
15
16
|
export const hyperliquid = defineChain({
|
|
16
17
|
id: 999,
|
|
@@ -30,7 +31,7 @@ export const hyperliquid = defineChain({
|
|
|
30
31
|
},
|
|
31
32
|
});
|
|
32
33
|
const robinhoodRpcUrl = 'https://rpc.mainnet.chain.robinhood.com';
|
|
33
|
-
export const robinhoodBlockExplorerUrl =
|
|
34
|
+
export const robinhoodBlockExplorerUrl = chainRegistry[EvmChain.Robinhood].explorer.baseUrl;
|
|
34
35
|
const robinhoodNativeCoin = chainFeeCoin[EvmChain.Robinhood];
|
|
35
36
|
export const robinhood = defineChain({
|
|
36
37
|
id: 4663,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chainInfo.js","sourceRoot":"","sources":["../../../../../../packages/core/chain/chains/evm/chainInfo.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,0DAA0D,CAAA;AAC/F,OAAO,EAAE,YAAY,EAAE,MAAM,wCAAwC,CAAA;AACrE,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAA;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAA;AACtE,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAA;AAChE,OAAO,EAAsB,WAAW,EAAE,MAAM,MAAM,CAAA;AACtD,OAAO,EACL,QAAQ,EACR,SAAS,EACT,IAAI,EACJ,KAAK,EACL,GAAG,EACH,MAAM,EACN,OAAO,EACP,MAAM,EACN,QAAQ,EACR,OAAO,EACP,GAAG,EACH,MAAM,GACP,MAAM,aAAa,CAAA;AAEpB,MAAM,iBAAiB,GAAG,GAAG,UAAU,YAAY,CAAA;AACnD,+EAA+E;AAC/E,0EAA0E;AAC1E,MAAM,CAAC,MAAM,2BAA2B,GAAG,
|
|
1
|
+
{"version":3,"file":"chainInfo.js","sourceRoot":"","sources":["../../../../../../packages/core/chain/chains/evm/chainInfo.ts"],"names":[],"mappings":"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"}
|
|
@@ -80,6 +80,22 @@ export type GeneralSwapQuote = {
|
|
|
80
80
|
dstAmount: string;
|
|
81
81
|
provider: GeneralSwapProvider;
|
|
82
82
|
routeProvider?: string;
|
|
83
|
+
/**
|
|
84
|
+
* Signed price impact of the route as a FRACTION, not a percent: `0.0133`
|
|
85
|
+
* means 1.33% of output lost, and a negative value is a favorable trade.
|
|
86
|
+
*
|
|
87
|
+
* Do NOT hand this to `evaluatePriceImpactPercent` — it takes a percent, so
|
|
88
|
+
* `0.45` would be read as 0.45% rather than 45% and pass a ceiling it should
|
|
89
|
+
* fail. Scale it first (`fraction * 100`), or use
|
|
90
|
+
* `evaluateImpactFromFractionString` when the raw string is still in hand.
|
|
91
|
+
*
|
|
92
|
+
* Absent whenever no usable figure was found, not as a property of the
|
|
93
|
+
* provider: today only SwapKit routes populate it, from `meta.priceImpact`
|
|
94
|
+
* with a `totalSlippageBps` fallback, and even those omit it when neither is
|
|
95
|
+
* a finite number. Consumers hide the row rather than substitute anything
|
|
96
|
+
* for it.
|
|
97
|
+
*/
|
|
98
|
+
priceImpactFraction?: number;
|
|
83
99
|
tx: GeneralSwapTx;
|
|
84
100
|
};
|
|
85
101
|
//# sourceMappingURL=GeneralSwapQuote.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GeneralSwapQuote.d.ts","sourceRoot":"","sources":["../../../../../../packages/core/chain/swap/general/GeneralSwapQuote.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mCAAmC,CAAA;AAE3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAA;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAE3D,MAAM,MAAM,aAAa,GACrB;IACE,GAAG,EAAE;QACH,IAAI,EAAE,MAAM,CAAA;QACZ,EAAE,EAAE,MAAM,CAAA;QACV,IAAI,EAAE,MAAM,CAAA;QACZ,KAAK,EAAE,MAAM,CAAA;QACb,QAAQ,CAAC,EAAE,MAAM,CAAA;QACjB,YAAY,CAAC,EAAE,OAAO,CAAA;QACtB;;;;;;;;;;;;;;WAcG;QACH,eAAe,CAAC,EAAE,MAAM,CAAA;KACzB,CAAA;CACF,GACD;IACE,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,CAAA;QACZ,UAAU,EAAE,MAAM,CAAA;QAClB,OAAO,EAAE,OAAO,CAAA;KACjB,CAAA;CACF,GACD;IACE,QAAQ,EAAE;QACR,EAAE,EAAE,MAAM,CAAA;QACV,MAAM,EAAE,MAAM,CAAA;QACd,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,SAAS,CAAC,EAAE,UAAU,CAAA;QACtB,cAAc,CAAC,EAAE,MAAM,CAAA;QACvB,MAAM,CAAC,EAAE,MAAM,CAAA;KAChB,CAAA;CACF,GACD;IACE,aAAa,EAAE;QACb,SAAS,EAAE,MAAM,CAAA;QACjB,QAAQ,EAAE,MAAM,CAAA;QAChB,QAAQ,EAAE,MAAM,CAAA;QAChB,UAAU,EAAE,MAAM,CAAA;QAClB,SAAS,EAAE,MAAM,CAAA;QACjB,OAAO,EAAE,MAAM,CAAA;QACf,OAAO,EAAE,MAAM,CAAA;QACf,WAAW,EAAE,MAAM,CAAA;QACnB,SAAS,EAAE,MAAM,CAAA;QACjB,IAAI,EAAE,gBAAgB,CAAA;QACtB,iBAAiB,EAAE,OAAO,CAAA;QAC1B,gBAAgB,EAAE,mBAAmB,CAAA;QACrC,eAAe,EAAE,mBAAmB,CAAA;QACpC,OAAO,EAAE,MAAM,CAAA;QACf,OAAO,EAAE,MAAM,CAAA;QACf;;kFAE0E;QAC1E,cAAc,CAAC,EAAE,IAAI,CAAA;KACtB,CAAA;CACF,CAAA;AAEL;;;;;;;;;GASG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,mBAAmB,CAAA;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,EAAE,EAAE,aAAa,CAAA;CAClB,CAAA"}
|
|
1
|
+
{"version":3,"file":"GeneralSwapQuote.d.ts","sourceRoot":"","sources":["../../../../../../packages/core/chain/swap/general/GeneralSwapQuote.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mCAAmC,CAAA;AAE3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAA;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAE3D,MAAM,MAAM,aAAa,GACrB;IACE,GAAG,EAAE;QACH,IAAI,EAAE,MAAM,CAAA;QACZ,EAAE,EAAE,MAAM,CAAA;QACV,IAAI,EAAE,MAAM,CAAA;QACZ,KAAK,EAAE,MAAM,CAAA;QACb,QAAQ,CAAC,EAAE,MAAM,CAAA;QACjB,YAAY,CAAC,EAAE,OAAO,CAAA;QACtB;;;;;;;;;;;;;;WAcG;QACH,eAAe,CAAC,EAAE,MAAM,CAAA;KACzB,CAAA;CACF,GACD;IACE,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,CAAA;QACZ,UAAU,EAAE,MAAM,CAAA;QAClB,OAAO,EAAE,OAAO,CAAA;KACjB,CAAA;CACF,GACD;IACE,QAAQ,EAAE;QACR,EAAE,EAAE,MAAM,CAAA;QACV,MAAM,EAAE,MAAM,CAAA;QACd,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,SAAS,CAAC,EAAE,UAAU,CAAA;QACtB,cAAc,CAAC,EAAE,MAAM,CAAA;QACvB,MAAM,CAAC,EAAE,MAAM,CAAA;KAChB,CAAA;CACF,GACD;IACE,aAAa,EAAE;QACb,SAAS,EAAE,MAAM,CAAA;QACjB,QAAQ,EAAE,MAAM,CAAA;QAChB,QAAQ,EAAE,MAAM,CAAA;QAChB,UAAU,EAAE,MAAM,CAAA;QAClB,SAAS,EAAE,MAAM,CAAA;QACjB,OAAO,EAAE,MAAM,CAAA;QACf,OAAO,EAAE,MAAM,CAAA;QACf,WAAW,EAAE,MAAM,CAAA;QACnB,SAAS,EAAE,MAAM,CAAA;QACjB,IAAI,EAAE,gBAAgB,CAAA;QACtB,iBAAiB,EAAE,OAAO,CAAA;QAC1B,gBAAgB,EAAE,mBAAmB,CAAA;QACrC,eAAe,EAAE,mBAAmB,CAAA;QACpC,OAAO,EAAE,MAAM,CAAA;QACf,OAAO,EAAE,MAAM,CAAA;QACf;;kFAE0E;QAC1E,cAAc,CAAC,EAAE,IAAI,CAAA;KACtB,CAAA;CACF,CAAA;AAEL;;;;;;;;;GASG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,mBAAmB,CAAA;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB;;;;;;;;;;;;;;OAcG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,EAAE,EAAE,aAAa,CAAA;CAClB,CAAA"}
|
|
@@ -3,6 +3,16 @@ import { Chain } from '@vultisig/core-chain/Chain';
|
|
|
3
3
|
export declare class SwapKitNoEligibleRoutesError extends Error {
|
|
4
4
|
constructor();
|
|
5
5
|
}
|
|
6
|
+
/**
|
|
7
|
+
* A SwapKit fee entry could not be resolved to a coin this swap deals in —
|
|
8
|
+
* missing, unknown or mixed assets, or a negative amount.
|
|
9
|
+
*
|
|
10
|
+
* Distinct from a programming error so callers can fail open on the branches
|
|
11
|
+
* where the fee is not part of the signed transaction, without also swallowing
|
|
12
|
+
* bugs in the resolution itself.
|
|
13
|
+
*/
|
|
14
|
+
export declare class SwapKitFeeShapeError extends Error {
|
|
15
|
+
}
|
|
6
16
|
/**
|
|
7
17
|
* The SwapKit pair is structurally supported (per the cached `/providers`
|
|
8
18
|
* snapshot) but no route was returned — i.e. the amount is below the provider
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SwapKitErrors.d.ts","sourceRoot":"","sources":["../../../../../../../packages/core/chain/swap/general/swapkit/SwapKitErrors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAA;AAElD,6EAA6E;AAC7E,qBAAa,4BAA6B,SAAQ,KAAK;;CAItD;AAED;;;;;GAKG;AACH,qBAAa,8BAA+B,SAAQ,KAAK;IAErD,QAAQ,CAAC,SAAS,EAAE,KAAK;IACzB,QAAQ,CAAC,OAAO,EAAE,KAAK;gBADd,SAAS,EAAE,KAAK,EAChB,OAAO,EAAE,KAAK;CAI1B"}
|
|
1
|
+
{"version":3,"file":"SwapKitErrors.d.ts","sourceRoot":"","sources":["../../../../../../../packages/core/chain/swap/general/swapkit/SwapKitErrors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAA;AAElD,6EAA6E;AAC7E,qBAAa,4BAA6B,SAAQ,KAAK;;CAItD;AAED;;;;;;;GAOG;AACH,qBAAa,oBAAqB,SAAQ,KAAK;CAAG;AAElD;;;;;GAKG;AACH,qBAAa,8BAA+B,SAAQ,KAAK;IAErD,QAAQ,CAAC,SAAS,EAAE,KAAK;IACzB,QAAQ,CAAC,OAAO,EAAE,KAAK;gBADd,SAAS,EAAE,KAAK,EAChB,OAAO,EAAE,KAAK;CAI1B"}
|
|
@@ -4,6 +4,16 @@ export class SwapKitNoEligibleRoutesError extends Error {
|
|
|
4
4
|
super('SwapKit returned no eligible routes.');
|
|
5
5
|
}
|
|
6
6
|
}
|
|
7
|
+
/**
|
|
8
|
+
* A SwapKit fee entry could not be resolved to a coin this swap deals in —
|
|
9
|
+
* missing, unknown or mixed assets, or a negative amount.
|
|
10
|
+
*
|
|
11
|
+
* Distinct from a programming error so callers can fail open on the branches
|
|
12
|
+
* where the fee is not part of the signed transaction, without also swallowing
|
|
13
|
+
* bugs in the resolution itself.
|
|
14
|
+
*/
|
|
15
|
+
export class SwapKitFeeShapeError extends Error {
|
|
16
|
+
}
|
|
7
17
|
/**
|
|
8
18
|
* The SwapKit pair is structurally supported (per the cached `/providers`
|
|
9
19
|
* snapshot) but no route was returned — i.e. the amount is below the provider
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SwapKitErrors.js","sourceRoot":"","sources":["../../../../../../../packages/core/chain/swap/general/swapkit/SwapKitErrors.ts"],"names":[],"mappings":"AAEA,6EAA6E;AAC7E,MAAM,OAAO,4BAA6B,SAAQ,KAAK;IACrD;QACE,KAAK,CAAC,sCAAsC,CAAC,CAAA;IAC/C,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,OAAO,8BAA+B,SAAQ,KAAK;IAE5C;IACA;IAFX,YACW,SAAgB,EAChB,OAAc;QAEvB,KAAK,CAAC,6CAA6C,SAAS,OAAO,OAAO,GAAG,CAAC,CAAA;QAHrE,cAAS,GAAT,SAAS,CAAO;QAChB,YAAO,GAAP,OAAO,CAAO;IAGzB,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"SwapKitErrors.js","sourceRoot":"","sources":["../../../../../../../packages/core/chain/swap/general/swapkit/SwapKitErrors.ts"],"names":[],"mappings":"AAEA,6EAA6E;AAC7E,MAAM,OAAO,4BAA6B,SAAQ,KAAK;IACrD;QACE,KAAK,CAAC,sCAAsC,CAAC,CAAA;IAC/C,CAAC;CACF;AAED;;;;;;;GAOG;AACH,MAAM,OAAO,oBAAqB,SAAQ,KAAK;CAAG;AAElD;;;;;GAKG;AACH,MAAM,OAAO,8BAA+B,SAAQ,KAAK;IAE5C;IACA;IAFX,YACW,SAAgB,EAChB,OAAc;QAEvB,KAAK,CAAC,6CAA6C,SAAS,OAAO,OAAO,GAAG,CAAC,CAAA;QAHrE,cAAS,GAAT,SAAS,CAAO;QAChB,YAAO,GAAP,OAAO,CAAO;IAGzB,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getSwapKitQuote.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/chain/swap/general/swapkit/api/getSwapKitQuote.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAA;AAGnE,OAAO,EAAE,gBAAgB,EAAiB,MAAM,oDAAoD,CAAA;AAGpG,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,gEAAgE,CAAA;
|
|
1
|
+
{"version":3,"file":"getSwapKitQuote.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/chain/swap/general/swapkit/api/getSwapKitQuote.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAA;AAGnE,OAAO,EAAE,gBAAgB,EAAiB,MAAM,oDAAoD,CAAA;AAGpG,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,gEAAgE,CAAA;AAcxH,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAA;AAGzE,KAAK,KAAK,GAAG,MAAM,CAAC,iBAAiB,EAAE,WAAW,CAAC,mBAAmB,CAAC,CAAC,GAAG;IACzE,IAAI,EAAE,WAAW,CAAC,kBAAkB,CAAC,CAAA;IACrC,MAAM,EAAE,MAAM,CAAA;IACd,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,kEAAkE;IAClE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,CAAA;AAo7BD,eAAO,MAAM,eAAe,GAAU,+CAMnC,KAAK,KAAG,OAAO,CAAC,gBAAgB,CA0DlC,CAAA"}
|
|
@@ -5,7 +5,7 @@ import { chainFeeCoin } from '@vultisig/core-chain/coin/chainFeeCoin';
|
|
|
5
5
|
import { usdc } from '@vultisig/core-chain/coin/knownTokens';
|
|
6
6
|
import { logUnenforcedAggregatorDestination } from '@vultisig/core-chain/swap/general/knownAggregatorRouters';
|
|
7
7
|
import { getSwapKitConfig } from '@vultisig/core-chain/swap/general/swapkit/config';
|
|
8
|
-
import { SwapKitAmountBelowMinimumError, SwapKitNoEligibleRoutesError, } from '@vultisig/core-chain/swap/general/swapkit/SwapKitErrors';
|
|
8
|
+
import { SwapKitAmountBelowMinimumError, SwapKitFeeShapeError, SwapKitNoEligibleRoutesError, } from '@vultisig/core-chain/swap/general/swapkit/SwapKitErrors';
|
|
9
9
|
import { isSwapKitPairSupported, normalizeSwapKitProvider, swapKitExcludedProviders, } from '@vultisig/core-chain/swap/general/swapkit/SwapKitProviders';
|
|
10
10
|
import { isOneOf } from '@vultisig/lib-utils/array/isOneOf';
|
|
11
11
|
import { withoutUndefinedFields } from '@vultisig/lib-utils/record/withoutUndefinedFields';
|
|
@@ -231,7 +231,7 @@ const decodeApproveSpender = (data) => {
|
|
|
231
231
|
// tx.to fallback instead of emitting a spurious zero-address approval.
|
|
232
232
|
return spender === '0x0000000000000000000000000000000000000000' ? undefined : spender;
|
|
233
233
|
};
|
|
234
|
-
const buildEvmTx = (tx, fromAddress, approvalTx) => {
|
|
234
|
+
const buildEvmTx = ({ tx, fromAddress, approvalTx, affiliateFee }) => {
|
|
235
235
|
if (!isRecord(tx)) {
|
|
236
236
|
throw new Error('SwapKit EVM route did not return a transaction object.');
|
|
237
237
|
}
|
|
@@ -256,6 +256,16 @@ const buildEvmTx = (tx, fromAddress, approvalTx) => {
|
|
|
256
256
|
value: bigintString(evmTx.value),
|
|
257
257
|
gasLimit: safeBigInt(gas),
|
|
258
258
|
...(approvalAddress ? { approvalAddress } : {}),
|
|
259
|
+
// SwapKit itemizes the affiliate/service fee it charges. The Solana
|
|
260
|
+
// branch already surfaces it; leaving it off the EVM branch made an
|
|
261
|
+
// aggregator swap look like it carried no swap fee at all, so the fee row
|
|
262
|
+
// had nothing to show and the total omitted it.
|
|
263
|
+
//
|
|
264
|
+
// Absent covers three cases — no fee entries, an itemized zero, and a
|
|
265
|
+
// shape that could not be resolved — because none of them establishes an
|
|
266
|
+
// amount we can vouch for. Consumers report the fee as part of the quoted
|
|
267
|
+
// rate rather than asserting a zero.
|
|
268
|
+
...(affiliateFee && affiliateFee.amount > 0n ? { affiliateFee } : {}),
|
|
259
269
|
},
|
|
260
270
|
};
|
|
261
271
|
};
|
|
@@ -299,11 +309,11 @@ const getSwapKitSwapFee = (fees, from, to, routeProvider) => {
|
|
|
299
309
|
continue;
|
|
300
310
|
}
|
|
301
311
|
if (!fee.asset) {
|
|
302
|
-
throw new
|
|
312
|
+
throw new SwapKitFeeShapeError(`SwapKit ${type} fee is missing its asset.`);
|
|
303
313
|
}
|
|
304
314
|
const candidate = candidates.find(({ asset, coin }) => asset === fee.asset.toLowerCase() && matchesSwapKitFeeChain(fee.chain, coin.chain));
|
|
305
315
|
if (!candidate) {
|
|
306
|
-
throw new
|
|
316
|
+
throw new SwapKitFeeShapeError(`SwapKit ${type} fee uses unsupported asset ${fee.asset}.`);
|
|
307
317
|
}
|
|
308
318
|
const current = {
|
|
309
319
|
amount: toChainAmount(fee.amount, candidate.coin.decimals),
|
|
@@ -312,10 +322,10 @@ const getSwapKitSwapFee = (fees, from, to, routeProvider) => {
|
|
|
312
322
|
decimals: candidate.coin.decimals,
|
|
313
323
|
};
|
|
314
324
|
if (current.amount < 0n) {
|
|
315
|
-
throw new
|
|
325
|
+
throw new SwapKitFeeShapeError(`SwapKit ${type} fee amount cannot be negative.`);
|
|
316
326
|
}
|
|
317
327
|
if (result && !sameSwapFeeCoin(result, current)) {
|
|
318
|
-
throw new
|
|
328
|
+
throw new SwapKitFeeShapeError('SwapKit affiliate and service fees use different assets.');
|
|
319
329
|
}
|
|
320
330
|
result = result ? { ...result, amount: result.amount + current.amount } : current;
|
|
321
331
|
}
|
|
@@ -484,7 +494,56 @@ const buildSwapKitTx = (response, from, to, amount, routeProvider) => {
|
|
|
484
494
|
if (shouldUseTransferTx(from.chain)) {
|
|
485
495
|
return buildTransferTx(response, from, amount);
|
|
486
496
|
}
|
|
487
|
-
return buildEvmTx(
|
|
497
|
+
return buildEvmTx({
|
|
498
|
+
tx: response.tx,
|
|
499
|
+
fromAddress: from.address,
|
|
500
|
+
approvalTx: response.approvalTx,
|
|
501
|
+
affiliateFee: getSwapKitEvmSwapFee({ fees: response.fees, from, to, routeProvider }),
|
|
502
|
+
});
|
|
503
|
+
};
|
|
504
|
+
/**
|
|
505
|
+
* SwapKit's affiliate/service fee for an EVM route, or `undefined` when its
|
|
506
|
+
* shape cannot be resolved.
|
|
507
|
+
*
|
|
508
|
+
* The fee is not part of the signed EVM transaction — `from`/`to`/`data`/
|
|
509
|
+
* `value`/`gas` are — so an unexpected shape must never take down a route that
|
|
510
|
+
* would otherwise sign. Only [SwapKitFeeShapeError] is swallowed; anything else
|
|
511
|
+
* is a bug in the resolution and stays loud. The Solana branch calls
|
|
512
|
+
* `getSwapKitSwapFee` bare and lets it throw on purpose: its tx type requires
|
|
513
|
+
* the fee, so an unresolved one really is fatal there.
|
|
514
|
+
*/
|
|
515
|
+
const getSwapKitEvmSwapFee = ({ fees, from, to, routeProvider }) => {
|
|
516
|
+
try {
|
|
517
|
+
return getSwapKitSwapFee(fees, from, to, routeProvider);
|
|
518
|
+
}
|
|
519
|
+
catch (error) {
|
|
520
|
+
if (!(error instanceof SwapKitFeeShapeError)) {
|
|
521
|
+
throw error;
|
|
522
|
+
}
|
|
523
|
+
console.warn('[getSwapKitQuote] unresolved SwapKit fee on an EVM route; reporting none', error);
|
|
524
|
+
return undefined;
|
|
525
|
+
}
|
|
526
|
+
};
|
|
527
|
+
const bpsPerUnit = 10_000;
|
|
528
|
+
const finiteNumber = (value) => typeof value === 'number' && Number.isFinite(value) ? value : undefined;
|
|
529
|
+
/**
|
|
530
|
+
* Price impact of a route as a signed fraction, preferring `meta.priceImpact`
|
|
531
|
+
* (the figure iOS and Android show) and falling back to the same directional
|
|
532
|
+
* movement expressed in bps for routes whose meta the proxy omits.
|
|
533
|
+
*
|
|
534
|
+
* Both are narrowed rather than trusted: nothing validates the proxy's JSON on
|
|
535
|
+
* the way in, so an explicit `null` or a stringified number would otherwise
|
|
536
|
+
* land in a `number` field and reach consumers as `null.toFixed(...)` or a
|
|
537
|
+
* 100x-wrong figure. A value that fails the check falls through to the next
|
|
538
|
+
* source, and an unreadable pair reports nothing at all.
|
|
539
|
+
*/
|
|
540
|
+
const routePriceImpact = ({ meta, totalSlippageBps }) => {
|
|
541
|
+
const metaImpact = finiteNumber(meta?.priceImpact);
|
|
542
|
+
if (metaImpact !== undefined) {
|
|
543
|
+
return metaImpact;
|
|
544
|
+
}
|
|
545
|
+
const slippageBps = finiteNumber(totalSlippageBps);
|
|
546
|
+
return slippageBps === undefined ? undefined : slippageBps / bpsPerUnit;
|
|
488
547
|
};
|
|
489
548
|
const routeExpectedBuyAmount = (route, decimals) => {
|
|
490
549
|
if (!route.expectedBuyAmount) {
|
|
@@ -628,10 +687,16 @@ export const getSwapKitQuote = async ({ from, to, amount, affiliateBps, slippage
|
|
|
628
687
|
disableBuildTx: shouldUseTransferTx(from.chain) && !swapKitPrebuiltTxSourceChains.has(from.chain) ? true : undefined,
|
|
629
688
|
}));
|
|
630
689
|
const routeProvider = getRouteProviderName(swapResponse) ?? getRouteProviderName(route);
|
|
690
|
+
// Read from the quote-stage route, unlike `dstAmount` and `routeProvider`
|
|
691
|
+
// which prefer the swap-stage response. No `/v3/swap` shape we model carries
|
|
692
|
+
// impact, and both native clients read it off the chosen route the same way;
|
|
693
|
+
// if it is ever restated there, it should be preferred here too.
|
|
694
|
+
const priceImpactFraction = routePriceImpact(route);
|
|
631
695
|
return {
|
|
632
696
|
dstAmount: parseExpectedBuyAmount(swapResponse.expectedBuyAmount ?? route.expectedBuyAmount, to.decimals),
|
|
633
697
|
provider: 'swapkit',
|
|
634
698
|
routeProvider,
|
|
699
|
+
...(priceImpactFraction === undefined ? {} : { priceImpactFraction }),
|
|
635
700
|
tx: buildSwapKitTx(swapResponse, from, to, amount, routeProvider),
|
|
636
701
|
};
|
|
637
702
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getSwapKitQuote.js","sourceRoot":"","sources":["../../../../../../../../packages/core/chain/swap/general/swapkit/api/getSwapKitQuote.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"getSwapKitQuote.js","sourceRoot":"","sources":["../../../../../../../../packages/core/chain/swap/general/swapkit/api/getSwapKitQuote.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Chain } from '@vultisig/core-chain/Chain';
|
|
2
|
-
type
|
|
2
|
+
import { type BlockExplorerEntity } from '@vultisig/core-chain/chainRegistry';
|
|
3
3
|
type GetBlockExplorerUrlInput = {
|
|
4
4
|
chain: Chain;
|
|
5
|
-
entity:
|
|
5
|
+
entity: BlockExplorerEntity;
|
|
6
6
|
value: string;
|
|
7
7
|
};
|
|
8
8
|
export declare const getBlockExplorerUrl: ({ chain, entity, value }: GetBlockExplorerUrlInput) => string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../packages/core/chain/utils/getBlockExplorerUrl/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../packages/core/chain/utils/getBlockExplorerUrl/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAA;AAClD,OAAO,EAAE,KAAK,mBAAmB,EAAiB,MAAM,oCAAoC,CAAA;AAE5F,KAAK,wBAAwB,GAAG;IAC9B,KAAK,EAAE,KAAK,CAAA;IACZ,MAAM,EAAE,mBAAmB,CAAA;IAC3B,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED,eAAO,MAAM,mBAAmB,GAAI,0BAA0B,wBAAwB,KAAG,MAGxF,CAAA"}
|
|
@@ -1,133 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { hyperliquidBlockExplorerUrl, robinhoodBlockExplorerUrl } from '@vultisig/core-chain/chains/evm/chainInfo';
|
|
3
|
-
import { match } from '@vultisig/lib-utils/match';
|
|
4
|
-
const cosmosBlockExplorer = 'https://www.mintscan.io';
|
|
5
|
-
const blockExplorerBaseUrl = {
|
|
6
|
-
[Chain.Bitcoin]: 'https://mempool.space',
|
|
7
|
-
[Chain.BitcoinCash]: 'https://blockchair.com/bitcoin-cash',
|
|
8
|
-
[Chain.Litecoin]: 'https://blockchair.com/litecoin',
|
|
9
|
-
[Chain.Dogecoin]: 'https://blockchair.com/dogecoin',
|
|
10
|
-
[Chain.Dash]: 'https://blockchair.com/dash',
|
|
11
|
-
[Chain.Solana]: 'https://solscan.io',
|
|
12
|
-
[Chain.Ethereum]: 'https://etherscan.io',
|
|
13
|
-
[Chain.Cosmos]: `${cosmosBlockExplorer}/cosmos`,
|
|
14
|
-
[Chain.Dydx]: `${cosmosBlockExplorer}/dydx`,
|
|
15
|
-
[Chain.Kujira]: 'https://finder.kujira.network/kaiyo-1',
|
|
16
|
-
[Chain.Avalanche]: 'https://snowtrace.io',
|
|
17
|
-
[Chain.BSC]: 'https://bscscan.com',
|
|
18
|
-
[Chain.Arbitrum]: 'https://arbiscan.io',
|
|
19
|
-
[Chain.Base]: 'https://basescan.org',
|
|
20
|
-
[Chain.Optimism]: 'https://optimistic.etherscan.io',
|
|
21
|
-
[Chain.Polygon]: 'https://polygonscan.com',
|
|
22
|
-
[Chain.Blast]: 'https://blastscan.io',
|
|
23
|
-
[Chain.CronosChain]: 'https://cronoscan.com',
|
|
24
|
-
[Chain.Sui]: 'https://suiscan.xyz/mainnet',
|
|
25
|
-
[Chain.Polkadot]: 'https://assethub-polkadot.subscan.io',
|
|
26
|
-
[Chain.Bittensor]: 'https://taostats.io',
|
|
27
|
-
[Chain.Zksync]: 'https://explorer.zksync.io',
|
|
28
|
-
[Chain.Ton]: 'https://tonviewer.com',
|
|
29
|
-
[Chain.Osmosis]: `${cosmosBlockExplorer}/osmosis`,
|
|
30
|
-
[Chain.Terra]: `${cosmosBlockExplorer}/terra`,
|
|
31
|
-
[Chain.TerraClassic]: 'https://finder.terra.money/classic',
|
|
32
|
-
[Chain.Noble]: `${cosmosBlockExplorer}/noble`,
|
|
33
|
-
[Chain.Ripple]: 'https://xrpscan.com',
|
|
34
|
-
[Chain.THORChain]: 'https://thorchain.net',
|
|
35
|
-
[Chain.MayaChain]: 'https://www.explorer.mayachain.info',
|
|
36
|
-
[Chain.Akash]: `${cosmosBlockExplorer}/akash`,
|
|
37
|
-
[Chain.Tron]: 'https://tronscan.org/#',
|
|
38
|
-
[Chain.Zcash]: 'https://blockexplorer.one/zcash/mainnet',
|
|
39
|
-
[Chain.Cardano]: 'https://cardanoscan.io',
|
|
40
|
-
[Chain.Mantle]: 'https://explorer.mantle.xyz',
|
|
41
|
-
[Chain.Hyperliquid]: hyperliquidBlockExplorerUrl,
|
|
42
|
-
[Chain.Sei]: 'https://seiscan.io',
|
|
43
|
-
[Chain.Robinhood]: robinhoodBlockExplorerUrl,
|
|
44
|
-
[Chain.QBTC]: 'https://explorer.qbtc.net/qbtc',
|
|
45
|
-
};
|
|
1
|
+
import { chainRegistry } from '@vultisig/core-chain/chainRegistry';
|
|
46
2
|
export const getBlockExplorerUrl = ({ chain, entity, value }) => {
|
|
47
|
-
const
|
|
48
|
-
return
|
|
49
|
-
address: () => match(chain, {
|
|
50
|
-
[Chain.Bitcoin]: () => `${baseUrl}/address/${value}`,
|
|
51
|
-
[Chain.BitcoinCash]: () => `${baseUrl}/address/${value}`,
|
|
52
|
-
[Chain.Litecoin]: () => `${baseUrl}/address/${value}`,
|
|
53
|
-
[Chain.Dogecoin]: () => `${baseUrl}/address/${value}`,
|
|
54
|
-
[Chain.Dash]: () => `${baseUrl}/address/${value}`,
|
|
55
|
-
[Chain.THORChain]: () => `${baseUrl}/address/${value}`,
|
|
56
|
-
[Chain.Solana]: () => `${baseUrl}/address/${value}`,
|
|
57
|
-
[Chain.Ethereum]: () => `${baseUrl}/address/${value}`,
|
|
58
|
-
[Chain.Cosmos]: () => `${baseUrl}/address/${value}`,
|
|
59
|
-
[Chain.Dydx]: () => `${baseUrl}/address/${value}`,
|
|
60
|
-
[Chain.Kujira]: () => `${baseUrl}/address/${value}`,
|
|
61
|
-
[Chain.Avalanche]: () => `${baseUrl}/address/${value}`,
|
|
62
|
-
[Chain.BSC]: () => `${baseUrl}/address/${value}`,
|
|
63
|
-
[Chain.MayaChain]: () => `${baseUrl}/address/${value}`,
|
|
64
|
-
[Chain.Arbitrum]: () => `${baseUrl}/address/${value}`,
|
|
65
|
-
[Chain.Base]: () => `${baseUrl}/address/${value}`,
|
|
66
|
-
[Chain.Optimism]: () => `${baseUrl}/address/${value}`,
|
|
67
|
-
[Chain.Polygon]: () => `${baseUrl}/address/${value}`,
|
|
68
|
-
[Chain.Blast]: () => `${baseUrl}/address/${value}`,
|
|
69
|
-
[Chain.CronosChain]: () => `${baseUrl}/address/${value}`,
|
|
70
|
-
[Chain.Sui]: () => `${baseUrl}/address/${value}`,
|
|
71
|
-
[Chain.Polkadot]: () => `${baseUrl}/account/${value}`,
|
|
72
|
-
[Chain.Bittensor]: () => `${baseUrl}/account/${value}`,
|
|
73
|
-
[Chain.Zksync]: () => `${baseUrl}/address/${value}`,
|
|
74
|
-
[Chain.Ton]: () => `${baseUrl}/${value}`,
|
|
75
|
-
[Chain.Osmosis]: () => `${baseUrl}/address/${value}`,
|
|
76
|
-
[Chain.Terra]: () => `${baseUrl}/address/${value}`,
|
|
77
|
-
[Chain.TerraClassic]: () => `${baseUrl}/address/${value}`,
|
|
78
|
-
[Chain.Noble]: () => `${baseUrl}/address/${value}`,
|
|
79
|
-
[Chain.Ripple]: () => `${baseUrl}/account/${value}`,
|
|
80
|
-
[Chain.Akash]: () => `${baseUrl}/address/${value}`,
|
|
81
|
-
[Chain.Tron]: () => `${baseUrl}/address/${value}`,
|
|
82
|
-
[Chain.Zcash]: () => `${baseUrl}/address/${value}`,
|
|
83
|
-
[Chain.Cardano]: () => `${baseUrl}/address/${value}`,
|
|
84
|
-
[Chain.Mantle]: () => `${baseUrl}/address/${value}`,
|
|
85
|
-
[Chain.Hyperliquid]: () => `${baseUrl}/address/${value}`,
|
|
86
|
-
[Chain.Sei]: () => `${baseUrl}/address/${value}`,
|
|
87
|
-
[Chain.Robinhood]: () => `${baseUrl}/address/${value}`,
|
|
88
|
-
[Chain.QBTC]: () => `${baseUrl}/account/${value}`,
|
|
89
|
-
}),
|
|
90
|
-
tx: () => match(chain, {
|
|
91
|
-
[Chain.Bitcoin]: () => `${baseUrl}/tx/${value}`,
|
|
92
|
-
[Chain.BitcoinCash]: () => `${baseUrl}/transaction/${value}`,
|
|
93
|
-
[Chain.Litecoin]: () => `${baseUrl}/transaction/${value}`,
|
|
94
|
-
[Chain.Dogecoin]: () => `${baseUrl}/transaction/${value}`,
|
|
95
|
-
[Chain.Dash]: () => `${baseUrl}/transaction/${value}`,
|
|
96
|
-
[Chain.THORChain]: () => `${baseUrl}/tx/${value}`,
|
|
97
|
-
[Chain.Solana]: () => `${baseUrl}/tx/${value}`,
|
|
98
|
-
[Chain.Ethereum]: () => `${baseUrl}/tx/${value}`,
|
|
99
|
-
[Chain.Cosmos]: () => `${baseUrl}/tx/${value}`,
|
|
100
|
-
[Chain.Dydx]: () => `${baseUrl}/tx/${value}`,
|
|
101
|
-
[Chain.Kujira]: () => `${baseUrl}/tx/${value}`,
|
|
102
|
-
[Chain.Avalanche]: () => `${baseUrl}/tx/${value}`,
|
|
103
|
-
[Chain.BSC]: () => `${baseUrl}/tx/${value}`,
|
|
104
|
-
[Chain.MayaChain]: () => `${baseUrl}/tx/${value}`,
|
|
105
|
-
[Chain.Arbitrum]: () => `${baseUrl}/tx/${value}`,
|
|
106
|
-
[Chain.Base]: () => `${baseUrl}/tx/${value}`,
|
|
107
|
-
[Chain.Optimism]: () => `${baseUrl}/tx/${value}`,
|
|
108
|
-
[Chain.Polygon]: () => `${baseUrl}/tx/${value}`,
|
|
109
|
-
[Chain.Blast]: () => `${baseUrl}/tx/${value}`,
|
|
110
|
-
[Chain.CronosChain]: () => `${baseUrl}/tx/${value}`,
|
|
111
|
-
[Chain.Sui]: () => `${baseUrl}/tx/${value}`,
|
|
112
|
-
[Chain.Polkadot]: () => `${baseUrl}/extrinsic/${value}`,
|
|
113
|
-
[Chain.Bittensor]: () => `${baseUrl}/extrinsic/${value}`,
|
|
114
|
-
[Chain.Zksync]: () => `${baseUrl}/tx/${value}`,
|
|
115
|
-
[Chain.Ton]: () => `${baseUrl}/transaction/${value}`,
|
|
116
|
-
[Chain.Osmosis]: () => `${baseUrl}/tx/${value}`,
|
|
117
|
-
[Chain.Terra]: () => `${baseUrl}/tx/${value}`,
|
|
118
|
-
[Chain.TerraClassic]: () => `${baseUrl}/tx/${value}`,
|
|
119
|
-
[Chain.Noble]: () => `${baseUrl}/tx/${value}`,
|
|
120
|
-
[Chain.Ripple]: () => `${baseUrl}/transaction/${value}`,
|
|
121
|
-
[Chain.Akash]: () => `${baseUrl}/tx/${value}`,
|
|
122
|
-
[Chain.Tron]: () => `${baseUrl}/transaction/${value}`,
|
|
123
|
-
[Chain.Zcash]: () => `${baseUrl}/tx/${value}`,
|
|
124
|
-
[Chain.Cardano]: () => `${baseUrl}/transaction/${value}`,
|
|
125
|
-
[Chain.Mantle]: () => `${baseUrl}/tx/${value}`,
|
|
126
|
-
[Chain.Hyperliquid]: () => `${baseUrl}/tx/${value}`,
|
|
127
|
-
[Chain.Sei]: () => `${baseUrl}/tx/${value}`,
|
|
128
|
-
[Chain.Robinhood]: () => `${baseUrl}/tx/${value}`,
|
|
129
|
-
[Chain.QBTC]: () => `${baseUrl}/tx/${value}`,
|
|
130
|
-
}),
|
|
131
|
-
});
|
|
3
|
+
const explorer = chainRegistry[chain].explorer;
|
|
4
|
+
return `${explorer.baseUrl}${explorer.paths[entity]}${value}`;
|
|
132
5
|
};
|
|
133
6
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/core/chain/utils/getBlockExplorerUrl/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/core/chain/utils/getBlockExplorerUrl/index.ts"],"names":[],"mappings":"AACA,OAAO,EAA4B,aAAa,EAAE,MAAM,oCAAoC,CAAA;AAQ5F,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAA4B,EAAU,EAAE;IAChG,MAAM,QAAQ,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAA;IAC9C,OAAO,GAAG,QAAQ,CAAC,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,KAAK,EAAE,CAAA;AAC/D,CAAC,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vultisig/core-chain",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.35.0",
|
|
4
4
|
"description": "Blockchain chain logic shared across Vultisig clients",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -60,6 +60,11 @@
|
|
|
60
60
|
"import": "./dist/ChainKind.js",
|
|
61
61
|
"default": "./dist/ChainKind.js"
|
|
62
62
|
},
|
|
63
|
+
"./chainRegistry": {
|
|
64
|
+
"types": "./dist/chainRegistry.d.ts",
|
|
65
|
+
"import": "./dist/chainRegistry.js",
|
|
66
|
+
"default": "./dist/chainRegistry.js"
|
|
67
|
+
},
|
|
63
68
|
"./chains/bittensor/client": {
|
|
64
69
|
"types": "./dist/chains/bittensor/client.d.ts",
|
|
65
70
|
"import": "./dist/chains/bittensor/client.js",
|
|
@@ -505,6 +510,11 @@
|
|
|
505
510
|
"import": "./dist/chains/cosmos/thor/rujira/config.js",
|
|
506
511
|
"default": "./dist/chains/cosmos/thor/rujira/config.js"
|
|
507
512
|
},
|
|
513
|
+
"./chains/cosmos/thor/securedAssets": {
|
|
514
|
+
"types": "./dist/chains/cosmos/thor/securedAssets.d.ts",
|
|
515
|
+
"import": "./dist/chains/cosmos/thor/securedAssets.js",
|
|
516
|
+
"default": "./dist/chains/cosmos/thor/securedAssets.js"
|
|
517
|
+
},
|
|
508
518
|
"./chains/cosmos/thor/tcy-autocompound/config": {
|
|
509
519
|
"types": "./dist/chains/cosmos/thor/tcy-autocompound/config.d.ts",
|
|
510
520
|
"import": "./dist/chains/cosmos/thor/tcy-autocompound/config.js",
|