@reown/appkit-core 0.0.5 → 1.0.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 +2 -2
- package/dist/esm/exports/react.js +2 -2
- package/dist/esm/exports/react.js.map +1 -1
- package/dist/esm/src/controllers/ApiController.js +1 -1
- package/dist/esm/src/controllers/ApiController.js.map +1 -1
- package/dist/esm/src/controllers/ChainController.js +18 -6
- package/dist/esm/src/controllers/ChainController.js.map +1 -1
- package/dist/esm/src/controllers/ConnectorController.js +12 -2
- package/dist/esm/src/controllers/ConnectorController.js.map +1 -1
- package/dist/esm/src/controllers/EventsController.js +1 -1
- package/dist/esm/src/controllers/EventsController.js.map +1 -1
- package/dist/esm/src/controllers/NetworkController.js +4 -7
- package/dist/esm/src/controllers/NetworkController.js.map +1 -1
- package/dist/esm/src/controllers/OptionsController.js +3 -0
- package/dist/esm/src/controllers/OptionsController.js.map +1 -1
- package/dist/esm/src/controllers/SwapController.js +1 -1
- package/dist/esm/src/controllers/SwapController.js.map +1 -1
- package/dist/esm/src/utils/StorageUtil.js +3 -3
- package/dist/esm/src/utils/StorageUtil.js.map +1 -1
- package/dist/esm/tests/controllers/AccountController.test.js +6 -1
- package/dist/esm/tests/controllers/AccountController.test.js.map +1 -1
- package/dist/esm/tests/controllers/ApiController.test.js +6 -1
- package/dist/esm/tests/controllers/ApiController.test.js.map +1 -1
- package/dist/esm/tests/controllers/ChainController.test.js +2 -1
- package/dist/esm/tests/controllers/ChainController.test.js.map +1 -1
- package/dist/esm/tests/controllers/ConnectionController.test.js +12 -3
- package/dist/esm/tests/controllers/ConnectionController.test.js.map +1 -1
- package/dist/esm/tests/controllers/ConnectorController.test.js +58 -10
- package/dist/esm/tests/controllers/ConnectorController.test.js.map +1 -1
- package/dist/esm/tests/controllers/EnsController.test.js +6 -1
- package/dist/esm/tests/controllers/EnsController.test.js.map +1 -1
- package/dist/esm/tests/controllers/NetworkController.test.js +11 -2
- package/dist/esm/tests/controllers/NetworkController.test.js.map +1 -1
- package/dist/esm/tests/controllers/SwapController.test.js +5 -1
- package/dist/esm/tests/controllers/SwapController.test.js.map +1 -1
- package/dist/esm/tests/hooks/react.test.js +6 -6
- package/dist/esm/tests/hooks/react.test.js.map +1 -1
- package/dist/esm/tests/utils/StorageUtil.test.js +7 -7
- package/dist/esm/tests/utils/StorageUtil.test.js.map +1 -1
- package/dist/esm/tsconfig.tsbuildinfo +1 -1
- package/dist/types/exports/index.d.ts +1 -1
- package/dist/types/exports/react.d.ts +3 -3
- package/dist/types/src/controllers/AccountController.d.ts +1 -1
- package/dist/types/src/controllers/ChainController.d.ts +1 -1
- package/dist/types/src/controllers/NetworkController.d.ts +1 -1
- package/dist/types/src/controllers/OptionsController.d.ts +91 -8
- package/dist/types/src/controllers/SwapController.d.ts +3 -3
- package/dist/types/src/utils/StorageUtil.d.ts +1 -1
- package/dist/types/src/utils/TypeUtil.d.ts +2 -1
- package/dist/types/tests/mocks/SwapController.d.ts +3 -3
- package/package.json +6 -6
- package/readme.md +4 -4
|
@@ -23,7 +23,7 @@ export type { AssetControllerState } from '../src/controllers/AssetController.js
|
|
|
23
23
|
export { ThemeController } from '../src/controllers/ThemeController.js';
|
|
24
24
|
export type { ThemeControllerState } from '../src/controllers/ThemeController.js';
|
|
25
25
|
export { OptionsController } from '../src/controllers/OptionsController.js';
|
|
26
|
-
export type { OptionsControllerState } from '../src/controllers/OptionsController.js';
|
|
26
|
+
export type { OptionsControllerStatePublic as OptionsControllerState } from '../src/controllers/OptionsController.js';
|
|
27
27
|
export { BlockchainApiController } from '../src/controllers/BlockchainApiController.js';
|
|
28
28
|
export { PublicStateController } from '../src/controllers/PublicStateController.js';
|
|
29
29
|
export type { PublicStateControllerState } from '../src/controllers/PublicStateController.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export declare function
|
|
1
|
+
export declare function useAppKitNetwork(): {
|
|
2
2
|
caipNetwork: {
|
|
3
|
-
readonly id: `
|
|
3
|
+
readonly id: `eip155:${string}` | `eip155:${number}` | `solana:${string}` | `solana:${number}` | `polkadot:${string}` | `polkadot:${number}`;
|
|
4
4
|
readonly chainId: import("@reown/appkit-common").ChainId;
|
|
5
5
|
readonly chainNamespace: import("@reown/appkit-common").ChainNamespace;
|
|
6
6
|
readonly name: string;
|
|
@@ -12,7 +12,7 @@ export declare function useWeb3ModalNetwork(): {
|
|
|
12
12
|
} | undefined;
|
|
13
13
|
chainId: import("@reown/appkit-common").ChainId | undefined;
|
|
14
14
|
};
|
|
15
|
-
export declare function
|
|
15
|
+
export declare function useAppKitAccount(): {
|
|
16
16
|
address: string | undefined;
|
|
17
17
|
isConnected: boolean;
|
|
18
18
|
status: "reconnecting" | "connected" | "disconnected" | "connecting" | undefined;
|
|
@@ -35,7 +35,7 @@ export declare const AccountController: {
|
|
|
35
35
|
setIsConnected(isConnected: AccountControllerState['isConnected'], chain: ChainNamespace | undefined): void;
|
|
36
36
|
setStatus(status: AccountControllerState['status'], chain: ChainNamespace | undefined): void;
|
|
37
37
|
getChainIsConnected(chain: ChainNamespace | undefined): boolean | undefined;
|
|
38
|
-
getCaipAddress(chain: ChainNamespace | undefined): `
|
|
38
|
+
getCaipAddress(chain: ChainNamespace | undefined): `eip155:${string}:${string}` | `eip155:${number}:${string}` | `solana:${string}:${string}` | `solana:${number}:${string}` | `polkadot:${string}:${string}` | `polkadot:${number}:${string}` | undefined;
|
|
39
39
|
setProvider(provider: AccountControllerState['provider'], chain: ChainNamespace | undefined): void;
|
|
40
40
|
setCaipAddress(caipAddress: AccountControllerState['caipAddress'], chain: ChainNamespace | undefined): void;
|
|
41
41
|
setBalance(balance: AccountControllerState['balance'], balanceSymbol: AccountControllerState['balanceSymbol'], chain: ChainNamespace): void;
|
|
@@ -11,7 +11,7 @@ export interface ChainControllerState {
|
|
|
11
11
|
universalAdapter: Pick<ChainAdapter, 'networkControllerClient' | 'connectionControllerClient'>;
|
|
12
12
|
noAdapters: boolean;
|
|
13
13
|
}
|
|
14
|
-
type ChainsInitializerAdapter = Pick<ChainAdapter, 'connectionControllerClient' | 'networkControllerClient' | 'defaultNetwork' | 'chainNamespace' | 'adapterType'>;
|
|
14
|
+
type ChainsInitializerAdapter = Pick<ChainAdapter, 'connectionControllerClient' | 'networkControllerClient' | 'defaultNetwork' | 'chainNamespace' | 'adapterType' | 'caipNetworks'>;
|
|
15
15
|
export declare const ChainController: {
|
|
16
16
|
state: ChainControllerState;
|
|
17
17
|
subscribeKey<K extends keyof ChainControllerState>(key: K, callback: (value: ChainControllerState[K]) => void): () => void;
|
|
@@ -31,7 +31,7 @@ export declare const NetworkController: {
|
|
|
31
31
|
setSmartAccountEnabledNetworks(smartAccountEnabledNetworks: NetworkControllerState['smartAccountEnabledNetworks'], chain: ChainNamespace | undefined): void;
|
|
32
32
|
getRequestedCaipNetworks(chainToFilter?: ChainNamespace): CaipNetwork[];
|
|
33
33
|
switchActiveNetwork(network: NetworkControllerState['caipNetwork']): Promise<void>;
|
|
34
|
-
getApprovedCaipNetworkIds(chainToFilter?: ChainNamespace): (`
|
|
34
|
+
getApprovedCaipNetworkIds(chainToFilter?: ChainNamespace): (`eip155:${string}` | `eip155:${number}` | `solana:${string}` | `solana:${number}` | `polkadot:${string}` | `polkadot:${number}`)[] | undefined;
|
|
35
35
|
setApprovedCaipNetworksData(chain: ChainNamespace | undefined): Promise<void>;
|
|
36
36
|
checkIfSupportedNetwork(): boolean;
|
|
37
37
|
checkIfSmartAccountEnabled(): boolean;
|
|
@@ -1,29 +1,111 @@
|
|
|
1
1
|
import type { CustomWallet, Features, Metadata, ProjectId, SdkVersion, Tokens } from '../utils/TypeUtil.js';
|
|
2
|
-
export interface
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
export interface OptionsControllerStatePublic {
|
|
3
|
+
/**
|
|
4
|
+
* A boolean that allows you to add or remove the "All Wallets" button on the modal
|
|
5
|
+
* @default 'SHOW'
|
|
6
|
+
* @see https://docs.walletconnect.com/appkit/react/core/options#allwallets
|
|
7
|
+
*/
|
|
6
8
|
allWallets?: 'SHOW' | 'HIDE' | 'ONLY_MOBILE';
|
|
9
|
+
/**
|
|
10
|
+
* The project ID for the AppKit. You can find or create your project ID in the Cloud.
|
|
11
|
+
* @see https://cloud.walletconnect.com/
|
|
12
|
+
*/
|
|
13
|
+
projectId: ProjectId;
|
|
14
|
+
/**
|
|
15
|
+
* Array of wallet ids to be shown in the modal's connection view with priority. These wallets will also show up first in `All Wallets` view
|
|
16
|
+
* @default []
|
|
17
|
+
* @see https://docs.walletconnect.com/appkit/react/core/options#featuredwalletids
|
|
18
|
+
*/
|
|
7
19
|
featuredWalletIds?: string[];
|
|
20
|
+
/**
|
|
21
|
+
* Array of wallet ids to be shown (order is respected). Unlike `featuredWalletIds`, these wallets will be the only ones shown in `All Wallets` view and as recommended wallets.
|
|
22
|
+
* @default []
|
|
23
|
+
* @see https://docs.walletconnect.com/appkit/react/core/options#includewalletids
|
|
24
|
+
*/
|
|
8
25
|
includeWalletIds?: string[];
|
|
26
|
+
/**
|
|
27
|
+
* Array of wallet ids to be excluded from the wallet list in the modal.
|
|
28
|
+
* @default []
|
|
29
|
+
* @see https://docs.walletconnect.com/appkit/react/core/options#excludewalletids
|
|
30
|
+
*/
|
|
9
31
|
excludeWalletIds?: string[];
|
|
32
|
+
/**
|
|
33
|
+
* Array of tokens to show the user's balance of. Each key represents the chain id of the token's blockchain
|
|
34
|
+
* @default {}
|
|
35
|
+
* @see https://docs.walletconnect.com/appkit/react/core/options#tokens
|
|
36
|
+
*/
|
|
10
37
|
tokens?: Tokens;
|
|
38
|
+
/**
|
|
39
|
+
* Add custom wallets to the modal. CustomWallets is an array of objects, where each object contains specific information of a custom wallet.
|
|
40
|
+
* @default []
|
|
41
|
+
* @see https://docs.walletconnect.com/appkit/react/core/options#customwallets
|
|
42
|
+
*
|
|
43
|
+
*/
|
|
11
44
|
customWallets?: CustomWallet[];
|
|
45
|
+
/**
|
|
46
|
+
* You can add an url for the terms and conditions link.
|
|
47
|
+
* @default undefined
|
|
48
|
+
*/
|
|
12
49
|
termsConditionsUrl?: string;
|
|
50
|
+
/**
|
|
51
|
+
* You can add an url for the privacy policy link.
|
|
52
|
+
* @default undefined
|
|
53
|
+
*/
|
|
13
54
|
privacyPolicyUrl?: string;
|
|
14
|
-
|
|
55
|
+
/**
|
|
56
|
+
* Set of fields that related to your project which will be used to populate the metadata of the modal.
|
|
57
|
+
* @default {}
|
|
58
|
+
*/
|
|
15
59
|
metadata?: Metadata;
|
|
60
|
+
/**
|
|
61
|
+
* Enable or disable the appending the AppKit to the DOM. Created for specific use cases like WebGL.
|
|
62
|
+
* @default false
|
|
63
|
+
*/
|
|
16
64
|
disableAppend?: boolean;
|
|
65
|
+
/**
|
|
66
|
+
* Enable or disable the all the wallet options (injected, Coinbase, QR, etc.). This is useful if you want to use only email and socials.
|
|
67
|
+
* @default true
|
|
68
|
+
*/
|
|
17
69
|
enableWallets?: boolean;
|
|
70
|
+
/**
|
|
71
|
+
* Enable or disable the EIP6963 feature in your AppKit.
|
|
72
|
+
* @default false
|
|
73
|
+
*/
|
|
18
74
|
enableEIP6963?: boolean;
|
|
75
|
+
/**
|
|
76
|
+
* Enable or disable the Coinbase wallet in your AppKit.
|
|
77
|
+
* @default true
|
|
78
|
+
*/
|
|
79
|
+
enableCoinbase?: boolean;
|
|
80
|
+
/**
|
|
81
|
+
* Enable or disable the Injected wallet in your AppKit.
|
|
82
|
+
* @default true
|
|
83
|
+
*/
|
|
84
|
+
enableInjected?: boolean;
|
|
85
|
+
/**
|
|
86
|
+
* Enable or disable the WalletConnect QR code in your AppKit.
|
|
87
|
+
* @default true
|
|
88
|
+
*/
|
|
19
89
|
enableWalletConnect?: boolean;
|
|
90
|
+
/**
|
|
91
|
+
* Features configuration object.
|
|
92
|
+
* @default { swaps: true, onramp: true, email: true, socials: ['google', 'x', 'discord', 'farcaster', 'github', 'apple', 'facebook'], history: true, analytics: true, allWallets: true }
|
|
93
|
+
* @see https://docs.walletconnect.com/appkit/react/core/options#features
|
|
94
|
+
*/
|
|
95
|
+
features?: Features;
|
|
96
|
+
}
|
|
97
|
+
export interface OptionsControllerStateInternal {
|
|
98
|
+
sdkType: 'appkit';
|
|
99
|
+
sdkVersion: SdkVersion;
|
|
100
|
+
isSiweEnabled?: boolean;
|
|
20
101
|
isUniversalProvider?: boolean;
|
|
21
102
|
hasMultipleAddresses?: boolean;
|
|
22
|
-
features: Features;
|
|
23
103
|
}
|
|
104
|
+
type StateKey = keyof OptionsControllerStatePublic | keyof OptionsControllerStateInternal;
|
|
105
|
+
type OptionsControllerState = OptionsControllerStatePublic & OptionsControllerStateInternal;
|
|
24
106
|
export declare const OptionsController: {
|
|
25
|
-
state:
|
|
26
|
-
subscribeKey<K extends
|
|
107
|
+
state: OptionsControllerStatePublic & OptionsControllerStateInternal;
|
|
108
|
+
subscribeKey<K extends StateKey>(key: K, callback: (value: OptionsControllerState[K]) => void): () => void;
|
|
27
109
|
setOptions(options: OptionsControllerState): void;
|
|
28
110
|
setFeatures(features: OptionsControllerState['features'] | undefined): void;
|
|
29
111
|
setProjectId(projectId: OptionsControllerState['projectId']): void;
|
|
@@ -45,3 +127,4 @@ export declare const OptionsController: {
|
|
|
45
127
|
setEnableWallets(enableWallets: OptionsControllerState['enableWallets']): void;
|
|
46
128
|
setHasMultipleAddresses(hasMultipleAddresses: OptionsControllerState['hasMultipleAddresses']): void;
|
|
47
129
|
};
|
|
130
|
+
export {};
|
|
@@ -63,9 +63,9 @@ export declare const SwapController: {
|
|
|
63
63
|
getParams(): {
|
|
64
64
|
networkAddress: string;
|
|
65
65
|
fromAddress: string;
|
|
66
|
-
fromCaipAddress: `
|
|
67
|
-
sourceTokenAddress: `
|
|
68
|
-
toTokenAddress: `
|
|
66
|
+
fromCaipAddress: `eip155:${string}:${string}` | `eip155:${number}:${string}` | `solana:${string}:${string}` | `solana:${number}:${string}` | `polkadot:${string}:${string}` | `polkadot:${number}:${string}` | undefined;
|
|
67
|
+
sourceTokenAddress: `eip155:${string}:${string}` | `eip155:${number}:${string}` | `solana:${string}:${string}` | `solana:${number}:${string}` | `polkadot:${string}:${string}` | `polkadot:${number}:${string}` | undefined;
|
|
68
|
+
toTokenAddress: `eip155:${string}:${string}` | `eip155:${number}:${string}` | `solana:${string}:${string}` | `solana:${number}:${string}` | `polkadot:${string}:${string}` | `polkadot:${number}:${string}` | undefined;
|
|
69
69
|
toTokenAmount: string;
|
|
70
70
|
toTokenDecimals: number | undefined;
|
|
71
71
|
sourceTokenAmount: string;
|
|
@@ -6,7 +6,7 @@ export declare const StorageUtil: {
|
|
|
6
6
|
}): void;
|
|
7
7
|
getWalletConnectDeepLink(): any;
|
|
8
8
|
deleteWalletConnectDeepLink(): void;
|
|
9
|
-
|
|
9
|
+
setAppKitRecent(wallet: WcWallet): void;
|
|
10
10
|
getRecentWallets(): WcWallet[];
|
|
11
11
|
setConnectedConnector(connectorType: ConnectorType): void;
|
|
12
12
|
getConnectedConnector(): ConnectorType | undefined;
|
|
@@ -665,6 +665,7 @@ export type ChainAdapter = {
|
|
|
665
665
|
chainNamespace: ChainNamespace;
|
|
666
666
|
isUniversalAdapterClient?: boolean;
|
|
667
667
|
adapterType?: AdapterType;
|
|
668
|
+
caipNetworks: CaipNetwork[];
|
|
668
669
|
getAddress?: () => string | undefined;
|
|
669
670
|
getError?: () => unknown;
|
|
670
671
|
getChainId?: () => number | string | undefined;
|
|
@@ -724,7 +725,7 @@ export type Features = {
|
|
|
724
725
|
* @description Enable or disable the socials feature. Enabled by default.
|
|
725
726
|
* @type {FeaturesSocials[]}
|
|
726
727
|
*/
|
|
727
|
-
socials?: FeaturesSocials[];
|
|
728
|
+
socials?: FeaturesSocials[] | false;
|
|
728
729
|
/**
|
|
729
730
|
* @description Enable or disable the history feature. Enabled by default.
|
|
730
731
|
* @type {boolean}
|
|
@@ -2,7 +2,7 @@ export declare const tokensResponse: {
|
|
|
2
2
|
tokens: {
|
|
3
3
|
name: string;
|
|
4
4
|
symbol: string;
|
|
5
|
-
address: `
|
|
5
|
+
address: `eip155:${string}:${string}` | `eip155:${number}:${string}` | `solana:${string}:${string}` | `solana:${number}:${string}` | `polkadot:${string}:${string}` | `polkadot:${number}:${string}`;
|
|
6
6
|
decimals: number;
|
|
7
7
|
logoUri: string;
|
|
8
8
|
eip2612: boolean;
|
|
@@ -57,8 +57,8 @@ export declare const swapQuoteResponse: {
|
|
|
57
57
|
};
|
|
58
58
|
export declare const swapCalldataResponse: {
|
|
59
59
|
tx: {
|
|
60
|
-
from: `
|
|
61
|
-
to: `
|
|
60
|
+
from: `eip155:${string}:${string}` | `eip155:${number}:${string}` | `solana:${string}:${string}` | `solana:${number}:${string}` | `polkadot:${string}:${string}` | `polkadot:${number}:${string}`;
|
|
61
|
+
to: `eip155:${string}:${string}` | `eip155:${number}:${string}` | `solana:${string}:${string}` | `solana:${number}:${string}` | `polkadot:${string}:${string}` | `polkadot:${number}:${string}`;
|
|
62
62
|
data: `0x${string}`;
|
|
63
63
|
amount: string;
|
|
64
64
|
eip155: {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@reown/appkit-core",
|
|
3
|
-
"version": "0.0
|
|
3
|
+
"version": "1.0.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/esm/exports/index.js",
|
|
6
6
|
"types": "./dist/types/exports/index.d.ts",
|
|
@@ -23,23 +23,23 @@
|
|
|
23
23
|
"dependencies": {
|
|
24
24
|
"@walletconnect/universal-provider": "2.16.1",
|
|
25
25
|
"valtio": "1.11.2",
|
|
26
|
-
"@reown/appkit-common": "0.0
|
|
27
|
-
"@reown/appkit-wallet": "0.0
|
|
26
|
+
"@reown/appkit-common": "1.0.0",
|
|
27
|
+
"@reown/appkit-wallet": "1.0.0"
|
|
28
28
|
},
|
|
29
29
|
"devDependencies": {
|
|
30
30
|
"vitest": "2.0.5",
|
|
31
31
|
"@vitest/coverage-v8": "2.0.5",
|
|
32
32
|
"viem": "2.21.4"
|
|
33
33
|
},
|
|
34
|
-
"author": "
|
|
34
|
+
"author": "Reown <support@reown.com> (https://reown.com)",
|
|
35
35
|
"license": "Apache-2.0",
|
|
36
|
-
"homepage": "https://github.com/
|
|
36
|
+
"homepage": "https://github.com/reown-com/appkit",
|
|
37
37
|
"repository": {
|
|
38
38
|
"type": "git",
|
|
39
39
|
"url": "git+https://github.com/WalletConnect/shadow-appkit.git"
|
|
40
40
|
},
|
|
41
41
|
"bugs": {
|
|
42
|
-
"url": "https://github.com/
|
|
42
|
+
"url": "https://github.com/reown-com/appkit/issues"
|
|
43
43
|
},
|
|
44
44
|
"scripts": {
|
|
45
45
|
"build:clean": "rm -rf dist",
|
package/readme.md
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
#### 📚 [Documentation](https://docs.walletconnect.com/2.0/
|
|
1
|
+
#### 📚 [Documentation](https://docs.walletconnect.com/2.0/appkit/about)
|
|
2
2
|
|
|
3
|
-
#### 🔗 [Website](https://
|
|
3
|
+
#### 🔗 [Website](https://reown.com/appkit)
|
|
4
4
|
|
|
5
|
-
#
|
|
5
|
+
# AppKit
|
|
6
6
|
|
|
7
|
-
Your on-ramp to web3 multichain.
|
|
7
|
+
Your on-ramp to web3 multichain. AppKit is a versatile library that makes it super easy to connect users with your Dapp and start interacting with the blockchain.
|
|
8
8
|
|
|
9
9
|
<p align="center">
|
|
10
10
|
<img src="./.github/assets/header.png" alt="" border="0">
|