@wagmi/connectors 8.0.2 → 8.0.4

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,2 +1,2 @@
1
- export const version = '8.0.2';
1
+ export const version = '8.0.4';
2
2
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"porto.d.ts","sourceRoot":"","sources":["../../src/porto.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACxD,OAAO,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAC7C,OAAO,EACL,KAAK,OAAO,EAGZ,KAAK,mBAAmB,EAKzB,MAAM,MAAM,CAAA;AAEb,MAAM,MAAM,eAAe,GAAG,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;AAExD,wBAAgB,KAAK,CAAC,UAAU,GAAE,eAAoB;YAG1C,gBAAgB,SAAS,OAAO,uBAAuB;QAC7D,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QAC5B,YAAY,CAAC,EACT,CAAC,SAAS,CAAC,cAAc,CAAC,YAAY,GAAG;YACvC,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;SAC5B,CAAC,GACF,SAAS,CAAA;QACb,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;QACpC,gBAAgB,CAAC,EAAE,gBAAgB,GAAG,OAAO,GAAG,SAAS,CAAA;KAC1D,GAAG,OAAO,CAAC;QACV,QAAQ,EAAE,gBAAgB,SAAS,IAAI,GACnC,SAAS;YACP,OAAO,EAAE,OAAO,CAAA;YAChB,YAAY,EAAE,SAAS,CAAC,cAAc,CAAC,oBAAoB,CAAA;SAC5D,EAAE,GACH,SAAS,OAAO,EAAE,CAAA;QACtB,OAAO,EAAE,MAAM,CAAA;KAChB,CAAC;wBACkB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;2BACjB,mBAAmB,GAAG,IAAI;4BAyRpD"}
1
+ {"version":3,"file":"porto.d.ts","sourceRoot":"","sources":["../../src/porto.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACxD,OAAO,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAC7C,OAAO,EACL,KAAK,OAAO,EAGZ,KAAK,mBAAmB,EAKzB,MAAM,MAAM,CAAA;AAEb,MAAM,MAAM,eAAe,GAAG,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;AAExD,wBAAgB,KAAK,CAAC,UAAU,GAAE,eAAoB;YAO1C,gBAAgB,SAAS,OAAO,uBAAuB;QAC7D,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QAC5B,YAAY,CAAC,EACT,CAAC,SAAS,CAAC,cAAc,CAAC,YAAY,GAAG;YACvC,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;SAC5B,CAAC,GACF,SAAS,CAAA;QACb,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;QACpC,gBAAgB,CAAC,EAAE,gBAAgB,GAAG,OAAO,GAAG,SAAS,CAAA;KAC1D,GAAG,OAAO,CAAC;QACV,QAAQ,EAAE,gBAAgB,SAAS,IAAI,GACnC,SAAS;YACP,OAAO,EAAE,OAAO,CAAA;YAChB,YAAY,EAAE,SAAS,CAAC,cAAc,CAAC,oBAAoB,CAAA;SAC5D,EAAE,GACH,SAAS,OAAO,EAAE,CAAA;QACtB,OAAO,EAAE,MAAM,CAAA;KAChB,CAAC;wBACkB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;2BACjB,mBAAmB,GAAG,IAAI;4BAkSpD"}
@@ -1,2 +1,2 @@
1
- export declare const version = "8.0.2";
1
+ export declare const version = "8.0.4";
2
2
  //# sourceMappingURL=version.d.ts.map
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@wagmi/connectors",
3
3
  "description": "Collection of connectors for Wagmi",
4
- "version": "8.0.2",
4
+ "version": "8.0.4",
5
5
  "license": "MIT",
6
6
  "repository": {
7
7
  "type": "git",
@@ -34,11 +34,11 @@
34
34
  "@safe-global/safe-apps-provider": "~0.18.6",
35
35
  "@safe-global/safe-apps-sdk": "^9.1.0",
36
36
  "@walletconnect/ethereum-provider": "^2.21.1",
37
- "accounts": "0.6.7",
37
+ "accounts": "~0.6.7",
38
38
  "porto": "~0.2.35",
39
39
  "typescript": ">=5.7.3",
40
40
  "viem": "2.x",
41
- "@wagmi/core": "3.4.3"
41
+ "@wagmi/core": "3.4.5"
42
42
  },
43
43
  "peerDependenciesMeta": {
44
44
  "@base-org/account": {
package/src/porto.ts CHANGED
@@ -20,6 +20,10 @@ export type PortoParameters = ExactPartial<Porto.Config>
20
20
 
21
21
  export function porto(parameters: PortoParameters = {}) {
22
22
  type Provider = ReturnType<typeof Porto.create>['provider']
23
+ type ProviderWithEvents = Provider & {
24
+ on: NonNullable<Provider['on']>
25
+ removeListener: NonNullable<Provider['removeListener']>
26
+ }
23
27
  type Properties = {
24
28
  connect<withCapabilities extends boolean = false>(parameters?: {
25
29
  chainId?: number | undefined
@@ -43,6 +47,10 @@ export function porto(parameters: PortoParameters = {}) {
43
47
  onConnect(connectInfo: ProviderConnectInfo): void
44
48
  }
45
49
 
50
+ const supportsEvents = (provider: Provider): provider is ProviderWithEvents =>
51
+ typeof provider.on === 'function' &&
52
+ typeof provider.removeListener === 'function'
53
+
46
54
  return createConnector<Provider, Properties>((wagmiConfig) => {
47
55
  const chains = wagmiConfig.chains ?? parameters.chains ?? []
48
56
 
@@ -133,23 +141,25 @@ export function porto(parameters: PortoParameters = {}) {
133
141
 
134
142
  // Manage EIP-1193 event listeners
135
143
  // https://eips.ethereum.org/EIPS/eip-1193#events
136
- if (connect) {
137
- provider.removeListener('connect', connect)
138
- connect = undefined
139
- }
140
- if (!accountsChanged) {
141
- accountsChanged = this.onAccountsChanged.bind(this)
142
- // Porto Provider uses Ox, which uses `readonly Address.Address[]` for `accountsChanged`,
143
- // while Connector `accountsChanged` is `string[]`
144
- provider.on('accountsChanged', accountsChanged as never)
145
- }
146
- if (!chainChanged) {
147
- chainChanged = this.onChainChanged.bind(this)
148
- provider.on('chainChanged', chainChanged)
149
- }
150
- if (!disconnect) {
151
- disconnect = this.onDisconnect.bind(this)
152
- provider.on('disconnect', disconnect)
144
+ if (supportsEvents(provider)) {
145
+ if (connect) {
146
+ provider.removeListener('connect', connect)
147
+ connect = undefined
148
+ }
149
+ if (!accountsChanged) {
150
+ accountsChanged = this.onAccountsChanged.bind(this)
151
+ // Porto Provider uses Ox, which uses `readonly Address.Address[]` for `accountsChanged`,
152
+ // while Connector `accountsChanged` is `string[]`
153
+ provider.on('accountsChanged', accountsChanged as never)
154
+ }
155
+ if (!chainChanged) {
156
+ chainChanged = this.onChainChanged.bind(this)
157
+ provider.on('chainChanged', chainChanged)
158
+ }
159
+ if (!disconnect) {
160
+ disconnect = this.onDisconnect.bind(this)
161
+ provider.on('disconnect', disconnect)
162
+ }
153
163
  }
154
164
 
155
165
  return {
@@ -172,17 +182,19 @@ export function porto(parameters: PortoParameters = {}) {
172
182
  async disconnect() {
173
183
  const provider = await this.getProvider()
174
184
 
175
- if (chainChanged) {
176
- provider.removeListener('chainChanged', chainChanged)
177
- chainChanged = undefined
178
- }
179
- if (disconnect) {
180
- provider.removeListener('disconnect', disconnect)
181
- disconnect = undefined
182
- }
183
- if (!connect) {
184
- connect = this.onConnect.bind(this)
185
- provider.on('connect', connect)
185
+ if (supportsEvents(provider)) {
186
+ if (chainChanged) {
187
+ provider.removeListener('chainChanged', chainChanged)
188
+ chainChanged = undefined
189
+ }
190
+ if (disconnect) {
191
+ provider.removeListener('disconnect', disconnect)
192
+ disconnect = undefined
193
+ }
194
+ if (!connect) {
195
+ connect = this.onConnect.bind(this)
196
+ provider.on('connect', connect)
197
+ }
186
198
  }
187
199
 
188
200
  await provider.request({ method: 'wallet_disconnect' })
@@ -257,7 +269,7 @@ export function porto(parameters: PortoParameters = {}) {
257
269
 
258
270
  // Manage EIP-1193 event listeners
259
271
  const provider = await this.getProvider()
260
- if (provider) {
272
+ if (supportsEvents(provider)) {
261
273
  if (connect) {
262
274
  provider.removeListener('connect', connect)
263
275
  connect = undefined
@@ -284,7 +296,7 @@ export function porto(parameters: PortoParameters = {}) {
284
296
  wagmiConfig.emitter.emit('disconnect')
285
297
 
286
298
  // Manage EIP-1193 event listeners
287
- if (provider) {
299
+ if (supportsEvents(provider)) {
288
300
  if (chainChanged) {
289
301
  provider.removeListener('chainChanged', chainChanged)
290
302
  chainChanged = undefined
@@ -302,6 +314,7 @@ export function porto(parameters: PortoParameters = {}) {
302
314
  async setup() {
303
315
  if (!connect) {
304
316
  const provider = await this.getProvider()
317
+ if (!supportsEvents(provider)) return
305
318
  connect = this.onConnect.bind(this)
306
319
  provider.on('connect', connect)
307
320
  }
package/src/version.ts CHANGED
@@ -1 +1 @@
1
- export const version = '8.0.2'
1
+ export const version = '8.0.4'