@reown/appkit-controllers 1.7.0-rc.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/LICENSE +190 -0
- package/dist/esm/exports/index.js +32 -0
- package/dist/esm/exports/index.js.map +1 -0
- package/dist/esm/exports/modal.js +2 -0
- package/dist/esm/exports/modal.js.map +1 -0
- package/dist/esm/exports/react.js +52 -0
- package/dist/esm/exports/react.js.map +1 -0
- package/dist/esm/exports/vue.js +63 -0
- package/dist/esm/exports/vue.js.map +1 -0
- package/dist/esm/src/controllers/AccountController.js +160 -0
- package/dist/esm/src/controllers/AccountController.js.map +1 -0
- package/dist/esm/src/controllers/AlertController.js +35 -0
- package/dist/esm/src/controllers/AlertController.js.map +1 -0
- package/dist/esm/src/controllers/ApiController.js +260 -0
- package/dist/esm/src/controllers/ApiController.js.map +1 -0
- package/dist/esm/src/controllers/AssetController.js +43 -0
- package/dist/esm/src/controllers/AssetController.js.map +1 -0
- package/dist/esm/src/controllers/BlockchainApiController.js +472 -0
- package/dist/esm/src/controllers/BlockchainApiController.js.map +1 -0
- package/dist/esm/src/controllers/ChainController.js +548 -0
- package/dist/esm/src/controllers/ChainController.js.map +1 -0
- package/dist/esm/src/controllers/ConnectionController.js +190 -0
- package/dist/esm/src/controllers/ConnectionController.js.map +1 -0
- package/dist/esm/src/controllers/ConnectorController.js +272 -0
- package/dist/esm/src/controllers/ConnectorController.js.map +1 -0
- package/dist/esm/src/controllers/EnsController.js +144 -0
- package/dist/esm/src/controllers/EnsController.js.map +1 -0
- package/dist/esm/src/controllers/EventsController.js +76 -0
- package/dist/esm/src/controllers/EventsController.js.map +1 -0
- package/dist/esm/src/controllers/ModalController.js +120 -0
- package/dist/esm/src/controllers/ModalController.js.map +1 -0
- package/dist/esm/src/controllers/OnRampController.js +132 -0
- package/dist/esm/src/controllers/OnRampController.js.map +1 -0
- package/dist/esm/src/controllers/OptionsController.js +146 -0
- package/dist/esm/src/controllers/OptionsController.js.map +1 -0
- package/dist/esm/src/controllers/PublicStateController.js +20 -0
- package/dist/esm/src/controllers/PublicStateController.js.map +1 -0
- package/dist/esm/src/controllers/RouterController.js +125 -0
- package/dist/esm/src/controllers/RouterController.js.map +1 -0
- package/dist/esm/src/controllers/SendController.js +305 -0
- package/dist/esm/src/controllers/SendController.js.map +1 -0
- package/dist/esm/src/controllers/SnackController.js +62 -0
- package/dist/esm/src/controllers/SnackController.js.map +1 -0
- package/dist/esm/src/controllers/SwapController.js +674 -0
- package/dist/esm/src/controllers/SwapController.js.map +1 -0
- package/dist/esm/src/controllers/ThemeController.js +55 -0
- package/dist/esm/src/controllers/ThemeController.js.map +1 -0
- package/dist/esm/src/controllers/TooltipController.js +41 -0
- package/dist/esm/src/controllers/TooltipController.js.map +1 -0
- package/dist/esm/src/controllers/TransactionsController.js +113 -0
- package/dist/esm/src/controllers/TransactionsController.js.map +1 -0
- package/dist/esm/src/utils/AssetUtil.js +86 -0
- package/dist/esm/src/utils/AssetUtil.js.map +1 -0
- package/dist/esm/src/utils/ConstantsUtil.js +239 -0
- package/dist/esm/src/utils/ConstantsUtil.js.map +1 -0
- package/dist/esm/src/utils/CoreHelperUtil.js +354 -0
- package/dist/esm/src/utils/CoreHelperUtil.js.map +1 -0
- package/dist/esm/src/utils/ERC7811Util.js +111 -0
- package/dist/esm/src/utils/ERC7811Util.js.map +1 -0
- package/dist/esm/src/utils/EnsUtil.js +10 -0
- package/dist/esm/src/utils/EnsUtil.js.map +1 -0
- package/dist/esm/src/utils/FetchUtil.js +73 -0
- package/dist/esm/src/utils/FetchUtil.js.map +1 -0
- package/dist/esm/src/utils/MobileWallet.js +31 -0
- package/dist/esm/src/utils/MobileWallet.js.map +1 -0
- package/dist/esm/src/utils/OptionsUtil.js +29 -0
- package/dist/esm/src/utils/OptionsUtil.js.map +1 -0
- package/dist/esm/src/utils/RouterUtil.js +23 -0
- package/dist/esm/src/utils/RouterUtil.js.map +1 -0
- package/dist/esm/src/utils/SIWXUtil.js +258 -0
- package/dist/esm/src/utils/SIWXUtil.js.map +1 -0
- package/dist/esm/src/utils/SendApiUtil.js +65 -0
- package/dist/esm/src/utils/SendApiUtil.js.map +1 -0
- package/dist/esm/src/utils/StorageUtil.js +485 -0
- package/dist/esm/src/utils/StorageUtil.js.map +1 -0
- package/dist/esm/src/utils/SwapApiUtil.js +89 -0
- package/dist/esm/src/utils/SwapApiUtil.js.map +1 -0
- package/dist/esm/src/utils/SwapCalculationUtil.js +74 -0
- package/dist/esm/src/utils/SwapCalculationUtil.js.map +1 -0
- package/dist/esm/src/utils/TypeUtil.js +2 -0
- package/dist/esm/src/utils/TypeUtil.js.map +1 -0
- package/dist/esm/tests/constants/OnrampTransactions.js +151 -0
- package/dist/esm/tests/constants/OnrampTransactions.js.map +1 -0
- package/dist/esm/tests/controllers/AccountController.test.js +186 -0
- package/dist/esm/tests/controllers/AccountController.test.js.map +1 -0
- package/dist/esm/tests/controllers/AlertController.test.js +48 -0
- package/dist/esm/tests/controllers/AlertController.test.js.map +1 -0
- package/dist/esm/tests/controllers/ApiController.test.js +608 -0
- package/dist/esm/tests/controllers/ApiController.test.js.map +1 -0
- package/dist/esm/tests/controllers/AssetController.test.js +92 -0
- package/dist/esm/tests/controllers/AssetController.test.js.map +1 -0
- package/dist/esm/tests/controllers/BlockchainApiController.test.js +38 -0
- package/dist/esm/tests/controllers/BlockchainApiController.test.js.map +1 -0
- package/dist/esm/tests/controllers/ChainController.test.js +382 -0
- package/dist/esm/tests/controllers/ChainController.test.js.map +1 -0
- package/dist/esm/tests/controllers/ConnectionController.test.js +151 -0
- package/dist/esm/tests/controllers/ConnectionController.test.js.map +1 -0
- package/dist/esm/tests/controllers/ConnectorController.test.js +282 -0
- package/dist/esm/tests/controllers/ConnectorController.test.js.map +1 -0
- package/dist/esm/tests/controllers/EnsController.test.js +186 -0
- package/dist/esm/tests/controllers/EnsController.test.js.map +1 -0
- package/dist/esm/tests/controllers/EventsController.test.js +47 -0
- package/dist/esm/tests/controllers/EventsController.test.js.map +1 -0
- package/dist/esm/tests/controllers/ModalController.test.js +66 -0
- package/dist/esm/tests/controllers/ModalController.test.js.map +1 -0
- package/dist/esm/tests/controllers/OnRampController.test.js +118 -0
- package/dist/esm/tests/controllers/OnRampController.test.js.map +1 -0
- package/dist/esm/tests/controllers/OptionsController.test.js +42 -0
- package/dist/esm/tests/controllers/OptionsController.test.js.map +1 -0
- package/dist/esm/tests/controllers/PublicStateController.test.js +33 -0
- package/dist/esm/tests/controllers/PublicStateController.test.js.map +1 -0
- package/dist/esm/tests/controllers/RouterController.test.js +103 -0
- package/dist/esm/tests/controllers/RouterController.test.js.map +1 -0
- package/dist/esm/tests/controllers/SendController.test.js +136 -0
- package/dist/esm/tests/controllers/SendController.test.js.map +1 -0
- package/dist/esm/tests/controllers/SnackController.test.js +86 -0
- package/dist/esm/tests/controllers/SnackController.test.js.map +1 -0
- package/dist/esm/tests/controllers/SwapController.test.js +105 -0
- package/dist/esm/tests/controllers/SwapController.test.js.map +1 -0
- package/dist/esm/tests/controllers/ThemeController.test.js +26 -0
- package/dist/esm/tests/controllers/ThemeController.test.js.map +1 -0
- package/dist/esm/tests/controllers/TooltipController.test.js +40 -0
- package/dist/esm/tests/controllers/TooltipController.test.js.map +1 -0
- package/dist/esm/tests/controllers/TransactionsController.test.js +239 -0
- package/dist/esm/tests/controllers/TransactionsController.test.js.map +1 -0
- package/dist/esm/tests/hooks/react.test.js +149 -0
- package/dist/esm/tests/hooks/react.test.js.map +1 -0
- package/dist/esm/tests/hooks/vue.test.js +56 -0
- package/dist/esm/tests/hooks/vue.test.js.map +1 -0
- package/dist/esm/tests/mocks/ChainController.js +24 -0
- package/dist/esm/tests/mocks/ChainController.js.map +1 -0
- package/dist/esm/tests/mocks/SwapController.js +118 -0
- package/dist/esm/tests/mocks/SwapController.js.map +1 -0
- package/dist/esm/tests/mocks/useAppKitAccount.js +41 -0
- package/dist/esm/tests/mocks/useAppKitAccount.js.map +1 -0
- package/dist/esm/tests/utils/AssetUtil.test.js +108 -0
- package/dist/esm/tests/utils/AssetUtil.test.js.map +1 -0
- package/dist/esm/tests/utils/CoreHelperUtil.test.js +67 -0
- package/dist/esm/tests/utils/CoreHelperUtil.test.js.map +1 -0
- package/dist/esm/tests/utils/ERC7811.test.js +268 -0
- package/dist/esm/tests/utils/ERC7811.test.js.map +1 -0
- package/dist/esm/tests/utils/EnsUtil.test.js +23 -0
- package/dist/esm/tests/utils/EnsUtil.test.js.map +1 -0
- package/dist/esm/tests/utils/FetchUtil.test.js +175 -0
- package/dist/esm/tests/utils/FetchUtil.test.js.map +1 -0
- package/dist/esm/tests/utils/MobileWallet.test.js +72 -0
- package/dist/esm/tests/utils/MobileWallet.test.js.map +1 -0
- package/dist/esm/tests/utils/OptionsUtil.test.js +20 -0
- package/dist/esm/tests/utils/OptionsUtil.test.js.map +1 -0
- package/dist/esm/tests/utils/RouterUtil.test.js +62 -0
- package/dist/esm/tests/utils/RouterUtil.test.js.map +1 -0
- package/dist/esm/tests/utils/SendApiUtil.test.js +340 -0
- package/dist/esm/tests/utils/SendApiUtil.test.js.map +1 -0
- package/dist/esm/tests/utils/StorageUtil.test.js +162 -0
- package/dist/esm/tests/utils/StorageUtil.test.js.map +1 -0
- package/dist/esm/tests/utils/SwapApiUtil.test.js +213 -0
- package/dist/esm/tests/utils/SwapApiUtil.test.js.map +1 -0
- package/dist/esm/tests/utils/SwapCalculationUtil.test.js +80 -0
- package/dist/esm/tests/utils/SwapCalculationUtil.test.js.map +1 -0
- package/dist/esm/tsconfig.tsbuildinfo +1 -0
- package/dist/types/exports/index.d.ts +51 -0
- package/dist/types/exports/modal.d.ts +2 -0
- package/dist/types/exports/react.d.ts +9 -0
- package/dist/types/exports/vue.d.ts +9 -0
- package/dist/types/src/controllers/AccountController.d.ts +56 -0
- package/dist/types/src/controllers/AlertController.d.ts +17 -0
- package/dist/types/src/controllers/ApiController.d.ts +52 -0
- package/dist/types/src/controllers/AssetController.d.ts +22 -0
- package/dist/types/src/controllers/BlockchainApiController.d.ts +59 -0
- package/dist/types/src/controllers/ChainController.d.ts +75 -0
- package/dist/types/src/controllers/ConnectionController.d.ts +86 -0
- package/dist/types/src/controllers/ConnectorController.d.ts +61 -0
- package/dist/types/src/controllers/EnsController.d.ts +26 -0
- package/dist/types/src/controllers/EventsController.d.ts +17 -0
- package/dist/types/src/controllers/ModalController.d.ts +27 -0
- package/dist/types/src/controllers/OnRampController.d.ts +55 -0
- package/dist/types/src/controllers/OptionsController.d.ts +364 -0
- package/dist/types/src/controllers/PublicStateController.d.ts +33 -0
- package/dist/types/src/controllers/RouterController.d.ts +56 -0
- package/dist/types/src/controllers/SendController.d.ts +52 -0
- package/dist/types/src/controllers/SnackController.d.ts +29 -0
- package/dist/types/src/controllers/SwapController.d.ts +127 -0
- package/dist/types/src/controllers/ThemeController.d.ts +30 -0
- package/dist/types/src/controllers/TooltipController.d.ts +25 -0
- package/dist/types/src/controllers/TransactionsController.d.ts +25 -0
- package/dist/types/src/utils/AssetUtil.d.ts +15 -0
- package/dist/types/src/utils/ConstantsUtil.d.ts +86 -0
- package/dist/types/src/utils/CoreHelperUtil.d.ts +56 -0
- package/dist/types/src/utils/ERC7811Util.d.ts +67 -0
- package/dist/types/src/utils/EnsUtil.d.ts +3 -0
- package/dist/types/src/utils/FetchUtil.d.ts +26 -0
- package/dist/types/src/utils/MobileWallet.d.ts +9 -0
- package/dist/types/src/utils/OptionsUtil.d.ts +5 -0
- package/dist/types/src/utils/RouterUtil.d.ts +4 -0
- package/dist/types/src/utils/SIWXUtil.d.ts +183 -0
- package/dist/types/src/utils/SendApiUtil.d.ts +13 -0
- package/dist/types/src/utils/StorageUtil.d.ts +99 -0
- package/dist/types/src/utils/SwapApiUtil.d.ts +27 -0
- package/dist/types/src/utils/SwapCalculationUtil.d.ts +22 -0
- package/dist/types/src/utils/TypeUtil.d.ts +981 -0
- package/dist/types/tests/constants/OnrampTransactions.d.ts +138 -0
- package/dist/types/tests/controllers/AccountController.test.d.ts +1 -0
- package/dist/types/tests/controllers/AlertController.test.d.ts +1 -0
- package/dist/types/tests/controllers/ApiController.test.d.ts +1 -0
- package/dist/types/tests/controllers/AssetController.test.d.ts +1 -0
- package/dist/types/tests/controllers/BlockchainApiController.test.d.ts +1 -0
- package/dist/types/tests/controllers/ChainController.test.d.ts +1 -0
- package/dist/types/tests/controllers/ConnectionController.test.d.ts +1 -0
- package/dist/types/tests/controllers/ConnectorController.test.d.ts +1 -0
- package/dist/types/tests/controllers/EnsController.test.d.ts +1 -0
- package/dist/types/tests/controllers/EventsController.test.d.ts +1 -0
- package/dist/types/tests/controllers/ModalController.test.d.ts +1 -0
- package/dist/types/tests/controllers/OnRampController.test.d.ts +1 -0
- package/dist/types/tests/controllers/OptionsController.test.d.ts +1 -0
- package/dist/types/tests/controllers/PublicStateController.test.d.ts +1 -0
- package/dist/types/tests/controllers/RouterController.test.d.ts +1 -0
- package/dist/types/tests/controllers/SendController.test.d.ts +1 -0
- package/dist/types/tests/controllers/SnackController.test.d.ts +1 -0
- package/dist/types/tests/controllers/SwapController.test.d.ts +1 -0
- package/dist/types/tests/controllers/ThemeController.test.d.ts +1 -0
- package/dist/types/tests/controllers/TooltipController.test.d.ts +1 -0
- package/dist/types/tests/controllers/TransactionsController.test.d.ts +1 -0
- package/dist/types/tests/hooks/react.test.d.ts +1 -0
- package/dist/types/tests/hooks/vue.test.d.ts +2 -0
- package/dist/types/tests/mocks/ChainController.d.ts +2 -0
- package/dist/types/tests/mocks/SwapController.d.ts +75 -0
- package/dist/types/tests/mocks/useAppKitAccount.d.ts +40 -0
- package/dist/types/tests/utils/AssetUtil.test.d.ts +1 -0
- package/dist/types/tests/utils/CoreHelperUtil.test.d.ts +1 -0
- package/dist/types/tests/utils/ERC7811.test.d.ts +1 -0
- package/dist/types/tests/utils/EnsUtil.test.d.ts +1 -0
- package/dist/types/tests/utils/FetchUtil.test.d.ts +1 -0
- package/dist/types/tests/utils/MobileWallet.test.d.ts +1 -0
- package/dist/types/tests/utils/OptionsUtil.test.d.ts +1 -0
- package/dist/types/tests/utils/RouterUtil.test.d.ts +1 -0
- package/dist/types/tests/utils/SendApiUtil.test.d.ts +1 -0
- package/dist/types/tests/utils/StorageUtil.test.d.ts +1 -0
- package/dist/types/tests/utils/SwapApiUtil.test.d.ts +1 -0
- package/dist/types/tests/utils/SwapCalculationUtil.test.d.ts +1 -0
- package/package.json +81 -0
- package/readme.md +11 -0
|
@@ -0,0 +1,981 @@
|
|
|
1
|
+
import type UniversalProvider from '@walletconnect/universal-provider';
|
|
2
|
+
import type { AdapterType, AppKitNetwork, AppKitSdkVersion, Balance, CaipAddress, CaipNetwork, CaipNetworkId, ChainNamespace, SdkFramework, Transaction } from '@reown/appkit-common';
|
|
3
|
+
import type { W3mFrameProvider, W3mFrameTypes } from '@reown/appkit-wallet';
|
|
4
|
+
import type { AccountControllerState } from '../controllers/AccountController.js';
|
|
5
|
+
import type { ConnectionControllerClient } from '../controllers/ConnectionController.js';
|
|
6
|
+
import type { ReownName } from '../controllers/EnsController.js';
|
|
7
|
+
import type { OnRampProviderOption } from '../controllers/OnRampController.js';
|
|
8
|
+
import type { ConstantsUtil } from './ConstantsUtil.js';
|
|
9
|
+
type InitializeAppKitConfigs = {
|
|
10
|
+
showWallets?: boolean;
|
|
11
|
+
siweConfig?: {
|
|
12
|
+
options: {
|
|
13
|
+
enabled?: boolean;
|
|
14
|
+
nonceRefetchIntervalMs?: number;
|
|
15
|
+
sessionRefetchIntervalMs?: number;
|
|
16
|
+
signOutOnDisconnect?: boolean;
|
|
17
|
+
signOutOnAccountChange?: boolean;
|
|
18
|
+
signOutOnNetworkChange?: boolean;
|
|
19
|
+
};
|
|
20
|
+
};
|
|
21
|
+
themeMode?: 'dark' | 'light';
|
|
22
|
+
themeVariables?: ThemeVariables;
|
|
23
|
+
allowUnsupportedChain?: boolean;
|
|
24
|
+
networks: (string | number)[];
|
|
25
|
+
defaultNetwork?: AppKitNetwork;
|
|
26
|
+
chainImages?: Record<number | string, string>;
|
|
27
|
+
connectorImages?: Record<string, string>;
|
|
28
|
+
coinbasePreference?: 'all' | 'smartWalletOnly' | 'eoaOnly';
|
|
29
|
+
metadata?: Metadata;
|
|
30
|
+
};
|
|
31
|
+
export type CaipNetworkCoinbaseNetwork = 'Ethereum' | 'Arbitrum One' | 'Polygon' | 'Avalanche' | 'OP Mainnet' | 'Celo';
|
|
32
|
+
export type ConnectedWalletInfo = {
|
|
33
|
+
name: string;
|
|
34
|
+
icon?: string;
|
|
35
|
+
type?: string;
|
|
36
|
+
[key: string]: unknown;
|
|
37
|
+
};
|
|
38
|
+
export type User = {
|
|
39
|
+
email?: string | null | undefined;
|
|
40
|
+
username?: string | null | undefined;
|
|
41
|
+
};
|
|
42
|
+
export interface LinkingRecord {
|
|
43
|
+
redirect: string;
|
|
44
|
+
href: string;
|
|
45
|
+
}
|
|
46
|
+
export type ProjectId = string;
|
|
47
|
+
export type Platform = 'mobile' | 'desktop' | 'browser' | 'web' | 'qrcode' | 'unsupported';
|
|
48
|
+
export type ConnectorType = 'EXTERNAL' | 'WALLET_CONNECT' | 'INJECTED' | 'ANNOUNCED' | 'AUTH' | 'MULTI_CHAIN' | 'ID_AUTH';
|
|
49
|
+
export type SocialProvider = 'google' | 'github' | 'apple' | 'facebook' | 'x' | 'discord' | 'farcaster';
|
|
50
|
+
export type Connector = {
|
|
51
|
+
id: string;
|
|
52
|
+
type: ConnectorType;
|
|
53
|
+
name: string;
|
|
54
|
+
imageId?: string;
|
|
55
|
+
explorerId?: string;
|
|
56
|
+
imageUrl?: string;
|
|
57
|
+
info?: {
|
|
58
|
+
uuid?: string;
|
|
59
|
+
name?: string;
|
|
60
|
+
icon?: string;
|
|
61
|
+
rdns?: string;
|
|
62
|
+
};
|
|
63
|
+
provider?: Provider | W3mFrameProvider | UniversalProvider;
|
|
64
|
+
chain: ChainNamespace;
|
|
65
|
+
connectors?: Connector[];
|
|
66
|
+
};
|
|
67
|
+
export interface AuthConnector extends Connector {
|
|
68
|
+
provider: W3mFrameProvider;
|
|
69
|
+
socials?: SocialProvider[];
|
|
70
|
+
email?: boolean;
|
|
71
|
+
}
|
|
72
|
+
export type CaipNamespaces = Record<string, {
|
|
73
|
+
chains: CaipNetworkId[];
|
|
74
|
+
methods: string[];
|
|
75
|
+
events: string[];
|
|
76
|
+
}>;
|
|
77
|
+
export type SdkVersion = `${SdkFramework}-${AdapterType}-${string}` | AppKitSdkVersion;
|
|
78
|
+
export interface BaseError {
|
|
79
|
+
message?: string;
|
|
80
|
+
}
|
|
81
|
+
export type Metadata = {
|
|
82
|
+
name: string;
|
|
83
|
+
description: string;
|
|
84
|
+
url: string;
|
|
85
|
+
icons: string[];
|
|
86
|
+
};
|
|
87
|
+
export interface WcWallet {
|
|
88
|
+
id: string;
|
|
89
|
+
name: string;
|
|
90
|
+
badge_type?: BadgeType;
|
|
91
|
+
homepage?: string;
|
|
92
|
+
image_id?: string;
|
|
93
|
+
image_url?: string;
|
|
94
|
+
order?: number;
|
|
95
|
+
mobile_link?: string | null;
|
|
96
|
+
desktop_link?: string | null;
|
|
97
|
+
webapp_link?: string | null;
|
|
98
|
+
app_store?: string | null;
|
|
99
|
+
play_store?: string | null;
|
|
100
|
+
chrome_store?: string | null;
|
|
101
|
+
rdns?: string | null;
|
|
102
|
+
injected?: {
|
|
103
|
+
namespace?: string;
|
|
104
|
+
injected_id?: string;
|
|
105
|
+
}[] | null;
|
|
106
|
+
}
|
|
107
|
+
export interface ApiGetWalletsRequest {
|
|
108
|
+
page: number;
|
|
109
|
+
chains: string;
|
|
110
|
+
entries: number;
|
|
111
|
+
search?: string;
|
|
112
|
+
badge?: BadgeType;
|
|
113
|
+
include?: string[];
|
|
114
|
+
exclude?: string[];
|
|
115
|
+
}
|
|
116
|
+
export interface ApiGetWalletsResponse {
|
|
117
|
+
data: WcWallet[];
|
|
118
|
+
count: number;
|
|
119
|
+
}
|
|
120
|
+
export interface ApiGetAnalyticsConfigResponse {
|
|
121
|
+
isAnalyticsEnabled: boolean;
|
|
122
|
+
}
|
|
123
|
+
export type ThemeMode = 'dark' | 'light';
|
|
124
|
+
export interface ThemeVariables {
|
|
125
|
+
'--w3m-font-family'?: string;
|
|
126
|
+
'--w3m-accent'?: string;
|
|
127
|
+
'--w3m-color-mix'?: string;
|
|
128
|
+
'--w3m-color-mix-strength'?: number;
|
|
129
|
+
'--w3m-font-size-master'?: string;
|
|
130
|
+
'--w3m-border-radius-master'?: string;
|
|
131
|
+
'--w3m-z-index'?: number;
|
|
132
|
+
'--w3m-qr-color'?: string;
|
|
133
|
+
}
|
|
134
|
+
export interface BlockchainApiIdentityRequest {
|
|
135
|
+
address: string;
|
|
136
|
+
}
|
|
137
|
+
export interface BlockchainApiIdentityResponse {
|
|
138
|
+
avatar: string | null;
|
|
139
|
+
name: string | null;
|
|
140
|
+
}
|
|
141
|
+
export interface BlockchainApiTransactionsRequest {
|
|
142
|
+
account: string;
|
|
143
|
+
cursor?: string;
|
|
144
|
+
onramp?: 'coinbase';
|
|
145
|
+
signal?: AbortSignal;
|
|
146
|
+
cache?: RequestCache;
|
|
147
|
+
chainId?: string;
|
|
148
|
+
}
|
|
149
|
+
export interface BlockchainApiTransactionsResponse {
|
|
150
|
+
data: Transaction[];
|
|
151
|
+
next: string | null;
|
|
152
|
+
}
|
|
153
|
+
export type SwapToken = {
|
|
154
|
+
name: string;
|
|
155
|
+
symbol: string;
|
|
156
|
+
address: CaipAddress;
|
|
157
|
+
decimals: number;
|
|
158
|
+
logoUri: string;
|
|
159
|
+
eip2612?: boolean;
|
|
160
|
+
};
|
|
161
|
+
export type SwapTokenWithBalance = SwapToken & {
|
|
162
|
+
quantity: {
|
|
163
|
+
decimals: string;
|
|
164
|
+
numeric: string;
|
|
165
|
+
};
|
|
166
|
+
price: number;
|
|
167
|
+
value: number;
|
|
168
|
+
};
|
|
169
|
+
export interface BlockchainApiSwapTokensRequest {
|
|
170
|
+
chainId?: string;
|
|
171
|
+
}
|
|
172
|
+
export interface BlockchainApiSwapTokensResponse {
|
|
173
|
+
tokens: SwapToken[];
|
|
174
|
+
}
|
|
175
|
+
export interface BlockchainApiSwapQuoteRequest {
|
|
176
|
+
chainId?: string;
|
|
177
|
+
amount: string;
|
|
178
|
+
userAddress: string;
|
|
179
|
+
from: string;
|
|
180
|
+
to: string;
|
|
181
|
+
gasPrice: string;
|
|
182
|
+
}
|
|
183
|
+
export interface BlockchainApiSwapQuoteResponse {
|
|
184
|
+
quotes: {
|
|
185
|
+
id: string | null;
|
|
186
|
+
fromAmount: string;
|
|
187
|
+
fromAccount: string;
|
|
188
|
+
toAmount: string;
|
|
189
|
+
toAccount: string;
|
|
190
|
+
}[];
|
|
191
|
+
}
|
|
192
|
+
export interface BlockchainApiTokenPriceRequest {
|
|
193
|
+
currency?: 'usd' | 'eur' | 'gbp' | 'aud' | 'cad' | 'inr' | 'jpy' | 'btc' | 'eth';
|
|
194
|
+
addresses: string[];
|
|
195
|
+
}
|
|
196
|
+
export interface BlockchainApiTokenPriceResponse {
|
|
197
|
+
fungibles: {
|
|
198
|
+
name: string;
|
|
199
|
+
symbol: string;
|
|
200
|
+
iconUrl: string;
|
|
201
|
+
price: number;
|
|
202
|
+
}[];
|
|
203
|
+
}
|
|
204
|
+
export interface BlockchainApiSwapAllowanceRequest {
|
|
205
|
+
tokenAddress: string;
|
|
206
|
+
userAddress: string;
|
|
207
|
+
}
|
|
208
|
+
export interface BlockchainApiSwapAllowanceResponse {
|
|
209
|
+
allowance: string;
|
|
210
|
+
}
|
|
211
|
+
export interface BlockchainApiGasPriceRequest {
|
|
212
|
+
chainId: string;
|
|
213
|
+
}
|
|
214
|
+
export interface BlockchainApiGasPriceResponse {
|
|
215
|
+
standard: string;
|
|
216
|
+
fast: string;
|
|
217
|
+
instant: string;
|
|
218
|
+
}
|
|
219
|
+
export interface BlockchainApiGenerateSwapCalldataRequest {
|
|
220
|
+
userAddress: string;
|
|
221
|
+
from: string;
|
|
222
|
+
to: string;
|
|
223
|
+
amount: string;
|
|
224
|
+
eip155?: {
|
|
225
|
+
slippage: string;
|
|
226
|
+
permit?: string;
|
|
227
|
+
};
|
|
228
|
+
}
|
|
229
|
+
export interface BlockchainApiGenerateSwapCalldataResponse {
|
|
230
|
+
tx: {
|
|
231
|
+
from: CaipAddress;
|
|
232
|
+
to: CaipAddress;
|
|
233
|
+
data: `0x${string}`;
|
|
234
|
+
amount: string;
|
|
235
|
+
eip155: {
|
|
236
|
+
gas: string;
|
|
237
|
+
gasPrice: string;
|
|
238
|
+
};
|
|
239
|
+
};
|
|
240
|
+
}
|
|
241
|
+
export interface BlockchainApiGenerateApproveCalldataRequest {
|
|
242
|
+
userAddress: string;
|
|
243
|
+
from: string;
|
|
244
|
+
to: string;
|
|
245
|
+
amount?: number;
|
|
246
|
+
}
|
|
247
|
+
export interface BlockchainApiGenerateApproveCalldataResponse {
|
|
248
|
+
tx: {
|
|
249
|
+
from: CaipAddress;
|
|
250
|
+
to: CaipAddress;
|
|
251
|
+
data: `0x${string}`;
|
|
252
|
+
value: string;
|
|
253
|
+
eip155: {
|
|
254
|
+
gas: number;
|
|
255
|
+
gasPrice: string;
|
|
256
|
+
};
|
|
257
|
+
};
|
|
258
|
+
}
|
|
259
|
+
export interface BlockchainApiBalanceResponse {
|
|
260
|
+
balances: Balance[];
|
|
261
|
+
}
|
|
262
|
+
export interface BlockchainApiLookupEnsName {
|
|
263
|
+
name: ReownName;
|
|
264
|
+
registered: number;
|
|
265
|
+
updated: number;
|
|
266
|
+
addresses: Record<string, {
|
|
267
|
+
address: string;
|
|
268
|
+
created: string;
|
|
269
|
+
}>;
|
|
270
|
+
attributes: {
|
|
271
|
+
avatar?: string;
|
|
272
|
+
bio?: string;
|
|
273
|
+
}[];
|
|
274
|
+
}
|
|
275
|
+
export interface BlockchainApiRegisterNameParams {
|
|
276
|
+
coinType: number;
|
|
277
|
+
message: string;
|
|
278
|
+
signature: string;
|
|
279
|
+
address: `0x${string}`;
|
|
280
|
+
}
|
|
281
|
+
export interface BlockchainApiSuggestionResponse {
|
|
282
|
+
suggestions: {
|
|
283
|
+
name: string;
|
|
284
|
+
registered: boolean;
|
|
285
|
+
}[];
|
|
286
|
+
}
|
|
287
|
+
export interface BlockchainApiEnsError extends BaseError {
|
|
288
|
+
status: string;
|
|
289
|
+
reasons: {
|
|
290
|
+
name: string;
|
|
291
|
+
description: string;
|
|
292
|
+
}[];
|
|
293
|
+
}
|
|
294
|
+
export interface Token {
|
|
295
|
+
address: string;
|
|
296
|
+
image?: string;
|
|
297
|
+
}
|
|
298
|
+
export type Tokens = Record<CaipNetworkId, Token>;
|
|
299
|
+
export type CustomWallet = Pick<WcWallet, 'id' | 'name' | 'homepage' | 'image_url' | 'mobile_link' | 'desktop_link' | 'webapp_link' | 'app_store' | 'play_store'>;
|
|
300
|
+
export type Event = {
|
|
301
|
+
type: 'track';
|
|
302
|
+
address?: string;
|
|
303
|
+
event: 'MODAL_CREATED';
|
|
304
|
+
} | {
|
|
305
|
+
type: 'track';
|
|
306
|
+
event: 'MODAL_OPEN';
|
|
307
|
+
properties: {
|
|
308
|
+
connected: boolean;
|
|
309
|
+
};
|
|
310
|
+
} | {
|
|
311
|
+
type: 'track';
|
|
312
|
+
address?: string;
|
|
313
|
+
event: 'MODAL_CLOSE';
|
|
314
|
+
properties: {
|
|
315
|
+
connected: boolean;
|
|
316
|
+
};
|
|
317
|
+
} | {
|
|
318
|
+
type: 'track';
|
|
319
|
+
address?: string;
|
|
320
|
+
event: 'CLICK_ALL_WALLETS';
|
|
321
|
+
} | {
|
|
322
|
+
type: 'track';
|
|
323
|
+
address?: string;
|
|
324
|
+
event: 'SELECT_WALLET';
|
|
325
|
+
properties: {
|
|
326
|
+
name: string;
|
|
327
|
+
platform: Platform;
|
|
328
|
+
};
|
|
329
|
+
} | {
|
|
330
|
+
type: 'track';
|
|
331
|
+
address?: string;
|
|
332
|
+
event: 'CONNECT_SUCCESS';
|
|
333
|
+
properties: {
|
|
334
|
+
method: 'qrcode' | 'mobile' | 'browser' | 'email';
|
|
335
|
+
name: string;
|
|
336
|
+
};
|
|
337
|
+
} | {
|
|
338
|
+
type: 'track';
|
|
339
|
+
address?: string;
|
|
340
|
+
event: 'CONNECT_ERROR';
|
|
341
|
+
properties: {
|
|
342
|
+
message: string;
|
|
343
|
+
};
|
|
344
|
+
} | {
|
|
345
|
+
type: 'track';
|
|
346
|
+
address?: string;
|
|
347
|
+
event: 'DISCONNECT_SUCCESS';
|
|
348
|
+
} | {
|
|
349
|
+
type: 'track';
|
|
350
|
+
address?: string;
|
|
351
|
+
event: 'DISCONNECT_ERROR';
|
|
352
|
+
properties?: {
|
|
353
|
+
message: string;
|
|
354
|
+
};
|
|
355
|
+
} | {
|
|
356
|
+
type: 'track';
|
|
357
|
+
address?: string;
|
|
358
|
+
event: 'CLICK_WALLET_HELP';
|
|
359
|
+
} | {
|
|
360
|
+
type: 'track';
|
|
361
|
+
address?: string;
|
|
362
|
+
event: 'CLICK_NETWORK_HELP';
|
|
363
|
+
} | {
|
|
364
|
+
type: 'track';
|
|
365
|
+
address?: string;
|
|
366
|
+
event: 'CLICK_GET_WALLET';
|
|
367
|
+
} | {
|
|
368
|
+
type: 'track';
|
|
369
|
+
address?: string;
|
|
370
|
+
event: 'CLICK_TRANSACTIONS';
|
|
371
|
+
properties: {
|
|
372
|
+
isSmartAccount: boolean;
|
|
373
|
+
};
|
|
374
|
+
} | {
|
|
375
|
+
type: 'track';
|
|
376
|
+
address?: string;
|
|
377
|
+
event: 'ERROR_FETCH_TRANSACTIONS';
|
|
378
|
+
properties: {
|
|
379
|
+
address: string;
|
|
380
|
+
projectId: string;
|
|
381
|
+
cursor: string | undefined;
|
|
382
|
+
isSmartAccount: boolean;
|
|
383
|
+
};
|
|
384
|
+
} | {
|
|
385
|
+
type: 'track';
|
|
386
|
+
address?: string;
|
|
387
|
+
event: 'LOAD_MORE_TRANSACTIONS';
|
|
388
|
+
properties: {
|
|
389
|
+
address: string | undefined;
|
|
390
|
+
projectId: string;
|
|
391
|
+
cursor: string | undefined;
|
|
392
|
+
isSmartAccount: boolean;
|
|
393
|
+
};
|
|
394
|
+
} | {
|
|
395
|
+
type: 'track';
|
|
396
|
+
address?: string;
|
|
397
|
+
event: 'CLICK_SIGN_SIWX_MESSAGE';
|
|
398
|
+
properties: {
|
|
399
|
+
network: string;
|
|
400
|
+
isSmartAccount: boolean;
|
|
401
|
+
};
|
|
402
|
+
} | {
|
|
403
|
+
type: 'track';
|
|
404
|
+
address?: string;
|
|
405
|
+
event: 'CLICK_CANCEL_SIWX';
|
|
406
|
+
properties: {
|
|
407
|
+
network: string;
|
|
408
|
+
isSmartAccount: boolean;
|
|
409
|
+
};
|
|
410
|
+
} | {
|
|
411
|
+
type: 'track';
|
|
412
|
+
address?: string;
|
|
413
|
+
event: 'CLICK_NETWORKS';
|
|
414
|
+
} | {
|
|
415
|
+
type: 'track';
|
|
416
|
+
address?: string;
|
|
417
|
+
event: 'SIWX_AUTH_SUCCESS';
|
|
418
|
+
properties: {
|
|
419
|
+
network: string;
|
|
420
|
+
isSmartAccount: boolean;
|
|
421
|
+
};
|
|
422
|
+
} | {
|
|
423
|
+
type: 'track';
|
|
424
|
+
address?: string;
|
|
425
|
+
event: 'SIWX_AUTH_ERROR';
|
|
426
|
+
properties: {
|
|
427
|
+
network: string;
|
|
428
|
+
isSmartAccount: boolean;
|
|
429
|
+
};
|
|
430
|
+
} | {
|
|
431
|
+
type: 'track';
|
|
432
|
+
address?: string;
|
|
433
|
+
event: 'EMAIL_LOGIN_SELECTED';
|
|
434
|
+
} | {
|
|
435
|
+
type: 'track';
|
|
436
|
+
address?: string;
|
|
437
|
+
event: 'EMAIL_SUBMITTED';
|
|
438
|
+
} | {
|
|
439
|
+
type: 'track';
|
|
440
|
+
address?: string;
|
|
441
|
+
event: 'DEVICE_REGISTERED_FOR_EMAIL';
|
|
442
|
+
} | {
|
|
443
|
+
type: 'track';
|
|
444
|
+
address?: string;
|
|
445
|
+
event: 'EMAIL_VERIFICATION_CODE_SENT';
|
|
446
|
+
} | {
|
|
447
|
+
type: 'track';
|
|
448
|
+
address?: string;
|
|
449
|
+
event: 'EMAIL_VERIFICATION_CODE_PASS';
|
|
450
|
+
} | {
|
|
451
|
+
type: 'track';
|
|
452
|
+
address?: string;
|
|
453
|
+
event: 'EMAIL_VERIFICATION_CODE_FAIL';
|
|
454
|
+
properties: {
|
|
455
|
+
message: string;
|
|
456
|
+
};
|
|
457
|
+
} | {
|
|
458
|
+
type: 'track';
|
|
459
|
+
address?: string;
|
|
460
|
+
event: 'EMAIL_EDIT';
|
|
461
|
+
} | {
|
|
462
|
+
type: 'track';
|
|
463
|
+
address?: string;
|
|
464
|
+
event: 'EMAIL_UPGRADE_FROM_MODAL';
|
|
465
|
+
} | {
|
|
466
|
+
type: 'track';
|
|
467
|
+
address?: string;
|
|
468
|
+
event: 'SWITCH_NETWORK';
|
|
469
|
+
properties: {
|
|
470
|
+
network: string;
|
|
471
|
+
};
|
|
472
|
+
} | {
|
|
473
|
+
type: 'track';
|
|
474
|
+
address?: string;
|
|
475
|
+
event: 'CLICK_CONVERT';
|
|
476
|
+
} | {
|
|
477
|
+
type: 'track';
|
|
478
|
+
address?: string;
|
|
479
|
+
event: 'CLICK_SELECT_TOKEN_TO_SWAP';
|
|
480
|
+
} | {
|
|
481
|
+
type: 'track';
|
|
482
|
+
address?: string;
|
|
483
|
+
event: 'CLICK_SELECT_NETWORK_TO_SWAP';
|
|
484
|
+
} | {
|
|
485
|
+
type: 'track';
|
|
486
|
+
address?: string;
|
|
487
|
+
event: 'SELECT_BUY_CRYPTO';
|
|
488
|
+
properties: {
|
|
489
|
+
isSmartAccount: boolean;
|
|
490
|
+
};
|
|
491
|
+
} | {
|
|
492
|
+
type: 'track';
|
|
493
|
+
address?: string;
|
|
494
|
+
event: 'SELECT_BUY_PROVIDER';
|
|
495
|
+
properties: {
|
|
496
|
+
provider: OnRampProviderOption;
|
|
497
|
+
isSmartAccount: boolean;
|
|
498
|
+
};
|
|
499
|
+
} | {
|
|
500
|
+
type: 'track';
|
|
501
|
+
address?: string;
|
|
502
|
+
event: 'SELECT_WHAT_IS_A_BUY';
|
|
503
|
+
properties: {
|
|
504
|
+
isSmartAccount: boolean;
|
|
505
|
+
};
|
|
506
|
+
} | {
|
|
507
|
+
type: 'track';
|
|
508
|
+
address?: string;
|
|
509
|
+
event: 'SET_PREFERRED_ACCOUNT_TYPE';
|
|
510
|
+
properties: {
|
|
511
|
+
accountType: W3mFrameTypes.AccountType;
|
|
512
|
+
network: string;
|
|
513
|
+
};
|
|
514
|
+
} | {
|
|
515
|
+
type: 'track';
|
|
516
|
+
address?: string;
|
|
517
|
+
event: 'OPEN_SWAP';
|
|
518
|
+
properties: {
|
|
519
|
+
isSmartAccount: boolean;
|
|
520
|
+
network: string;
|
|
521
|
+
};
|
|
522
|
+
} | {
|
|
523
|
+
type: 'track';
|
|
524
|
+
address?: string;
|
|
525
|
+
event: 'INITIATE_SWAP';
|
|
526
|
+
properties: {
|
|
527
|
+
isSmartAccount: boolean;
|
|
528
|
+
network: string;
|
|
529
|
+
swapFromToken: string;
|
|
530
|
+
swapToToken: string;
|
|
531
|
+
swapFromAmount: string;
|
|
532
|
+
swapToAmount: string;
|
|
533
|
+
};
|
|
534
|
+
} | {
|
|
535
|
+
type: 'track';
|
|
536
|
+
address?: string;
|
|
537
|
+
event: 'SWAP_SUCCESS';
|
|
538
|
+
properties: {
|
|
539
|
+
isSmartAccount: boolean;
|
|
540
|
+
network: string;
|
|
541
|
+
swapFromToken: string;
|
|
542
|
+
swapToToken: string;
|
|
543
|
+
swapFromAmount: string;
|
|
544
|
+
swapToAmount: string;
|
|
545
|
+
};
|
|
546
|
+
} | {
|
|
547
|
+
type: 'track';
|
|
548
|
+
address?: string;
|
|
549
|
+
event: 'SWAP_ERROR';
|
|
550
|
+
properties: {
|
|
551
|
+
isSmartAccount: boolean;
|
|
552
|
+
network: string;
|
|
553
|
+
swapFromToken: string;
|
|
554
|
+
swapToToken: string;
|
|
555
|
+
swapFromAmount: string;
|
|
556
|
+
swapToAmount: string;
|
|
557
|
+
message: string;
|
|
558
|
+
};
|
|
559
|
+
} | {
|
|
560
|
+
type: 'track';
|
|
561
|
+
address?: string;
|
|
562
|
+
event: 'SWAP_APPROVAL_ERROR';
|
|
563
|
+
properties: {
|
|
564
|
+
isSmartAccount: boolean;
|
|
565
|
+
network: string;
|
|
566
|
+
swapFromToken: string;
|
|
567
|
+
swapToToken: string;
|
|
568
|
+
swapFromAmount: string;
|
|
569
|
+
swapToAmount: string;
|
|
570
|
+
message: string;
|
|
571
|
+
};
|
|
572
|
+
} | {
|
|
573
|
+
type: 'track';
|
|
574
|
+
address?: string;
|
|
575
|
+
event: 'SOCIAL_LOGIN_STARTED';
|
|
576
|
+
properties: {
|
|
577
|
+
provider: SocialProvider;
|
|
578
|
+
};
|
|
579
|
+
} | {
|
|
580
|
+
type: 'track';
|
|
581
|
+
address?: string;
|
|
582
|
+
event: 'SOCIAL_LOGIN_SUCCESS';
|
|
583
|
+
properties: {
|
|
584
|
+
provider: SocialProvider;
|
|
585
|
+
};
|
|
586
|
+
} | {
|
|
587
|
+
type: 'track';
|
|
588
|
+
address?: string;
|
|
589
|
+
event: 'SOCIAL_LOGIN_ERROR';
|
|
590
|
+
properties: {
|
|
591
|
+
provider: SocialProvider;
|
|
592
|
+
};
|
|
593
|
+
} | {
|
|
594
|
+
type: 'track';
|
|
595
|
+
address?: string;
|
|
596
|
+
event: 'SOCIAL_LOGIN_REQUEST_USER_DATA';
|
|
597
|
+
properties: {
|
|
598
|
+
provider: SocialProvider;
|
|
599
|
+
};
|
|
600
|
+
} | {
|
|
601
|
+
type: 'track';
|
|
602
|
+
address?: string;
|
|
603
|
+
event: 'SOCIAL_LOGIN_CANCELED';
|
|
604
|
+
properties: {
|
|
605
|
+
provider: SocialProvider;
|
|
606
|
+
};
|
|
607
|
+
} | {
|
|
608
|
+
type: 'track';
|
|
609
|
+
address?: string;
|
|
610
|
+
event: 'OPEN_ENS_FLOW';
|
|
611
|
+
properties: {
|
|
612
|
+
isSmartAccount: boolean;
|
|
613
|
+
};
|
|
614
|
+
} | {
|
|
615
|
+
type: 'track';
|
|
616
|
+
address?: string;
|
|
617
|
+
event: 'REGISTER_NAME_INITIATED';
|
|
618
|
+
properties: {
|
|
619
|
+
isSmartAccount: boolean;
|
|
620
|
+
ensName: string;
|
|
621
|
+
};
|
|
622
|
+
} | {
|
|
623
|
+
type: 'track';
|
|
624
|
+
address?: string;
|
|
625
|
+
event: 'REGISTER_NAME_SUCCESS';
|
|
626
|
+
properties: {
|
|
627
|
+
isSmartAccount: boolean;
|
|
628
|
+
ensName: string;
|
|
629
|
+
};
|
|
630
|
+
} | {
|
|
631
|
+
type: 'track';
|
|
632
|
+
address?: string;
|
|
633
|
+
event: 'REGISTER_NAME_ERROR';
|
|
634
|
+
properties: {
|
|
635
|
+
isSmartAccount: boolean;
|
|
636
|
+
ensName: string;
|
|
637
|
+
error: string;
|
|
638
|
+
};
|
|
639
|
+
} | {
|
|
640
|
+
type: 'track';
|
|
641
|
+
address?: string;
|
|
642
|
+
event: 'OPEN_SEND';
|
|
643
|
+
properties: {
|
|
644
|
+
isSmartAccount: boolean;
|
|
645
|
+
network: string;
|
|
646
|
+
};
|
|
647
|
+
} | {
|
|
648
|
+
type: 'track';
|
|
649
|
+
address?: string;
|
|
650
|
+
event: 'SEND_INITIATED';
|
|
651
|
+
properties: {
|
|
652
|
+
isSmartAccount: boolean;
|
|
653
|
+
network: string;
|
|
654
|
+
token: string;
|
|
655
|
+
amount: number;
|
|
656
|
+
};
|
|
657
|
+
} | {
|
|
658
|
+
type: 'track';
|
|
659
|
+
address?: string;
|
|
660
|
+
event: 'SEND_SUCCESS';
|
|
661
|
+
properties: {
|
|
662
|
+
isSmartAccount: boolean;
|
|
663
|
+
network: string;
|
|
664
|
+
token: string;
|
|
665
|
+
amount: number;
|
|
666
|
+
};
|
|
667
|
+
} | {
|
|
668
|
+
type: 'track';
|
|
669
|
+
address?: string;
|
|
670
|
+
event: 'SEND_ERROR';
|
|
671
|
+
properties: {
|
|
672
|
+
message: string;
|
|
673
|
+
isSmartAccount: boolean;
|
|
674
|
+
network: string;
|
|
675
|
+
token: string;
|
|
676
|
+
amount: number;
|
|
677
|
+
};
|
|
678
|
+
} | {
|
|
679
|
+
type: 'track';
|
|
680
|
+
address?: string;
|
|
681
|
+
event: 'CONNECT_PROXY_ERROR';
|
|
682
|
+
properties: {
|
|
683
|
+
message: string;
|
|
684
|
+
uri: string;
|
|
685
|
+
mobile_link: string;
|
|
686
|
+
name: string;
|
|
687
|
+
};
|
|
688
|
+
} | {
|
|
689
|
+
type: 'track';
|
|
690
|
+
address?: string;
|
|
691
|
+
event: 'SEARCH_WALLET';
|
|
692
|
+
properties: {
|
|
693
|
+
badge: string;
|
|
694
|
+
search: string;
|
|
695
|
+
};
|
|
696
|
+
} | {
|
|
697
|
+
type: 'track';
|
|
698
|
+
address?: string;
|
|
699
|
+
event: 'INITIALIZE';
|
|
700
|
+
properties: InitializeAppKitConfigs;
|
|
701
|
+
};
|
|
702
|
+
export type DestinationWallet = {
|
|
703
|
+
address: string;
|
|
704
|
+
blockchains: string[];
|
|
705
|
+
assets: string[];
|
|
706
|
+
};
|
|
707
|
+
export type GenerateOnRampUrlArgs = {
|
|
708
|
+
destinationWallets: DestinationWallet[];
|
|
709
|
+
partnerUserId: string;
|
|
710
|
+
defaultNetwork?: string;
|
|
711
|
+
purchaseAmount?: number;
|
|
712
|
+
paymentAmount?: number;
|
|
713
|
+
};
|
|
714
|
+
export type CoinbaseNetwork = {
|
|
715
|
+
name: string;
|
|
716
|
+
display_name: string;
|
|
717
|
+
chain_id: string;
|
|
718
|
+
contract_address: string;
|
|
719
|
+
};
|
|
720
|
+
export type PaymentLimits = {
|
|
721
|
+
id: string;
|
|
722
|
+
min: string;
|
|
723
|
+
max: string;
|
|
724
|
+
};
|
|
725
|
+
export type PaymentCurrency = {
|
|
726
|
+
id: string;
|
|
727
|
+
payment_method_limits: PaymentLimits[];
|
|
728
|
+
};
|
|
729
|
+
export type QuoteAmount = {
|
|
730
|
+
amount: string;
|
|
731
|
+
currency: string;
|
|
732
|
+
};
|
|
733
|
+
export type PurchaseCurrency = {
|
|
734
|
+
id: string;
|
|
735
|
+
name: string;
|
|
736
|
+
symbol: string;
|
|
737
|
+
networks: CoinbaseNetwork[];
|
|
738
|
+
};
|
|
739
|
+
export type OnrampQuote = {
|
|
740
|
+
paymentTotal: QuoteAmount;
|
|
741
|
+
paymentSubtotal: QuoteAmount;
|
|
742
|
+
purchaseAmount: QuoteAmount;
|
|
743
|
+
coinbaseFee: QuoteAmount;
|
|
744
|
+
networkFee: QuoteAmount;
|
|
745
|
+
quoteId: string;
|
|
746
|
+
};
|
|
747
|
+
export type GetQuoteArgs = {
|
|
748
|
+
purchaseCurrency: PurchaseCurrency;
|
|
749
|
+
paymentCurrency: PaymentCurrency;
|
|
750
|
+
amount: string;
|
|
751
|
+
network: string;
|
|
752
|
+
};
|
|
753
|
+
export type NamespaceTypeMap = {
|
|
754
|
+
eip155: 'eoa' | 'smartAccount';
|
|
755
|
+
solana: 'eoa';
|
|
756
|
+
bip122: 'payment' | 'ordinal' | 'stx';
|
|
757
|
+
polkadot: 'eoa';
|
|
758
|
+
};
|
|
759
|
+
export type AccountTypeMap = {
|
|
760
|
+
[K in ChainNamespace]: {
|
|
761
|
+
namespace: K;
|
|
762
|
+
address: string;
|
|
763
|
+
type: NamespaceTypeMap[K];
|
|
764
|
+
publicKey?: K extends 'bip122' ? string : never;
|
|
765
|
+
path?: K extends 'bip122' ? string : never;
|
|
766
|
+
};
|
|
767
|
+
};
|
|
768
|
+
export type WalletGetAssetsParams = {
|
|
769
|
+
account: `0x${string}`;
|
|
770
|
+
assetFilter?: Record<`0x${string}`, (`0x${string}` | 'native')[]>;
|
|
771
|
+
assetTypeFilter?: ('NATIVE' | 'ERC20')[];
|
|
772
|
+
chainFilter?: `0x${string}`[];
|
|
773
|
+
};
|
|
774
|
+
export type WalletGetAssetsResponse = Record<`0x${string}`, {
|
|
775
|
+
address: `0x${string}` | 'native';
|
|
776
|
+
balance: `0x${string}`;
|
|
777
|
+
type: 'NATIVE' | 'ERC20';
|
|
778
|
+
metadata: Record<string, unknown>;
|
|
779
|
+
}[]>;
|
|
780
|
+
export type AccountType = AccountTypeMap[ChainNamespace];
|
|
781
|
+
export type SendTransactionArgs = {
|
|
782
|
+
chainNamespace?: undefined | 'eip155';
|
|
783
|
+
to: `0x${string}`;
|
|
784
|
+
data: `0x${string}`;
|
|
785
|
+
value: bigint;
|
|
786
|
+
gas?: bigint;
|
|
787
|
+
gasPrice: bigint;
|
|
788
|
+
address: `0x${string}`;
|
|
789
|
+
} | {
|
|
790
|
+
chainNamespace: 'solana';
|
|
791
|
+
to: string;
|
|
792
|
+
value: number;
|
|
793
|
+
};
|
|
794
|
+
export type EstimateGasTransactionArgs = {
|
|
795
|
+
chainNamespace?: undefined | 'eip155';
|
|
796
|
+
address: `0x${string}`;
|
|
797
|
+
to: `0x${string}`;
|
|
798
|
+
data: `0x${string}`;
|
|
799
|
+
} | {
|
|
800
|
+
chainNamespace: 'solana';
|
|
801
|
+
};
|
|
802
|
+
export interface WriteContractArgs {
|
|
803
|
+
tokenAddress: `0x${string}`;
|
|
804
|
+
fromAddress: `0x${string}`;
|
|
805
|
+
method: 'send' | 'transfer' | 'call' | 'approve';
|
|
806
|
+
abi: any;
|
|
807
|
+
args: unknown[];
|
|
808
|
+
chainNamespace: ChainNamespace;
|
|
809
|
+
}
|
|
810
|
+
export interface NetworkControllerClient {
|
|
811
|
+
switchCaipNetwork: (network: CaipNetwork) => Promise<void>;
|
|
812
|
+
getApprovedCaipNetworksData: () => Promise<{
|
|
813
|
+
approvedCaipNetworkIds: CaipNetworkId[];
|
|
814
|
+
supportsAllNetworks: boolean;
|
|
815
|
+
}>;
|
|
816
|
+
}
|
|
817
|
+
export type AdapterNetworkState = {
|
|
818
|
+
supportsAllNetworks: boolean;
|
|
819
|
+
isUnsupportedChain?: boolean;
|
|
820
|
+
_client?: NetworkControllerClient;
|
|
821
|
+
caipNetwork?: CaipNetwork;
|
|
822
|
+
requestedCaipNetworks?: CaipNetwork[];
|
|
823
|
+
approvedCaipNetworkIds?: CaipNetworkId[];
|
|
824
|
+
allowUnsupportedCaipNetwork?: boolean;
|
|
825
|
+
smartAccountEnabledNetworks?: number[];
|
|
826
|
+
};
|
|
827
|
+
export type ChainAdapter = {
|
|
828
|
+
connectionControllerClient?: ConnectionControllerClient;
|
|
829
|
+
networkControllerClient?: NetworkControllerClient;
|
|
830
|
+
accountState?: AccountControllerState;
|
|
831
|
+
networkState?: AdapterNetworkState;
|
|
832
|
+
namespace?: ChainNamespace;
|
|
833
|
+
caipNetworks?: CaipNetwork[];
|
|
834
|
+
projectId?: string;
|
|
835
|
+
adapterType?: string;
|
|
836
|
+
};
|
|
837
|
+
export type ProviderEventListener = {
|
|
838
|
+
connect: (connectParams: {
|
|
839
|
+
chainId: number;
|
|
840
|
+
}) => void;
|
|
841
|
+
disconnect: (error: Error) => void;
|
|
842
|
+
display_uri: (uri: string) => void;
|
|
843
|
+
chainChanged: (chainId: string) => void;
|
|
844
|
+
accountsChanged: (accounts: string[]) => void;
|
|
845
|
+
message: (message: {
|
|
846
|
+
type: string;
|
|
847
|
+
data: unknown;
|
|
848
|
+
}) => void;
|
|
849
|
+
};
|
|
850
|
+
export interface RequestArguments {
|
|
851
|
+
readonly method: string;
|
|
852
|
+
readonly params?: readonly unknown[] | object;
|
|
853
|
+
}
|
|
854
|
+
export interface Provider {
|
|
855
|
+
connect: (params?: {
|
|
856
|
+
onUri?: (uri: string) => void;
|
|
857
|
+
}) => Promise<string>;
|
|
858
|
+
disconnect: () => Promise<void>;
|
|
859
|
+
request: <T>(args: RequestArguments) => Promise<T>;
|
|
860
|
+
on<T extends keyof ProviderEventListener>(event: T, listener: ProviderEventListener[T]): void;
|
|
861
|
+
removeListener: <T>(event: string, listener: (data: T) => void) => void;
|
|
862
|
+
emit: (event: string, data?: unknown) => void;
|
|
863
|
+
}
|
|
864
|
+
export type CombinedProvider = W3mFrameProvider & Provider;
|
|
865
|
+
export type CoinbasePaySDKChainNameValues = keyof typeof ConstantsUtil.WC_COINBASE_PAY_SDK_CHAIN_NAME_MAP;
|
|
866
|
+
export type WalletFeature = 'swaps' | 'send' | 'receive' | 'onramp';
|
|
867
|
+
export type ConnectMethod = 'email' | 'social' | 'wallet';
|
|
868
|
+
export type Features = {
|
|
869
|
+
/**
|
|
870
|
+
* @description Enable or disable the swaps feature. Enabled by default.
|
|
871
|
+
* @type {boolean}
|
|
872
|
+
*/
|
|
873
|
+
swaps?: boolean;
|
|
874
|
+
/**
|
|
875
|
+
* @description Enable or disable the onramp feature. Enabled by default.
|
|
876
|
+
* @type {boolean}
|
|
877
|
+
*/
|
|
878
|
+
onramp?: boolean;
|
|
879
|
+
/**
|
|
880
|
+
* @description Enable or disable the receive feature. Enabled by default.
|
|
881
|
+
* This feature is only visible when connected with email/social. It's not possible to configure when connected with wallet, which is enabled by default.
|
|
882
|
+
* @type {boolean}
|
|
883
|
+
*/
|
|
884
|
+
receive?: boolean;
|
|
885
|
+
/**
|
|
886
|
+
* @description Enable or disable the send feature. Enabled by default.
|
|
887
|
+
* @type {boolean}
|
|
888
|
+
*/
|
|
889
|
+
send?: boolean;
|
|
890
|
+
/**
|
|
891
|
+
* @description Enable or disable the email feature. Enabled by default.
|
|
892
|
+
* @type {boolean}
|
|
893
|
+
*/
|
|
894
|
+
email?: boolean;
|
|
895
|
+
/**
|
|
896
|
+
* @description Show or hide the regular wallet options when email is enabled. Enabled by default.
|
|
897
|
+
* @deprecated - This property will be removed in the next major release. Please use `features.collapseWallets` instead.
|
|
898
|
+
* @type {boolean}
|
|
899
|
+
*/
|
|
900
|
+
emailShowWallets?: boolean;
|
|
901
|
+
/**
|
|
902
|
+
* @description Enable or disable the socials feature. Enabled by default.
|
|
903
|
+
* @type {SocialProvider[]}
|
|
904
|
+
*/
|
|
905
|
+
socials?: SocialProvider[] | false;
|
|
906
|
+
/**
|
|
907
|
+
* @description Enable or disable the history feature. Enabled by default.
|
|
908
|
+
* @type {boolean}
|
|
909
|
+
*/
|
|
910
|
+
history?: boolean;
|
|
911
|
+
/**
|
|
912
|
+
* @description Enable or disable the analytics feature. Enabled by default.
|
|
913
|
+
* @type {boolean}
|
|
914
|
+
*/
|
|
915
|
+
analytics?: boolean;
|
|
916
|
+
/**
|
|
917
|
+
* @description Enable or disable the all wallets feature. Enabled by default.
|
|
918
|
+
* @type {boolean}
|
|
919
|
+
*/
|
|
920
|
+
allWallets?: boolean;
|
|
921
|
+
/**
|
|
922
|
+
* @description Enable or disable the Smart Sessions feature. Disabled by default.
|
|
923
|
+
* @type {boolean}
|
|
924
|
+
*/
|
|
925
|
+
smartSessions?: boolean;
|
|
926
|
+
/**
|
|
927
|
+
* Enable or disable the terms of service and/or privacy policy checkbox.
|
|
928
|
+
* @default false
|
|
929
|
+
*/
|
|
930
|
+
legalCheckbox?: boolean;
|
|
931
|
+
/**
|
|
932
|
+
* @description The order of the connect methods. This is experimental and subject to change.
|
|
933
|
+
* @default ['email', 'social', 'wallet']
|
|
934
|
+
* @type {('email' | 'social' | 'wallet')[]}
|
|
935
|
+
*/
|
|
936
|
+
connectMethodsOrder?: ConnectMethod[];
|
|
937
|
+
/**
|
|
938
|
+
* @
|
|
939
|
+
* @description The order of the wallet features. This is experimental and subject to change.
|
|
940
|
+
* @default ['receive' | 'onramp' | 'swaps' | 'send']
|
|
941
|
+
* @type {('receive' | 'onramp' | 'swaps' | 'send')[]}
|
|
942
|
+
*/
|
|
943
|
+
walletFeaturesOrder?: WalletFeature[];
|
|
944
|
+
/**
|
|
945
|
+
* @description Enable or disable the collapse wallets as a single "Continue with wallet" button for simple UI in connect page.
|
|
946
|
+
* This can be activated when only have another connect method like email or social activated along with wallets.
|
|
947
|
+
* @default false
|
|
948
|
+
*/
|
|
949
|
+
collapseWallets?: boolean;
|
|
950
|
+
};
|
|
951
|
+
export type FeaturesKeys = keyof Features;
|
|
952
|
+
export type WalletGuideType = 'get-started' | 'explore';
|
|
953
|
+
export type UseAppKitAccountReturn = {
|
|
954
|
+
allAccounts: AccountType[];
|
|
955
|
+
caipAddress: CaipAddress | undefined;
|
|
956
|
+
address: string | undefined;
|
|
957
|
+
isConnected: boolean;
|
|
958
|
+
embeddedWalletInfo?: {
|
|
959
|
+
user: AccountControllerState['user'];
|
|
960
|
+
authProvider: AccountControllerState['socialProvider'] | 'email';
|
|
961
|
+
accountType: W3mFrameTypes.AccountType | undefined;
|
|
962
|
+
isSmartAccountDeployed: boolean;
|
|
963
|
+
};
|
|
964
|
+
status: AccountControllerState['status'];
|
|
965
|
+
};
|
|
966
|
+
export type UseAppKitNetworkReturn = {
|
|
967
|
+
caipNetwork: CaipNetwork | undefined;
|
|
968
|
+
chainId: number | string | undefined;
|
|
969
|
+
caipNetworkId: CaipNetworkId | undefined;
|
|
970
|
+
switchNetwork: (network: AppKitNetwork) => void;
|
|
971
|
+
};
|
|
972
|
+
export type BadgeType = 'none' | 'certified';
|
|
973
|
+
export type ConnectionStatus = 'connected' | 'disconnected' | 'connecting' | 'reconnecting';
|
|
974
|
+
/**
|
|
975
|
+
* @description The default account types for each namespace.
|
|
976
|
+
* @default
|
|
977
|
+
*/
|
|
978
|
+
export type DefaultAccountTypes = {
|
|
979
|
+
[Key in keyof NamespaceTypeMap]: NamespaceTypeMap[Key];
|
|
980
|
+
};
|
|
981
|
+
export {};
|