wagmi 2.5.13 → 2.5.16

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.
@@ -2,15 +2,15 @@
2
2
  import { useQueryClient } from '@tanstack/react-query';
3
3
  import {} from '@wagmi/core/internal';
4
4
  import { getConnectorClientQueryOptions, } from '@wagmi/core/query';
5
- import { useEffect } from 'react';
5
+ import { useEffect, useRef } from 'react';
6
6
  import { useQuery, } from '../utils/query.js';
7
7
  import { useAccount } from './useAccount.js';
8
8
  import { useChainId } from './useChainId.js';
9
9
  import { useConfig } from './useConfig.js';
10
10
  /** https://wagmi.sh/react/api/hooks/useConnectorClient */
11
11
  export function useConnectorClient(parameters = {}) {
12
- const { query = {} } = parameters;
13
- const config = useConfig(parameters);
12
+ const { query = {}, ...rest } = parameters;
13
+ const config = useConfig(rest);
14
14
  const queryClient = useQueryClient();
15
15
  const { address, connector, status } = useAccount();
16
16
  const chainId = useChainId();
@@ -20,13 +20,20 @@ export function useConnectorClient(parameters = {}) {
20
20
  connector: parameters.connector ?? connector,
21
21
  });
22
22
  const enabled = Boolean(status !== 'disconnected' && (query.enabled ?? true));
23
+ const addressRef = useRef(address);
23
24
  // biome-ignore lint/nursery/useExhaustiveDependencies: `queryKey` not required
24
25
  useEffect(() => {
25
- // invalidate when address changes
26
- if (address)
26
+ const previousAddress = addressRef.current;
27
+ if (!address && previousAddress) {
28
+ // remove when account is disconnected
29
+ queryClient.removeQueries({ queryKey });
30
+ addressRef.current = undefined;
31
+ }
32
+ else if (address !== previousAddress) {
33
+ // invalidate when address changes
27
34
  queryClient.invalidateQueries({ queryKey });
28
- else
29
- queryClient.removeQueries({ queryKey }); // remove when account is disconnected
35
+ addressRef.current = address;
36
+ }
30
37
  }, [address, queryClient]);
31
38
  return useQuery({
32
39
  ...query,
@@ -1 +1 @@
1
- {"version":3,"file":"useConnectorClient.js","sourceRoot":"","sources":["../../../src/hooks/useConnectorClient.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAMtD,OAAO,EAA4B,MAAM,sBAAsB,CAAA;AAC/D,OAAO,EAKL,8BAA8B,GAC/B,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAGjC,OAAO,EAGL,QAAQ,GACT,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AA+B1C,0DAA0D;AAC1D,MAAM,UAAU,kBAAkB,CAKhC,aAAwE,EAAE;IAE1E,MAAM,EAAE,KAAK,GAAG,EAAE,EAAE,GAAG,UAAU,CAAA;IAEjC,MAAM,MAAM,GAAG,SAAS,CAAC,UAAU,CAAC,CAAA;IACpC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAA;IACpC,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,UAAU,EAAE,CAAA;IACnD,MAAM,OAAO,GAAG,UAAU,EAAE,CAAA;IAE5B,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,EAAE,GAAG,8BAA8B,CAG7D,MAAM,EAAE;QACR,GAAG,UAAU;QACb,OAAO,EAAE,UAAU,CAAC,OAAO,IAAI,OAAO;QACtC,SAAS,EAAE,UAAU,CAAC,SAAS,IAAI,SAAS;KAC7C,CAAC,CAAA;IACF,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,KAAK,cAAc,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,CAAC,CAAA;IAE7E,+EAA+E;IAC/E,SAAS,CAAC,GAAG,EAAE;QACb,kCAAkC;QAClC,IAAI,OAAO;YAAE,WAAW,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAA;;YACnD,WAAW,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAA,CAAC,sCAAsC;IACrF,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAA;IAE1B,OAAO,QAAQ,CAAC;QACd,GAAG,KAAK;QACR,GAAG,OAAO;QACV,QAAQ;QACR,OAAO;QACP,SAAS,EAAE,QAAQ;KACpB,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"useConnectorClient.js","sourceRoot":"","sources":["../../../src/hooks/useConnectorClient.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAMtD,OAAO,EAA4B,MAAM,sBAAsB,CAAA;AAC/D,OAAO,EAKL,8BAA8B,GAC/B,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AAGzC,OAAO,EAGL,QAAQ,GACT,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AA+B1C,0DAA0D;AAC1D,MAAM,UAAU,kBAAkB,CAKhC,aAAwE,EAAE;IAE1E,MAAM,EAAE,KAAK,GAAG,EAAE,EAAE,GAAG,IAAI,EAAE,GAAG,UAAU,CAAA;IAE1C,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;IAC9B,MAAM,WAAW,GAAG,cAAc,EAAE,CAAA;IACpC,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,UAAU,EAAE,CAAA;IACnD,MAAM,OAAO,GAAG,UAAU,EAAE,CAAA;IAE5B,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,EAAE,GAAG,8BAA8B,CAG7D,MAAM,EAAE;QACR,GAAG,UAAU;QACb,OAAO,EAAE,UAAU,CAAC,OAAO,IAAI,OAAO;QACtC,SAAS,EAAE,UAAU,CAAC,SAAS,IAAI,SAAS;KAC7C,CAAC,CAAA;IACF,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,KAAK,cAAc,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,CAAC,CAAA;IAE7E,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,CAAA;IAClC,+EAA+E;IAC/E,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,eAAe,GAAG,UAAU,CAAC,OAAO,CAAA;QAC1C,IAAI,CAAC,OAAO,IAAI,eAAe,EAAE,CAAC;YAChC,sCAAsC;YACtC,WAAW,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAA;YACvC,UAAU,CAAC,OAAO,GAAG,SAAS,CAAA;QAChC,CAAC;aAAM,IAAI,OAAO,KAAK,eAAe,EAAE,CAAC;YACvC,kCAAkC;YAClC,WAAW,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAA;YAC3C,UAAU,CAAC,OAAO,GAAG,OAAO,CAAA;QAC9B,CAAC;IACH,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAA;IAE1B,OAAO,QAAQ,CAAC;QACd,GAAG,KAAK;QACR,GAAG,OAAO;QACV,QAAQ;QACR,OAAO;QACP,SAAS,EAAE,QAAQ;KACpB,CAAC,CAAA;AACJ,CAAC"}
@@ -4,7 +4,7 @@
4
4
  import { useQueryClient } from '@tanstack/react-query';
5
5
  import {} from '@wagmi/core/internal';
6
6
  import { getWalletClientQueryOptions, } from '@wagmi/core/query';
7
- import { useEffect } from 'react';
7
+ import { useEffect, useRef } from 'react';
8
8
  import { useQuery, } from '../utils/query.js';
9
9
  import { useAccount } from './useAccount.js';
10
10
  import { useChainId } from './useChainId.js';
@@ -22,13 +22,20 @@ export function useWalletClient(parameters = {}) {
22
22
  connector: parameters.connector ?? connector,
23
23
  });
24
24
  const enabled = Boolean(status !== 'disconnected' && (query.enabled ?? true));
25
+ const addressRef = useRef(address);
25
26
  // biome-ignore lint/nursery/useExhaustiveDependencies: `queryKey` not required
26
27
  useEffect(() => {
27
- // invalidate when address changes
28
- if (address)
28
+ const previousAddress = addressRef.current;
29
+ if (!address && previousAddress) {
30
+ // remove when account is disconnected
31
+ queryClient.removeQueries({ queryKey });
32
+ addressRef.current = undefined;
33
+ }
34
+ else if (address !== previousAddress) {
35
+ // invalidate when address changes
29
36
  queryClient.invalidateQueries({ queryKey });
30
- else
31
- queryClient.removeQueries({ queryKey }); // remove when account is disconnected
37
+ addressRef.current = address;
38
+ }
32
39
  }, [address, queryClient]);
33
40
  return useQuery({
34
41
  ...query,
@@ -1 +1 @@
1
- {"version":3,"file":"useWalletClient.js","sourceRoot":"","sources":["../../../src/hooks/useWalletClient.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,mFAAmF;AACnF,+BAA+B;AAE/B,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAMtD,OAAO,EAA4B,MAAM,sBAAsB,CAAA;AAC/D,OAAO,EAKL,2BAA2B,GAC5B,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAGjC,OAAO,EAGL,QAAQ,GACT,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AA+B1C,uDAAuD;AACvD,MAAM,UAAU,eAAe,CAK7B,aAAqE,EAAE;IAEvE,MAAM,EAAE,KAAK,GAAG,EAAE,EAAE,GAAG,IAAI,EAAE,GAAG,UAAU,CAAA;IAE1C,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;IAC9B,MAAM,WAAW,GAAG,cAAc,EAAE,CAAA;IACpC,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,UAAU,EAAE,CAAA;IACnD,MAAM,OAAO,GAAG,UAAU,EAAE,CAAA;IAE5B,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,EAAE,GAAG,2BAA2B,CAC1D,MAAM,EACN;QACE,GAAG,UAAU;QACb,OAAO,EAAE,UAAU,CAAC,OAAO,IAAI,OAAO;QACtC,SAAS,EAAE,UAAU,CAAC,SAAS,IAAI,SAAS;KAC7C,CACF,CAAA;IACD,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,KAAK,cAAc,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,CAAC,CAAA;IAE7E,+EAA+E;IAC/E,SAAS,CAAC,GAAG,EAAE;QACb,kCAAkC;QAClC,IAAI,OAAO;YAAE,WAAW,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAA;;YACnD,WAAW,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAA,CAAC,sCAAsC;IACrF,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAA;IAE1B,OAAO,QAAQ,CAAC;QACd,GAAG,KAAK;QACR,GAAG,OAAO;QACV,QAAQ;QACR,OAAO;QACP,SAAS,EAAE,QAAQ;KACb,CAA2D,CAAA;AACrE,CAAC"}
1
+ {"version":3,"file":"useWalletClient.js","sourceRoot":"","sources":["../../../src/hooks/useWalletClient.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,mFAAmF;AACnF,+BAA+B;AAE/B,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAMtD,OAAO,EAA4B,MAAM,sBAAsB,CAAA;AAC/D,OAAO,EAKL,2BAA2B,GAC5B,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AAGzC,OAAO,EAGL,QAAQ,GACT,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AA+B1C,uDAAuD;AACvD,MAAM,UAAU,eAAe,CAK7B,aAAqE,EAAE;IAEvE,MAAM,EAAE,KAAK,GAAG,EAAE,EAAE,GAAG,IAAI,EAAE,GAAG,UAAU,CAAA;IAE1C,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;IAC9B,MAAM,WAAW,GAAG,cAAc,EAAE,CAAA;IACpC,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,UAAU,EAAE,CAAA;IACnD,MAAM,OAAO,GAAG,UAAU,EAAE,CAAA;IAE5B,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,EAAE,GAAG,2BAA2B,CAC1D,MAAM,EACN;QACE,GAAG,UAAU;QACb,OAAO,EAAE,UAAU,CAAC,OAAO,IAAI,OAAO;QACtC,SAAS,EAAE,UAAU,CAAC,SAAS,IAAI,SAAS;KAC7C,CACF,CAAA;IACD,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,KAAK,cAAc,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,CAAC,CAAA;IAE7E,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,CAAA;IAClC,+EAA+E;IAC/E,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,eAAe,GAAG,UAAU,CAAC,OAAO,CAAA;QAC1C,IAAI,CAAC,OAAO,IAAI,eAAe,EAAE,CAAC;YAChC,sCAAsC;YACtC,WAAW,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAA;YACvC,UAAU,CAAC,OAAO,GAAG,SAAS,CAAA;QAChC,CAAC;aAAM,IAAI,OAAO,KAAK,eAAe,EAAE,CAAC;YACvC,kCAAkC;YAClC,WAAW,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAA;YAC3C,UAAU,CAAC,OAAO,GAAG,OAAO,CAAA;QAC9B,CAAC;IACH,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAA;IAE1B,OAAO,QAAQ,CAAC;QACd,GAAG,KAAK;QACR,GAAG,OAAO;QACV,QAAQ;QACR,OAAO;QACP,SAAS,EAAE,QAAQ;KACb,CAA2D,CAAA;AACrE,CAAC"}