@reown/appkit-core 1.6.3 → 1.6.4-rc.1.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.
Files changed (41) hide show
  1. package/dist/esm/exports/react.js +11 -2
  2. package/dist/esm/exports/react.js.map +1 -1
  3. package/dist/esm/exports/vue.js +18 -1
  4. package/dist/esm/exports/vue.js.map +1 -1
  5. package/dist/esm/src/controllers/AccountController.js +9 -5
  6. package/dist/esm/src/controllers/AccountController.js.map +1 -1
  7. package/dist/esm/src/controllers/ApiController.js +1 -1
  8. package/dist/esm/src/controllers/ApiController.js.map +1 -1
  9. package/dist/esm/src/controllers/ChainController.js +28 -19
  10. package/dist/esm/src/controllers/ChainController.js.map +1 -1
  11. package/dist/esm/src/controllers/ConnectorController.js +14 -2
  12. package/dist/esm/src/controllers/ConnectorController.js.map +1 -1
  13. package/dist/esm/src/controllers/SwapController.js +33 -22
  14. package/dist/esm/src/controllers/SwapController.js.map +1 -1
  15. package/dist/esm/src/utils/SIWXUtil.js +9 -2
  16. package/dist/esm/src/utils/SIWXUtil.js.map +1 -1
  17. package/dist/esm/tests/controllers/AccountController.test.js +10 -3
  18. package/dist/esm/tests/controllers/AccountController.test.js.map +1 -1
  19. package/dist/esm/tests/controllers/ApiController.test.js +76 -63
  20. package/dist/esm/tests/controllers/ApiController.test.js.map +1 -1
  21. package/dist/esm/tests/controllers/ChainController.test.js +48 -33
  22. package/dist/esm/tests/controllers/ChainController.test.js.map +1 -1
  23. package/dist/esm/tests/controllers/ConnectionController.test.js +17 -4
  24. package/dist/esm/tests/controllers/ConnectionController.test.js.map +1 -1
  25. package/dist/esm/tests/controllers/EnsController.test.js +12 -15
  26. package/dist/esm/tests/controllers/EnsController.test.js.map +1 -1
  27. package/dist/esm/tests/controllers/SwapController.test.js +23 -8
  28. package/dist/esm/tests/controllers/SwapController.test.js.map +1 -1
  29. package/dist/esm/tests/hooks/react.test.js +41 -3
  30. package/dist/esm/tests/hooks/react.test.js.map +1 -1
  31. package/dist/esm/tests/utils/StorageUtil.test.js +4 -2
  32. package/dist/esm/tests/utils/StorageUtil.test.js.map +1 -1
  33. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  34. package/dist/types/exports/vue.d.ts +9 -1
  35. package/dist/types/src/controllers/AccountController.d.ts +4 -2
  36. package/dist/types/src/controllers/ApiController.d.ts +1 -1
  37. package/dist/types/src/controllers/ChainController.d.ts +14 -6
  38. package/dist/types/src/controllers/ConnectorController.d.ts +4 -0
  39. package/dist/types/src/utils/SIWXUtil.d.ts +7 -1
  40. package/dist/types/src/utils/TypeUtil.d.ts +9 -0
  41. package/package.json +3 -3
@@ -1,8 +1,16 @@
1
1
  export declare function useAppKitAccount(): import("vue").Ref<{
2
2
  address: string | null;
3
3
  caipAddress: `eip155:${string}:${string}` | `solana:${string}:${string}` | `polkadot:${string}:${string}` | `bip122:${string}:${string}` | null;
4
- status: "connected" | "disconnected" | "connecting" | "reconnecting" | null;
4
+ status: "reconnecting" | "connected" | "disconnected" | "connecting" | null;
5
5
  isConnected: boolean;
6
+ embeddedWalletInfo: {
7
+ user: {
8
+ email?: string | null | undefined;
9
+ username?: string | null | undefined;
10
+ } | null;
11
+ accountType: import("@reown/appkit-wallet").W3mFrameTypes.AccountType | null;
12
+ isSmartAccountDeployed: boolean;
13
+ };
6
14
  }>;
7
15
  export declare function useDisconnect(): {
8
16
  disconnect: () => Promise<void>;
@@ -1,4 +1,4 @@
1
- import type { AccountType, AccountTypeMap, CombinedProvider, ConnectedWalletInfo, Provider, SocialProvider } from '../utils/TypeUtil.js';
1
+ import type { AccountType, AccountTypeMap, CombinedProvider, ConnectedWalletInfo, User, Provider, SocialProvider } from '../utils/TypeUtil.js';
2
2
  import type { CaipAddress, ChainNamespace } from '@reown/appkit-common';
3
3
  import type { Balance } from '@reown/appkit-common';
4
4
  import type { W3mFrameTypes } from '@reown/appkit-wallet';
@@ -6,6 +6,7 @@ import type UniversalProvider from '@walletconnect/universal-provider';
6
6
  export interface AccountControllerState {
7
7
  currentTab: number;
8
8
  caipAddress?: CaipAddress;
9
+ user?: User;
9
10
  address?: string;
10
11
  addressLabels: Map<string, string>;
11
12
  allAccounts: AccountType[];
@@ -38,6 +39,7 @@ export declare const AccountController: {
38
39
  setBalance(balance: AccountControllerState['balance'], balanceSymbol: AccountControllerState['balanceSymbol'], chain: ChainNamespace): void;
39
40
  setProfileName(profileName: AccountControllerState['profileName'], chain: ChainNamespace): void;
40
41
  setProfileImage(profileImage: AccountControllerState['profileImage'], chain?: ChainNamespace): void;
42
+ setUser(user: AccountControllerState['user']): void;
41
43
  setAddressExplorerUrl(explorerUrl: AccountControllerState['addressExplorerUrl'], chain: ChainNamespace | undefined): void;
42
44
  setSmartAccountDeployed(isDeployed: boolean, chain: ChainNamespace | undefined): void;
43
45
  setCurrentTab(currentTab: AccountControllerState['currentTab']): void;
@@ -51,6 +53,6 @@ export declare const AccountController: {
51
53
  setSocialProvider(socialProvider: AccountControllerState['socialProvider'], chain: ChainNamespace | undefined): void;
52
54
  setSocialWindow(socialWindow: AccountControllerState['socialWindow'], chain: ChainNamespace | undefined): void;
53
55
  setFarcasterUrl(farcasterUrl: AccountControllerState['farcasterUrl'], chain: ChainNamespace | undefined): void;
54
- fetchTokenBalance(): Promise<void>;
56
+ fetchTokenBalance(onError?: ((error: unknown) => void) | undefined): Promise<Balance[]>;
55
57
  resetAccount(chain: ChainNamespace): void;
56
58
  };
@@ -33,7 +33,7 @@ export declare const ApiController: {
33
33
  fetchFeaturedWallets(): Promise<void>;
34
34
  fetchRecommendedWallets(): Promise<void>;
35
35
  fetchWallets({ page }: Pick<ApiGetWalletsRequest, 'page'>): Promise<void>;
36
- searchWalletByIds({ ids }: {
36
+ initializeExcludedWalletRdns({ ids }: {
37
37
  ids: string[];
38
38
  }): Promise<void>;
39
39
  searchWallet({ search, badge }: Pick<ApiGetWalletsRequest, 'search' | 'badge'>): Promise<void>;
@@ -1,12 +1,16 @@
1
- import type { AdapterAccountState, AdapterNetworkState, ChainAdapter, Connector } from '../utils/TypeUtil.js';
1
+ import type { AdapterAccountState, AdapterNetworkState, ChainAdapter, NetworkControllerClient } from '../utils/TypeUtil.js';
2
2
  import { type AccountControllerState } from './AccountController.js';
3
3
  import { type CaipAddress, type CaipNetwork, type CaipNetworkId, type ChainNamespace } from '@reown/appkit-common';
4
+ import { type ConnectionControllerClient } from './ConnectionController.js';
5
+ export type ChainControllerClients = {
6
+ networkControllerClient: NetworkControllerClient;
7
+ connectionControllerClient: ConnectionControllerClient;
8
+ };
4
9
  export interface ChainControllerState {
5
10
  activeChain: ChainNamespace | undefined;
6
11
  activeCaipAddress: CaipAddress | undefined;
7
12
  activeCaipNetwork?: CaipNetwork;
8
13
  chains: Map<ChainNamespace, ChainAdapter>;
9
- activeConnector?: Connector;
10
14
  universalAdapter: Pick<ChainAdapter, 'networkControllerClient' | 'connectionControllerClient'>;
11
15
  noAdapters: boolean;
12
16
  }
@@ -15,7 +19,12 @@ export declare const ChainController: {
15
19
  subscribe(callback: (value: ChainControllerState) => void): () => void;
16
20
  subscribeKey<K extends keyof ChainControllerState>(key: K, callback: (value: ChainControllerState[K]) => void): () => void;
17
21
  subscribeChainProp<K_1 extends keyof ChainAdapter>(property: K_1, callback: (value: ChainAdapter[K_1] | undefined) => void, chain?: ChainNamespace): () => void;
18
- initialize(adapters: ChainAdapter[], caipNetworks: CaipNetwork[] | undefined): void;
22
+ initialize(adapters: ChainAdapter[], caipNetworks: CaipNetwork[] | undefined, clients: {
23
+ connectionControllerClient: ConnectionControllerClient;
24
+ networkControllerClient: NetworkControllerClient;
25
+ }): void;
26
+ removeAdapter(namespace: ChainNamespace): void;
27
+ addAdapter(adapter: ChainAdapter, { networkControllerClient, connectionControllerClient }: ChainControllerClients, caipNetworks: [CaipNetwork, ...CaipNetwork[]]): void;
19
28
  setAdapterNetworkState(chain: ChainNamespace, props: Partial<AdapterNetworkState>): void;
20
29
  setChainAccountData(chain: ChainNamespace | undefined, accountProps: Partial<AccountControllerState>, _unknown?: boolean): void;
21
30
  setAccountProp(prop: keyof AccountControllerState, value: AccountControllerState[keyof AccountControllerState], chain: ChainNamespace | undefined, replaceState?: boolean): void;
@@ -23,9 +32,8 @@ export declare const ChainController: {
23
32
  setActiveCaipNetwork(caipNetwork: AdapterNetworkState['caipNetwork']): void;
24
33
  addCaipNetwork(caipNetwork: AdapterNetworkState['caipNetwork']): void;
25
34
  switchActiveNetwork(network: CaipNetwork): Promise<void>;
26
- setActiveConnector(connector: ChainControllerState['activeConnector']): void;
27
- getNetworkControllerClient(chainNamespace?: ChainNamespace): import("../utils/TypeUtil.js").NetworkControllerClient;
28
- getConnectionControllerClient(_chain?: ChainNamespace): import("./ConnectionController.js").ConnectionControllerClient;
35
+ getNetworkControllerClient(chainNamespace?: ChainNamespace): NetworkControllerClient;
36
+ getConnectionControllerClient(_chain?: ChainNamespace): ConnectionControllerClient;
29
37
  getAccountProp<K_2 extends keyof AdapterAccountState>(key: K_2, _chain?: ChainNamespace): AccountControllerState[K_2] | undefined;
30
38
  getNetworkProp<K_3 extends keyof AdapterNetworkState>(key: K_3, namespace: ChainNamespace): AdapterNetworkState[K_3] | undefined;
31
39
  getRequestedCaipNetworks(chainToFilter: ChainNamespace): CaipNetwork[];
@@ -1,15 +1,19 @@
1
1
  import type { AuthConnector, Connector } from '../utils/TypeUtil.js';
2
+ import { type ChainNamespace } from '@reown/appkit-common';
2
3
  export interface ConnectorWithProviders extends Connector {
3
4
  connectors?: Connector[];
4
5
  }
5
6
  export interface ConnectorControllerState {
6
7
  allConnectors: Connector[];
7
8
  connectors: ConnectorWithProviders[];
9
+ activeConnector: Connector | undefined;
8
10
  }
9
11
  export declare const ConnectorController: {
10
12
  state: ConnectorControllerState;
11
13
  subscribeKey<K extends keyof ConnectorControllerState>(key: K, callback: (value: ConnectorControllerState[K]) => void): () => void;
14
+ setActiveConnector(connector: ConnectorControllerState['activeConnector']): void;
12
15
  setConnectors(connectors: ConnectorControllerState['connectors']): void;
16
+ removeAdapter(namespace: ChainNamespace): void;
13
17
  mergeMultiChainConnectors(connectors: Connector[]): ConnectorWithProviders[];
14
18
  generateConnectorMapByName(connectors: Connector[]): Map<string, Connector[]>;
15
19
  getConnectorName(name: string | undefined): string | undefined;
@@ -9,7 +9,7 @@ export declare const SIWXUtil: {
9
9
  requestSignMessage(): Promise<void>;
10
10
  cancelSignMessage(): Promise<void>;
11
11
  getSessions(): Promise<SIWXSession[]>;
12
- isSIWXCloseDisabled(): Promise<boolean>;
12
+ isSIWXCloseDisabled(): Promise<boolean | undefined>;
13
13
  universalProviderAuthenticate({ universalProvider, chains, methods }: {
14
14
  universalProvider: UniversalProvider;
15
15
  chains: CaipNetworkId[];
@@ -79,6 +79,12 @@ export interface SIWXConfig {
79
79
  * @returns
80
80
  */
81
81
  getSessions: (chainId: CaipNetworkId, address: string) => Promise<SIWXSession[]>;
82
+ /**
83
+ * This method determines whether the wallet stays connected when the user denies the signature request.
84
+ *
85
+ * @returns {boolean}
86
+ */
87
+ getRequired?: () => boolean;
82
88
  }
83
89
  /**
84
90
  * This interface represents a SIWX session, which is used to store the user's identity information.
@@ -34,6 +34,10 @@ export type ConnectedWalletInfo = {
34
34
  icon?: string;
35
35
  [key: string]: unknown;
36
36
  };
37
+ export type User = {
38
+ email?: string | null | undefined;
39
+ username?: string | null | undefined;
40
+ };
37
41
  export interface LinkingRecord {
38
42
  redirect: string;
39
43
  href: string;
@@ -910,6 +914,11 @@ export type UseAppKitAccountReturn = {
910
914
  caipAddress: CaipAddress | undefined;
911
915
  address: string | undefined;
912
916
  isConnected: boolean;
917
+ embeddedWalletInfo?: {
918
+ user: AccountControllerState['user'];
919
+ accountType: W3mFrameTypes.AccountType | undefined;
920
+ isSmartAccountDeployed: boolean;
921
+ };
913
922
  status: AccountControllerState['status'];
914
923
  };
915
924
  export type UseAppKitNetworkReturn = {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@reown/appkit-core",
3
- "version": "1.6.3",
3
+ "version": "1.6.4-rc.1.0",
4
4
  "type": "module",
5
5
  "main": "./dist/esm/exports/index.js",
6
6
  "types": "./dist/types/exports/index.d.ts",
@@ -39,8 +39,8 @@
39
39
  "@walletconnect/universal-provider": "2.17.2",
40
40
  "valtio": "1.11.2",
41
41
  "viem": "2.x",
42
- "@reown/appkit-common": "1.6.3",
43
- "@reown/appkit-wallet": "1.6.3"
42
+ "@reown/appkit-common": "1.6.4-rc.1.0",
43
+ "@reown/appkit-wallet": "1.6.4-rc.1.0"
44
44
  },
45
45
  "peerDependencies": {},
46
46
  "devDependencies": {