@aptos-labs/cross-chain-core 5.4.13 → 5.4.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/BridgeConnector.d.ts +82 -0
- package/dist/BridgeConnector.d.ts.map +1 -0
- package/dist/CrossChainCore.d.ts +1 -1
- package/dist/CrossChainCore.d.ts.map +1 -1
- package/dist/config/mainnet/chains.d.ts.map +1 -1
- package/dist/config/mainnet/tokens.d.ts.map +1 -1
- package/dist/config/testnet/chains.d.ts.map +1 -1
- package/dist/config/testnet/tokens.d.ts.map +1 -1
- package/dist/index.d.mts +1 -1
- package/dist/index.d.ts +174 -6
- package/dist/index.js +58 -5
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +58 -5
- package/dist/index.mjs.map +1 -1
- package/dist/providers/layer0/index.d.ts +1 -0
- package/dist/providers/layer0/index.d.ts.map +1 -0
- package/dist/providers/wormhole/signers/SuiSigner.d.ts +5 -0
- package/dist/providers/wormhole/signers/SuiSigner.d.ts.map +1 -0
- package/dist/providers/wormhole/wormhole.d.ts.map +1 -1
- package/dist/utils/getUsdcBalance.d.ts.map +1 -1
- package/dist/wallets/sui.d.ts +1 -0
- package/dist/wallets/sui.d.ts.map +1 -0
- package/package.json +6 -6
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { Chain } from "./CrossChainCore";
|
|
2
|
+
import { Network } from "@aptos-labs/ts-sdk";
|
|
3
|
+
import { WormholeTransferResponse } from "./providers/wormhole/types";
|
|
4
|
+
import { AdapterWallet } from "@aptos-labs/wallet-adapter-core";
|
|
5
|
+
export interface UIComponents {
|
|
6
|
+
Button: React.ComponentType<{
|
|
7
|
+
onClick?: () => void;
|
|
8
|
+
disabled?: boolean;
|
|
9
|
+
children: React.ReactNode;
|
|
10
|
+
className?: string;
|
|
11
|
+
}>;
|
|
12
|
+
Card: React.ComponentType<{
|
|
13
|
+
children: React.ReactNode;
|
|
14
|
+
className?: string;
|
|
15
|
+
}>;
|
|
16
|
+
CardHeader: React.ComponentType<{
|
|
17
|
+
children: React.ReactNode;
|
|
18
|
+
}>;
|
|
19
|
+
CardTitle: React.ComponentType<{
|
|
20
|
+
children: React.ReactNode;
|
|
21
|
+
}>;
|
|
22
|
+
CardDescription: React.ComponentType<{
|
|
23
|
+
children: React.ReactNode;
|
|
24
|
+
}>;
|
|
25
|
+
CardContent: React.ComponentType<{
|
|
26
|
+
children: React.ReactNode;
|
|
27
|
+
className?: string;
|
|
28
|
+
}>;
|
|
29
|
+
Input: React.ComponentType<{
|
|
30
|
+
value: string;
|
|
31
|
+
onChange: (e: React.ChangeEvent<HTMLInputElement>) => void;
|
|
32
|
+
className?: string;
|
|
33
|
+
}>;
|
|
34
|
+
LoaderIcon?: React.ComponentType<{
|
|
35
|
+
className?: string;
|
|
36
|
+
}>;
|
|
37
|
+
MoveDownIcon?: React.ComponentType<{
|
|
38
|
+
className?: string;
|
|
39
|
+
}>;
|
|
40
|
+
}
|
|
41
|
+
export interface BalanceManager {
|
|
42
|
+
originBalance: string | undefined;
|
|
43
|
+
fetchOriginBalance: (address: string, chain: Chain) => Promise<void>;
|
|
44
|
+
refetchBalancesWithDelay: (delayMs?: number) => Promise<void>;
|
|
45
|
+
globalTransactionInProgress: boolean;
|
|
46
|
+
setGlobalTransactionInProgress: (inProgress: boolean) => void;
|
|
47
|
+
}
|
|
48
|
+
export interface WalletUtils {
|
|
49
|
+
isSolanaDerivedWallet: (wallet: AdapterWallet) => boolean;
|
|
50
|
+
isEIP1193DerivedWallet: (wallet: AdapterWallet) => boolean;
|
|
51
|
+
}
|
|
52
|
+
export interface OriginWalletDetails {
|
|
53
|
+
address: {
|
|
54
|
+
toString: () => string;
|
|
55
|
+
} | string;
|
|
56
|
+
publicKey?: any;
|
|
57
|
+
}
|
|
58
|
+
export interface ChainIconProvider {
|
|
59
|
+
getChainIcon: (chain: string) => string;
|
|
60
|
+
getUSDCIcon: () => React.ComponentType;
|
|
61
|
+
}
|
|
62
|
+
export interface BridgeConnectorConfig {
|
|
63
|
+
network: Network.MAINNET | Network.TESTNET;
|
|
64
|
+
mainSignerPrivateKey: string;
|
|
65
|
+
sponsorPrivateKey: string;
|
|
66
|
+
title?: string;
|
|
67
|
+
description?: string;
|
|
68
|
+
}
|
|
69
|
+
export interface BridgeConnectorProps {
|
|
70
|
+
wallet: AdapterWallet | null;
|
|
71
|
+
originWalletDetails: OriginWalletDetails | undefined;
|
|
72
|
+
uiComponents: UIComponents;
|
|
73
|
+
balanceManager: BalanceManager;
|
|
74
|
+
walletUtils: WalletUtils;
|
|
75
|
+
chainIconProvider: ChainIconProvider;
|
|
76
|
+
config: BridgeConnectorConfig;
|
|
77
|
+
className?: string;
|
|
78
|
+
onTransferComplete?: (response: WormholeTransferResponse) => void;
|
|
79
|
+
onTransferError?: (error: Error) => void;
|
|
80
|
+
}
|
|
81
|
+
export declare function BridgeConnector({ wallet, originWalletDetails, uiComponents, balanceManager, walletUtils, chainIconProvider, config, className, onTransferComplete, onTransferError, }: BridgeConnectorProps): import("react/jsx-runtime").JSX.Element;
|
|
82
|
+
//# sourceMappingURL=BridgeConnector.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BridgeConnector.d.ts","sourceRoot":"","sources":["../src/BridgeConnector.tsx"],"names":[],"mappings":"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"}
|
package/dist/CrossChainCore.d.ts
CHANGED
|
@@ -16,7 +16,7 @@ export interface CrossChainDappConfig {
|
|
|
16
16
|
export type { AccountAddressInput } from "@aptos-labs/ts-sdk";
|
|
17
17
|
export { NetworkToChainId, NetworkToNodeAPI } from "@aptos-labs/ts-sdk";
|
|
18
18
|
export type AptosAccount = Account;
|
|
19
|
-
export type Chain = "Solana" | "Ethereum" | "Sepolia" | "Aptos" | "BaseSepolia" | "ArbitrumSepolia" | "Avalanche" | "Base" | "Arbitrum" | "PolygonSepolia" | "Polygon";
|
|
19
|
+
export type Chain = "Solana" | "Ethereum" | "Sepolia" | "Aptos" | "BaseSepolia" | "ArbitrumSepolia" | "Avalanche" | "Base" | "Arbitrum" | "PolygonSepolia" | "Polygon" | "HyperEVM";
|
|
20
20
|
export declare const EthereumChainIdToTestnetChain: Record<string, ChainConfig>;
|
|
21
21
|
export declare const EthereumChainIdToMainnetChain: Record<string, ChainConfig>;
|
|
22
22
|
export type CCTPProviders = "Wormhole";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CrossChainCore.d.ts","sourceRoot":"","sources":["../src/CrossChainCore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAYtD,OAAO,EACL,YAAY,EAKZ,WAAW,EACX,WAAW,EACZ,MAAM,UAAU,CAAC;AAOlB,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,OAAO,CAAC;IACtB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,YAAY,CAAC,EAAE;QACb,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,iBAAiB,CAAC,EAAE;YAClB,UAAU,CAAC,EAAE,MAAM,CAAC;YACpB,kBAAkB,CAAC,EAAE,MAAM,CAAC;YAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;YACb,GAAG,CAAC,EAAE,MAAM,CAAC;SACd,CAAC;KACH,CAAC;CACH;AACD,YAAY,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACxE,MAAM,MAAM,YAAY,GAAG,OAAO,CAAC;AAGnC,MAAM,MAAM,KAAK,GACb,QAAQ,GACR,UAAU,GACV,SAAS,GACT,OAAO,GACP,aAAa,GACb,iBAAiB,GACjB,WAAW,GACX,MAAM,GACN,UAAU,GACV,gBAAgB,GAChB,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"CrossChainCore.d.ts","sourceRoot":"","sources":["../src/CrossChainCore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAYtD,OAAO,EACL,YAAY,EAKZ,WAAW,EACX,WAAW,EACZ,MAAM,UAAU,CAAC;AAOlB,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,OAAO,CAAC;IACtB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,YAAY,CAAC,EAAE;QACb,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,iBAAiB,CAAC,EAAE;YAClB,UAAU,CAAC,EAAE,MAAM,CAAC;YACpB,kBAAkB,CAAC,EAAE,MAAM,CAAC;YAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;YACb,GAAG,CAAC,EAAE,MAAM,CAAC;SACd,CAAC;KACH,CAAC;CACH;AACD,YAAY,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACxE,MAAM,MAAM,YAAY,GAAG,OAAO,CAAC;AAGnC,MAAM,MAAM,KAAK,GACb,QAAQ,GACR,UAAU,GACV,SAAS,GACT,OAAO,GACP,aAAa,GACb,iBAAiB,GACjB,WAAW,GACX,MAAM,GACN,UAAU,GACV,gBAAgB,GAChB,SAAS,GACT,UAAU,CAAC;AAGf,eAAO,MAAM,6BAA6B,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAOrE,CAAC;AAGF,eAAO,MAAM,6BAA6B,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAOrE,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,UAAU,CAAC;AAEvC,MAAM,WAAW,kBAAkB,CACjC,aAAa,GAAG,GAAG,EACnB,cAAc,GAAG,GAAG,EACpB,gBAAgB,GAAG,GAAG,EACtB,iBAAiB,GAAG,GAAG,EACvB,gBAAgB,GAAG,GAAG,EACtB,iBAAiB,GAAG,GAAG;IAEvB,QAAQ,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IACzD,QAAQ,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC/D,QAAQ,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;CAChE;AAED,qBAAa,cAAc;IACzB,QAAQ,CAAC,WAAW,EAAE,oBAAoB,CAExC;IAEF,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAiB;IAC9C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAiB;gBAEjD,IAAI,EAAE;QAAE,UAAU,EAAE,oBAAoB,CAAA;KAAE;IAWtD,WAAW,CAAC,YAAY,EAAE,aAAa,GAAG,kBAAkB;IAgBtD,oBAAoB,CACxB,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,KAAK,GACjB,OAAO,CAAC,MAAM,CAAC;CAuCnB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chains.d.ts","sourceRoot":"","sources":["../../../src/config/mainnet/chains.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,YAAY,EAAE,MAAM,UAAU,CAAC;AAEjD,eAAO,MAAM,aAAa,EAAE,
|
|
1
|
+
{"version":3,"file":"chains.d.ts","sourceRoot":"","sources":["../../../src/config/mainnet/chains.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,YAAY,EAAE,MAAM,UAAU,CAAC;AAEjD,eAAO,MAAM,aAAa,EAAE,YAwG3B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../../src/config/mainnet/tokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../../src/config/mainnet/tokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAoFrD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chains.d.ts","sourceRoot":"","sources":["../../../src/config/testnet/chains.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,YAAY,EAAE,MAAM,UAAU,CAAC;AAEjD,eAAO,MAAM,aAAa,EAAE,
|
|
1
|
+
{"version":3,"file":"chains.d.ts","sourceRoot":"","sources":["../../../src/config/testnet/chains.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,YAAY,EAAE,MAAM,UAAU,CAAC;AAEjD,eAAO,MAAM,aAAa,EAAE,YAyG3B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../../src/config/testnet/tokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../../src/config/testnet/tokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAoFrD,CAAC"}
|
package/dist/index.d.mts
CHANGED
|
@@ -62,7 +62,7 @@ interface CrossChainDappConfig {
|
|
|
62
62
|
}
|
|
63
63
|
|
|
64
64
|
type AptosAccount = Account;
|
|
65
|
-
type Chain = "Solana" | "Ethereum" | "Sepolia" | "Aptos" | "BaseSepolia" | "ArbitrumSepolia" | "Avalanche" | "Base" | "Arbitrum" | "PolygonSepolia" | "Polygon";
|
|
65
|
+
type Chain = "Solana" | "Ethereum" | "Sepolia" | "Aptos" | "BaseSepolia" | "ArbitrumSepolia" | "Avalanche" | "Base" | "Arbitrum" | "PolygonSepolia" | "Polygon" | "HyperEVM";
|
|
66
66
|
declare const EthereumChainIdToTestnetChain: Record<string, ChainConfig>;
|
|
67
67
|
declare const EthereumChainIdToMainnetChain: Record<string, ChainConfig>;
|
|
68
68
|
type CCTPProviders = "Wormhole";
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,174 @@
|
|
|
1
|
-
|
|
2
|
-
export
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
import { Network, Account, AccountAddressInput } from '@aptos-labs/ts-sdk';
|
|
2
|
+
export { AccountAddressInput, Network, NetworkToChainId, NetworkToNodeAPI } from '@aptos-labs/ts-sdk';
|
|
3
|
+
import { Wormhole, TokenId, Network as Network$1, Chain as Chain$1, SignAndSendSigner, UnsignedTransaction, TxHash } from '@wormhole-foundation/sdk';
|
|
4
|
+
import { AdapterWallet } from '@aptos-labs/wallet-adapter-core';
|
|
5
|
+
import { routes, AttestationReceipt } from '@wormhole-foundation/sdk/dist/cjs';
|
|
6
|
+
import { AptosChains } from '@wormhole-foundation/sdk-aptos';
|
|
7
|
+
|
|
8
|
+
declare enum Context {
|
|
9
|
+
ETH = "Ethereum",
|
|
10
|
+
SOLANA = "Solana",
|
|
11
|
+
APTOS = "Aptos"
|
|
12
|
+
}
|
|
13
|
+
type BaseChainConfig = {
|
|
14
|
+
key: Chain;
|
|
15
|
+
context: Context;
|
|
16
|
+
disabledAsSource?: boolean;
|
|
17
|
+
disabledAsDestination?: boolean;
|
|
18
|
+
};
|
|
19
|
+
interface ChainConfig extends BaseChainConfig {
|
|
20
|
+
defaultRpc: string;
|
|
21
|
+
displayName: string;
|
|
22
|
+
explorerUrl: string;
|
|
23
|
+
explorerName: string;
|
|
24
|
+
chainId: number | string;
|
|
25
|
+
icon: Chain;
|
|
26
|
+
symbol?: string;
|
|
27
|
+
}
|
|
28
|
+
type ChainsConfig = {
|
|
29
|
+
[chain in Chain]?: ChainConfig;
|
|
30
|
+
};
|
|
31
|
+
type TokenConfig = {
|
|
32
|
+
symbol: string;
|
|
33
|
+
name?: string;
|
|
34
|
+
decimals: number;
|
|
35
|
+
icon: string;
|
|
36
|
+
tokenId: {
|
|
37
|
+
chain: Chain;
|
|
38
|
+
address: string;
|
|
39
|
+
};
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
declare const testnetChains: ChainsConfig;
|
|
43
|
+
|
|
44
|
+
declare const testnetTokens: Record<string, TokenConfig>;
|
|
45
|
+
|
|
46
|
+
declare const mainnetChains: ChainsConfig;
|
|
47
|
+
|
|
48
|
+
declare const mainnetTokens: Record<string, TokenConfig>;
|
|
49
|
+
|
|
50
|
+
interface CrossChainDappConfig {
|
|
51
|
+
aptosNetwork: Network;
|
|
52
|
+
disableTelemetry?: boolean;
|
|
53
|
+
solanaConfig?: {
|
|
54
|
+
rpc?: string;
|
|
55
|
+
priorityFeeConfig?: {
|
|
56
|
+
percentile?: number;
|
|
57
|
+
percentileMultiple?: number;
|
|
58
|
+
min?: number;
|
|
59
|
+
max?: number;
|
|
60
|
+
};
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
type AptosAccount = Account;
|
|
65
|
+
type Chain = "Solana" | "Ethereum" | "Sepolia" | "Aptos" | "BaseSepolia" | "ArbitrumSepolia" | "Avalanche" | "Base" | "Arbitrum" | "PolygonSepolia" | "Polygon" | "HyperEVM";
|
|
66
|
+
declare const EthereumChainIdToTestnetChain: Record<string, ChainConfig>;
|
|
67
|
+
declare const EthereumChainIdToMainnetChain: Record<string, ChainConfig>;
|
|
68
|
+
type CCTPProviders = "Wormhole";
|
|
69
|
+
interface CrossChainProvider<TQuoteRequest = any, TQuoteResponse = any, TTransferRequest = any, TTransferResponse = any, TWithdrawRequest = any, TWithdrawResponse = any> {
|
|
70
|
+
getQuote(params: TQuoteRequest): Promise<TQuoteResponse>;
|
|
71
|
+
transfer(params: TTransferRequest): Promise<TTransferResponse>;
|
|
72
|
+
withdraw(params: TWithdrawRequest): Promise<TWithdrawResponse>;
|
|
73
|
+
}
|
|
74
|
+
declare class CrossChainCore {
|
|
75
|
+
readonly _dappConfig: CrossChainDappConfig;
|
|
76
|
+
readonly CHAINS: ChainsConfig;
|
|
77
|
+
readonly TOKENS: Record<string, TokenConfig>;
|
|
78
|
+
constructor(args: {
|
|
79
|
+
dappConfig: CrossChainDappConfig;
|
|
80
|
+
});
|
|
81
|
+
getProvider(providerType: CCTPProviders): CrossChainProvider;
|
|
82
|
+
getWalletUSDCBalance(walletAddress: string, sourceChain: Chain): Promise<string>;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
type WormholeRouteResponse = routes.Route<"Mainnet" | "Testnet", routes.Options, routes.ValidatedTransferParams<routes.Options>, routes.Receipt>;
|
|
86
|
+
type WormholeRequest = routes.RouteTransferRequest<"Mainnet" | "Testnet">;
|
|
87
|
+
type WormholeQuoteResponse = routes.Quote<routes.Options, routes.ValidatedTransferParams<routes.Options>, any>;
|
|
88
|
+
interface WormholeQuoteRequest {
|
|
89
|
+
amount: string;
|
|
90
|
+
originChain: Chain;
|
|
91
|
+
type: "transfer" | "withdraw";
|
|
92
|
+
}
|
|
93
|
+
type GasStationApiKey = string;
|
|
94
|
+
interface WormholeTransferRequest {
|
|
95
|
+
sourceChain: Chain;
|
|
96
|
+
wallet: AdapterWallet;
|
|
97
|
+
destinationAddress: AccountAddressInput;
|
|
98
|
+
mainSigner: Account;
|
|
99
|
+
amount?: string;
|
|
100
|
+
sponsorAccount?: Account | GasStationApiKey;
|
|
101
|
+
}
|
|
102
|
+
interface WormholeWithdrawRequest {
|
|
103
|
+
sourceChain: Chain;
|
|
104
|
+
wallet: AdapterWallet;
|
|
105
|
+
destinationAddress: AccountAddressInput;
|
|
106
|
+
sponsorAccount?: Account | GasStationApiKey;
|
|
107
|
+
}
|
|
108
|
+
interface WormholeSubmitTransferRequest {
|
|
109
|
+
sourceChain: Chain;
|
|
110
|
+
wallet: AdapterWallet;
|
|
111
|
+
destinationAddress: AccountAddressInput;
|
|
112
|
+
}
|
|
113
|
+
interface WormholeClaimTransferRequest {
|
|
114
|
+
receipt: routes.Receipt<AttestationReceipt>;
|
|
115
|
+
mainSigner: AptosAccount;
|
|
116
|
+
sponsorAccount?: AptosAccount | GasStationApiKey;
|
|
117
|
+
}
|
|
118
|
+
interface WormholeTransferResponse {
|
|
119
|
+
destinationChainTxnId: string;
|
|
120
|
+
originChainTxnId: string;
|
|
121
|
+
}
|
|
122
|
+
interface WormholeWithdrawResponse {
|
|
123
|
+
destinationChainTxnId: string;
|
|
124
|
+
originChainTxnId: string;
|
|
125
|
+
}
|
|
126
|
+
interface WormholeStartTransferResponse {
|
|
127
|
+
originChainTxnId: string;
|
|
128
|
+
receipt: routes.Receipt<AttestationReceipt>;
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
declare class WormholeProvider implements CrossChainProvider<WormholeQuoteRequest, WormholeQuoteResponse, WormholeTransferRequest, WormholeTransferResponse, WormholeWithdrawRequest, WormholeWithdrawResponse> {
|
|
132
|
+
private crossChainCore;
|
|
133
|
+
private _wormholeContext;
|
|
134
|
+
private wormholeRoute;
|
|
135
|
+
private wormholeRequest;
|
|
136
|
+
private wormholeQuote;
|
|
137
|
+
constructor(core: CrossChainCore);
|
|
138
|
+
get wormholeContext(): Wormhole<"Mainnet" | "Testnet"> | undefined;
|
|
139
|
+
private setWormholeContext;
|
|
140
|
+
private getRoute;
|
|
141
|
+
getQuote(input: WormholeQuoteRequest): Promise<WormholeQuoteResponse>;
|
|
142
|
+
submitCCTPTransfer(input: WormholeSubmitTransferRequest): Promise<WormholeStartTransferResponse>;
|
|
143
|
+
claimCCTPTransfer(input: WormholeClaimTransferRequest): Promise<{
|
|
144
|
+
destinationChainTxnId: string;
|
|
145
|
+
}>;
|
|
146
|
+
/**
|
|
147
|
+
* Initiates a transfer of USDC funds from the source chain wallet to the destination chain wallet
|
|
148
|
+
* @param args
|
|
149
|
+
* @returns
|
|
150
|
+
*/
|
|
151
|
+
transfer(input: WormholeTransferRequest): Promise<WormholeTransferResponse>;
|
|
152
|
+
withdraw(input: WormholeWithdrawRequest): Promise<WormholeWithdrawResponse>;
|
|
153
|
+
getChainConfig(chain: Chain): ChainConfig;
|
|
154
|
+
getTokenInfo(sourceChain: Chain, destinationChain: Chain): {
|
|
155
|
+
sourceToken: TokenId;
|
|
156
|
+
destToken: TokenId;
|
|
157
|
+
};
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
declare class AptosLocalSigner<N extends Network$1, C extends Chain$1> implements SignAndSendSigner<N, C> {
|
|
161
|
+
_chain: C;
|
|
162
|
+
_options: any;
|
|
163
|
+
_wallet: Account;
|
|
164
|
+
_sponsorAccount: Account | GasStationApiKey | undefined;
|
|
165
|
+
_claimedTransactionHashes: string;
|
|
166
|
+
constructor(chain: C, options: any, wallet: Account, feePayerAccount: Account | GasStationApiKey | undefined);
|
|
167
|
+
chain(): C;
|
|
168
|
+
address(): string;
|
|
169
|
+
claimedTransactionHashes(): string;
|
|
170
|
+
signAndSend(txs: UnsignedTransaction<N, C>[]): Promise<TxHash[]>;
|
|
171
|
+
}
|
|
172
|
+
declare function signAndSendTransaction(request: UnsignedTransaction<Network$1, AptosChains>, wallet: Account, sponsorAccount: Account | GasStationApiKey | undefined): Promise<string>;
|
|
173
|
+
|
|
174
|
+
export { type AptosAccount, AptosLocalSigner, type BaseChainConfig, type CCTPProviders, type Chain, type ChainConfig, type ChainsConfig, Context, CrossChainCore, type CrossChainDappConfig, type CrossChainProvider, EthereumChainIdToMainnetChain, EthereumChainIdToTestnetChain, type GasStationApiKey, type TokenConfig, type WormholeClaimTransferRequest, WormholeProvider, type WormholeQuoteRequest, type WormholeQuoteResponse, type WormholeRequest, type WormholeRouteResponse, type WormholeStartTransferResponse, type WormholeSubmitTransferRequest, type WormholeTransferRequest, type WormholeTransferResponse, type WormholeWithdrawRequest, type WormholeWithdrawResponse, mainnetChains, mainnetTokens, signAndSendTransaction, testnetChains, testnetTokens };
|
package/dist/index.js
CHANGED
|
@@ -606,6 +606,14 @@ var WormholeProvider = class {
|
|
|
606
606
|
}
|
|
607
607
|
const isMainnet = dappNetwork === import_ts_sdk3.Network.MAINNET;
|
|
608
608
|
const platforms = [import_aptos.default, import_solana.default, import_evm.default];
|
|
609
|
+
const rpcOverrides = isMainnet ? {} : {
|
|
610
|
+
chains: {
|
|
611
|
+
// Wormhole SDK has wrong testnet RPC for HyperEVM (uses api. instead of rpc.)
|
|
612
|
+
HyperEVM: {
|
|
613
|
+
rpc: "https://rpc.hyperliquid-testnet.xyz/evm"
|
|
614
|
+
}
|
|
615
|
+
}
|
|
616
|
+
};
|
|
609
617
|
const wh = await (0, import_sdk.wormhole)(isMainnet ? "Mainnet" : "Testnet", platforms);
|
|
610
618
|
this._wormholeContext = wh;
|
|
611
619
|
}
|
|
@@ -632,10 +640,12 @@ var WormholeProvider = class {
|
|
|
632
640
|
sourceContext,
|
|
633
641
|
destContext
|
|
634
642
|
);
|
|
643
|
+
logger.log("request", request);
|
|
635
644
|
const resolver = this._wormholeContext.resolver([
|
|
636
645
|
import_sdk.routes.CCTPRoute
|
|
637
646
|
// manual CCTP
|
|
638
647
|
]);
|
|
648
|
+
logger.log("resolver", resolver);
|
|
639
649
|
const route = await resolver.findRoutes(request);
|
|
640
650
|
const cctpRoute = route[0];
|
|
641
651
|
this.wormholeRoute = cctpRoute;
|
|
@@ -910,8 +920,8 @@ var testnetChains = {
|
|
|
910
920
|
explorerUrl: "https://sepolia.etherscan.io/",
|
|
911
921
|
explorerName: "Etherscan",
|
|
912
922
|
icon: "Ethereum",
|
|
913
|
-
symbol: "
|
|
914
|
-
defaultRpc: "https://
|
|
923
|
+
symbol: "SepoliaETH",
|
|
924
|
+
defaultRpc: "https://ethereum-sepolia-rpc.publicnode.com"
|
|
915
925
|
},
|
|
916
926
|
BaseSepolia: {
|
|
917
927
|
key: "BaseSepolia",
|
|
@@ -957,6 +967,17 @@ var testnetChains = {
|
|
|
957
967
|
symbol: "MATIC",
|
|
958
968
|
defaultRpc: "https://rpc-amoy.polygon.technology/"
|
|
959
969
|
},
|
|
970
|
+
HyperEVM: {
|
|
971
|
+
key: "HyperEVM",
|
|
972
|
+
context: "Ethereum" /* ETH */,
|
|
973
|
+
chainId: 998,
|
|
974
|
+
displayName: "HyperEVM",
|
|
975
|
+
explorerUrl: "https://testnet.purrsec.com",
|
|
976
|
+
explorerName: "Purrsec testnet",
|
|
977
|
+
icon: "HyperEVM",
|
|
978
|
+
symbol: "HYPE",
|
|
979
|
+
defaultRpc: "https://rpc.hyperliquid-testnet.xyz/evm"
|
|
980
|
+
},
|
|
960
981
|
Solana: {
|
|
961
982
|
key: "Solana",
|
|
962
983
|
context: "Solana" /* SOLANA */,
|
|
@@ -1060,6 +1081,15 @@ var testnetTokens = {
|
|
|
1060
1081
|
chain: "PolygonSepolia",
|
|
1061
1082
|
address: "0x41E94Eb019C0762f9Bfcf9Fb1E58725BfB0e7582"
|
|
1062
1083
|
}
|
|
1084
|
+
},
|
|
1085
|
+
HyperEVM: {
|
|
1086
|
+
symbol: "USDC",
|
|
1087
|
+
icon: "USDC",
|
|
1088
|
+
tokenId: {
|
|
1089
|
+
chain: "HyperEVM",
|
|
1090
|
+
address: "0x2B3370eE501B4a559b57D449569354196457D8Ab"
|
|
1091
|
+
},
|
|
1092
|
+
decimals: 6
|
|
1063
1093
|
}
|
|
1064
1094
|
// Sui: {
|
|
1065
1095
|
// symbol: "USDC",
|
|
@@ -1130,6 +1160,17 @@ var mainnetChains = {
|
|
|
1130
1160
|
symbol: "BASE",
|
|
1131
1161
|
defaultRpc: "https://mainnet.base.org"
|
|
1132
1162
|
},
|
|
1163
|
+
HyperEVM: {
|
|
1164
|
+
key: "HyperEVM",
|
|
1165
|
+
context: "Ethereum" /* ETH */,
|
|
1166
|
+
chainId: 999,
|
|
1167
|
+
displayName: "HyperEVM",
|
|
1168
|
+
explorerUrl: "https://hyperevmscan.io/",
|
|
1169
|
+
explorerName: "HyperEVMScan",
|
|
1170
|
+
icon: "HyperEVM",
|
|
1171
|
+
symbol: "HYPE",
|
|
1172
|
+
defaultRpc: "https://rpc.hyperliquid.xyz/evm"
|
|
1173
|
+
},
|
|
1133
1174
|
Arbitrum: {
|
|
1134
1175
|
key: "Arbitrum",
|
|
1135
1176
|
context: "Ethereum" /* ETH */,
|
|
@@ -1233,6 +1274,15 @@ var mainnetTokens = {
|
|
|
1233
1274
|
chain: "Polygon",
|
|
1234
1275
|
address: "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359"
|
|
1235
1276
|
}
|
|
1277
|
+
},
|
|
1278
|
+
HyperEVM: {
|
|
1279
|
+
symbol: "USDC",
|
|
1280
|
+
icon: "USDC",
|
|
1281
|
+
tokenId: {
|
|
1282
|
+
chain: "HyperEVM",
|
|
1283
|
+
address: "0xb88339CB7199b77E23DB6E890353E22632Ba630f"
|
|
1284
|
+
},
|
|
1285
|
+
decimals: 6
|
|
1236
1286
|
}
|
|
1237
1287
|
// Sui: {
|
|
1238
1288
|
// symbol: "USDC",
|
|
@@ -1262,6 +1312,7 @@ var getSolanaWalletUSDCBalance = async (walletAddress, aptosNetwork, rpc) => {
|
|
|
1262
1312
|
return balance.value.uiAmountString ?? (Number(balance.value.amount) / 10 ** balance.value.decimals).toString();
|
|
1263
1313
|
};
|
|
1264
1314
|
var getEthereumWalletUSDCBalance = async (walletAddress, aptosNetwork, chain, rpc) => {
|
|
1315
|
+
console.log("chain", chain);
|
|
1265
1316
|
const token = aptosNetwork === import_ts_sdk4.Network.MAINNET ? mainnetTokens[chain] : testnetTokens[chain];
|
|
1266
1317
|
const tokenAddress = token.tokenId.address;
|
|
1267
1318
|
const connection = new import_ethers2.JsonRpcProvider(rpc);
|
|
@@ -1297,14 +1348,16 @@ var EthereumChainIdToTestnetChain = {
|
|
|
1297
1348
|
84532: testnetChains.BaseSepolia,
|
|
1298
1349
|
421614: testnetChains.ArbitrumSepolia,
|
|
1299
1350
|
43113: testnetChains.Avalanche,
|
|
1300
|
-
80002: testnetChains.PolygonSepolia
|
|
1351
|
+
80002: testnetChains.PolygonSepolia,
|
|
1352
|
+
998: testnetChains.HyperEVM
|
|
1301
1353
|
};
|
|
1302
1354
|
var EthereumChainIdToMainnetChain = {
|
|
1303
1355
|
1: mainnetChains.Ethereum,
|
|
1304
1356
|
8453: mainnetChains.Base,
|
|
1305
1357
|
42161: mainnetChains.Arbitrum,
|
|
1306
1358
|
43114: mainnetChains.Avalanche,
|
|
1307
|
-
137: mainnetChains.Polygon
|
|
1359
|
+
137: mainnetChains.Polygon,
|
|
1360
|
+
999: mainnetChains.HyperEVM
|
|
1308
1361
|
};
|
|
1309
1362
|
var CrossChainCore = class {
|
|
1310
1363
|
constructor(args) {
|
|
@@ -1356,6 +1409,7 @@ var CrossChainCore = class {
|
|
|
1356
1409
|
case "Base":
|
|
1357
1410
|
case "PolygonSepolia":
|
|
1358
1411
|
case "Polygon":
|
|
1412
|
+
case "HyperEVM":
|
|
1359
1413
|
return await getEthereumWalletUSDCBalance(
|
|
1360
1414
|
walletAddress,
|
|
1361
1415
|
this._dappConfig.aptosNetwork,
|
|
@@ -1388,4 +1442,3 @@ var import_ts_sdk7 = require("@aptos-labs/ts-sdk");
|
|
|
1388
1442
|
testnetChains,
|
|
1389
1443
|
testnetTokens
|
|
1390
1444
|
});
|
|
1391
|
-
//# sourceMappingURL=index.js.map
|