@reown/appkit-wagmi-react-native 2.0.0 → 2.0.2

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.
@@ -13,17 +13,13 @@ class WagmiAdapter extends _appkitCommonReactNative.EVMAdapter {
13
13
  static supportedNamespace = 'eip155';
14
14
  constructor(configParams) {
15
15
  super({
16
- projectId: configParams.projectId,
17
- supportedNamespace: WagmiAdapter.supportedNamespace
16
+ supportedNamespace: WagmiAdapter.supportedNamespace,
17
+ adapterType: 'wagmi'
18
18
  });
19
19
  this.wagmiChains = configParams.networks;
20
20
  this.wagmiConfig = this.createWagmiInternalConfig(configParams);
21
21
  }
22
22
  createWagmiInternalConfig(configParams) {
23
- // Connectors are typically added via wagmiConfig.connectors, but here AppKit manages the connection.
24
- // We'll use the `connect` action with our dynamically created connector instance.
25
- // So, the `connectors` array for createConfig can be empty and is added later.
26
- const initialConnectors = [];
27
23
  const transportsArr = configParams.networks.map(chain => [chain.id, (0, _helpers.getTransport)({
28
24
  chainId: chain.id,
29
25
  projectId: configParams.projectId
@@ -31,8 +27,7 @@ class WagmiAdapter extends _appkitCommonReactNative.EVMAdapter {
31
27
  const transports = Object.fromEntries(transportsArr);
32
28
  return (0, _core.createConfig)({
33
29
  chains: configParams.networks,
34
- connectors: initialConnectors,
35
- // Empty, as we connect programmatically
30
+ connectors: [...(configParams.connectors ?? [])],
36
31
  transports,
37
32
  multiInjectedProviderDiscovery: false
38
33
  });
@@ -74,7 +69,7 @@ class WagmiAdapter extends _appkitCommonReactNative.EVMAdapter {
74
69
  const formattedBalance = {
75
70
  amount: (0, _viem.formatUnits)(balance.value, balance.decimals),
76
71
  symbol: balance.symbol,
77
- contractAddress: token ? `${network.caipNetworkId}:${token}` : undefined
72
+ address: token ? `${network.caipNetworkId}:${token}` : undefined
78
73
  };
79
74
  this.emit('balanceChanged', {
80
75
  address: balanceAddress,
@@ -95,6 +90,10 @@ class WagmiAdapter extends _appkitCommonReactNative.EVMAdapter {
95
90
  return accountsForNamespace?.accounts;
96
91
  }
97
92
  async disconnect() {
93
+ if (this.unsubscribeWatchAccount) {
94
+ this.unsubscribeWatchAccount();
95
+ this.unsubscribeWatchAccount = undefined;
96
+ }
98
97
  if (this.wagmiConfigConnector) {
99
98
  await (0, _core.disconnect)(this.wagmiConfig, {
100
99
  connector: this.wagmiConfigConnector
@@ -112,8 +111,18 @@ class WagmiAdapter extends _appkitCommonReactNative.EVMAdapter {
112
111
  getSupportedNamespace() {
113
112
  return WagmiAdapter.supportedNamespace;
114
113
  }
115
- setConnector(_connector) {
116
- super.setConnector(_connector);
114
+
115
+ // Override subscribeToEvents to prevent double subscription
116
+ // Wagmi handles provider events through its connector system and watchAccount
117
+ subscribeToEvents() {
118
+ // Do nothing - wagmi's watchAccount in setupWatchers handles all events
119
+ }
120
+ init({
121
+ connector: _connector
122
+ }) {
123
+ super.init({
124
+ connector: _connector
125
+ });
117
126
  if (_connector && this.wagmiChains) {
118
127
  if (!this.wagmiConfigConnector) {
119
128
  // Manually add the connector to the wagmiConfig
@@ -137,6 +146,32 @@ class WagmiAdapter extends _appkitCommonReactNative.EVMAdapter {
137
146
  }
138
147
  }
139
148
  }
149
+ this.setupWatchers();
150
+ }
151
+ setupWatchers() {
152
+ // Clean up existing subscription if any
153
+ this.unsubscribeWatchAccount?.();
154
+ this.unsubscribeWatchAccount = (0, _core.watchAccount)(this.wagmiConfig, {
155
+ onChange: (accountData, prevAccountData) => {
156
+ if (!this.connector) return;
157
+
158
+ // Handle disconnect
159
+ if (accountData.status === 'disconnected' && prevAccountData.address) {
160
+ this.onDisconnect();
161
+ return;
162
+ }
163
+
164
+ // Handle account address changes
165
+ if (accountData?.addresses && accountData?.address && accountData.address !== prevAccountData?.address) {
166
+ this.onAccountsChanged([...accountData.addresses]);
167
+ }
168
+
169
+ // Handle chain changes
170
+ if (accountData?.chainId && accountData.chainId !== prevAccountData?.chainId) {
171
+ this.onChainChanged(accountData.chainId?.toString());
172
+ }
173
+ }
174
+ });
140
175
  }
141
176
  }
142
177
  exports.WagmiAdapter = WagmiAdapter;
@@ -1 +1 @@
1
- {"version":3,"names":["_appkitCommonReactNative","require","_core","_helpers","_viem","_UniversalConnector","WagmiAdapter","EVMAdapter","supportedNamespace","constructor","configParams","projectId","wagmiChains","networks","wagmiConfig","createWagmiInternalConfig","initialConnectors","transportsArr","map","chain","id","getTransport","chainId","transports","Object","fromEntries","createConfig","chains","connectors","multiInjectedProviderDiscovery","switchNetwork","network","wagmiConfigConnector","Error","switchChainWagmi","connector","getBalance","params","address","tokens","balanceAddress","getAccounts","find","acc","includes","toString","Promise","resolve","amount","symbol","nativeCurrency","accountHex","split","token","caipNetworkId","balance","getBalanceWagmi","formattedBalance","formatUnits","value","decimals","contractAddress","undefined","emit","namespaces","getNamespaces","supportedNamespaceKey","getSupportedNamespace","accountsForNamespace","accounts","disconnect","disconnectWagmiCore","onDisconnect","evmAdapterInstance","setConnector","_connector","connectorInstance","_internal","setup","UniversalConnector","setState","prev","emitter","on","type","connectWagmi","error","exports"],"sourceRoot":"../../src","sources":["adapter.ts"],"mappings":"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"}
1
+ {"version":3,"names":["_appkitCommonReactNative","require","_core","_helpers","_viem","_UniversalConnector","WagmiAdapter","EVMAdapter","supportedNamespace","constructor","configParams","adapterType","wagmiChains","networks","wagmiConfig","createWagmiInternalConfig","transportsArr","map","chain","id","getTransport","chainId","projectId","transports","Object","fromEntries","createConfig","chains","connectors","multiInjectedProviderDiscovery","switchNetwork","network","wagmiConfigConnector","Error","switchChainWagmi","connector","getBalance","params","address","tokens","balanceAddress","getAccounts","find","acc","includes","toString","Promise","resolve","amount","symbol","nativeCurrency","accountHex","split","token","caipNetworkId","balance","getBalanceWagmi","formattedBalance","formatUnits","value","decimals","undefined","emit","namespaces","getNamespaces","supportedNamespaceKey","getSupportedNamespace","accountsForNamespace","accounts","disconnect","unsubscribeWatchAccount","disconnectWagmiCore","onDisconnect","evmAdapterInstance","subscribeToEvents","init","_connector","connectorInstance","_internal","setup","UniversalConnector","setState","prev","emitter","on","type","connectWagmi","error","setupWatchers","watchAccount","onChange","accountData","prevAccountData","status","addresses","onAccountsChanged","onChainChanged","exports"],"sourceRoot":"../../src","sources":["adapter.ts"],"mappings":"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","ignoreList":[]}
@@ -6,52 +6,50 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.UniversalConnector = UniversalConnector;
7
7
  var _viem = require("viem");
8
8
  var _wagmi = require("wagmi");
9
- var _helpers = require("../utils/helpers");
10
9
  function UniversalConnector(appKitProvidedConnector) {
11
10
  let provider;
12
- let accountsChangedHandler;
13
- let chainChangedHandler;
14
- let disconnectHandler;
11
+ let accountsChanged;
12
+ let chainChanged;
13
+ let sessionDelete;
14
+ let disconnect;
15
+ function cleanupEventListeners(_provider) {
16
+ if (accountsChanged) {
17
+ _provider?.off('accountsChanged', accountsChanged);
18
+ accountsChanged = undefined;
19
+ }
20
+ if (chainChanged) {
21
+ _provider?.off('chainChanged', chainChanged);
22
+ chainChanged = undefined;
23
+ }
24
+ if (disconnect) {
25
+ _provider?.off('disconnect', disconnect);
26
+ disconnect = undefined;
27
+ }
28
+ if (sessionDelete) {
29
+ _provider?.off('session_delete', sessionDelete);
30
+ sessionDelete = undefined;
31
+ }
32
+ }
15
33
  return (0, _wagmi.createConnector)(config => ({
16
34
  id: 'walletconnect',
17
35
  name: 'WalletConnect',
18
36
  type: 'walletconnect',
19
- ready: !!appKitProvidedConnector.getProvider(),
37
+ ready: !!appKitProvidedConnector.getProvider('eip155'),
20
38
  async setup() {
21
- provider = appKitProvidedConnector.getProvider();
22
- if (provider?.on) {
23
- accountsChangedHandler = accounts => {
24
- const hexAccounts = accounts.map(acc => (0, _viem.getAddress)(acc));
25
- config.emitter.emit('change', {
26
- accounts: hexAccounts
27
- });
28
- if (hexAccounts.length === 0) {
29
- config.emitter.emit('disconnect');
30
- }
31
- };
32
- chainChangedHandler = chainId => {
33
- const newChainId = typeof chainId === 'string' ? parseInt(chainId, 10) : chainId;
34
- config.emitter.emit('change', {
35
- chainId: newChainId
36
- });
37
- };
38
- disconnectHandler = error => {
39
- config.emitter.emit('disconnect');
40
- if (error) config.emitter.emit('error', {
41
- error
42
- });
43
- };
44
- if (accountsChangedHandler) provider.on('accountsChanged', accountsChangedHandler);
45
- if (chainChangedHandler) provider.on('chainChanged', chainChangedHandler);
46
- if (disconnectHandler) provider.on('disconnect', disconnectHandler);
47
- if (disconnectHandler) provider.on('session_delete', disconnectHandler);
39
+ const _provider = await this.getProvider().catch(() => null);
40
+ if (!_provider) {
41
+ return;
42
+ }
43
+ if (!sessionDelete) {
44
+ sessionDelete = this.onSessionDelete.bind(this);
45
+ _provider.on('session_delete', sessionDelete);
48
46
  }
49
47
  },
50
48
  async connect({
51
49
  chainId
52
50
  } = {}) {
53
51
  try {
54
- const _provider = await this.getProvider();
52
+ const _provider = appKitProvidedConnector.getProvider('eip155');
55
53
  if (!_provider) throw new _wagmi.ProviderNotFoundError();
56
54
 
57
55
  // AppKit connector is already connected or handles its own connection.
@@ -69,7 +67,22 @@ function UniversalConnector(appKitProvidedConnector) {
69
67
  });
70
68
  currentChainId = chainId;
71
69
  }
72
- this.ready = true;
70
+ if (!accountsChanged) {
71
+ accountsChanged = this.onAccountsChanged.bind(this);
72
+ _provider.on('accountsChanged', accountsChanged);
73
+ }
74
+ if (!chainChanged) {
75
+ chainChanged = this.onChainChanged.bind(this);
76
+ _provider.on('chainChanged', chainChanged);
77
+ }
78
+ if (!disconnect) {
79
+ disconnect = this.onDisconnect.bind(this);
80
+ _provider.on('disconnect', disconnect);
81
+ }
82
+ if (!sessionDelete) {
83
+ sessionDelete = this.onSessionDelete.bind(this);
84
+ _provider.on('session_delete', sessionDelete);
85
+ }
73
86
  return {
74
87
  accounts: accountAddresses,
75
88
  chainId: currentChainId
@@ -79,27 +92,24 @@ function UniversalConnector(appKitProvidedConnector) {
79
92
  throw new _viem.UserRejectedRequestError(error); // Generalize other errors as user rejection for simplicity
80
93
  }
81
94
  },
82
-
83
95
  async disconnect() {
84
- await appKitProvidedConnector.disconnect();
85
- config.emitter.emit('message', {
86
- type: 'externalDisconnect'
87
- });
88
- if (provider?.off && accountsChangedHandler && chainChangedHandler && disconnectHandler) {
89
- provider.off('accountsChanged', accountsChangedHandler);
90
- provider.off('chainChanged', chainChangedHandler);
91
- provider.off('disconnect', disconnectHandler);
92
- provider.off('session_delete', disconnectHandler);
93
- accountsChangedHandler = undefined;
94
- chainChangedHandler = undefined;
95
- disconnectHandler = undefined;
96
+ const _provider = await this.getProvider().catch(() => null);
97
+ try {
98
+ await appKitProvidedConnector.disconnect();
99
+ config.emitter.emit('message', {
100
+ type: 'externalDisconnect'
101
+ });
102
+ } catch (error) {
103
+ if (!/No matching key/i.test(error.message)) {
104
+ throw error;
105
+ }
106
+ } finally {
107
+ cleanupEventListeners(_provider);
96
108
  }
97
- this.ready = false;
98
109
  },
99
110
  async getAccounts() {
100
111
  const namespaces = appKitProvidedConnector.getNamespaces();
101
- // @ts-ignore
102
- const eip155Accounts = namespaces?.eip155?.accounts;
112
+ const eip155Accounts = namespaces?.['eip155']?.accounts;
103
113
  if (!eip155Accounts) return [];
104
114
  return eip155Accounts.map(caipAddr => {
105
115
  const parts = caipAddr.split(':');
@@ -112,8 +122,7 @@ function UniversalConnector(appKitProvidedConnector) {
112
122
 
113
123
  // Fallback: Try to get from CAIP accounts if available
114
124
  const namespaces = appKitProvidedConnector.getNamespaces();
115
- // @ts-ignore
116
- const eip155Accounts = namespaces?.eip155?.accounts;
125
+ const eip155Accounts = namespaces?.['eip155']?.accounts;
117
126
  if (eip155Accounts && eip155Accounts.length > 0) {
118
127
  const parts = eip155Accounts[0]?.split(':');
119
128
  if (parts && parts.length > 1 && typeof parts[1] === 'string') {
@@ -128,18 +137,9 @@ function UniversalConnector(appKitProvidedConnector) {
128
137
  },
129
138
  async getProvider() {
130
139
  if (!provider) {
131
- provider = appKitProvidedConnector.getProvider();
140
+ provider = appKitProvidedConnector.getProvider('eip155');
132
141
  }
133
- const chainId = await this.getChainId();
134
-
135
- //TODO: Review this with gancho
136
- const _provider = {
137
- ...provider,
138
- request: args => {
139
- return provider?.request(args, `eip155:${chainId}`);
140
- }
141
- };
142
- return Promise.resolve(_provider);
142
+ return provider;
143
143
  },
144
144
  async isAuthorized() {
145
145
  try {
@@ -152,7 +152,7 @@ function UniversalConnector(appKitProvidedConnector) {
152
152
  async switchChain({
153
153
  chainId
154
154
  }) {
155
- const _provider = await this.getProvider();
155
+ const _provider = appKitProvidedConnector.getProvider('eip155');
156
156
  if (!_provider) throw new Error('Provider not available for switching chain.');
157
157
  const newChain = config.chains.find(c => c.id === chainId);
158
158
  if (!newChain) throw new _viem.SwitchChainError(new _wagmi.ChainNotConfiguredError());
@@ -163,29 +163,23 @@ function UniversalConnector(appKitProvidedConnector) {
163
163
  chainId: (0, _viem.numberToHex)(chainId)
164
164
  }]
165
165
  });
166
- config.emitter.emit('change', {
167
- chainId
168
- });
169
166
  return newChain;
170
- } catch (error) {
171
- // Try to add chain if switch failed (common pattern)
172
- //4902 in MetaMask: Unrecognized chain ID
167
+ } catch (err) {
168
+ const error = err;
169
+ if (/(user rejected)/i.test(error.message)) throw new _viem.UserRejectedRequestError(error);
173
170
  if (error?.code === 4902 || error?.data?.originalError?.code === 4902) {
171
+ // Indicates chain is not added to provider
174
172
  try {
173
+ const addEthereumChainParams = {
174
+ chainId: (0, _viem.numberToHex)(chainId),
175
+ chainName: newChain.name,
176
+ nativeCurrency: newChain.nativeCurrency,
177
+ rpcUrls: [newChain.rpcUrls.default?.http[0] ?? ''],
178
+ blockExplorerUrls: [newChain.blockExplorers?.default?.url]
179
+ };
175
180
  await _provider.request({
176
181
  method: 'wallet_addEthereumChain',
177
- params: [{
178
- chainId: (0, _viem.numberToHex)(chainId),
179
- chainName: newChain.name,
180
- nativeCurrency: newChain.nativeCurrency,
181
- rpcUrls: [newChain.rpcUrls.default?.http[0] ?? ''],
182
- // Take first default HTTP RPC URL
183
- blockExplorerUrls: [newChain.blockExplorers?.default?.url]
184
- }]
185
- });
186
- await appKitProvidedConnector.switchNetwork((0, _helpers.formatNetwork)(newChain));
187
- config.emitter.emit('change', {
188
- chainId
182
+ params: [addEthereumChainParams]
189
183
  });
190
184
  return newChain;
191
185
  } catch (addError) {
@@ -196,18 +190,40 @@ function UniversalConnector(appKitProvidedConnector) {
196
190
  }
197
191
  },
198
192
  onAccountsChanged(accounts) {
199
- if (accounts.length === 0) this.onDisconnect();else config.emitter.emit('change', {
200
- accounts: accounts.map(x => (0, _viem.getAddress)(x))
201
- });
193
+ //Only emit if the account is an evm account
194
+ const shouldEmit = accounts.some(account => account.startsWith('0x'));
195
+ if (accounts.length === 0) {
196
+ this.onDisconnect();
197
+ } else if (shouldEmit) {
198
+ config.emitter.emit('change', {
199
+ accounts: accounts.map(x => (0, _viem.getAddress)(x))
200
+ });
201
+ }
202
202
  },
203
203
  onChainChanged(chain) {
204
204
  const chainId = Number(chain);
205
- config.emitter.emit('change', {
206
- chainId
207
- });
205
+
206
+ //Only emit if the chain is in the config (evm)
207
+ const shouldEmit = config.chains.some(c => c.id === chainId);
208
+ if (shouldEmit) {
209
+ config.emitter.emit('change', {
210
+ chainId
211
+ });
212
+ }
208
213
  },
209
- onDisconnect: () => {
214
+ async onDisconnect() {
210
215
  config.emitter.emit('disconnect');
216
+ try {
217
+ const _provider = await this.getProvider();
218
+ cleanupEventListeners(_provider);
219
+ } catch (error) {
220
+ // If provider is not available, still clean up local references
221
+ // to prevent memory leaks
222
+ cleanupEventListeners(null);
223
+ }
224
+ },
225
+ onSessionDelete() {
226
+ this.onDisconnect();
211
227
  }
212
228
  }));
213
229
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_viem","require","_wagmi","_helpers","UniversalConnector","appKitProvidedConnector","provider","accountsChangedHandler","chainChangedHandler","disconnectHandler","createConnector","config","id","name","type","ready","getProvider","setup","on","accounts","hexAccounts","map","acc","getAddress","emitter","emit","length","chainId","newChainId","parseInt","error","connect","_provider","ProviderNotFoundError","accountAddresses","getAccounts","UserRejectedRequestError","Error","currentChainId","getChainId","switchChain","disconnect","off","undefined","namespaces","getNamespaces","eip155Accounts","eip155","caipAddr","parts","split","filter","addrPart","chainIdNum","isNaN","chains","request","args","Promise","resolve","isAuthorized","newChain","find","c","SwitchChainError","ChainNotConfiguredError","method","params","numberToHex","code","data","originalError","chainName","nativeCurrency","rpcUrls","default","http","blockExplorerUrls","blockExplorers","url","switchNetwork","formatNetwork","addError","onAccountsChanged","onDisconnect","x","onChainChanged","chain","Number"],"sourceRoot":"../../../src","sources":["connectors/UniversalConnector.ts"],"mappings":"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"}
1
+ {"version":3,"names":["_viem","require","_wagmi","UniversalConnector","appKitProvidedConnector","provider","accountsChanged","chainChanged","sessionDelete","disconnect","cleanupEventListeners","_provider","off","undefined","createConnector","config","id","name","type","ready","getProvider","setup","catch","onSessionDelete","bind","on","connect","chainId","ProviderNotFoundError","accountAddresses","getAccounts","length","UserRejectedRequestError","Error","currentChainId","getChainId","switchChain","onAccountsChanged","onChainChanged","onDisconnect","accounts","error","emitter","emit","test","message","namespaces","getNamespaces","eip155Accounts","map","caipAddr","parts","split","filter","addrPart","getAddress","parseInt","chainIdNum","isNaN","chains","isAuthorized","newChain","find","c","SwitchChainError","ChainNotConfiguredError","request","method","params","numberToHex","err","code","data","originalError","addEthereumChainParams","chainName","nativeCurrency","rpcUrls","default","http","blockExplorerUrls","blockExplorers","url","addError","shouldEmit","some","account","startsWith","x","chain","Number"],"sourceRoot":"../../../src","sources":["connectors/UniversalConnector.ts"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_adapter","require","_helpers"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAGA,IAAAC,QAAA,GAAAD,OAAA"}
1
+ {"version":3,"names":["_adapter","require","_helpers"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAGA,IAAAC,QAAA,GAAAD,OAAA","ignoreList":[]}
@@ -0,0 +1 @@
1
+ {"type":"commonjs"}
@@ -6,14 +6,13 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.formatNetwork = formatNetwork;
7
7
  exports.formatNetworks = formatNetworks;
8
8
  exports.getTransport = getTransport;
9
- var _appkitReactNative = require("@reown/appkit-react-native");
10
- var _appkitCommonReactNative = require("@reown/appkit-common-react-native");
11
9
  var _viem = require("viem");
10
+ var _appkitCommonReactNative = require("@reown/appkit-common-react-native");
12
11
  function getTransport({
13
12
  chainId,
14
13
  projectId
15
14
  }) {
16
- const RPC_URL = _appkitReactNative.CoreHelperUtil.getBlockchainApiUrl();
15
+ const RPC_URL = _appkitCommonReactNative.ConstantsUtil.BLOCKCHAIN_API_RPC_URL;
17
16
  if (!_appkitCommonReactNative.PresetsUtil.RpcChainIds.includes(chainId)) {
18
17
  return (0, _viem.http)();
19
18
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_appkitReactNative","require","_appkitCommonReactNative","_viem","getTransport","chainId","projectId","RPC_URL","CoreHelperUtil","getBlockchainApiUrl","PresetsUtil","RpcChainIds","includes","http","ConstantsUtil","EIP155","formatNetwork","network","rpcUrls","chainNamespace","caipNetworkId","id","formatNetworks","networks","map"],"sourceRoot":"../../../src","sources":["utils/helpers.ts"],"mappings":";;;;;;;;AAAA,IAAAA,kBAAA,GAAAC,OAAA;AACA,IAAAC,wBAAA,GAAAD,OAAA;AAMA,IAAAE,KAAA,GAAAF,OAAA;AAEO,SAASG,YAAYA,CAAC;EAAEC,OAAO;EAAEC;AAAkD,CAAC,EAAE;EAC3F,MAAMC,OAAO,GAAGC,iCAAc,CAACC,mBAAmB,CAAC,CAAC;EAEpD,IAAI,CAACC,oCAAW,CAACC,WAAW,CAACC,QAAQ,CAACP,OAAO,CAAC,EAAE;IAC9C,OAAO,IAAAQ,UAAI,EAAC,CAAC;EACf;EAEA,OAAO,IAAAA,UAAI,EAAE,GAAEN,OAAQ,gBAAeO,sCAAa,CAACC,MAAO,IAAGV,OAAQ,cAAaC,SAAU,EAAC,CAAC;AACjG;AAEO,SAASU,aAAaA,CAACC,OAAgB,EAAiB;EAC7D,OAAO;IACL,GAAGA,OAAO;IACVC,OAAO,EAAE;MAAE,GAAGD,OAAO,CAACC;IAAQ,CAAC;IAC/BC,cAAc,EAAE,QAAQ;IACxBC,aAAa,EAAG,UAASH,OAAO,CAACI,EAAG;EACtC,CAAC;AACH;AAEO,SAASC,cAAcA,CAACC,QAAmB,EAAmB;EACnE,OAAOA,QAAQ,CAACC,GAAG,CAACR,aAAa,CAAC;AACpC"}
1
+ {"version":3,"names":["_viem","require","_appkitCommonReactNative","getTransport","chainId","projectId","RPC_URL","ConstantsUtil","BLOCKCHAIN_API_RPC_URL","PresetsUtil","RpcChainIds","includes","http","EIP155","formatNetwork","network","rpcUrls","chainNamespace","caipNetworkId","id","formatNetworks","networks","map"],"sourceRoot":"../../../src","sources":["utils/helpers.ts"],"mappings":";;;;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,wBAAA,GAAAD,OAAA;AAOO,SAASE,YAAYA,CAAC;EAAEC,OAAO;EAAEC;AAAkD,CAAC,EAAE;EAC3F,MAAMC,OAAO,GAAGC,sCAAa,CAACC,sBAAsB;EAEpD,IAAI,CAACC,oCAAW,CAACC,WAAW,CAACC,QAAQ,CAACP,OAAO,CAAC,EAAE;IAC9C,OAAO,IAAAQ,UAAI,EAAC,CAAC;EACf;EAEA,OAAO,IAAAA,UAAI,EAAC,GAAGN,OAAO,gBAAgBC,sCAAa,CAACM,MAAM,IAAIT,OAAO,cAAcC,SAAS,EAAE,CAAC;AACjG;AAEO,SAASS,aAAaA,CAACC,OAAgB,EAAiB;EAC7D,OAAO;IACL,GAAGA,OAAO;IACVC,OAAO,EAAE;MAAE,GAAGD,OAAO,CAACC;IAAQ,CAAC;IAC/BC,cAAc,EAAE,QAAQ;IACxBC,aAAa,EAAE,UAAUH,OAAO,CAACI,EAAE;EACrC,CAAC;AACH;AAEO,SAASC,cAAcA,CAACC,QAAmB,EAAmB;EACnE,OAAOA,QAAQ,CAACC,GAAG,CAACR,aAAa,CAAC;AACpC","ignoreList":[]}
@@ -1,5 +1,7 @@
1
+ "use strict";
2
+
1
3
  import { EVMAdapter } from '@reown/appkit-common-react-native';
2
- import { createConfig, getBalance as getBalanceWagmi, switchChain as switchChainWagmi, disconnect as disconnectWagmiCore, connect as connectWagmi } from '@wagmi/core';
4
+ import { createConfig, getBalance as getBalanceWagmi, switchChain as switchChainWagmi, disconnect as disconnectWagmiCore, connect as connectWagmi, watchAccount } from '@wagmi/core';
3
5
  import { getTransport } from './utils/helpers';
4
6
  import { formatUnits } from 'viem';
5
7
  import { UniversalConnector } from './connectors/UniversalConnector';
@@ -7,17 +9,13 @@ export class WagmiAdapter extends EVMAdapter {
7
9
  static supportedNamespace = 'eip155';
8
10
  constructor(configParams) {
9
11
  super({
10
- projectId: configParams.projectId,
11
- supportedNamespace: WagmiAdapter.supportedNamespace
12
+ supportedNamespace: WagmiAdapter.supportedNamespace,
13
+ adapterType: 'wagmi'
12
14
  });
13
15
  this.wagmiChains = configParams.networks;
14
16
  this.wagmiConfig = this.createWagmiInternalConfig(configParams);
15
17
  }
16
18
  createWagmiInternalConfig(configParams) {
17
- // Connectors are typically added via wagmiConfig.connectors, but here AppKit manages the connection.
18
- // We'll use the `connect` action with our dynamically created connector instance.
19
- // So, the `connectors` array for createConfig can be empty and is added later.
20
- const initialConnectors = [];
21
19
  const transportsArr = configParams.networks.map(chain => [chain.id, getTransport({
22
20
  chainId: chain.id,
23
21
  projectId: configParams.projectId
@@ -25,8 +23,7 @@ export class WagmiAdapter extends EVMAdapter {
25
23
  const transports = Object.fromEntries(transportsArr);
26
24
  return createConfig({
27
25
  chains: configParams.networks,
28
- connectors: initialConnectors,
29
- // Empty, as we connect programmatically
26
+ connectors: [...(configParams.connectors ?? [])],
30
27
  transports,
31
28
  multiInjectedProviderDiscovery: false
32
29
  });
@@ -68,7 +65,7 @@ export class WagmiAdapter extends EVMAdapter {
68
65
  const formattedBalance = {
69
66
  amount: formatUnits(balance.value, balance.decimals),
70
67
  symbol: balance.symbol,
71
- contractAddress: token ? `${network.caipNetworkId}:${token}` : undefined
68
+ address: token ? `${network.caipNetworkId}:${token}` : undefined
72
69
  };
73
70
  this.emit('balanceChanged', {
74
71
  address: balanceAddress,
@@ -89,6 +86,10 @@ export class WagmiAdapter extends EVMAdapter {
89
86
  return accountsForNamespace?.accounts;
90
87
  }
91
88
  async disconnect() {
89
+ if (this.unsubscribeWatchAccount) {
90
+ this.unsubscribeWatchAccount();
91
+ this.unsubscribeWatchAccount = undefined;
92
+ }
92
93
  if (this.wagmiConfigConnector) {
93
94
  await disconnectWagmiCore(this.wagmiConfig, {
94
95
  connector: this.wagmiConfigConnector
@@ -106,8 +107,18 @@ export class WagmiAdapter extends EVMAdapter {
106
107
  getSupportedNamespace() {
107
108
  return WagmiAdapter.supportedNamespace;
108
109
  }
109
- setConnector(_connector) {
110
- super.setConnector(_connector);
110
+
111
+ // Override subscribeToEvents to prevent double subscription
112
+ // Wagmi handles provider events through its connector system and watchAccount
113
+ subscribeToEvents() {
114
+ // Do nothing - wagmi's watchAccount in setupWatchers handles all events
115
+ }
116
+ init({
117
+ connector: _connector
118
+ }) {
119
+ super.init({
120
+ connector: _connector
121
+ });
111
122
  if (_connector && this.wagmiChains) {
112
123
  if (!this.wagmiConfigConnector) {
113
124
  // Manually add the connector to the wagmiConfig
@@ -131,6 +142,32 @@ export class WagmiAdapter extends EVMAdapter {
131
142
  }
132
143
  }
133
144
  }
145
+ this.setupWatchers();
146
+ }
147
+ setupWatchers() {
148
+ // Clean up existing subscription if any
149
+ this.unsubscribeWatchAccount?.();
150
+ this.unsubscribeWatchAccount = watchAccount(this.wagmiConfig, {
151
+ onChange: (accountData, prevAccountData) => {
152
+ if (!this.connector) return;
153
+
154
+ // Handle disconnect
155
+ if (accountData.status === 'disconnected' && prevAccountData.address) {
156
+ this.onDisconnect();
157
+ return;
158
+ }
159
+
160
+ // Handle account address changes
161
+ if (accountData?.addresses && accountData?.address && accountData.address !== prevAccountData?.address) {
162
+ this.onAccountsChanged([...accountData.addresses]);
163
+ }
164
+
165
+ // Handle chain changes
166
+ if (accountData?.chainId && accountData.chainId !== prevAccountData?.chainId) {
167
+ this.onChainChanged(accountData.chainId?.toString());
168
+ }
169
+ }
170
+ });
134
171
  }
135
172
  }
136
173
  //# sourceMappingURL=adapter.js.map