@broxus/evm-connect 1.12.4 → 1.12.6

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.
@@ -72,13 +72,13 @@ exports.EvmWalletProvidersProvider = (0, mobx_react_lite_1.observer)(({ agreemen
72
72
  disconnected: false,
73
73
  providerId: providerConfig.id,
74
74
  type: providerConfig.connector.type,
75
- });
75
+ }, recentMetaStorageKey);
76
76
  walletService.setState('providerId', providerConfig.id);
77
77
  }
78
78
  catch (e) {
79
79
  setError(e);
80
80
  }
81
- }, [network, onConnect, recentMeta, setRecentMeta, walletService]);
81
+ }, [network, onConnect, recentMeta, recentMetaStorageKey, setRecentMeta, walletService]);
82
82
  const reset = React.useCallback(() => {
83
83
  setError(null);
84
84
  setConnectingProvider(null);
@@ -57,10 +57,10 @@ function EvmWalletServiceProvider({ agreementsNote, children, params, recentMeta
57
57
  }, [params, wallet]);
58
58
  React.useEffect(() => (0, mobx_1.reaction)(() => context.chainId, chainId => {
59
59
  if (chainId) {
60
- const recentMeta = (0, hooks_1.getRecentConnectionMeta)();
60
+ const recentMeta = (0, hooks_1.getRecentConnectionMeta)(recentMetaStorageKey);
61
61
  setRecentMeta({ ...recentMeta, chainId: chainId.toString() });
62
62
  }
63
- }, { delay: 10, fireImmediately: context.isReady }), [context, setRecentMeta]);
63
+ }, { delay: 10, fireImmediately: context.isReady }), [context, recentMetaStorageKey, setRecentMeta]);
64
64
  return (React.createElement(exports.EvmWalletServiceContext.Provider, { value: context },
65
65
  React.createElement(EvmWalletProvidersContext_1.EvmWalletProvidersProvider, { agreementsNote: agreementsNote, recentMetaStorageKey: recentMetaStorageKey }, children)));
66
66
  }
@@ -39,6 +39,7 @@ exports.useRecentConnectionMeta = useRecentConnectionMeta;
39
39
  const js_utils_1 = require("@broxus/js-utils");
40
40
  const React = __importStar(require("react"));
41
41
  const constants_1 = require("../constants");
42
+ const context_1 = require("../context");
42
43
  const types_1 = require("../types");
43
44
  function isRecentConnectionMeta(value) {
44
45
  const meta = { providerId: value.providerId, type: value.type };
@@ -66,11 +67,12 @@ function getRecentConnectionMeta(storageKey = constants_1.EVM_RECENT_CONNECTION)
66
67
  catch (e) {
67
68
  (0, js_utils_1.debug)(e);
68
69
  }
69
- storeRecentConnectionMeta(undefined);
70
+ storeRecentConnectionMeta(undefined, storageKey);
70
71
  return undefined;
71
72
  }
72
73
  function useRecentConnectionMeta(storageKey = constants_1.EVM_RECENT_CONNECTION) {
73
- const [meta, setMeta] = React.useState(getRecentConnectionMeta(storageKey));
74
+ const walletProviders = (0, context_1.useEvmWalletProviders)();
75
+ const [meta, setMeta] = React.useState(getRecentConnectionMeta(walletProviders.recentMetaStorageKey || storageKey));
74
76
  React.useEffect(() => {
75
77
  const onStorage = (event) => {
76
78
  if (event.key === storageKey && event.newValue) {
@@ -35,13 +35,13 @@ export const EvmWalletProvidersProvider = observer(({ agreementsNote, children,
35
35
  disconnected: false,
36
36
  providerId: providerConfig.id,
37
37
  type: providerConfig.connector.type,
38
- });
38
+ }, recentMetaStorageKey);
39
39
  walletService.setState('providerId', providerConfig.id);
40
40
  }
41
41
  catch (e) {
42
42
  setError(e);
43
43
  }
44
- }, [network, onConnect, recentMeta, setRecentMeta, walletService]);
44
+ }, [network, onConnect, recentMeta, recentMetaStorageKey, setRecentMeta, walletService]);
45
45
  const reset = React.useCallback(() => {
46
46
  setError(null);
47
47
  setConnectingProvider(null);
@@ -19,10 +19,10 @@ export function EvmWalletServiceProvider({ agreementsNote, children, params, rec
19
19
  }, [params, wallet]);
20
20
  React.useEffect(() => reaction(() => context.chainId, chainId => {
21
21
  if (chainId) {
22
- const recentMeta = getRecentConnectionMeta();
22
+ const recentMeta = getRecentConnectionMeta(recentMetaStorageKey);
23
23
  setRecentMeta({ ...recentMeta, chainId: chainId.toString() });
24
24
  }
25
- }, { delay: 10, fireImmediately: context.isReady }), [context, setRecentMeta]);
25
+ }, { delay: 10, fireImmediately: context.isReady }), [context, recentMetaStorageKey, setRecentMeta]);
26
26
  return (React.createElement(EvmWalletServiceContext.Provider, { value: context },
27
27
  React.createElement(EvmWalletProvidersProvider, { agreementsNote: agreementsNote, recentMetaStorageKey: recentMetaStorageKey }, children)));
28
28
  }
@@ -9,7 +9,7 @@ export declare function storeRecentConnectionMeta(meta: RecentConnectionMeta | u
9
9
  export declare function getRecentConnectionMeta(storageKey?: string): RecentConnectionMeta | undefined;
10
10
  type UseRecentConnectionMeta = [
11
11
  value: RecentConnectionMeta | undefined,
12
- setValue: (meta: RecentConnectionMeta | undefined) => void
12
+ setValue: (meta: RecentConnectionMeta | undefined, storageKey?: string) => void
13
13
  ];
14
14
  export declare function useRecentConnectionMeta(storageKey?: string): UseRecentConnectionMeta;
15
15
  export {};
@@ -1,6 +1,7 @@
1
1
  import { debug, isBrowser, storage } from '@broxus/js-utils';
2
2
  import * as React from 'react';
3
3
  import { EVM_RECENT_CONNECTION } from '../constants';
4
+ import { useEvmWalletProviders } from '../context';
4
5
  import { EthereumConnectionType } from '../types';
5
6
  function isRecentConnectionMeta(value) {
6
7
  const meta = { providerId: value.providerId, type: value.type };
@@ -28,11 +29,12 @@ export function getRecentConnectionMeta(storageKey = EVM_RECENT_CONNECTION) {
28
29
  catch (e) {
29
30
  debug(e);
30
31
  }
31
- storeRecentConnectionMeta(undefined);
32
+ storeRecentConnectionMeta(undefined, storageKey);
32
33
  return undefined;
33
34
  }
34
35
  export function useRecentConnectionMeta(storageKey = EVM_RECENT_CONNECTION) {
35
- const [meta, setMeta] = React.useState(getRecentConnectionMeta(storageKey));
36
+ const walletProviders = useEvmWalletProviders();
37
+ const [meta, setMeta] = React.useState(getRecentConnectionMeta(walletProviders.recentMetaStorageKey || storageKey));
36
38
  React.useEffect(() => {
37
39
  const onStorage = (event) => {
38
40
  if (event.key === storageKey && event.newValue) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@broxus/evm-connect",
3
- "version": "1.12.4",
3
+ "version": "1.12.6",
4
4
  "description": "Ethereum wallets connector.",
5
5
  "license": "MIT",
6
6
  "keywords": [
@@ -96,5 +96,5 @@
96
96
  "web3-types": "^1.x",
97
97
  "web3-utils": "^4.x"
98
98
  },
99
- "gitHead": "01dc5062b4a2ebf8f2a8204b620004f7decd2b05"
99
+ "gitHead": "1f2acedddb3842763108c15d003adea77bf8787a"
100
100
  }