@wagmi/core 2.11.1 → 2.11.3

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 = '2.11.1';
1
+ export const version = '2.11.3';
2
2
  //# sourceMappingURL=version.js.map
@@ -2,16 +2,16 @@ import { type AddEthereumChainParameter, type EIP1193Provider, type ProviderConn
2
2
  import type { Evaluate } from '../types/utils.js';
3
3
  export type InjectedParameters = {
4
4
  /**
5
- * MetaMask and other injected providers do not support programmatic disconnect.
6
- * This flag simulates the disconnect behavior by keeping track of connection status in storage. See [GitHub issue](https://github.com/MetaMask/metamask-extension/issues/10353) for more info.
5
+ * Some injected providers do not support programmatic disconnect.
6
+ * This flag simulates the disconnect behavior by keeping track of connection status in storage.
7
7
  * @default true
8
8
  */
9
9
  shimDisconnect?: boolean | undefined;
10
- unstable_shimAsyncInject?: boolean | number | undefined;
11
10
  /**
12
11
  * [EIP-1193](https://eips.ethereum.org/EIPS/eip-1193) Ethereum Provider to target
13
12
  */
14
13
  target?: TargetId | Target | (() => Target | undefined) | undefined;
14
+ unstable_shimAsyncInject?: boolean | number | undefined;
15
15
  };
16
16
  export declare function injected(parameters?: InjectedParameters): import("./createConnector.js").CreateConnectorFn<{
17
17
  on: <TEvent extends keyof import("viem").EIP1193EventMap>(event: TEvent, listener: import("viem").EIP1193EventMap[TEvent]) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"injected.d.ts","sourceRoot":"","sources":["../../../src/connectors/injected.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"injected.d.ts","sourceRoot":"","sources":["../../../src/connectors/injected.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,7 @@ export declare function readContractQueryOptions<config extends Config, const ab
12
12
  pageParam?: unknown;
13
13
  direction?: "forward" | "backward" | undefined;
14
14
  }) => Promise<import("viem").ContractFunctionReturnType<abi, "pure" | "view", functionName, args>>;
15
- readonly queryKey: readonly ["readContract", Omit<ReadContractOptions<abi, functionName, args, config>, "abi">];
15
+ readonly queryKey: any;
16
16
  };
17
17
  export type ReadContractQueryFnData<abi extends Abi | readonly unknown[], functionName extends ContractFunctionName<abi, 'pure' | 'view'>, args extends ContractFunctionArgs<abi, 'pure' | 'view', functionName>> = ReadContractReturnType<abi, functionName, args>;
18
18
  export type ReadContractData<abi extends Abi | readonly unknown[], functionName extends ContractFunctionName<abi, 'pure' | 'view'>, args extends ContractFunctionArgs<abi, 'pure' | 'view', functionName>> = ReadContractQueryFnData<abi, functionName, args>;
@@ -1,2 +1,2 @@
1
- export declare const version = "2.11.1";
1
+ export declare const version = "2.11.3";
2
2
  //# sourceMappingURL=version.d.ts.map
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@wagmi/core",
3
3
  "description": "VanillaJS library for Ethereum",
4
- "version": "2.11.1",
4
+ "version": "2.11.3",
5
5
  "license": "MIT",
6
6
  "repository": {
7
7
  "type": "git",
@@ -22,16 +22,16 @@ import { createConnector } from './createConnector.js'
22
22
 
23
23
  export type InjectedParameters = {
24
24
  /**
25
- * MetaMask and other injected providers do not support programmatic disconnect.
26
- * This flag simulates the disconnect behavior by keeping track of connection status in storage. See [GitHub issue](https://github.com/MetaMask/metamask-extension/issues/10353) for more info.
25
+ * Some injected providers do not support programmatic disconnect.
26
+ * This flag simulates the disconnect behavior by keeping track of connection status in storage.
27
27
  * @default true
28
28
  */
29
29
  shimDisconnect?: boolean | undefined
30
- unstable_shimAsyncInject?: boolean | number | undefined
31
30
  /**
32
31
  * [EIP-1193](https://eips.ethereum.org/EIPS/eip-1193) Ethereum Provider to target
33
32
  */
34
33
  target?: TargetId | Target | (() => Target | undefined) | undefined
34
+ unstable_shimAsyncInject?: boolean | number | undefined
35
35
  }
36
36
 
37
37
  // Regex of wallets/providers that can accurately simulate contract calls & display contract revert reasons.
@@ -268,16 +268,22 @@ export function injected(parameters: InjectedParameters = {}) {
268
268
  // Experimental support for MetaMask disconnect
269
269
  // https://github.com/MetaMask/metamask-improvement-proposals/blob/main/MIPs/mip-2.md
270
270
  try {
271
- // TODO: Remove explicit type for viem@3
272
- await provider.request<{
273
- Method: 'wallet_revokePermissions'
274
- Parameters: [permissions: { eth_accounts: Record<string, any> }]
275
- ReturnType: null
276
- }>({
277
- // `'wallet_revokePermissions'` added in `viem@2.10.3`
278
- method: 'wallet_revokePermissions',
279
- params: [{ eth_accounts: {} }],
280
- })
271
+ // Adding timeout as not all wallets support this method and can hang
272
+ // https://github.com/wevm/wagmi/issues/4064
273
+ await withTimeout(
274
+ () =>
275
+ // TODO: Remove explicit type for viem@3
276
+ provider.request<{
277
+ Method: 'wallet_revokePermissions'
278
+ Parameters: [permissions: { eth_accounts: Record<string, any> }]
279
+ ReturnType: null
280
+ }>({
281
+ // `'wallet_revokePermissions'` added in `viem@2.10.3`
282
+ method: 'wallet_revokePermissions',
283
+ params: [{ eth_accounts: {} }],
284
+ }),
285
+ { timeout: 100 },
286
+ )
281
287
  } catch {}
282
288
 
283
289
  // Add shim signalling connector is disconnected
@@ -383,13 +389,9 @@ export function injected(parameters: InjectedParameters = {}) {
383
389
  throw new ProviderNotFoundError()
384
390
  }
385
391
 
386
- // We are applying a retry & timeout strategy here as some injected wallets (e.g. MetaMask) fail to
387
- // immediately resolve a JSON-RPC request on page load.
388
- const accounts = await withRetry(() =>
389
- withTimeout(() => this.getAccounts(), {
390
- timeout: 100,
391
- }),
392
- )
392
+ // Use retry strategy as some injected wallets (e.g. MetaMask) fail to
393
+ // immediately resolve JSON-RPC requests on page load.
394
+ const accounts = await withRetry(() => this.getAccounts())
393
395
  return !!accounts.length
394
396
  } catch {
395
397
  return false
@@ -47,7 +47,7 @@ export function readContractQueryOptions<
47
47
  ...parameters,
48
48
  }) as Promise<ReadContractData<abi, functionName, args>>
49
49
  },
50
- queryKey: readContractQueryKey(options),
50
+ queryKey: readContractQueryKey(options as any) as any,
51
51
  } as const satisfies QueryOptions<
52
52
  ReadContractQueryFnData<abi, functionName, args>,
53
53
  ReadContractErrorType,
package/src/version.ts CHANGED
@@ -1 +1 @@
1
- export const version = '2.11.1'
1
+ export const version = '2.11.3'