@wagmi/connectors 0.2.2 → 0.2.3-cjs

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.
@@ -1,68 +1,73 @@
1
- import {
2
- Connector,
3
- __privateAdd,
4
- __privateGet,
5
- __privateMethod,
6
- __privateSet,
7
- __publicField
8
- } from "./chunk-5NCTPR6C.js";
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } async function _asyncNullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return await rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; } async function _asyncOptionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = await fn(value); } else if (op === 'call' || op === 'optionalCall') { value = await fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
2
+
3
+
4
+
5
+
6
+
7
+
8
+ var _chunk5NCTPR6Cjs = require('./chunk-5NCTPR6C.js');
9
9
 
10
10
  // src/walletConnect.ts
11
- import {
12
- SwitchChainError,
13
- UserRejectedRequestError,
14
- getClient,
15
- normalizeChainId
16
- } from "@wagmi/core";
17
- import { providers } from "ethers";
18
- import { getAddress, hexValue } from "ethers/lib/utils.js";
11
+
12
+
13
+
14
+
15
+
16
+ var _core = require('@wagmi/core');
17
+ var _ethers = require('ethers');
18
+ var _utilsjs = require('ethers/lib/utils.js');
19
19
  var defaultV2Config = {
20
20
  namespace: "eip155",
21
21
  methods: [
22
22
  "eth_sendTransaction",
23
+ "eth_sendRawTransaction",
23
24
  "eth_sign",
24
25
  "eth_signTransaction",
25
26
  "eth_signTypedData",
26
- "personal_sign"
27
+ "eth_signTypedData_v3",
28
+ "eth_signTypedData_v4",
29
+ "personal_sign",
30
+ "wallet_switchEthereumChain",
31
+ "wallet_addEthereumChain"
27
32
  ],
28
33
  events: ["accountsChanged", "chainChanged"]
29
34
  };
30
35
  var _provider, _initUniversalProviderPromise, _web3Modal, _createWeb3Modal, createWeb3Modal_fn, _initUniversalProvider, initUniversalProvider_fn, _createUniversalProvider, createUniversalProvider_fn, _isChainsAuthorized, isChainsAuthorized_fn, _switchChain, switchChain_fn;
31
- var WalletConnectConnector = class extends Connector {
36
+ var WalletConnectConnector = class extends _chunk5NCTPR6Cjs.Connector {
32
37
  constructor(config) {
33
38
  super(config);
34
- __privateAdd(this, _createWeb3Modal);
35
- __privateAdd(this, _initUniversalProvider);
36
- __privateAdd(this, _createUniversalProvider);
37
- __privateAdd(this, _isChainsAuthorized);
38
- __privateAdd(this, _switchChain);
39
- __publicField(this, "id", "walletConnect");
40
- __publicField(this, "name", "WalletConnect");
41
- __publicField(this, "ready", true);
42
- __privateAdd(this, _provider, void 0);
43
- __privateAdd(this, _initUniversalProviderPromise, void 0);
44
- __privateAdd(this, _web3Modal, void 0);
45
- __publicField(this, "onAccountsChanged", (accounts) => {
39
+ _chunk5NCTPR6Cjs.__privateAdd.call(void 0, this, _createWeb3Modal);
40
+ _chunk5NCTPR6Cjs.__privateAdd.call(void 0, this, _initUniversalProvider);
41
+ _chunk5NCTPR6Cjs.__privateAdd.call(void 0, this, _createUniversalProvider);
42
+ _chunk5NCTPR6Cjs.__privateAdd.call(void 0, this, _isChainsAuthorized);
43
+ _chunk5NCTPR6Cjs.__privateAdd.call(void 0, this, _switchChain);
44
+ _chunk5NCTPR6Cjs.__publicField.call(void 0, this, "id", "walletConnect");
45
+ _chunk5NCTPR6Cjs.__publicField.call(void 0, this, "name", "WalletConnect");
46
+ _chunk5NCTPR6Cjs.__publicField.call(void 0, this, "ready", true);
47
+ _chunk5NCTPR6Cjs.__privateAdd.call(void 0, this, _provider, void 0);
48
+ _chunk5NCTPR6Cjs.__privateAdd.call(void 0, this, _initUniversalProviderPromise, void 0);
49
+ _chunk5NCTPR6Cjs.__privateAdd.call(void 0, this, _web3Modal, void 0);
50
+ _chunk5NCTPR6Cjs.__publicField.call(void 0, this, "onAccountsChanged", (accounts) => {
46
51
  if (accounts.length === 0)
47
52
  this.emit("disconnect");
48
53
  else
49
- this.emit("change", { account: getAddress(accounts[0]) });
54
+ this.emit("change", { account: _utilsjs.getAddress.call(void 0, accounts[0]) });
50
55
  });
51
- __publicField(this, "onChainChanged", (chainId) => {
52
- const id = normalizeChainId(chainId);
56
+ _chunk5NCTPR6Cjs.__publicField.call(void 0, this, "onChainChanged", (chainId) => {
57
+ const id = _core.normalizeChainId.call(void 0, chainId);
53
58
  const unsupported = this.isChainUnsupported(id);
54
59
  this.emit("change", { chain: { id, unsupported } });
55
60
  });
56
- __publicField(this, "onDisconnect", () => {
61
+ _chunk5NCTPR6Cjs.__publicField.call(void 0, this, "onDisconnect", () => {
57
62
  this.emit("disconnect");
58
63
  });
59
- __publicField(this, "onDisplayUri", (uri) => {
64
+ _chunk5NCTPR6Cjs.__publicField.call(void 0, this, "onDisplayUri", (uri) => {
60
65
  this.emit("message", { type: "display_uri", data: uri });
61
66
  });
62
67
  if (this.version === "2") {
63
- __privateMethod(this, _createUniversalProvider, createUniversalProvider_fn).call(this);
68
+ _chunk5NCTPR6Cjs.__privateMethod.call(void 0, this, _createUniversalProvider, createUniversalProvider_fn).call(this);
64
69
  if (this.isQrCode)
65
- __privateMethod(this, _createWeb3Modal, createWeb3Modal_fn).call(this);
70
+ _chunk5NCTPR6Cjs.__privateMethod.call(void 0, this, _createWeb3Modal, createWeb3Modal_fn).call(this);
66
71
  }
67
72
  }
68
73
  get isQrCode() {
@@ -84,7 +89,7 @@ var WalletConnectConnector = class extends Connector {
84
89
  try {
85
90
  let targetChainId = chainId;
86
91
  if (!targetChainId) {
87
- const lastUsedChainId = getClient().lastUsedChainId;
92
+ const lastUsedChainId = _core.getClient.call(void 0, ).lastUsedChainId;
88
93
  if (lastUsedChainId && !this.isChainUnsupported(lastUsedChainId))
89
94
  targetChainId = lastUsedChainId;
90
95
  }
@@ -98,7 +103,7 @@ var WalletConnectConnector = class extends Connector {
98
103
  if (isV2) {
99
104
  provider.on("session_delete", this.onDisconnect);
100
105
  provider.on("display_uri", this.onDisplayUri);
101
- const isChainsAuthorized = await __privateMethod(this, _isChainsAuthorized, isChainsAuthorized_fn).call(this);
106
+ const isChainsAuthorized = await _chunk5NCTPR6Cjs.__privateMethod.call(void 0, this, _isChainsAuthorized, isChainsAuthorized_fn).call(this);
102
107
  if (provider.session && !isChainsAuthorized)
103
108
  await provider.disconnect();
104
109
  if (!provider.session || provider.session && !isChainsAuthorized) {
@@ -122,17 +127,17 @@ var WalletConnectConnector = class extends Connector {
122
127
  ...this.isQrCode ? [
123
128
  new Promise(
124
129
  (_resolve, reject) => provider.on("display_uri", async (uri) => {
125
- await __privateGet(this, _web3Modal)?.openModal({ uri });
126
- __privateGet(this, _web3Modal)?.subscribeModal(({ open }) => {
130
+ await _optionalChain([_chunk5NCTPR6Cjs.__privateGet.call(void 0, this, _web3Modal), 'optionalAccess', _ => _.openModal, 'call', _2 => _2({ uri })]);
131
+ _optionalChain([_chunk5NCTPR6Cjs.__privateGet.call(void 0, this, _web3Modal), 'optionalAccess', _3 => _3.subscribeModal, 'call', _4 => _4(({ open }) => {
127
132
  if (!open)
128
133
  reject(new Error("user rejected"));
129
- });
134
+ })]);
130
135
  })
131
136
  )
132
137
  ] : []
133
138
  ]);
134
139
  if (this.isQrCode)
135
- __privateGet(this, _web3Modal)?.closeModal();
140
+ _optionalChain([_chunk5NCTPR6Cjs.__privateGet.call(void 0, this, _web3Modal), 'optionalAccess', _5 => _5.closeModal, 'call', _6 => _6()]);
136
141
  }
137
142
  }
138
143
  setTimeout(() => this.emit("message", { type: "connecting" }), 0);
@@ -147,30 +152,30 @@ var WalletConnectConnector = class extends Connector {
147
152
  )
148
153
  ] : []
149
154
  ]);
150
- const account = getAddress(accounts[0]);
155
+ const account = _utilsjs.getAddress.call(void 0, accounts[0]);
151
156
  const id = await this.getChainId();
152
157
  const unsupported = this.isChainUnsupported(id);
153
158
  if (isV1) {
154
- const walletName = provider.connector?.peerMeta?.name ?? "";
159
+ const walletName = _nullishCoalesce(_optionalChain([provider, 'access', _7 => _7.connector, 'optionalAccess', _8 => _8.peerMeta, 'optionalAccess', _9 => _9.name]), () => ( ""));
155
160
  const switchChainAllowedRegex = /(imtoken|metamask|omni|rainbow|trust wallet)/i;
156
161
  if (switchChainAllowedRegex.test(walletName))
157
- this.switchChain = __privateMethod(this, _switchChain, switchChain_fn);
162
+ this.switchChain = _chunk5NCTPR6Cjs.__privateMethod.call(void 0, this, _switchChain, switchChain_fn);
158
163
  } else
159
- this.switchChain = __privateMethod(this, _switchChain, switchChain_fn);
164
+ this.switchChain = _chunk5NCTPR6Cjs.__privateMethod.call(void 0, this, _switchChain, switchChain_fn);
160
165
  return {
161
166
  account,
162
167
  chain: { id, unsupported },
163
- provider: new providers.Web3Provider(
168
+ provider: new _ethers.providers.Web3Provider(
164
169
  provider
165
170
  )
166
171
  };
167
172
  } catch (error) {
168
173
  if (isV2 && this.isQrCode)
169
- __privateGet(this, _web3Modal)?.closeModal();
174
+ _optionalChain([_chunk5NCTPR6Cjs.__privateGet.call(void 0, this, _web3Modal), 'optionalAccess', _10 => _10.closeModal, 'call', _11 => _11()]);
170
175
  if (/user closed modal|user rejected/i.test(
171
- error?.message
176
+ _optionalChain([error, 'optionalAccess', _12 => _12.message])
172
177
  )) {
173
- throw new UserRejectedRequestError(error);
178
+ throw new (0, _core.UserRejectedRequestError)(error);
174
179
  }
175
180
  throw error;
176
181
  }
@@ -202,43 +207,43 @@ var WalletConnectConnector = class extends Connector {
202
207
  accounts = await provider.request({
203
208
  method: "eth_accounts"
204
209
  });
205
- return getAddress(accounts[0]);
210
+ return _utilsjs.getAddress.call(void 0, accounts[0]);
206
211
  }
207
212
  async getChainId() {
208
213
  const provider = await this.getProvider();
209
214
  if (this.version === "1")
210
- return normalizeChainId(provider.chainId);
211
- return getClient().data?.chain?.id ?? normalizeChainId(await provider.request({ method: "eth_chainId" }));
215
+ return _core.normalizeChainId.call(void 0, provider.chainId);
216
+ return await _asyncNullishCoalesce(await _asyncOptionalChain([_core.getClient.call(void 0, ), 'access', async _13 => _13.data, 'optionalAccess', async _14 => _14.chain, 'optionalAccess', async _15 => _15.id]), async () => ( _core.normalizeChainId.call(void 0, await provider.request({ method: "eth_chainId" }))));
212
217
  }
213
218
  async getProvider({
214
219
  chainId,
215
220
  create
216
221
  } = {}) {
217
222
  if (this.options.version === "2") {
218
- if (!__privateGet(this, _provider))
219
- await __privateMethod(this, _createUniversalProvider, createUniversalProvider_fn).call(this);
223
+ if (!_chunk5NCTPR6Cjs.__privateGet.call(void 0, this, _provider))
224
+ await _chunk5NCTPR6Cjs.__privateMethod.call(void 0, this, _createUniversalProvider, createUniversalProvider_fn).call(this);
220
225
  if (chainId)
221
- __privateGet(this, _provider).setDefaultChain(
226
+ _chunk5NCTPR6Cjs.__privateGet.call(void 0, this, _provider).setDefaultChain(
222
227
  `${defaultV2Config.namespace}:${chainId}`
223
228
  );
224
- return __privateGet(this, _provider);
225
- } else if (!__privateGet(this, _provider) || chainId || create) {
226
- const rpc = !this.options?.infuraId ? this.chains.reduce(
229
+ return _chunk5NCTPR6Cjs.__privateGet.call(void 0, this, _provider);
230
+ } else if (!_chunk5NCTPR6Cjs.__privateGet.call(void 0, this, _provider) || chainId || create) {
231
+ const rpc = !_optionalChain([this, 'access', _16 => _16.options, 'optionalAccess', _17 => _17.infuraId]) ? this.chains.reduce(
227
232
  (rpc2, chain) => ({
228
233
  ...rpc2,
229
234
  [chain.id]: chain.rpcUrls.default.http[0]
230
235
  }),
231
236
  {}
232
237
  ) : {};
233
- const WalletConnectProvider = (await import("@walletconnect/ethereum-provider")).default;
234
- __privateSet(this, _provider, new WalletConnectProvider({
238
+ const WalletConnectProvider = (await Promise.resolve().then(() => require("@walletconnect/ethereum-provider"))).default;
239
+ _chunk5NCTPR6Cjs.__privateSet.call(void 0, this, _provider, new WalletConnectProvider({
235
240
  ...this.options,
236
241
  chainId,
237
- rpc: { ...rpc, ...this.options?.rpc }
242
+ rpc: { ...rpc, ..._optionalChain([this, 'access', _18 => _18.options, 'optionalAccess', _19 => _19.rpc]) }
238
243
  }));
239
- return __privateGet(this, _provider);
244
+ return _chunk5NCTPR6Cjs.__privateGet.call(void 0, this, _provider);
240
245
  }
241
- return __privateGet(this, _provider);
246
+ return _chunk5NCTPR6Cjs.__privateGet.call(void 0, this, _provider);
242
247
  }
243
248
  async getSigner({ chainId } = {}) {
244
249
  const [provider, account] = await Promise.all([
@@ -253,21 +258,21 @@ var WalletConnectConnector = class extends Connector {
253
258
  async request(args) {
254
259
  return await provider.request(
255
260
  args,
256
- `${defaultV2Config.namespace}:${chainId ?? chainId_}`
261
+ `${defaultV2Config.namespace}:${_nullishCoalesce(chainId, () => ( chainId_))}`
257
262
  );
258
263
  }
259
264
  };
260
265
  }
261
- return new providers.Web3Provider(provider_, chainId).getSigner(account);
266
+ return new _ethers.providers.Web3Provider(provider_, chainId).getSigner(account);
262
267
  }
263
268
  async isAuthorized() {
264
269
  try {
265
270
  const [account, isChainsAuthorized] = await Promise.all([
266
271
  this.getAccount(),
267
- __privateMethod(this, _isChainsAuthorized, isChainsAuthorized_fn).call(this)
272
+ _chunk5NCTPR6Cjs.__privateMethod.call(void 0, this, _isChainsAuthorized, isChainsAuthorized_fn).call(this)
268
273
  ]);
269
274
  return !!account && isChainsAuthorized;
270
- } catch {
275
+ } catch (e) {
271
276
  return false;
272
277
  }
273
278
  }
@@ -277,35 +282,35 @@ _initUniversalProviderPromise = new WeakMap();
277
282
  _web3Modal = new WeakMap();
278
283
  _createWeb3Modal = new WeakSet();
279
284
  createWeb3Modal_fn = async function() {
280
- const { Web3Modal } = await import("@web3modal/standalone");
285
+ const { Web3Modal } = await Promise.resolve().then(() => require("@web3modal/standalone"));
281
286
  const { version } = this.options;
282
- __privateSet(this, _web3Modal, new Web3Modal({
287
+ _chunk5NCTPR6Cjs.__privateSet.call(void 0, this, _web3Modal, new Web3Modal({
283
288
  projectId: version === "2" ? this.options.projectId : void 0,
284
289
  standaloneChains: this.namespacedChains
285
290
  }));
286
291
  };
287
292
  _initUniversalProvider = new WeakSet();
288
293
  initUniversalProvider_fn = async function() {
289
- const WalletConnectProvider = (await import("@walletconnect/universal-provider")).default;
290
- if (WalletConnectProvider) {
291
- __privateSet(this, _provider, await WalletConnectProvider.init(
294
+ const WalletConnectProvider = (await Promise.resolve().then(() => require("@walletconnect/universal-provider"))).default;
295
+ if (typeof _optionalChain([WalletConnectProvider, 'optionalAccess', _20 => _20.init]) === "function") {
296
+ _chunk5NCTPR6Cjs.__privateSet.call(void 0, this, _provider, await WalletConnectProvider.init(
292
297
  this.options
293
298
  ));
294
299
  }
295
300
  };
296
301
  _createUniversalProvider = new WeakSet();
297
302
  createUniversalProvider_fn = async function() {
298
- if (!__privateGet(this, _initUniversalProviderPromise)) {
299
- __privateSet(this, _initUniversalProviderPromise, __privateMethod(this, _initUniversalProvider, initUniversalProvider_fn).call(this));
303
+ if (!_chunk5NCTPR6Cjs.__privateGet.call(void 0, this, _initUniversalProviderPromise)) {
304
+ _chunk5NCTPR6Cjs.__privateSet.call(void 0, this, _initUniversalProviderPromise, _chunk5NCTPR6Cjs.__privateMethod.call(void 0, this, _initUniversalProvider, initUniversalProvider_fn).call(this));
300
305
  }
301
- return __privateGet(this, _initUniversalProviderPromise);
306
+ return _chunk5NCTPR6Cjs.__privateGet.call(void 0, this, _initUniversalProviderPromise);
302
307
  };
303
308
  _isChainsAuthorized = new WeakSet();
304
309
  isChainsAuthorized_fn = async function() {
305
310
  const provider = await this.getProvider();
306
311
  if (this.version === "1")
307
312
  return true;
308
- const providerChains = provider.namespaces?.[defaultV2Config.namespace]?.chains || [];
313
+ const providerChains = _optionalChain([provider, 'access', _21 => _21.namespaces, 'optionalAccess', _22 => _22[defaultV2Config.namespace], 'optionalAccess', _23 => _23.chains]) || [];
309
314
  const authorizedChainIds = providerChains.map(
310
315
  (chain) => parseInt(chain.split(":")[1] || "")
311
316
  );
@@ -314,7 +319,7 @@ isChainsAuthorized_fn = async function() {
314
319
  _switchChain = new WeakSet();
315
320
  switchChain_fn = async function(chainId) {
316
321
  const provider = await this.getProvider();
317
- const id = hexValue(chainId);
322
+ const id = _utilsjs.hexValue.call(void 0, chainId);
318
323
  try {
319
324
  await Promise.race([
320
325
  provider.request({
@@ -323,7 +328,7 @@ switchChain_fn = async function(chainId) {
323
328
  }),
324
329
  new Promise(
325
330
  (res) => this.on("change", ({ chain }) => {
326
- if (chain?.id === chainId)
331
+ if (_optionalChain([chain, 'optionalAccess', _24 => _24.id]) === chainId)
327
332
  res(chainId);
328
333
  })
329
334
  )
@@ -335,20 +340,20 @@ switchChain_fn = async function(chainId) {
335
340
  );
336
341
  this.onChainChanged(chainId);
337
342
  }
338
- return this.chains.find((x) => x.id === chainId) ?? {
343
+ return _nullishCoalesce(this.chains.find((x) => x.id === chainId), () => ( {
339
344
  id: chainId,
340
345
  name: `Chain ${id}`,
341
346
  network: `${id}`,
342
347
  nativeCurrency: { decimals: 18, name: "Ether", symbol: "ETH" },
343
348
  rpcUrls: { default: { http: [""] }, public: { http: [""] } }
344
- };
349
+ }));
345
350
  } catch (error) {
346
- const message = typeof error === "string" ? error : error?.message;
351
+ const message = typeof error === "string" ? error : _optionalChain([error, 'optionalAccess', _25 => _25.message]);
347
352
  if (/user rejected request/i.test(message))
348
- throw new UserRejectedRequestError(error);
349
- throw new SwitchChainError(error);
353
+ throw new (0, _core.UserRejectedRequestError)(error);
354
+ throw new (0, _core.SwitchChainError)(error);
350
355
  }
351
356
  };
352
- export {
353
- WalletConnectConnector
354
- };
357
+
358
+
359
+ exports.WalletConnectConnector = WalletConnectConnector;
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@wagmi/connectors",
3
3
  "description": "A collection of connectors for wagmi",
4
4
  "license": "MIT",
5
- "version": "0.2.2",
5
+ "version": "0.2.3-cjs",
6
6
  "peerDependencies": {
7
7
  "@wagmi/core": ">=0.9.x",
8
8
  "ethers": ">=5.5.1",
@@ -20,7 +20,7 @@
20
20
  "@coinbase/wallet-sdk": "^3.5.4",
21
21
  "@ledgerhq/connect-kit-loader": "^1.0.1",
22
22
  "@walletconnect/ethereum-provider": "^1.8.0",
23
- "@walletconnect/universal-provider": "^2.3.2",
23
+ "@walletconnect/universal-provider": "^2.3.3",
24
24
  "@web3modal/standalone": "^2.0.0",
25
25
  "abitype": "^0.3.0",
26
26
  "eventemitter3": "^4.0.7"
@@ -29,7 +29,6 @@
29
29
  "@wagmi/core": "^0.8.19",
30
30
  "ethers": "^5.7.2"
31
31
  },
32
- "type": "module",
33
32
  "main": "dist/index.js",
34
33
  "types": "dist/index.d.ts",
35
34
  "exports": {