@dynamic-labs/sdk-react-core 0.18.0-RC.7 → 0.18.0-RC.8

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.
Files changed (81) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/package.cjs +1 -1
  3. package/package.js +1 -1
  4. package/package.json +8 -8
  5. package/src/index.cjs +2 -0
  6. package/src/index.js +1 -0
  7. package/src/lib/components/NetworkPicker/NetworkPicker.cjs +26 -1
  8. package/src/lib/components/NetworkPicker/NetworkPicker.js +26 -1
  9. package/src/lib/components/NetworkPicker/components/Network/Network.cjs +3 -1
  10. package/src/lib/components/NetworkPicker/components/Network/Network.d.ts +2 -1
  11. package/src/lib/components/NetworkPicker/components/Network/Network.js +3 -1
  12. package/src/lib/components/NetworkPicker/components/NetworkAction/NetworkAction.cjs +6 -1
  13. package/src/lib/components/NetworkPicker/components/NetworkAction/NetworkAction.d.ts +2 -1
  14. package/src/lib/components/NetworkPicker/components/NetworkAction/NetworkAction.js +6 -1
  15. package/src/lib/components/TosAndPp/TosAndPp.cjs +1 -1
  16. package/src/lib/components/TosAndPp/TosAndPp.js +1 -1
  17. package/src/lib/components/Transition/transition.type.d.ts +3 -3
  18. package/src/lib/context/DynamicContext/DynamicContext.cjs +20 -4
  19. package/src/lib/context/DynamicContext/DynamicContext.d.ts +4 -1
  20. package/src/lib/context/DynamicContext/DynamicContext.js +21 -5
  21. package/src/lib/context/ErrorContext/ErrorContext.cjs +6 -0
  22. package/src/lib/context/ErrorContext/ErrorContext.js +6 -0
  23. package/src/lib/shared/utils/hooks/index.d.ts +1 -0
  24. package/src/lib/shared/utils/hooks/useMediaQuery/index.d.ts +1 -0
  25. package/src/lib/shared/utils/hooks/useMediaQuery/useMediaQuery.cjs +31 -0
  26. package/src/lib/shared/utils/hooks/useMediaQuery/useMediaQuery.d.ts +1 -0
  27. package/src/lib/shared/utils/hooks/useMediaQuery/useMediaQuery.js +27 -0
  28. package/src/lib/styles/index.shadow.cjs +1 -1
  29. package/src/lib/styles/index.shadow.js +1 -1
  30. package/src/lib/utils/functions/walletListBuilder/walletListBuilder.cjs +1 -1
  31. package/src/lib/utils/functions/walletListBuilder/walletListBuilder.js +1 -1
  32. package/src/lib/utils/hooks/authenticationHooks/useConnectAndSign/useConnectAndSign.cjs +2 -1
  33. package/src/lib/utils/hooks/authenticationHooks/useConnectAndSign/useConnectAndSign.js +2 -1
  34. package/src/lib/utils/hooks/authenticationHooks/useConnectAndSignSplitSteps/useConnectAndSignSplitSteps.cjs +3 -1
  35. package/src/lib/utils/hooks/authenticationHooks/useConnectAndSignSplitSteps/useConnectAndSignSplitSteps.js +3 -1
  36. package/src/lib/utils/hooks/authenticationHooks/useSignConnectOnlyUser/useSignConnectOnlyUser.cjs +13 -0
  37. package/src/lib/utils/hooks/authenticationHooks/useSignConnectOnlyUser/useSignConnectOnlyUser.js +13 -0
  38. package/src/lib/utils/hooks/index.d.ts +1 -0
  39. package/src/lib/utils/hooks/useColorSchemePreference/useColorSchemePreference.cjs +16 -18
  40. package/src/lib/utils/hooks/useColorSchemePreference/useColorSchemePreference.js +16 -18
  41. package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.cjs +20 -6
  42. package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.d.ts +14 -2
  43. package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.js +20 -6
  44. package/src/lib/utils/hooks/useCountdown/useCountdown.cjs +39 -0
  45. package/src/lib/utils/hooks/useCountdown/useCountdown.d.ts +11 -0
  46. package/src/lib/utils/hooks/useCountdown/useCountdown.js +35 -0
  47. package/src/lib/utils/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.cjs +10 -0
  48. package/src/lib/utils/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js +6 -0
  49. package/src/lib/utils/hooks/useKeyboardEventListener/useKeyboardEventListener.cjs +6 -8
  50. package/src/lib/utils/hooks/useKeyboardEventListener/useKeyboardEventListener.js +7 -9
  51. package/src/lib/utils/hooks/useRpcProviders/useRpcProviders.cjs +6 -28
  52. package/src/lib/utils/hooks/useRpcProviders/useRpcProviders.d.ts +0 -1
  53. package/src/lib/utils/hooks/useRpcProviders/useRpcProviders.js +7 -29
  54. package/src/lib/utils/hooks/useTimeout/useTimeout.cjs +27 -0
  55. package/src/lib/utils/hooks/useTimeout/useTimeout.js +23 -0
  56. package/src/lib/utils/hooks/useTransition/useTransition.cjs +16 -24
  57. package/src/lib/utils/hooks/useTransition/useTransition.d.ts +3 -3
  58. package/src/lib/utils/hooks/useTransition/useTransition.js +17 -25
  59. package/src/lib/utils/hooks/useTransitionEvents/useTransitionEvents.cjs +11 -9
  60. package/src/lib/utils/hooks/useTransitionEvents/useTransitionEvents.js +11 -9
  61. package/src/lib/utils/hooks/useVerifyWallet/useVerifyWallet.cjs +3 -1
  62. package/src/lib/utils/hooks/useVerifyWallet/useVerifyWallet.js +3 -1
  63. package/src/lib/utils/hooks/useWalletEventListeners/useWalletEventListeners.cjs +1 -0
  64. package/src/lib/utils/hooks/useWalletEventListeners/useWalletEventListeners.js +1 -0
  65. package/src/lib/utils/hooks/useWallets/useWallets.cjs +4 -1
  66. package/src/lib/utils/hooks/useWallets/useWallets.d.ts +2 -1
  67. package/src/lib/utils/hooks/useWallets/useWallets.js +4 -1
  68. package/src/lib/views/EmailUpdate/EmailUpdate.cjs +2 -1
  69. package/src/lib/views/EmailUpdate/EmailUpdate.js +2 -1
  70. package/src/lib/views/EmailVerification/EmailVerification.cjs +12 -21
  71. package/src/lib/views/EmailVerification/EmailVerification.js +13 -22
  72. package/src/lib/views/LoginWithEmailView/components/LoginWithEmailForm/LoginWithEmailForm.cjs +2 -1
  73. package/src/lib/views/LoginWithEmailView/components/LoginWithEmailForm/LoginWithEmailForm.js +2 -1
  74. package/src/lib/views/QrCodeView/QRCode.cjs +36 -4
  75. package/src/lib/views/QrCodeView/QRCode.js +37 -5
  76. package/src/lib/views/QrCodeView/QrCodeView.cjs +3 -6
  77. package/src/lib/views/QrCodeView/QrCodeView.js +3 -6
  78. package/src/lib/views/TransactionConfirmationView/helpers/transactionErrorMessage.cjs +15 -0
  79. package/src/lib/views/TransactionConfirmationView/helpers/transactionErrorMessage.js +15 -0
  80. package/src/lib/views/WalletList/data.cjs +2 -1
  81. package/src/lib/views/WalletList/data.js +2 -1
package/CHANGELOG.md CHANGED
@@ -1,4 +1,27 @@
1
1
 
2
+ ## [0.18.0-RC.8](https://github.com/dynamic-labs/DynamicAuth/compare/v0.18.0-RC.7...v0.18.0-RC.8) (2023-06-29)
3
+
4
+
5
+ ### Features
6
+
7
+ * add support for custom walletconnect v1 bridge ([#2487](https://github.com/dynamic-labs/DynamicAuth/issues/2487)) ([5b0ca2e](https://github.com/dynamic-labs/DynamicAuth/commit/5b0ca2e4e8aa241ed13e4f38346c31da8479a6c4))
8
+ * **DYN-2623:** improve error message on sign cancellation for wallets ([#2493](https://github.com/dynamic-labs/DynamicAuth/issues/2493)) ([081c515](https://github.com/dynamic-labs/DynamicAuth/commit/081c515c9d28d6fa4c0eaac388ee421a7b23144b))
9
+
10
+
11
+ ### Bug Fixes
12
+
13
+ * clearing the activeAccount value ([#2469](https://github.com/dynamic-labs/DynamicAuth/issues/2469)) ([ff75bde](https://github.com/dynamic-labs/DynamicAuth/commit/ff75bde938a4178541568b79754f773607b9d87f))
14
+ * don't initialize provider if it's already initialized ([#2490](https://github.com/dynamic-labs/DynamicAuth/issues/2490)) ([878d38f](https://github.com/dynamic-labs/DynamicAuth/commit/878d38f5c8d7d7448c65e58b25cefd9f3518217e))
15
+ * more wcv2 improvements ([#2475](https://github.com/dynamic-labs/DynamicAuth/issues/2475)) ([13baa84](https://github.com/dynamic-labs/DynamicAuth/commit/13baa84218d6259d02df7d8c387b40dc3cb11ce5)), closes [#2469](https://github.com/dynamic-labs/DynamicAuth/issues/2469) [#2470](https://github.com/dynamic-labs/DynamicAuth/issues/2470) [#2471](https://github.com/dynamic-labs/DynamicAuth/issues/2471) [#2477](https://github.com/dynamic-labs/DynamicAuth/issues/2477) [#2479](https://github.com/dynamic-labs/DynamicAuth/issues/2479) [#2471](https://github.com/dynamic-labs/DynamicAuth/issues/2471) [#2476](https://github.com/dynamic-labs/DynamicAuth/issues/2476)
16
+ * multiple improvements for WC2 ([#2458](https://github.com/dynamic-labs/DynamicAuth/issues/2458)) ([0813af2](https://github.com/dynamic-labs/DynamicAuth/commit/0813af2aafa8019868117084efe8ae147ac24581))
17
+ * revert changes since latest wcv2 improvements ([#2473](https://github.com/dynamic-labs/DynamicAuth/issues/2473)) ([3375371](https://github.com/dynamic-labs/DynamicAuth/commit/337537101a13d67b860748b62f172eba01d0b461)), closes [#2471](https://github.com/dynamic-labs/DynamicAuth/issues/2471) [#2470](https://github.com/dynamic-labs/DynamicAuth/issues/2470) [#2469](https://github.com/dynamic-labs/DynamicAuth/issues/2469)
18
+ * sync issue within connect-only mode ([#2496](https://github.com/dynamic-labs/DynamicAuth/issues/2496)) ([44af274](https://github.com/dynamic-labs/DynamicAuth/commit/44af274618c30fe65ec95739cd16a8ddde08e34e))
19
+ * typo in terms of service ([#2401](https://github.com/dynamic-labs/DynamicAuth/issues/2401)) ([5b195e5](https://github.com/dynamic-labs/DynamicAuth/commit/5b195e54479d9a88bd017fc45f2f2455d1caedc4))
20
+ * **wc_v1_bridget:** disable WC v2 when WC v1 bridge is set ([#2505](https://github.com/dynamic-labs/DynamicAuth/issues/2505)) ([b3f0a68](https://github.com/dynamic-labs/DynamicAuth/commit/b3f0a6895095bb37c635984fc970b52446e04f56))
21
+ * wc2 android improvements ([#2488](https://github.com/dynamic-labs/DynamicAuth/issues/2488)) ([f60ef9c](https://github.com/dynamic-labs/DynamicAuth/commit/f60ef9c1dd672f78199eee40edbe2707c043e1b5))
22
+ * **wcv2:** make sure to clear active account when ending session ([#2471](https://github.com/dynamic-labs/DynamicAuth/issues/2471)) ([b766df3](https://github.com/dynamic-labs/DynamicAuth/commit/b766df39a7e4dabc54fda9131b7bd9b53895cf2f))
23
+ * **wcv2:** use native or universal link when signing message ([#2502](https://github.com/dynamic-labs/DynamicAuth/issues/2502)) ([6e3e3fb](https://github.com/dynamic-labs/DynamicAuth/commit/6e3e3fbb58fb9e3eb314e6631ac2123237f41e8c))
24
+
2
25
  ## [0.18.0-RC.7](https://github.com/dynamic-labs/DynamicAuth/compare/v0.18.0-RC.6...v0.18.0-RC.7) (2023-06-23)
3
26
 
4
27
 
package/package.cjs CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var version = "0.18.0-RC.7";
5
+ var version = "0.18.0-RC.8";
6
6
  var dependencies = {
7
7
  "react-focus-lock": "2.9.2",
8
8
  "@dynamic-labs/iconic": "0.1.23",
package/package.js CHANGED
@@ -1,4 +1,4 @@
1
- var version = "0.18.0-RC.7";
1
+ var version = "0.18.0-RC.8";
2
2
  var dependencies = {
3
3
  "react-focus-lock": "2.9.2",
4
4
  "@dynamic-labs/iconic": "0.1.23",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dynamic-labs/sdk-react-core",
3
- "version": "0.18.0-RC.7",
3
+ "version": "0.18.0-RC.8",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/dynamic-labs/DynamicAuth.git",
@@ -16,13 +16,13 @@
16
16
  "formik": "2.2.9",
17
17
  "qrcode": "1.5.1",
18
18
  "ethers": "5.7.2",
19
- "@dynamic-labs/logger": "0.18.0-RC.7",
20
- "@dynamic-labs/multi-wallet": "0.18.0-RC.7",
21
- "@dynamic-labs/rpc-providers": "0.18.0-RC.7",
22
- "@dynamic-labs/types": "0.18.0-RC.7",
23
- "@dynamic-labs/utils": "0.18.0-RC.7",
24
- "@dynamic-labs/wallet-book": "0.18.0-RC.7",
25
- "@dynamic-labs/wallet-connector-core": "0.18.0-RC.7"
19
+ "@dynamic-labs/logger": "0.18.0-RC.8",
20
+ "@dynamic-labs/multi-wallet": "0.18.0-RC.8",
21
+ "@dynamic-labs/rpc-providers": "0.18.0-RC.8",
22
+ "@dynamic-labs/types": "0.18.0-RC.8",
23
+ "@dynamic-labs/utils": "0.18.0-RC.8",
24
+ "@dynamic-labs/wallet-book": "0.18.0-RC.8",
25
+ "@dynamic-labs/wallet-connector-core": "0.18.0-RC.8"
26
26
  },
27
27
  "devDependencies": {
28
28
  "semver": "7.3.8"
package/src/index.cjs CHANGED
@@ -37,6 +37,7 @@ var useLocalStorage = require('./lib/shared/utils/hooks/useLocalStorage/useLocal
37
37
  var index$1 = require('./lib/shared/utils/hooks/useOnClickOutside/index.cjs');
38
38
  var usePreventPageScroll = require('./lib/shared/utils/hooks/usePreventPageScroll/usePreventPageScroll.cjs');
39
39
  var useGlobalLoading = require('./lib/shared/utils/hooks/useGlobalLoading/useGlobalLoading.cjs');
40
+ var useMediaQuery = require('./lib/shared/utils/hooks/useMediaQuery/useMediaQuery.cjs');
40
41
  var localStorage = require('./lib/shared/utils/classes/storage/localStorage.cjs');
41
42
  var PhantomLedgerIcon = require('./lib/shared/assets/wallets/PhantomLedgerIcon/PhantomLedgerIcon.cjs');
42
43
  var stroke = require('./lib/shared/assets/stroke.cjs');
@@ -161,6 +162,7 @@ exports.useLocalStorage = useLocalStorage.useLocalStorage;
161
162
  exports.useOnClickOutside = index$1.useOnClickOutside;
162
163
  exports.usePreventPageScroll = usePreventPageScroll.usePreventPageScroll;
163
164
  exports.useGlobalLoading = useGlobalLoading.useGlobalLoading;
165
+ exports.useMediaQuery = useMediaQuery.useMediaQuery;
164
166
  exports.LocalStorage = localStorage.LocalStorage;
165
167
  exports.PhantomLedgerIcon = PhantomLedgerIcon.PhantomLedgerIcon;
166
168
  exports.ArrowIcon = stroke.ReactComponent;
package/src/index.js CHANGED
@@ -33,6 +33,7 @@ export { useLocalStorage } from './lib/shared/utils/hooks/useLocalStorage/useLoc
33
33
  export { useOnClickOutside } from './lib/shared/utils/hooks/useOnClickOutside/index.js';
34
34
  export { usePreventPageScroll } from './lib/shared/utils/hooks/usePreventPageScroll/usePreventPageScroll.js';
35
35
  export { useGlobalLoading } from './lib/shared/utils/hooks/useGlobalLoading/useGlobalLoading.js';
36
+ export { useMediaQuery } from './lib/shared/utils/hooks/useMediaQuery/useMediaQuery.js';
36
37
  export { LocalStorage } from './lib/shared/utils/classes/storage/localStorage.js';
37
38
  export { PhantomLedgerIcon } from './lib/shared/assets/wallets/PhantomLedgerIcon/PhantomLedgerIcon.js';
38
39
  export { ReactComponent as ArrowIcon } from './lib/shared/assets/stroke.js';
@@ -21,6 +21,29 @@ var useInternalDynamicContext = require('../../context/DynamicContext/useInterna
21
21
  var classNames = require('../../utils/functions/classNames/classNames.cjs');
22
22
  require('@dynamic-labs/multi-wallet');
23
23
  var isNetworkUnsupported = require('../../utils/functions/isNetworkUnsupported/isNetworkUnsupported.cjs');
24
+ require('../../config/ApiEndpoint.cjs');
25
+ require('@dynamic-labs/rpc-providers');
26
+ require('../../context/ErrorContext/ErrorContext.cjs');
27
+ require('../../context/AccessDeniedContext/AccessDeniedContext.cjs');
28
+ require('react-dom');
29
+ require('../ShadowDOM/ShadowDOM.cjs');
30
+ require('../../context/ThemeContext/ThemeContext.cjs');
31
+ require('react-focus-lock');
32
+ require('../Transition/ZoomTransition/ZoomTransition.cjs');
33
+ require('../Transition/SlideInUpTransition/SlideInUpTransition.cjs');
34
+ require('../Transition/OpacityTransition/OpacityTransition.cjs');
35
+ require('../IconButton/IconButton.cjs');
36
+ require('../Alert/Alert.cjs');
37
+ require('../Popper/Popper/Popper.cjs');
38
+ require('../Popper/PopperContext/PopperContext.cjs');
39
+ require('formik');
40
+ require('yup');
41
+ require('../../context/WalletGroupContext/WalletGroupContext.cjs');
42
+ require('../../widgets/DynamicBridgeWidget/views/WalletsView/components/SecondaryWallets/SecondaryWallets.cjs');
43
+ require('../../context/MockContext/MockContext.cjs');
44
+ require('../../context/CaptchaContext/CaptchaContext.cjs');
45
+ var usePromise = require('../../utils/hooks/usePromise/usePromise.cjs');
46
+ require('../../utils/hooks/useUserUpdateRequest/useUserUpdateRequest.cjs');
24
47
  var NetworkControl = require('./components/NetworkControl/NetworkControl.cjs');
25
48
  var ActionList = require('./components/ActionList/ActionList.cjs');
26
49
  var NetworkAction = require('./components/NetworkAction/NetworkAction.cjs');
@@ -29,6 +52,7 @@ const NetworkPicker = ({ activeClassName = '', buttonClassName = '', checkboxCla
29
52
  const pickerRef = React.useRef(null);
30
53
  const [newNetworkId, setNewNetworkId] = React.useState(undefined);
31
54
  const { loadingNetwork, network, setNetwork } = useInternalDynamicContext.useInternalDynamicContext();
55
+ const { data: supportedWalletNetworks } = usePromise.usePromise(() => connector === null || connector === void 0 ? void 0 : connector.getSupportedNetworks(), [network]);
32
56
  const shouldAllowOpenDropdown = isNetworkUnsupported.isNetworkUnsupported(network, evmNetworks) || (evmNetworks === null || evmNetworks === void 0 ? void 0 : evmNetworks.length) > 1;
33
57
  index.useOnClickOutside(pickerRef, () => {
34
58
  if (isNetworkPickerOpen) {
@@ -54,7 +78,8 @@ const NetworkPicker = ({ activeClassName = '', buttonClassName = '', checkboxCla
54
78
  setIsNetworkPickerOpen(false);
55
79
  }
56
80
  });
57
- return (jsxRuntime.jsxs("div", Object.assign({ className: classNames.classNames('non-widget-network-picker', mainClassName), ref: pickerRef }, { children: [jsxRuntime.jsx(NetworkControl.NetworkControl, { evmNetworks: evmNetworks, activeClassName: activeClassName, network: network, loading: loadingNetwork, isOpen: isNetworkPickerOpen, setIsOpen: setIsNetworkPickerOpen, walletConnector: connector, showNetworkName: showNetworkName, buttonClassName: buttonClassName }), shouldAllowOpenDropdown && (jsxRuntime.jsx(ActionList.ActionList, Object.assign({ className: listClassName, title: 'Select network', isOpen: isNetworkPickerOpen, setIsOpen: setIsNetworkPickerOpen }, { children: jsxRuntime.jsx("div", Object.assign({ className: 'network-picker__dropdown' }, { children: evmNetworks.map(({ name, networkId, vanityName, iconUrls }) => (jsxRuntime.jsx(NetworkAction.NetworkAction, { iconUrl: iconUrls === null || iconUrls === void 0 ? void 0 : iconUrls[0], networkId: networkId, networkName: vanityName || name, network: network, onClick: handleNetworkChange, checkboxClassName: checkboxClassName, newNetworkId: newNetworkId }, networkId))) })) })))] })));
81
+ return (jsxRuntime.jsxs("div", Object.assign({ className: classNames.classNames('non-widget-network-picker', mainClassName), ref: pickerRef }, { children: [jsxRuntime.jsx(NetworkControl.NetworkControl, { evmNetworks: evmNetworks, activeClassName: activeClassName, network: network, loading: loadingNetwork, isOpen: isNetworkPickerOpen, setIsOpen: setIsNetworkPickerOpen, walletConnector: connector, showNetworkName: showNetworkName, buttonClassName: buttonClassName }), shouldAllowOpenDropdown && (jsxRuntime.jsx(ActionList.ActionList, Object.assign({ className: listClassName, title: 'Select network', isOpen: isNetworkPickerOpen, setIsOpen: setIsNetworkPickerOpen }, { children: jsxRuntime.jsx("div", Object.assign({ className: 'network-picker__dropdown' }, { children: evmNetworks.map(({ name, networkId, vanityName, iconUrls }) => (jsxRuntime.jsx(NetworkAction.NetworkAction, { iconUrl: iconUrls === null || iconUrls === void 0 ? void 0 : iconUrls[0], networkId: networkId, networkName: vanityName || name, network: network, onClick: handleNetworkChange, checkboxClassName: checkboxClassName, newNetworkId: newNetworkId, notSupported: supportedWalletNetworks &&
82
+ !supportedWalletNetworks.includes(`${networkId}`) }, networkId))) })) })))] })));
58
83
  };
59
84
 
60
85
  exports.NetworkPicker = NetworkPicker;
@@ -17,6 +17,29 @@ import { useInternalDynamicContext } from '../../context/DynamicContext/useInter
17
17
  import { classNames } from '../../utils/functions/classNames/classNames.js';
18
18
  import '@dynamic-labs/multi-wallet';
19
19
  import { isNetworkUnsupported } from '../../utils/functions/isNetworkUnsupported/isNetworkUnsupported.js';
20
+ import '../../config/ApiEndpoint.js';
21
+ import '@dynamic-labs/rpc-providers';
22
+ import '../../context/ErrorContext/ErrorContext.js';
23
+ import '../../context/AccessDeniedContext/AccessDeniedContext.js';
24
+ import 'react-dom';
25
+ import '../ShadowDOM/ShadowDOM.js';
26
+ import '../../context/ThemeContext/ThemeContext.js';
27
+ import 'react-focus-lock';
28
+ import '../Transition/ZoomTransition/ZoomTransition.js';
29
+ import '../Transition/SlideInUpTransition/SlideInUpTransition.js';
30
+ import '../Transition/OpacityTransition/OpacityTransition.js';
31
+ import '../IconButton/IconButton.js';
32
+ import '../Alert/Alert.js';
33
+ import '../Popper/Popper/Popper.js';
34
+ import '../Popper/PopperContext/PopperContext.js';
35
+ import 'formik';
36
+ import 'yup';
37
+ import '../../context/WalletGroupContext/WalletGroupContext.js';
38
+ import '../../widgets/DynamicBridgeWidget/views/WalletsView/components/SecondaryWallets/SecondaryWallets.js';
39
+ import '../../context/MockContext/MockContext.js';
40
+ import '../../context/CaptchaContext/CaptchaContext.js';
41
+ import { usePromise } from '../../utils/hooks/usePromise/usePromise.js';
42
+ import '../../utils/hooks/useUserUpdateRequest/useUserUpdateRequest.js';
20
43
  import { NetworkControl } from './components/NetworkControl/NetworkControl.js';
21
44
  import { ActionList } from './components/ActionList/ActionList.js';
22
45
  import { NetworkAction } from './components/NetworkAction/NetworkAction.js';
@@ -25,6 +48,7 @@ const NetworkPicker = ({ activeClassName = '', buttonClassName = '', checkboxCla
25
48
  const pickerRef = useRef(null);
26
49
  const [newNetworkId, setNewNetworkId] = useState(undefined);
27
50
  const { loadingNetwork, network, setNetwork } = useInternalDynamicContext();
51
+ const { data: supportedWalletNetworks } = usePromise(() => connector === null || connector === void 0 ? void 0 : connector.getSupportedNetworks(), [network]);
28
52
  const shouldAllowOpenDropdown = isNetworkUnsupported(network, evmNetworks) || (evmNetworks === null || evmNetworks === void 0 ? void 0 : evmNetworks.length) > 1;
29
53
  useOnClickOutside(pickerRef, () => {
30
54
  if (isNetworkPickerOpen) {
@@ -50,7 +74,8 @@ const NetworkPicker = ({ activeClassName = '', buttonClassName = '', checkboxCla
50
74
  setIsNetworkPickerOpen(false);
51
75
  }
52
76
  });
53
- return (jsxs("div", Object.assign({ className: classNames('non-widget-network-picker', mainClassName), ref: pickerRef }, { children: [jsx(NetworkControl, { evmNetworks: evmNetworks, activeClassName: activeClassName, network: network, loading: loadingNetwork, isOpen: isNetworkPickerOpen, setIsOpen: setIsNetworkPickerOpen, walletConnector: connector, showNetworkName: showNetworkName, buttonClassName: buttonClassName }), shouldAllowOpenDropdown && (jsx(ActionList, Object.assign({ className: listClassName, title: 'Select network', isOpen: isNetworkPickerOpen, setIsOpen: setIsNetworkPickerOpen }, { children: jsx("div", Object.assign({ className: 'network-picker__dropdown' }, { children: evmNetworks.map(({ name, networkId, vanityName, iconUrls }) => (jsx(NetworkAction, { iconUrl: iconUrls === null || iconUrls === void 0 ? void 0 : iconUrls[0], networkId: networkId, networkName: vanityName || name, network: network, onClick: handleNetworkChange, checkboxClassName: checkboxClassName, newNetworkId: newNetworkId }, networkId))) })) })))] })));
77
+ return (jsxs("div", Object.assign({ className: classNames('non-widget-network-picker', mainClassName), ref: pickerRef }, { children: [jsx(NetworkControl, { evmNetworks: evmNetworks, activeClassName: activeClassName, network: network, loading: loadingNetwork, isOpen: isNetworkPickerOpen, setIsOpen: setIsNetworkPickerOpen, walletConnector: connector, showNetworkName: showNetworkName, buttonClassName: buttonClassName }), shouldAllowOpenDropdown && (jsx(ActionList, Object.assign({ className: listClassName, title: 'Select network', isOpen: isNetworkPickerOpen, setIsOpen: setIsNetworkPickerOpen }, { children: jsx("div", Object.assign({ className: 'network-picker__dropdown' }, { children: evmNetworks.map(({ name, networkId, vanityName, iconUrls }) => (jsx(NetworkAction, { iconUrl: iconUrls === null || iconUrls === void 0 ? void 0 : iconUrls[0], networkId: networkId, networkName: vanityName || name, network: network, onClick: handleNetworkChange, checkboxClassName: checkboxClassName, newNetworkId: newNetworkId, notSupported: supportedWalletNetworks &&
78
+ !supportedWalletNetworks.includes(`${networkId}`) }, networkId))) })) })))] })));
54
79
  };
55
80
 
56
81
  export { NetworkPicker };
@@ -45,7 +45,9 @@ require('../../../Popper/PopperContext/PopperContext.cjs');
45
45
  require('formik');
46
46
  require('yup');
47
47
 
48
- const Network = ({ iconUrl, isActive, networkName, className, checkboxClassName = '', isChanging, }) => (jsxRuntime.jsxs("div", Object.assign({ className: classNames.classNames('network', className) }, { children: [jsxRuntime.jsxs("div", Object.assign({ className: 'network__title-container' }, { children: [iconUrl ? (jsxRuntime.jsx("img", { src: iconUrl, className: 'network__title-icon', alt: `${networkName} icon` })) : (jsxRuntime.jsx(error.ReactComponent, {})), jsxRuntime.jsx(Typography.Typography, Object.assign({ variant: 'button_primary', className: 'network__title-copy', as: 'span', weight: 'medium' }, { children: networkName }))] })), jsxRuntime.jsxs("div", Object.assign({ className: classNames.classNames('network__status-container', {
48
+ const Network = ({ iconUrl, isActive, networkName, className, checkboxClassName = '', isChanging, notSupported = false, }) => (jsxRuntime.jsxs("div", Object.assign({ className: classNames.classNames('network', className, {
49
+ 'network--not-supported': notSupported,
50
+ }) }, { children: [jsxRuntime.jsxs("div", Object.assign({ className: 'network__container' }, { children: [iconUrl ? (jsxRuntime.jsx("img", { src: iconUrl, className: 'network__title-icon', alt: `${networkName} icon` })) : (jsxRuntime.jsx(error.ReactComponent, {})), jsxRuntime.jsxs("div", Object.assign({ className: 'network__title-container' }, { children: [jsxRuntime.jsx(Typography.Typography, Object.assign({ variant: 'button_primary', className: 'network__title-copy', as: 'span', weight: 'medium', color: notSupported ? 'secondary' : 'primary' }, { children: networkName })), notSupported && (jsxRuntime.jsx(Typography.Typography, Object.assign({ variant: 'body_mini', className: 'network__title-copy', as: 'span', weight: 'medium', color: notSupported ? 'secondary' : 'primary', "data-testid": 'network-not-supported' }, { children: "Enable network in your wallet" })))] }))] })), jsxRuntime.jsxs("div", Object.assign({ className: classNames.classNames('network__status-container', {
49
51
  'network__status-container--active': isActive,
50
52
  }, checkboxClassName), "data-testid": 'single-network-checkbox' }, { children: [isActive && jsxRuntime.jsx(check.ReactComponent, { className: 'network__status-icon' }), isChanging && (jsxRuntime.jsx(Spinner.Spinner, { className: 'network__status-spinner-icon', size: 12 }))] }))] })));
51
53
 
@@ -6,6 +6,7 @@ type Props = {
6
6
  isActive: boolean;
7
7
  isChanging: boolean;
8
8
  networkName: string;
9
+ notSupported?: boolean;
9
10
  };
10
- export declare const Network: ({ iconUrl, isActive, networkName, className, checkboxClassName, isChanging, }: Props) => JSX.Element;
11
+ export declare const Network: ({ iconUrl, isActive, networkName, className, checkboxClassName, isChanging, notSupported, }: Props) => JSX.Element;
11
12
  export {};
@@ -41,7 +41,9 @@ import '../../../Popper/PopperContext/PopperContext.js';
41
41
  import 'formik';
42
42
  import 'yup';
43
43
 
44
- const Network = ({ iconUrl, isActive, networkName, className, checkboxClassName = '', isChanging, }) => (jsxs("div", Object.assign({ className: classNames('network', className) }, { children: [jsxs("div", Object.assign({ className: 'network__title-container' }, { children: [iconUrl ? (jsx("img", { src: iconUrl, className: 'network__title-icon', alt: `${networkName} icon` })) : (jsx(SvgError, {})), jsx(Typography, Object.assign({ variant: 'button_primary', className: 'network__title-copy', as: 'span', weight: 'medium' }, { children: networkName }))] })), jsxs("div", Object.assign({ className: classNames('network__status-container', {
44
+ const Network = ({ iconUrl, isActive, networkName, className, checkboxClassName = '', isChanging, notSupported = false, }) => (jsxs("div", Object.assign({ className: classNames('network', className, {
45
+ 'network--not-supported': notSupported,
46
+ }) }, { children: [jsxs("div", Object.assign({ className: 'network__container' }, { children: [iconUrl ? (jsx("img", { src: iconUrl, className: 'network__title-icon', alt: `${networkName} icon` })) : (jsx(SvgError, {})), jsxs("div", Object.assign({ className: 'network__title-container' }, { children: [jsx(Typography, Object.assign({ variant: 'button_primary', className: 'network__title-copy', as: 'span', weight: 'medium', color: notSupported ? 'secondary' : 'primary' }, { children: networkName })), notSupported && (jsx(Typography, Object.assign({ variant: 'body_mini', className: 'network__title-copy', as: 'span', weight: 'medium', color: notSupported ? 'secondary' : 'primary', "data-testid": 'network-not-supported' }, { children: "Enable network in your wallet" })))] }))] })), jsxs("div", Object.assign({ className: classNames('network__status-container', {
45
47
  'network__status-container--active': isActive,
46
48
  }, checkboxClassName), "data-testid": 'single-network-checkbox' }, { children: [isActive && jsx(SvgCheck, { className: 'network__status-icon' }), isChanging && (jsx(Spinner, { className: 'network__status-spinner-icon', size: 12 }))] }))] })));
47
49
 
@@ -3,8 +3,13 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var jsxRuntime = require('react/jsx-runtime');
6
+ var classNames = require('../../../../utils/functions/classNames/classNames.cjs');
6
7
  var Network = require('../Network/Network.cjs');
7
8
 
8
- const NetworkAction = ({ iconUrl, networkId, network, onClick, networkName, checkboxClassName = '', newNetworkId, }) => (jsxRuntime.jsx("div", Object.assign({ className: 'network-action', onClick: () => onClick(networkId), "data-testid": 'network-action' }, { children: jsxRuntime.jsx(Network.Network, { iconUrl: iconUrl, isActive: networkId === network, networkName: networkName, checkboxClassName: checkboxClassName, isChanging: newNetworkId === networkId }) })));
9
+ const NetworkAction = ({ iconUrl, networkId, network, onClick, networkName, checkboxClassName = '', newNetworkId, notSupported, }) => (jsxRuntime.jsx("div", Object.assign({ className: classNames.classNames('network-action', {
10
+ 'network--not-supported': notSupported,
11
+ }), onClick: () => {
12
+ !notSupported && onClick(networkId);
13
+ }, "data-testid": 'network-action' }, { children: jsxRuntime.jsx(Network.Network, { iconUrl: iconUrl, isActive: networkId === network, networkName: networkName, checkboxClassName: checkboxClassName, isChanging: newNetworkId === networkId, notSupported: notSupported }) })));
9
14
 
10
15
  exports.NetworkAction = NetworkAction;
@@ -7,6 +7,7 @@ type Props = {
7
7
  networkName: string;
8
8
  newNetworkId: number | string | undefined;
9
9
  onClick: (networkId: number | string) => Promise<void>;
10
+ notSupported?: boolean;
10
11
  };
11
- export declare const NetworkAction: ({ iconUrl, networkId, network, onClick, networkName, checkboxClassName, newNetworkId, }: Props) => JSX.Element;
12
+ export declare const NetworkAction: ({ iconUrl, networkId, network, onClick, networkName, checkboxClassName, newNetworkId, notSupported, }: Props) => JSX.Element;
12
13
  export {};
@@ -1,6 +1,11 @@
1
1
  import { jsx } from 'react/jsx-runtime';
2
+ import { classNames } from '../../../../utils/functions/classNames/classNames.js';
2
3
  import { Network } from '../Network/Network.js';
3
4
 
4
- const NetworkAction = ({ iconUrl, networkId, network, onClick, networkName, checkboxClassName = '', newNetworkId, }) => (jsx("div", Object.assign({ className: 'network-action', onClick: () => onClick(networkId), "data-testid": 'network-action' }, { children: jsx(Network, { iconUrl: iconUrl, isActive: networkId === network, networkName: networkName, checkboxClassName: checkboxClassName, isChanging: newNetworkId === networkId }) })));
5
+ const NetworkAction = ({ iconUrl, networkId, network, onClick, networkName, checkboxClassName = '', newNetworkId, notSupported, }) => (jsx("div", Object.assign({ className: classNames('network-action', {
6
+ 'network--not-supported': notSupported,
7
+ }), onClick: () => {
8
+ !notSupported && onClick(networkId);
9
+ }, "data-testid": 'network-action' }, { children: jsx(Network, { iconUrl: iconUrl, isActive: networkId === network, networkName: networkName, checkboxClassName: checkboxClassName, isChanging: newNetworkId === networkId, notSupported: notSupported }) })));
5
10
 
6
11
  export { NetworkAction };
@@ -10,7 +10,7 @@ var Typography = require('../Typography/Typography.cjs');
10
10
 
11
11
  const TosAndPp = ({ privacyPolicyUrl, termsOfServiceUrl, }) => {
12
12
  const { user, authMode } = useInternalDynamicContext.useInternalDynamicContext();
13
- return (jsxRuntime.jsxs(Typography.Typography, Object.assign({ variant: 'body_small', weight: 'regular', className: 'tos-and-pp__text' }, { children: ["By ", isConnectOnly.isConnectOnly(user, authMode) ? 'connecting' : 'logging in', ", you agree to", jsxRuntime.jsx("br", {}), "our\u00A0", jsxRuntime.jsx("a", Object.assign({ className: 'tos-and-pp__link', href: termsOfServiceUrl, target: '_blank', rel: 'noreferrer' }, { children: "Terms of Services" })), "\u00A0&\u00A0", jsxRuntime.jsx("a", Object.assign({ className: 'tos-and-pp__link', href: privacyPolicyUrl, target: '_blank', rel: 'noreferrer' }, { children: "Privacy Policy" })), "."] })));
13
+ return (jsxRuntime.jsxs(Typography.Typography, Object.assign({ variant: 'body_small', weight: 'regular', className: 'tos-and-pp__text' }, { children: ["By ", isConnectOnly.isConnectOnly(user, authMode) ? 'connecting' : 'logging in', ", you agree to", jsxRuntime.jsx("br", {}), "our\u00A0", jsxRuntime.jsx("a", Object.assign({ className: 'tos-and-pp__link', href: termsOfServiceUrl, target: '_blank', rel: 'noreferrer' }, { children: "Terms of Service" })), "\u00A0&\u00A0", jsxRuntime.jsx("a", Object.assign({ className: 'tos-and-pp__link', href: privacyPolicyUrl, target: '_blank', rel: 'noreferrer' }, { children: "Privacy Policy" })), "."] })));
14
14
  };
15
15
 
16
16
  exports.TosAndPp = TosAndPp;
@@ -6,7 +6,7 @@ import { Typography } from '../Typography/Typography.js';
6
6
 
7
7
  const TosAndPp = ({ privacyPolicyUrl, termsOfServiceUrl, }) => {
8
8
  const { user, authMode } = useInternalDynamicContext();
9
- return (jsxs(Typography, Object.assign({ variant: 'body_small', weight: 'regular', className: 'tos-and-pp__text' }, { children: ["By ", isConnectOnly(user, authMode) ? 'connecting' : 'logging in', ", you agree to", jsx("br", {}), "our\u00A0", jsx("a", Object.assign({ className: 'tos-and-pp__link', href: termsOfServiceUrl, target: '_blank', rel: 'noreferrer' }, { children: "Terms of Services" })), "\u00A0&\u00A0", jsx("a", Object.assign({ className: 'tos-and-pp__link', href: privacyPolicyUrl, target: '_blank', rel: 'noreferrer' }, { children: "Privacy Policy" })), "."] })));
9
+ return (jsxs(Typography, Object.assign({ variant: 'body_small', weight: 'regular', className: 'tos-and-pp__text' }, { children: ["By ", isConnectOnly(user, authMode) ? 'connecting' : 'logging in', ", you agree to", jsx("br", {}), "our\u00A0", jsx("a", Object.assign({ className: 'tos-and-pp__link', href: termsOfServiceUrl, target: '_blank', rel: 'noreferrer' }, { children: "Terms of Service" })), "\u00A0&\u00A0", jsx("a", Object.assign({ className: 'tos-and-pp__link', href: privacyPolicyUrl, target: '_blank', rel: 'noreferrer' }, { children: "Privacy Policy" })), "."] })));
10
10
  };
11
11
 
12
12
  export { TosAndPp };
@@ -3,10 +3,10 @@ export interface ITransitionOptions {
3
3
  className?: string;
4
4
  duration?: number;
5
5
  inDuration?: number;
6
- inTimeout?: number;
6
+ inDelay?: number;
7
7
  isShown?: boolean;
8
8
  outDuration?: number;
9
- outTimeout?: number;
10
- timeout?: number;
9
+ outDelay?: number;
10
+ delay?: number;
11
11
  }
12
12
  export type TransitionProps = ITransitionOptions & PropsWithChildren;
@@ -90,7 +90,7 @@ var useSetShowAuthFlowWithInit = require('./hooks/useSetShowAuthFlowWithInit/use
90
90
 
91
91
  const EMPTY_INITIAL_USER = undefined;
92
92
  const DynamicContext = React.createContext(undefined);
93
- const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, accessDeniedMessageSecondary, accessDeniedButton, apiBaseUrl, appLogoUrl = 'https://demo.dynamic.xyz/assets/dynamic-logo.svg', appName = 'Dynamic Example', walletsByChain, cssOverrides, defaultNumberOfWalletsToShow = values.DEFAULT_NUMBER_OF_WALLETS_TO_SHOW, flowNetwork, initialAuthenticationMode = 'connect-and-sign', debugError = false, displayTermsOfService = true, newToWeb3WalletChainMap, enableVisitTrackingOnConnectOnly = true, environmentId, localStorageSuffix, eventsCallbacks, evmNetworks, walletsFilter, logLevel = 'WARN', multiWallet: deprecatedMultiWallet, notInTheListImageUrl, onboardingImageUrl, policiesConsentInnerComponent, privacyPolicyUrl, signWithEmailWalletName, socialMediaLinkText, socialMediaIconUrl, socialMediaUrl, termsOfServiceUrl, toolkitEnabled, siweStatement, shadowDOMEnabled = true, walletConnectors: walletConnectorsProp, }, children, theme, }) => {
93
+ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, accessDeniedMessageSecondary, accessDeniedButton, apiBaseUrl, appLogoUrl = 'https://demo.dynamic.xyz/assets/dynamic-logo.svg', appName = 'Dynamic Example', walletsByChain, cssOverrides, defaultNumberOfWalletsToShow = values.DEFAULT_NUMBER_OF_WALLETS_TO_SHOW, flowNetwork, initialAuthenticationMode = 'connect-and-sign', debugError = false, displayTermsOfService = true, newToWeb3WalletChainMap, enableVisitTrackingOnConnectOnly = true, environmentId, localStorageSuffix, eventsCallbacks, evmNetworks, walletsFilter, logLevel = 'WARN', multiWallet: deprecatedMultiWallet, notInTheListImageUrl, onboardingImageUrl, policiesConsentInnerComponent, privacyPolicyUrl, signWithEmailWalletName, socialMediaLinkText, socialMediaIconUrl, socialMediaUrl, termsOfServiceUrl, toolkitEnabled, siweStatement, shadowDOMEnabled = true, walletConnectV1Bridge, walletConnectors: walletConnectorsProp, }, children, theme, }) => {
94
94
  var _a, _b, _c, _d, _e;
95
95
  logger.logger.setLogLevel(logLevel);
96
96
  walletConnectorCore.logger.setLogLevel(logLevel);
@@ -144,12 +144,22 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
144
144
  networkConfigurations: serverNetworkConfigurations,
145
145
  projectSettings,
146
146
  walletBook: walletBook$1,
147
+ walletConnectV1Bridge,
147
148
  walletConnectorsProp,
148
149
  walletUiUtils,
149
150
  });
150
151
  const [authMode, setAuthMode] = useLocalStorage.useLocalStorage(localStorage$1.AUTH_MODE, initialAuthenticationMode);
151
152
  const { clearPrimaryWalletId, primaryWalletId, setPrimaryWalletId } = usePrimaryWalletId.usePrimaryWalletId();
152
- const { connectWallet, removeConnectedWalletsInfo, connectedWalletsInfo, connectedWallet, setConnectedWallet, setConnectedWallets, connectedWallets, connectWalletByAddressAndChain, } = useConnectWallet.useConnectWallet(wallets, authMode, environmentId, enableVisitTrackingOnConnectOnly, primaryWalletId, setPrimaryWalletId);
153
+ const { connectWallet, removeConnectedWalletsInfo, connectedWalletsInfo, connectedWallet, setConnectedWallet, setConnectedWallets, connectedWallets, connectWalletByAddressAndChain, } = useConnectWallet.useConnectWallet({
154
+ authMode,
155
+ clearPrimaryWalletId,
156
+ enableVisitTrackingOnConnectOnly,
157
+ environmentId,
158
+ primaryWalletId,
159
+ setPrimaryWalletId,
160
+ user,
161
+ wallets,
162
+ });
153
163
  const [selectedWalletConnector, setSelectedWalletConnector] = React.useState(null);
154
164
  //selected wallet to perform an action (become primary, unlink, etc)
155
165
  const [selectedWalletWithAction, setSelectedWalletWithAction] = React.useState(null);
@@ -197,6 +207,7 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
197
207
  clearAllWalletConnectSessions();
198
208
  setWalletsToConnectByChain(walletsByChain);
199
209
  setShowBridgeWidget(false);
210
+ localStorage.LocalStorage.removeFromLS(localStorage$1.WALLET_PICKER_SEARCH_KEY);
200
211
  const jwt = getAuthToken.getAuthToken();
201
212
  if (jwt && user) {
202
213
  // do not await this async call - just fire and forget
@@ -261,7 +272,6 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
261
272
  const { walletsForChainsMap } = useFetchWalletsForChainsMap.useFetchWalletsForChainsMap(newToWeb3WalletChainMap);
262
273
  const rpcProviders = useRpcProviders.useRpcProviders({
263
274
  networkConfigurations: serverNetworkConfigurations,
264
- networkId: network,
265
275
  });
266
276
  React.useEffect(() => {
267
277
  helpers.initExpirationTime(handleLogOut);
@@ -295,6 +305,9 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
295
305
  if (!localStorage.LocalStorage.getFromLS(localStorage$1.AUTH_USER)) {
296
306
  localStorage.LocalStorage.removeFromLS(localStorage$1.AUTH_TOKEN);
297
307
  }
308
+ if (localStorage.LocalStorage.getFromLS(localStorage$1.WALLET_PICKER_SEARCH_KEY)) {
309
+ localStorage.LocalStorage.removeFromLS(localStorage$1.WALLET_PICKER_SEARCH_KEY);
310
+ }
298
311
  if (selectedWalletConnector &&
299
312
  (!primaryWallet ||
300
313
  !isSameWalletName.isSameWalletName(primaryWallet.connector.name, selectedWalletConnector.name))) {
@@ -365,6 +378,7 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
365
378
  privacyPolicyUrl,
366
379
  projectSettings,
367
380
  qrcodeUri,
381
+ removeConnectedWalletsInfo,
368
382
  rpcProviders,
369
383
  sdkHasLoaded,
370
384
  secondaryWallets,
@@ -373,6 +387,7 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
373
387
  setAuthMode,
374
388
  setAuthorizationViewDisplayOrder,
375
389
  setCallback,
390
+ setConnectedWallets,
376
391
  setDesktopUri,
377
392
  setIsSingleWalletAccount,
378
393
  setIsVerifying,
@@ -466,6 +481,7 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
466
481
  privacyPolicyUrl,
467
482
  projectSettings,
468
483
  qrcodeUri,
484
+ removeConnectedWalletsInfo,
469
485
  rpcProviders,
470
486
  sdkHasLoaded,
471
487
  selectedWalletConnector,
@@ -480,7 +496,6 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
480
496
  setPrimaryWalletId,
481
497
  setSdkHasLoaded,
482
498
  setShowAuthFlowWithInit,
483
- setShowBridgeAuthFlow,
484
499
  setShowQrcodeModal,
485
500
  setUser,
486
501
  shadowDOMEnabled,
@@ -504,6 +519,7 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
504
519
  walletsByChain,
505
520
  walletsFilter,
506
521
  walletsToConnectByChain,
522
+ setConnectedWallets,
507
523
  ]);
508
524
  React.useEffect(() => {
509
525
  const addPrefetch = (attr) => {
@@ -120,6 +120,8 @@ export interface IDynamicContext {
120
120
  walletUiUtils: WalletUiUtils;
121
121
  wallets: WalletOption[];
122
122
  walletsFilter?: (options: WalletOption[]) => WalletOption[];
123
+ removeConnectedWalletsInfo: () => void;
124
+ setConnectedWallets: Dispatch<SetStateAction<Wallet[] | []>>;
123
125
  }
124
126
  export interface DynamicContextProps {
125
127
  children: ReactNode;
@@ -165,11 +167,12 @@ export interface DynamicContextProps {
165
167
  socialMediaUrl?: string;
166
168
  termsOfServiceUrl?: string;
167
169
  toolkitEnabled?: boolean;
170
+ walletConnectV1Bridge?: string;
168
171
  walletConnectors?: WalletConnectorsMethod[];
169
172
  walletsFilter?: (options: WalletOption[]) => WalletOption[];
170
173
  };
171
174
  theme?: ThemeData | ThemeSetting;
172
175
  }
173
176
  export declare const DynamicContext: import("react").Context<IDynamicContext | undefined>;
174
- export declare const DynamicContextProvider: ({ settings: { accessDeniedMessagePrimary, accessDeniedMessageSecondary, accessDeniedButton, apiBaseUrl, appLogoUrl, appName, walletsByChain, cssOverrides, defaultNumberOfWalletsToShow, flowNetwork, initialAuthenticationMode, debugError, displayTermsOfService, newToWeb3WalletChainMap, enableVisitTrackingOnConnectOnly, environmentId, localStorageSuffix, eventsCallbacks, evmNetworks, walletsFilter, logLevel, multiWallet: deprecatedMultiWallet, notInTheListImageUrl, onboardingImageUrl, policiesConsentInnerComponent, privacyPolicyUrl, signWithEmailWalletName, socialMediaLinkText, socialMediaIconUrl, socialMediaUrl, termsOfServiceUrl, toolkitEnabled, siweStatement, shadowDOMEnabled, walletConnectors: walletConnectorsProp, }, children, theme, }: DynamicContextProps) => JSX.Element;
177
+ export declare const DynamicContextProvider: ({ settings: { accessDeniedMessagePrimary, accessDeniedMessageSecondary, accessDeniedButton, apiBaseUrl, appLogoUrl, appName, walletsByChain, cssOverrides, defaultNumberOfWalletsToShow, flowNetwork, initialAuthenticationMode, debugError, displayTermsOfService, newToWeb3WalletChainMap, enableVisitTrackingOnConnectOnly, environmentId, localStorageSuffix, eventsCallbacks, evmNetworks, walletsFilter, logLevel, multiWallet: deprecatedMultiWallet, notInTheListImageUrl, onboardingImageUrl, policiesConsentInnerComponent, privacyPolicyUrl, signWithEmailWalletName, socialMediaLinkText, socialMediaIconUrl, socialMediaUrl, termsOfServiceUrl, toolkitEnabled, siweStatement, shadowDOMEnabled, walletConnectV1Bridge, walletConnectors: walletConnectorsProp, }, children, theme, }: DynamicContextProps) => JSX.Element;
175
178
  export {};
@@ -4,7 +4,7 @@ import { createContext, useState, useCallback, useEffect, useMemo } from 'react'
4
4
  import { useWalletBookCdn, getWalletBookCdnUrl, WalletBookContextProvider } from '@dynamic-labs/wallet-book';
5
5
  import { logger as logger$1 } from '@dynamic-labs/wallet-connector-core';
6
6
  import { ICONIC_SPRITE_URL } from '@dynamic-labs/iconic';
7
- import { AUTH_USER, AUTH_TOKEN, AUTH_MODE } from '../../utils/constants/localStorage.js';
7
+ import { AUTH_USER, AUTH_TOKEN, AUTH_MODE, WALLET_PICKER_SEARCH_KEY } from '../../utils/constants/localStorage.js';
8
8
  import '../../utils/constants/colors.js';
9
9
  import { DEFAULT_NUMBER_OF_WALLETS_TO_SHOW } from '../../utils/constants/values.js';
10
10
  import { decodeJwt } from '../../shared/utils/functions/decodeJwt/decodeJwt.js';
@@ -86,7 +86,7 @@ import { useSetShowAuthFlowWithInit } from './hooks/useSetShowAuthFlowWithInit/u
86
86
 
87
87
  const EMPTY_INITIAL_USER = undefined;
88
88
  const DynamicContext = createContext(undefined);
89
- const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, accessDeniedMessageSecondary, accessDeniedButton, apiBaseUrl, appLogoUrl = 'https://demo.dynamic.xyz/assets/dynamic-logo.svg', appName = 'Dynamic Example', walletsByChain, cssOverrides, defaultNumberOfWalletsToShow = DEFAULT_NUMBER_OF_WALLETS_TO_SHOW, flowNetwork, initialAuthenticationMode = 'connect-and-sign', debugError = false, displayTermsOfService = true, newToWeb3WalletChainMap, enableVisitTrackingOnConnectOnly = true, environmentId, localStorageSuffix, eventsCallbacks, evmNetworks, walletsFilter, logLevel = 'WARN', multiWallet: deprecatedMultiWallet, notInTheListImageUrl, onboardingImageUrl, policiesConsentInnerComponent, privacyPolicyUrl, signWithEmailWalletName, socialMediaLinkText, socialMediaIconUrl, socialMediaUrl, termsOfServiceUrl, toolkitEnabled, siweStatement, shadowDOMEnabled = true, walletConnectors: walletConnectorsProp, }, children, theme, }) => {
89
+ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, accessDeniedMessageSecondary, accessDeniedButton, apiBaseUrl, appLogoUrl = 'https://demo.dynamic.xyz/assets/dynamic-logo.svg', appName = 'Dynamic Example', walletsByChain, cssOverrides, defaultNumberOfWalletsToShow = DEFAULT_NUMBER_OF_WALLETS_TO_SHOW, flowNetwork, initialAuthenticationMode = 'connect-and-sign', debugError = false, displayTermsOfService = true, newToWeb3WalletChainMap, enableVisitTrackingOnConnectOnly = true, environmentId, localStorageSuffix, eventsCallbacks, evmNetworks, walletsFilter, logLevel = 'WARN', multiWallet: deprecatedMultiWallet, notInTheListImageUrl, onboardingImageUrl, policiesConsentInnerComponent, privacyPolicyUrl, signWithEmailWalletName, socialMediaLinkText, socialMediaIconUrl, socialMediaUrl, termsOfServiceUrl, toolkitEnabled, siweStatement, shadowDOMEnabled = true, walletConnectV1Bridge, walletConnectors: walletConnectorsProp, }, children, theme, }) => {
90
90
  var _a, _b, _c, _d, _e;
91
91
  logger.setLogLevel(logLevel);
92
92
  logger$1.setLogLevel(logLevel);
@@ -140,12 +140,22 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
140
140
  networkConfigurations: serverNetworkConfigurations,
141
141
  projectSettings,
142
142
  walletBook,
143
+ walletConnectV1Bridge,
143
144
  walletConnectorsProp,
144
145
  walletUiUtils,
145
146
  });
146
147
  const [authMode, setAuthMode] = useLocalStorage(AUTH_MODE, initialAuthenticationMode);
147
148
  const { clearPrimaryWalletId, primaryWalletId, setPrimaryWalletId } = usePrimaryWalletId();
148
- const { connectWallet, removeConnectedWalletsInfo, connectedWalletsInfo, connectedWallet, setConnectedWallet, setConnectedWallets, connectedWallets, connectWalletByAddressAndChain, } = useConnectWallet(wallets, authMode, environmentId, enableVisitTrackingOnConnectOnly, primaryWalletId, setPrimaryWalletId);
149
+ const { connectWallet, removeConnectedWalletsInfo, connectedWalletsInfo, connectedWallet, setConnectedWallet, setConnectedWallets, connectedWallets, connectWalletByAddressAndChain, } = useConnectWallet({
150
+ authMode,
151
+ clearPrimaryWalletId,
152
+ enableVisitTrackingOnConnectOnly,
153
+ environmentId,
154
+ primaryWalletId,
155
+ setPrimaryWalletId,
156
+ user,
157
+ wallets,
158
+ });
149
159
  const [selectedWalletConnector, setSelectedWalletConnector] = useState(null);
150
160
  //selected wallet to perform an action (become primary, unlink, etc)
151
161
  const [selectedWalletWithAction, setSelectedWalletWithAction] = useState(null);
@@ -193,6 +203,7 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
193
203
  clearAllWalletConnectSessions();
194
204
  setWalletsToConnectByChain(walletsByChain);
195
205
  setShowBridgeWidget(false);
206
+ LocalStorage.removeFromLS(WALLET_PICKER_SEARCH_KEY);
196
207
  const jwt = getAuthToken();
197
208
  if (jwt && user) {
198
209
  // do not await this async call - just fire and forget
@@ -257,7 +268,6 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
257
268
  const { walletsForChainsMap } = useFetchWalletsForChainsMap(newToWeb3WalletChainMap);
258
269
  const rpcProviders = useRpcProviders({
259
270
  networkConfigurations: serverNetworkConfigurations,
260
- networkId: network,
261
271
  });
262
272
  useEffect(() => {
263
273
  initExpirationTime(handleLogOut);
@@ -291,6 +301,9 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
291
301
  if (!LocalStorage.getFromLS(AUTH_USER)) {
292
302
  LocalStorage.removeFromLS(AUTH_TOKEN);
293
303
  }
304
+ if (LocalStorage.getFromLS(WALLET_PICKER_SEARCH_KEY)) {
305
+ LocalStorage.removeFromLS(WALLET_PICKER_SEARCH_KEY);
306
+ }
294
307
  if (selectedWalletConnector &&
295
308
  (!primaryWallet ||
296
309
  !isSameWalletName(primaryWallet.connector.name, selectedWalletConnector.name))) {
@@ -361,6 +374,7 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
361
374
  privacyPolicyUrl,
362
375
  projectSettings,
363
376
  qrcodeUri,
377
+ removeConnectedWalletsInfo,
364
378
  rpcProviders,
365
379
  sdkHasLoaded,
366
380
  secondaryWallets,
@@ -369,6 +383,7 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
369
383
  setAuthMode,
370
384
  setAuthorizationViewDisplayOrder,
371
385
  setCallback,
386
+ setConnectedWallets,
372
387
  setDesktopUri,
373
388
  setIsSingleWalletAccount,
374
389
  setIsVerifying,
@@ -462,6 +477,7 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
462
477
  privacyPolicyUrl,
463
478
  projectSettings,
464
479
  qrcodeUri,
480
+ removeConnectedWalletsInfo,
465
481
  rpcProviders,
466
482
  sdkHasLoaded,
467
483
  selectedWalletConnector,
@@ -476,7 +492,6 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
476
492
  setPrimaryWalletId,
477
493
  setSdkHasLoaded,
478
494
  setShowAuthFlowWithInit,
479
- setShowBridgeAuthFlow,
480
495
  setShowQrcodeModal,
481
496
  setUser,
482
497
  shadowDOMEnabled,
@@ -500,6 +515,7 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
500
515
  walletsByChain,
501
516
  walletsFilter,
502
517
  walletsToConnectByChain,
518
+ setConnectedWallets,
503
519
  ]);
504
520
  useEffect(() => {
505
521
  const addPrefetch = (attr) => {
@@ -7,10 +7,16 @@ var React = require('react');
7
7
  var useInternalDynamicContext = require('../DynamicContext/useInternalDynamicContext.cjs');
8
8
 
9
9
  const errorMessageMap = {
10
+ '-32000': 'Message signature denied',
10
11
  '-32002': 'Please unlock your wallet extension and try again.',
11
12
  '-32602': 'Invalid parameters. Please try again.',
12
13
  '-32603': 'There was an internal error. Please try again.',
14
+ 0: 'Message signature denied.',
13
15
  4001: 'Message signature denied.',
16
+ 5001: 'Message signature denied.',
17
+ 5002: 'Message signature denied.',
18
+ connection_rejected: 'Connection rejected. Please try again.',
19
+ metamask_timeout: 'Please change your wallet chain to Ethereum Main Network and try again',
14
20
  'missing-nonce': 'Something went wrong. Please try again.',
15
21
  'missing-public-address': 'Connection cancelled. Please try again',
16
22
  too_many_email_verification_attempts: 'Too many email verification attempts, please try again later',
@@ -3,10 +3,16 @@ import { createContext, useState, useCallback, useEffect, useMemo, useContext }
3
3
  import { useInternalDynamicContext } from '../DynamicContext/useInternalDynamicContext.js';
4
4
 
5
5
  const errorMessageMap = {
6
+ '-32000': 'Message signature denied',
6
7
  '-32002': 'Please unlock your wallet extension and try again.',
7
8
  '-32602': 'Invalid parameters. Please try again.',
8
9
  '-32603': 'There was an internal error. Please try again.',
10
+ 0: 'Message signature denied.',
9
11
  4001: 'Message signature denied.',
12
+ 5001: 'Message signature denied.',
13
+ 5002: 'Message signature denied.',
14
+ connection_rejected: 'Connection rejected. Please try again.',
15
+ metamask_timeout: 'Please change your wallet chain to Ethereum Main Network and try again',
10
16
  'missing-nonce': 'Something went wrong. Please try again.',
11
17
  'missing-public-address': 'Connection cancelled. Please try again',
12
18
  too_many_email_verification_attempts: 'Too many email verification attempts, please try again later',
@@ -2,3 +2,4 @@ export { useLocalStorage } from './useLocalStorage';
2
2
  export { useOnClickOutside } from './useOnClickOutside';
3
3
  export { usePreventPageScroll } from './usePreventPageScroll';
4
4
  export { useGlobalLoading } from './useGlobalLoading';
5
+ export { useMediaQuery } from './useMediaQuery';
@@ -0,0 +1 @@
1
+ export { useMediaQuery } from './useMediaQuery';