@dynamic-labs/sdk-react-core 0.18.0-RC.13 → 0.18.0-RC.15

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 (97) hide show
  1. package/CHANGELOG.md +41 -0
  2. package/package.cjs +2 -2
  3. package/package.js +2 -2
  4. package/package.json +9 -9
  5. package/src/index.cjs +2 -0
  6. package/src/index.js +1 -0
  7. package/src/lib/Main.cjs +46 -7
  8. package/src/lib/Main.js +46 -7
  9. package/src/lib/assets/no-wallet-found.cjs +8 -8
  10. package/src/lib/assets/no-wallet-found.js +8 -8
  11. package/src/lib/components/PoweredByDynamic/PoweredByDynamic.cjs +8 -1
  12. package/src/lib/components/PoweredByDynamic/PoweredByDynamic.js +8 -1
  13. package/src/lib/components/SendBalancePageLayout/SendBalancePageLayout.cjs +1 -1
  14. package/src/lib/components/SendBalancePageLayout/SendBalancePageLayout.js +1 -1
  15. package/src/lib/components/Toolkit/Toolkit.cjs +3 -3
  16. package/src/lib/components/Toolkit/Toolkit.js +3 -3
  17. package/src/lib/components/Toolkit/components/MultiWalletSwitch.cjs +18 -0
  18. package/src/lib/components/Toolkit/components/MultiWalletSwitch.d.ts +8 -0
  19. package/src/lib/components/Toolkit/components/MultiWalletSwitch.js +14 -0
  20. package/src/lib/components/Toolkit/components/index.d.ts +1 -1
  21. package/src/lib/components/TransactionConfirmationPageLayout/TransactionConfirmationPageLayout.cjs +1 -1
  22. package/src/lib/components/TransactionConfirmationPageLayout/TransactionConfirmationPageLayout.js +1 -1
  23. package/src/lib/components/TransactionStatusLayout/TransactionStatusLayout.cjs +1 -1
  24. package/src/lib/components/TransactionStatusLayout/TransactionStatusLayout.js +1 -1
  25. package/src/lib/context/DynamicContext/DynamicContext.cjs +51 -23
  26. package/src/lib/context/DynamicContext/DynamicContext.d.ts +6 -3
  27. package/src/lib/context/DynamicContext/DynamicContext.js +52 -25
  28. package/src/lib/context/DynamicContext/helpers.cjs +5 -4
  29. package/src/lib/context/DynamicContext/helpers.d.ts +3 -1
  30. package/src/lib/context/DynamicContext/helpers.js +5 -4
  31. package/src/lib/context/DynamicContext/useCustomerCallbacks/types.d.ts +1 -0
  32. package/src/lib/context/DynamicContext/useCustomerCallbacks/useCustomerCallbacks.cjs +1 -1
  33. package/src/lib/context/DynamicContext/useCustomerCallbacks/useCustomerCallbacks.d.ts +2 -2
  34. package/src/lib/context/DynamicContext/useCustomerCallbacks/useCustomerCallbacks.js +1 -1
  35. package/src/lib/context/DynamicContext/useDynamicContext.cjs +2 -2
  36. package/src/lib/context/DynamicContext/useDynamicContext.d.ts +1 -1
  37. package/src/lib/context/DynamicContext/useDynamicContext.js +2 -2
  38. package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletListHelpContent/NewToWeb3WalletItem/NewToWeb3WalletItem.cjs +1 -1
  39. package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletListHelpContent/NewToWeb3WalletItem/NewToWeb3WalletItem.js +1 -1
  40. package/src/lib/shared/types/index.d.ts +1 -0
  41. package/src/lib/shared/utils/classes/storage/localStorage.cjs +36 -24
  42. package/src/lib/shared/utils/classes/storage/localStorage.d.ts +16 -3
  43. package/src/lib/shared/utils/classes/storage/localStorage.js +37 -25
  44. package/src/lib/shared/utils/hooks/index.d.ts +1 -0
  45. package/src/lib/shared/utils/hooks/useEffectOnce/index.d.ts +1 -0
  46. package/src/lib/shared/utils/hooks/useEffectOnce/useEffectOnce.cjs +27 -0
  47. package/src/lib/shared/utils/hooks/useEffectOnce/useEffectOnce.d.ts +17 -0
  48. package/src/lib/shared/utils/hooks/useEffectOnce/useEffectOnce.js +23 -0
  49. package/src/lib/styles/index.shadow.cjs +1 -1
  50. package/src/lib/styles/index.shadow.js +1 -1
  51. package/src/lib/utils/functions/getAuthToken/getAuthToken.cjs +2 -1
  52. package/src/lib/utils/functions/getAuthToken/getAuthToken.d.ts +1 -1
  53. package/src/lib/utils/functions/getAuthToken/getAuthToken.js +2 -1
  54. package/src/lib/utils/functions/isSelectedWalletAlreadyConnected/isSelectedWalletAlreadyConnected.cjs +2 -2
  55. package/src/lib/utils/functions/isSelectedWalletAlreadyConnected/isSelectedWalletAlreadyConnected.d.ts +1 -1
  56. package/src/lib/utils/functions/isSelectedWalletAlreadyConnected/isSelectedWalletAlreadyConnected.js +2 -2
  57. package/src/lib/utils/functions/storeAuthToken/index.cjs +1 -3
  58. package/src/lib/utils/functions/storeAuthToken/index.js +1 -3
  59. package/src/lib/utils/hooks/index.d.ts +2 -0
  60. package/src/lib/utils/hooks/multiWallet/useMultiWallet/index.d.ts +1 -0
  61. package/src/lib/utils/hooks/multiWallet/useMultiWallet/useMultiWallet.cjs +17 -0
  62. package/src/lib/utils/hooks/multiWallet/useMultiWallet/useMultiWallet.d.ts +8 -0
  63. package/src/lib/utils/hooks/multiWallet/useMultiWallet/useMultiWallet.js +13 -0
  64. package/src/lib/utils/hooks/useApplyWalletConnectorNetwork/useApplyWalletConnectorNetwork.cjs +29 -0
  65. package/src/lib/utils/hooks/useApplyWalletConnectorNetwork/useApplyWalletConnectorNetwork.d.ts +5 -0
  66. package/src/lib/utils/hooks/useApplyWalletConnectorNetwork/useApplyWalletConnectorNetwork.js +25 -0
  67. package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.cjs +20 -5
  68. package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.d.ts +5 -2
  69. package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.js +20 -5
  70. package/src/lib/utils/hooks/useConnectedAccountWallet/useConnectedAccountWallet.cjs +11 -18
  71. package/src/lib/utils/hooks/useConnectedAccountWallet/useConnectedAccountWallet.js +11 -18
  72. package/src/lib/utils/hooks/useEventListener/index.d.ts +1 -0
  73. package/src/lib/utils/hooks/useEventListener/useEventListener.cjs +25 -0
  74. package/src/lib/utils/hooks/useEventListener/useEventListener.d.ts +1 -0
  75. package/src/lib/utils/hooks/useEventListener/useEventListener.js +21 -0
  76. package/src/lib/utils/hooks/usePromise/usePromise.cjs +71 -18
  77. package/src/lib/utils/hooks/usePromise/usePromise.d.ts +14 -0
  78. package/src/lib/utils/hooks/usePromise/usePromise.js +72 -19
  79. package/src/lib/utils/hooks/useWalletItemActions/useWalletItemActions.cjs +3 -3
  80. package/src/lib/utils/hooks/useWalletItemActions/useWalletItemActions.js +3 -3
  81. package/src/lib/views/EmailConfirmationWaitingView/EmailConfirmationWaitingView.cjs +1 -1
  82. package/src/lib/views/EmailConfirmationWaitingView/EmailConfirmationWaitingView.js +1 -1
  83. package/src/lib/views/LoginWithEmailView/components/LoginWithEmailWalletList/LoginWithEmailWalletList.cjs +2 -2
  84. package/src/lib/views/LoginWithEmailView/components/LoginWithEmailWalletList/LoginWithEmailWalletList.js +2 -2
  85. package/src/lib/views/NetworkNotSupported/NetworkNotSupported.cjs +9 -8
  86. package/src/lib/views/NetworkNotSupported/NetworkNotSupported.js +9 -8
  87. package/src/lib/views/NetworkNotSupportedSwitchManual/NetworkNotSupportedSwitchManual.cjs +5 -9
  88. package/src/lib/views/NetworkNotSupportedSwitchManual/NetworkNotSupportedSwitchManual.js +5 -9
  89. package/src/lib/views/WalletList/SearchNotFoundMessage/SearchNotFoundMessage.cjs +2 -1
  90. package/src/lib/views/WalletList/SearchNotFoundMessage/SearchNotFoundMessage.d.ts +2 -2
  91. package/src/lib/views/WalletList/SearchNotFoundMessage/SearchNotFoundMessage.js +2 -1
  92. package/src/lib/views/WalletList/WalletList.cjs +2 -2
  93. package/src/lib/views/WalletList/WalletList.js +2 -2
  94. package/src/lib/views/WalletList/WalletListItem/WalletListItem.types.d.ts +1 -2
  95. package/src/lib/components/Toolkit/components/BrandStyleSwitch.cjs +0 -22
  96. package/src/lib/components/Toolkit/components/BrandStyleSwitch.d.ts +0 -2
  97. package/src/lib/components/Toolkit/components/BrandStyleSwitch.js +0 -18
@@ -1,7 +1,7 @@
1
1
  export { ThemeSwitch } from './ThemeSwitch';
2
- export { BrandStyleSwitch } from './BrandStyleSwitch';
3
2
  export { PrimaryColorInput } from './PrimaryColorInput';
4
3
  export { AuthModeSwitch } from './AuthModeSwitch';
5
4
  export { LoginWithEmailSwitch } from './LoginWithEmailSwitch';
6
5
  export { LoginWithEmailViewDisplayPriorityOrderSwitch } from './LoginWithEmailViewDisplayPriorityOrderSwitch';
7
6
  export { TemplateSelect } from './TemplateSelect';
7
+ export { MultiWalletSwitch } from './MultiWalletSwitch';
@@ -36,7 +36,7 @@ var PoweredByDynamic = require('../PoweredByDynamic/PoweredByDynamic.cjs');
36
36
  const TransactionConfirmationPageLayout = ({ onClickClose, isLoading, onClickBack, title, error, appOrigin, appLogoUrl, appName, onClickSend, disableSendButton, displayPoweredByDynamicFooter = false, warningMessage, children, }) => {
37
37
  const closeButton = onClickClose && (jsxRuntime.jsx(IconButton.IconButton, Object.assign({ type: 'button', onClick: onClickClose, "data-testid": 'close', disabled: isLoading }, { children: jsxRuntime.jsx(close.ReactComponent, {}) })));
38
38
  const backButton = onClickBack && (jsxRuntime.jsx(IconButton.IconButton, Object.assign({ type: 'button', onClick: onClickBack, "data-testid": 'back-button' }, { children: jsxRuntime.jsx(chevronLeft.ReactComponent, {}) })));
39
- return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(ModalHeader.ModalHeader, Object.assign({ trailing: closeButton, leading: backButton, alignContent: 'bottom' }, { children: jsxRuntime.jsx(IconWithSpinner.IconWithSpinner, { Icon: (props) => (jsxRuntime.jsx(Icon.Icon, Object.assign({ color: 'brand-primary' }, { children: jsxRuntime.jsx(signCircle.ReactComponent, Object.assign({}, props)) }))), iconSize: 64, isSpinning: true }) })), jsxRuntime.jsxs("div", Object.assign({ className: 'transaction-confirmation__body' }, { children: [jsxRuntime.jsx(Typography.Typography, Object.assign({ variant: 'title', color: 'primary', className: 'transaction-confirmation__title' }, { children: title })), jsxRuntime.jsx(AnimatePresence.AnimatePresence, Object.assign({ animationComponent: jsxRuntime.jsx(VerticalDrawerTransition.VerticalDrawerTransition, {}) }, { children: error && (jsxRuntime.jsx("div", Object.assign({ className: 'transaction-confirmation__error' }, { children: jsxRuntime.jsx(Alert.Alert, Object.assign({ icon: 'error', variant: 'error' }, { children: error })) }))) })), jsxRuntime.jsxs("div", Object.assign({ className: 'transaction-confirmation__content' }, { children: [jsxRuntime.jsx("div", Object.assign({ className: 'transaction-confirmation__app-origin-tile' }, { children: jsxRuntime.jsx(AppOriginTile.AppOriginTile, { appLogoUrl: appLogoUrl, appName: appName, appOrigin: appOrigin }) })), jsxRuntime.jsx("div", Object.assign({ className: 'transaction-confirmation__rows' }, { children: children }))] })), jsxRuntime.jsx(AnimatePresence.AnimatePresence, Object.assign({ animationComponent: jsxRuntime.jsx(VerticalDrawerTransition.VerticalDrawerTransition, {}) }, { children: warningMessage && (jsxRuntime.jsx("div", Object.assign({ className: 'transaction-confirmation__warning' }, { children: jsxRuntime.jsx(Alert.Alert, Object.assign({ icon: 'error', variant: 'warning', contentDataTestId: 'warning_content' }, { children: warningMessage })) }))) })), jsxRuntime.jsxs("div", Object.assign({ className: 'transaction-confirmation__actions' }, { children: [onClickClose && (jsxRuntime.jsx(Button.Button, Object.assign({ buttonVariant: 'secondary', onClick: onClickClose, expanded: true, buttonPadding: 'large', buttonRounded: 'default', disabled: isLoading }, { children: "Cancel" }))), jsxRuntime.jsx(Button.Button, Object.assign({ buttonVariant: 'primary', buttonPadding: 'large', onClick: onClickSend, expanded: true, buttonRounded: 'default', loading: isLoading, disabled: disableSendButton }, { children: "Send" }))] })), displayPoweredByDynamicFooter && (jsxRuntime.jsx("div", Object.assign({ className: 'transaction-confirmation__footer' }, { children: jsxRuntime.jsx(PoweredByDynamic.PoweredByDynamic, {}) })))] }))] }));
39
+ return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(ModalHeader.ModalHeader, Object.assign({ trailing: closeButton, leading: backButton, alignContent: 'bottom' }, { children: jsxRuntime.jsx(IconWithSpinner.IconWithSpinner, { Icon: (props) => (jsxRuntime.jsx(Icon.Icon, Object.assign({ color: 'brand-primary' }, { children: jsxRuntime.jsx(signCircle.ReactComponent, Object.assign({}, props)) }))), iconSize: 64, isSpinning: true }) })), jsxRuntime.jsxs("div", Object.assign({ className: 'transaction-confirmation__body' }, { children: [jsxRuntime.jsx(Typography.Typography, Object.assign({ variant: 'title', color: 'primary', className: 'transaction-confirmation__title' }, { children: title })), jsxRuntime.jsx(AnimatePresence.AnimatePresence, Object.assign({ animationComponent: jsxRuntime.jsx(VerticalDrawerTransition.VerticalDrawerTransition, {}) }, { children: error && (jsxRuntime.jsx("div", Object.assign({ className: 'transaction-confirmation__error' }, { children: jsxRuntime.jsx(Alert.Alert, Object.assign({ icon: 'error', variant: 'error' }, { children: error })) }))) })), jsxRuntime.jsxs("div", Object.assign({ className: 'transaction-confirmation__content' }, { children: [jsxRuntime.jsx("div", Object.assign({ className: 'transaction-confirmation__app-origin-tile' }, { children: jsxRuntime.jsx(AppOriginTile.AppOriginTile, { appLogoUrl: appLogoUrl, appName: appName, appOrigin: appOrigin }) })), jsxRuntime.jsx("div", Object.assign({ className: 'transaction-confirmation__rows' }, { children: children }))] })), jsxRuntime.jsx(AnimatePresence.AnimatePresence, Object.assign({ animationComponent: jsxRuntime.jsx(VerticalDrawerTransition.VerticalDrawerTransition, {}) }, { children: warningMessage && (jsxRuntime.jsx("div", Object.assign({ className: 'transaction-confirmation__warning' }, { children: jsxRuntime.jsx(Alert.Alert, Object.assign({ icon: 'error', variant: 'warning', contentDataTestId: 'warning_content' }, { children: warningMessage })) }))) })), jsxRuntime.jsxs("div", Object.assign({ className: 'transaction-confirmation__actions' }, { children: [onClickClose && (jsxRuntime.jsx(Button.Button, Object.assign({ buttonVariant: 'secondary', onClick: onClickClose, expanded: true, buttonPadding: 'large', buttonRounded: 'default', disabled: isLoading }, { children: "Cancel" }))), jsxRuntime.jsx(Button.Button, Object.assign({ buttonVariant: 'primary', buttonPadding: 'large', onClick: onClickSend, expanded: true, buttonRounded: 'default', loading: isLoading, disabled: disableSendButton }, { children: "Send" }))] })), displayPoweredByDynamicFooter && (jsxRuntime.jsx(PoweredByDynamic.PoweredByDynamic, { classNameRoot: 'transaction-confirmation__footer' }))] }))] }));
40
40
  };
41
41
 
42
42
  exports.TransactionConfirmationPageLayout = TransactionConfirmationPageLayout;
@@ -32,7 +32,7 @@ import { PoweredByDynamic } from '../PoweredByDynamic/PoweredByDynamic.js';
32
32
  const TransactionConfirmationPageLayout = ({ onClickClose, isLoading, onClickBack, title, error, appOrigin, appLogoUrl, appName, onClickSend, disableSendButton, displayPoweredByDynamicFooter = false, warningMessage, children, }) => {
33
33
  const closeButton = onClickClose && (jsx(IconButton, Object.assign({ type: 'button', onClick: onClickClose, "data-testid": 'close', disabled: isLoading }, { children: jsx(SvgClose, {}) })));
34
34
  const backButton = onClickBack && (jsx(IconButton, Object.assign({ type: 'button', onClick: onClickBack, "data-testid": 'back-button' }, { children: jsx(SvgChevronLeft, {}) })));
35
- return (jsxs(Fragment, { children: [jsx(ModalHeader, Object.assign({ trailing: closeButton, leading: backButton, alignContent: 'bottom' }, { children: jsx(IconWithSpinner, { Icon: (props) => (jsx(Icon, Object.assign({ color: 'brand-primary' }, { children: jsx(SvgSignCircle, Object.assign({}, props)) }))), iconSize: 64, isSpinning: true }) })), jsxs("div", Object.assign({ className: 'transaction-confirmation__body' }, { children: [jsx(Typography, Object.assign({ variant: 'title', color: 'primary', className: 'transaction-confirmation__title' }, { children: title })), jsx(AnimatePresence, Object.assign({ animationComponent: jsx(VerticalDrawerTransition, {}) }, { children: error && (jsx("div", Object.assign({ className: 'transaction-confirmation__error' }, { children: jsx(Alert, Object.assign({ icon: 'error', variant: 'error' }, { children: error })) }))) })), jsxs("div", Object.assign({ className: 'transaction-confirmation__content' }, { children: [jsx("div", Object.assign({ className: 'transaction-confirmation__app-origin-tile' }, { children: jsx(AppOriginTile, { appLogoUrl: appLogoUrl, appName: appName, appOrigin: appOrigin }) })), jsx("div", Object.assign({ className: 'transaction-confirmation__rows' }, { children: children }))] })), jsx(AnimatePresence, Object.assign({ animationComponent: jsx(VerticalDrawerTransition, {}) }, { children: warningMessage && (jsx("div", Object.assign({ className: 'transaction-confirmation__warning' }, { children: jsx(Alert, Object.assign({ icon: 'error', variant: 'warning', contentDataTestId: 'warning_content' }, { children: warningMessage })) }))) })), jsxs("div", Object.assign({ className: 'transaction-confirmation__actions' }, { children: [onClickClose && (jsx(Button, Object.assign({ buttonVariant: 'secondary', onClick: onClickClose, expanded: true, buttonPadding: 'large', buttonRounded: 'default', disabled: isLoading }, { children: "Cancel" }))), jsx(Button, Object.assign({ buttonVariant: 'primary', buttonPadding: 'large', onClick: onClickSend, expanded: true, buttonRounded: 'default', loading: isLoading, disabled: disableSendButton }, { children: "Send" }))] })), displayPoweredByDynamicFooter && (jsx("div", Object.assign({ className: 'transaction-confirmation__footer' }, { children: jsx(PoweredByDynamic, {}) })))] }))] }));
35
+ return (jsxs(Fragment, { children: [jsx(ModalHeader, Object.assign({ trailing: closeButton, leading: backButton, alignContent: 'bottom' }, { children: jsx(IconWithSpinner, { Icon: (props) => (jsx(Icon, Object.assign({ color: 'brand-primary' }, { children: jsx(SvgSignCircle, Object.assign({}, props)) }))), iconSize: 64, isSpinning: true }) })), jsxs("div", Object.assign({ className: 'transaction-confirmation__body' }, { children: [jsx(Typography, Object.assign({ variant: 'title', color: 'primary', className: 'transaction-confirmation__title' }, { children: title })), jsx(AnimatePresence, Object.assign({ animationComponent: jsx(VerticalDrawerTransition, {}) }, { children: error && (jsx("div", Object.assign({ className: 'transaction-confirmation__error' }, { children: jsx(Alert, Object.assign({ icon: 'error', variant: 'error' }, { children: error })) }))) })), jsxs("div", Object.assign({ className: 'transaction-confirmation__content' }, { children: [jsx("div", Object.assign({ className: 'transaction-confirmation__app-origin-tile' }, { children: jsx(AppOriginTile, { appLogoUrl: appLogoUrl, appName: appName, appOrigin: appOrigin }) })), jsx("div", Object.assign({ className: 'transaction-confirmation__rows' }, { children: children }))] })), jsx(AnimatePresence, Object.assign({ animationComponent: jsx(VerticalDrawerTransition, {}) }, { children: warningMessage && (jsx("div", Object.assign({ className: 'transaction-confirmation__warning' }, { children: jsx(Alert, Object.assign({ icon: 'error', variant: 'warning', contentDataTestId: 'warning_content' }, { children: warningMessage })) }))) })), jsxs("div", Object.assign({ className: 'transaction-confirmation__actions' }, { children: [onClickClose && (jsx(Button, Object.assign({ buttonVariant: 'secondary', onClick: onClickClose, expanded: true, buttonPadding: 'large', buttonRounded: 'default', disabled: isLoading }, { children: "Cancel" }))), jsx(Button, Object.assign({ buttonVariant: 'primary', buttonPadding: 'large', onClick: onClickSend, expanded: true, buttonRounded: 'default', loading: isLoading, disabled: disableSendButton }, { children: "Send" }))] })), displayPoweredByDynamicFooter && (jsx(PoweredByDynamic, { classNameRoot: 'transaction-confirmation__footer' }))] }))] }));
36
36
  };
37
37
 
38
38
  export { TransactionConfirmationPageLayout };
@@ -53,7 +53,7 @@ var TransactionRow = require('../TransactionConfirmationPageLayout/components/Tr
53
53
  const TransactionStatusLayout = ({ destinationAddress, amount, networkName, networkCurrency, NetworkIcon, onDone, displayPoweredByDynamicFooter = true, onClickClose, }) => {
54
54
  const closeButton = onClickClose && (jsxRuntime.jsx(IconButton.IconButton, Object.assign({ type: 'button', onClick: onClickClose, "data-testid": 'close' }, { children: jsxRuntime.jsx(close.ReactComponent, {}) })));
55
55
  const networkIcon = (jsxRuntime.jsx("div", Object.assign({ className: 'transaction-status-layout__network-icon' }, { children: NetworkIcon })));
56
- return (jsxRuntime.jsxs("div", Object.assign({ className: 'transaction-status-layout' }, { children: [jsxRuntime.jsx(ModalHeader.ModalHeader, Object.assign({ trailing: closeButton, alignContent: 'bottom' }, { children: jsxRuntime.jsx(IconWithStatus.IconWithStatus, { containerClassName: 'transaction-status-layout__status-icon', iconSize: 50, Icon: signCircle.ReactComponent, InnerIcon: check.ReactComponent }) })), jsxRuntime.jsxs("div", Object.assign({ className: 'transaction-status-layout__body' }, { children: [jsxRuntime.jsx(Typography.Typography, Object.assign({ weight: 'medium', variant: 'title', color: 'primary', className: 'transaction-status-layout__title' }, { children: "Transaction successfully sent" })), jsxRuntime.jsx("div", Object.assign({ className: 'transaction-status-layout__content' }, { children: jsxRuntime.jsxs("div", Object.assign({ className: 'transaction-status-layout__rows' }, { children: [jsxRuntime.jsx(TransactionRow.TransactionRow, Object.assign({ label: 'Recipient' }, { children: shortenWalletAddress.shortenWalletAddress(destinationAddress, 3, 3) })), jsxRuntime.jsxs(TransactionRow.TransactionRow, Object.assign({ label: 'Network' }, { children: [networkIcon, jsxRuntime.jsx("span", Object.assign({ className: 'transaction-status-layout__network-name' }, { children: networkName }))] })), jsxRuntime.jsxs(TransactionRow.TransactionRow, Object.assign({ label: 'Total amount' }, { children: [amount, jsxRuntime.jsx(Typography.Typography, Object.assign({ as: 'span', color: 'secondary', className: 'transaction-status-layout__network-currency' }, { children: networkCurrency }))] }))] })) })), jsxRuntime.jsx("div", Object.assign({ className: 'transaction-status-layout__actions' }, { children: jsxRuntime.jsx(Button.Button, Object.assign({ buttonVariant: 'primary', buttonPadding: 'large', expanded: true, buttonRounded: 'default', onClick: onDone }, { children: "Continue" })) })), displayPoweredByDynamicFooter && (jsxRuntime.jsx("div", Object.assign({ className: 'transaction-status-layout__footer' }, { children: jsxRuntime.jsx(PoweredByDynamic.PoweredByDynamic, {}) })))] }))] })));
56
+ return (jsxRuntime.jsxs("div", Object.assign({ className: 'transaction-status-layout' }, { children: [jsxRuntime.jsx(ModalHeader.ModalHeader, Object.assign({ trailing: closeButton, alignContent: 'bottom' }, { children: jsxRuntime.jsx(IconWithStatus.IconWithStatus, { containerClassName: 'transaction-status-layout__status-icon', iconSize: 50, Icon: signCircle.ReactComponent, InnerIcon: check.ReactComponent }) })), jsxRuntime.jsxs("div", Object.assign({ className: 'transaction-status-layout__body' }, { children: [jsxRuntime.jsx(Typography.Typography, Object.assign({ weight: 'medium', variant: 'title', color: 'primary', className: 'transaction-status-layout__title' }, { children: "Transaction successfully sent" })), jsxRuntime.jsx("div", Object.assign({ className: 'transaction-status-layout__content' }, { children: jsxRuntime.jsxs("div", Object.assign({ className: 'transaction-status-layout__rows' }, { children: [jsxRuntime.jsx(TransactionRow.TransactionRow, Object.assign({ label: 'Recipient' }, { children: shortenWalletAddress.shortenWalletAddress(destinationAddress, 3, 3) })), jsxRuntime.jsxs(TransactionRow.TransactionRow, Object.assign({ label: 'Network' }, { children: [networkIcon, jsxRuntime.jsx("span", Object.assign({ className: 'transaction-status-layout__network-name' }, { children: networkName }))] })), jsxRuntime.jsxs(TransactionRow.TransactionRow, Object.assign({ label: 'Total amount' }, { children: [amount, jsxRuntime.jsx(Typography.Typography, Object.assign({ as: 'span', color: 'secondary', className: 'transaction-status-layout__network-currency' }, { children: networkCurrency }))] }))] })) })), jsxRuntime.jsx("div", Object.assign({ className: 'transaction-status-layout__actions' }, { children: jsxRuntime.jsx(Button.Button, Object.assign({ buttonVariant: 'primary', buttonPadding: 'large', expanded: true, buttonRounded: 'default', onClick: onDone }, { children: "Continue" })) })), displayPoweredByDynamicFooter && (jsxRuntime.jsx(PoweredByDynamic.PoweredByDynamic, { classNameRoot: 'transaction-status-layout__footer' }))] }))] })));
57
57
  };
58
58
 
59
59
  exports.TransactionStatusLayout = TransactionStatusLayout;
@@ -49,7 +49,7 @@ import { TransactionRow } from '../TransactionConfirmationPageLayout/components/
49
49
  const TransactionStatusLayout = ({ destinationAddress, amount, networkName, networkCurrency, NetworkIcon, onDone, displayPoweredByDynamicFooter = true, onClickClose, }) => {
50
50
  const closeButton = onClickClose && (jsx(IconButton, Object.assign({ type: 'button', onClick: onClickClose, "data-testid": 'close' }, { children: jsx(SvgClose, {}) })));
51
51
  const networkIcon = (jsx("div", Object.assign({ className: 'transaction-status-layout__network-icon' }, { children: NetworkIcon })));
52
- return (jsxs("div", Object.assign({ className: 'transaction-status-layout' }, { children: [jsx(ModalHeader, Object.assign({ trailing: closeButton, alignContent: 'bottom' }, { children: jsx(IconWithStatus, { containerClassName: 'transaction-status-layout__status-icon', iconSize: 50, Icon: SvgSignCircle, InnerIcon: SvgCheck }) })), jsxs("div", Object.assign({ className: 'transaction-status-layout__body' }, { children: [jsx(Typography, Object.assign({ weight: 'medium', variant: 'title', color: 'primary', className: 'transaction-status-layout__title' }, { children: "Transaction successfully sent" })), jsx("div", Object.assign({ className: 'transaction-status-layout__content' }, { children: jsxs("div", Object.assign({ className: 'transaction-status-layout__rows' }, { children: [jsx(TransactionRow, Object.assign({ label: 'Recipient' }, { children: shortenWalletAddress(destinationAddress, 3, 3) })), jsxs(TransactionRow, Object.assign({ label: 'Network' }, { children: [networkIcon, jsx("span", Object.assign({ className: 'transaction-status-layout__network-name' }, { children: networkName }))] })), jsxs(TransactionRow, Object.assign({ label: 'Total amount' }, { children: [amount, jsx(Typography, Object.assign({ as: 'span', color: 'secondary', className: 'transaction-status-layout__network-currency' }, { children: networkCurrency }))] }))] })) })), jsx("div", Object.assign({ className: 'transaction-status-layout__actions' }, { children: jsx(Button, Object.assign({ buttonVariant: 'primary', buttonPadding: 'large', expanded: true, buttonRounded: 'default', onClick: onDone }, { children: "Continue" })) })), displayPoweredByDynamicFooter && (jsx("div", Object.assign({ className: 'transaction-status-layout__footer' }, { children: jsx(PoweredByDynamic, {}) })))] }))] })));
52
+ return (jsxs("div", Object.assign({ className: 'transaction-status-layout' }, { children: [jsx(ModalHeader, Object.assign({ trailing: closeButton, alignContent: 'bottom' }, { children: jsx(IconWithStatus, { containerClassName: 'transaction-status-layout__status-icon', iconSize: 50, Icon: SvgSignCircle, InnerIcon: SvgCheck }) })), jsxs("div", Object.assign({ className: 'transaction-status-layout__body' }, { children: [jsx(Typography, Object.assign({ weight: 'medium', variant: 'title', color: 'primary', className: 'transaction-status-layout__title' }, { children: "Transaction successfully sent" })), jsx("div", Object.assign({ className: 'transaction-status-layout__content' }, { children: jsxs("div", Object.assign({ className: 'transaction-status-layout__rows' }, { children: [jsx(TransactionRow, Object.assign({ label: 'Recipient' }, { children: shortenWalletAddress(destinationAddress, 3, 3) })), jsxs(TransactionRow, Object.assign({ label: 'Network' }, { children: [networkIcon, jsx("span", Object.assign({ className: 'transaction-status-layout__network-name' }, { children: networkName }))] })), jsxs(TransactionRow, Object.assign({ label: 'Total amount' }, { children: [amount, jsx(Typography, Object.assign({ as: 'span', color: 'secondary', className: 'transaction-status-layout__network-currency' }, { children: networkCurrency }))] }))] })) })), jsx("div", Object.assign({ className: 'transaction-status-layout__actions' }, { children: jsx(Button, Object.assign({ buttonVariant: 'primary', buttonPadding: 'large', expanded: true, buttonRounded: 'default', onClick: onDone }, { children: "Continue" })) })), displayPoweredByDynamicFooter && (jsx(PoweredByDynamic, { classNameRoot: 'transaction-status-layout__footer' }))] }))] })));
53
53
  };
54
54
 
55
55
  export { TransactionStatusLayout };
@@ -19,6 +19,7 @@ var localStorage = require('../../shared/utils/classes/storage/localStorage.cjs'
19
19
  require('ethers');
20
20
  var useLocalStorage = require('../../shared/utils/hooks/useLocalStorage/useLocalStorage.cjs');
21
21
  var useGlobalLoading = require('../../shared/utils/hooks/useGlobalLoading/useGlobalLoading.cjs');
22
+ var useEffectOnce = require('../../shared/utils/hooks/useEffectOnce/useEffectOnce.cjs');
22
23
  require('../../shared/consts/index.cjs');
23
24
  var useFetchProjectSettings = require('../../utils/hooks/useFetchProjectSettings/useFetchProjectSettings.cjs');
24
25
  var useFetchNonce = require('../../utils/hooks/useFetchNonce/useFetchNonce.cjs');
@@ -36,6 +37,8 @@ require('../MockContext/MockContext.cjs');
36
37
  var CaptchaContext = require('../CaptchaContext/CaptchaContext.cjs');
37
38
  require('../../utils/hooks/useUserUpdateRequest/useUserUpdateRequest.cjs');
38
39
  var ThemeContext = require('../ThemeContext/ThemeContext.cjs');
40
+ var useValidateSession = require('../../utils/hooks/useValidateSession/useValidateSession.cjs');
41
+ var useEventListener = require('../../utils/hooks/useEventListener/useEventListener.cjs');
39
42
  var ApiEndpoint = require('../../config/ApiEndpoint.cjs');
40
43
  var useFetchNetworkConfigurations = require('../../utils/hooks/useFetchNetworkConfigurations/useFetchNetworkConfigurations.cjs');
41
44
  var useMultiWalletWidgetState = require('../../utils/hooks/multiWallet/useMultiWalletWidgetState/useMultiWalletWidgetState.cjs');
@@ -78,8 +81,8 @@ var SendBalanceContext = require('../SendBalanceContext/SendBalanceContext.cjs')
78
81
  var usePrimaryWalletId = require('../../utils/hooks/usePrimaryWalletId/usePrimaryWalletId.cjs');
79
82
  var WalletGroupContext = require('../WalletGroupContext/WalletGroupContext.cjs');
80
83
  var WalletContext = require('../WalletContext/WalletContext.cjs');
81
- var useValidateSession = require('../../utils/hooks/useValidateSession/useValidateSession.cjs');
82
84
  var getMissingChains = require('../../utils/functions/getMissingChains/getMissingChains.cjs');
85
+ var useMultiWallet = require('../../utils/hooks/multiWallet/useMultiWallet/useMultiWallet.cjs');
83
86
  var helpers = require('./helpers.cjs');
84
87
  var validators = require('./validators.cjs');
85
88
  var useCustomerCallbacks = require('./useCustomerCallbacks/useCustomerCallbacks.cjs');
@@ -89,15 +92,19 @@ var useDisplayOrderState = require('./hooks/useDisplayOrderState/useDisplayOrder
89
92
  var useNameService = require('./hooks/useNameService/useNameService.cjs');
90
93
  var useSetShowAuthFlowWithInit = require('./hooks/useSetShowAuthFlowWithInit/useSetShowAuthFlowWithInit.cjs');
91
94
 
95
+ const PUBLIC_PROJECT_LIVE_ENVIRONMENT_ID = '2762a57b-faa4-41ce-9f16-abff9300e2c9';
92
96
  const EMPTY_INITIAL_USER = undefined;
93
97
  const DynamicContext = React.createContext(undefined);
94
98
  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, customPrivacyPolicy, privacyPolicyUrl, signWithEmailWalletName, socialMediaLinkText, socialMediaIconUrl, socialMediaUrl, customTermsOfServices, termsOfServiceUrl, toolkitEnabled, siweStatement, shadowDOMEnabled = true, walletConnectV1Bridge, walletConnectors: walletConnectorsProp, socialProvidersFilter, }, children, theme, }) => {
95
- var _a, _b, _c, _d, _e, _f, _g;
99
+ var _a, _b, _c, _d, _e, _f, _g, _h;
96
100
  if (!environmentId) {
97
101
  throw new utils.MissingEnvironmentIdError();
98
102
  }
99
103
  logger.logger.setLogLevel(logLevel);
100
104
  walletConnectorCore.logger.setLogLevel(logLevel);
105
+ if (environmentId === PUBLIC_PROJECT_LIVE_ENVIRONMENT_ID) {
106
+ logger.logger.warn(`WARNING: DYNAMIC is using a test environment ID ${environmentId}. Please sign up on https://app.dynamic.xyz/ to get your production environment ID.`);
107
+ }
101
108
  ApiEndpoint.setBaseUrl((_a = process.env.DYNAMIC_API_BASE_URL) !== null && _a !== void 0 ? _a : apiBaseUrl);
102
109
  localStorage.LocalStorage.setSuffix(localStorageSuffix);
103
110
  const isAuthenticated = Boolean(getAuthToken.getAuthToken());
@@ -119,7 +126,18 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
119
126
  const [multiWalletWidgetState, setMultiWalletWidgetState, { awaiting_account_switch: [accountSwitchState], awaiting_signature: [awaitingSignatureState], },] = useMultiWalletWidgetState.useMultiWalletWidgetState();
120
127
  const [isVerifying, setIsVerifying] = React.useState(false);
121
128
  const { projectSettings, isLoading: isProjectSettingsLoading } = useFetchProjectSettings.useFetchProjectSettings({ authToken: getAuthToken.getAuthToken(), environmentId });
122
- const multiWallet = (_c = deprecatedMultiWallet !== null && deprecatedMultiWallet !== void 0 ? deprecatedMultiWallet : (_b = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk) === null || _b === void 0 ? void 0 : _b.multiWallet) !== null && _c !== void 0 ? _c : false;
129
+ const { multiWallet, setMultiWallet } = useMultiWallet.useMultiWallet({
130
+ deprecatedMultiWallet,
131
+ multiWalletSettings: (_b = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk) === null || _b === void 0 ? void 0 : _b.multiWallet,
132
+ });
133
+ // for demo proposes when running single wallet
134
+ // it should not use bridge even having walletConnectV1Bridge set on settings
135
+ // but v2 if enabled
136
+ if (toolkitEnabled &&
137
+ ((_d = (_c = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk) === null || _c === void 0 ? void 0 : _c.walletConnect) === null || _d === void 0 ? void 0 : _d.v2Enabled) &&
138
+ !multiWallet) {
139
+ walletConnectV1Bridge = undefined;
140
+ }
123
141
  // ensures that when user comes back to site and primary wallet is out of sync, we don't show widget popup
124
142
  const [showWidgetStatePopup, setShowWidgetStatePopup] = React.useState(!multiWallet);
125
143
  const walletBook$1 = walletBook.useWalletBookCdn();
@@ -151,19 +169,23 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
151
169
  });
152
170
  const [authMode, setAuthMode] = useLocalStorage.useLocalStorage(localStorage$1.AUTH_MODE, initialAuthenticationMode);
153
171
  const { clearPrimaryWalletId, primaryWalletId, setPrimaryWalletId } = usePrimaryWalletId.usePrimaryWalletId();
154
- const { connectWallet, removeConnectedWalletsInfo, connectedWalletsInfo, connectedWallet, getConnectedWalletById, connectedWallets, connectWalletByAddressAndChain, unlinkConnectedWallet, } = useConnectWallet.useConnectWallet({
172
+ const { connectWallet, removeConnectedWalletsInfo, connectedWalletsInfo, connectedWallet, getConnectedWalletById, connectedWallets, connectWalletByAddressAndChain, unlinkConnectedWallet, updateConnectedWalletById, } = useConnectWallet.useConnectWallet({
155
173
  authMode,
156
174
  clearPrimaryWalletId,
157
175
  enableVisitTrackingOnConnectOnly,
158
176
  environmentId,
177
+ onUnlink: (walletId, connectedWalletsInfo) => {
178
+ const missingChains = getMissingChains.getMissingChains(walletsByChain, connectedWalletsInfo);
179
+ setWalletsToConnectByChain(missingChains);
180
+ },
159
181
  primaryWalletId,
160
182
  setPrimaryWalletId,
161
183
  wallets,
162
184
  });
163
- React.useEffect(() => {
185
+ useEffectOnce.useEffectOnce(() => {
164
186
  const missingChains = getMissingChains.getMissingChains(walletsByChain, connectedWalletsInfo);
165
187
  setWalletsToConnectByChain(missingChains);
166
- }, [connectedWalletsInfo, walletsByChain]);
188
+ });
167
189
  const [selectedWalletConnector, setSelectedWalletConnector] = React.useState(null);
168
190
  //selected wallet to perform an action (become primary, unlink, etc)
169
191
  const [selectedWalletWithAction, setSelectedWalletWithAction] = React.useState(null);
@@ -197,7 +219,7 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
197
219
  wallets,
198
220
  });
199
221
  // until user completes onboarding, jwt is only stored in onboardingOnlyJwt
200
- const authToken = (_d = getAuthToken.getAuthToken()) !== null && _d !== void 0 ? _d : onboardingOnlyJwt;
222
+ const authToken = (_e = getAuthToken.getAuthToken()) !== null && _e !== void 0 ? _e : onboardingOnlyJwt;
201
223
  const { getNameService, removeConnectedNameService } = useNameService.useNameService({
202
224
  authToken,
203
225
  currentWallet: primaryWallet !== null && primaryWallet !== void 0 ? primaryWallet : connectedWallet,
@@ -209,7 +231,7 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
209
231
  clearOphanedWalletConnectSessions,
210
232
  ]);
211
233
  const handleLogOut = React.useCallback(() => _tslib.__awaiter(void 0, void 0, void 0, function* () {
212
- var _h, _j;
234
+ var _j, _k;
213
235
  clearAllWalletConnectSessions();
214
236
  setWalletsToConnectByChain(walletsByChain);
215
237
  setShowBridgeWidget(false);
@@ -222,7 +244,7 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
222
244
  for (const connector of walletConnectors) {
223
245
  yield connector.endSession();
224
246
  }
225
- yield ((_h = connectedWallet === null || connectedWallet === void 0 ? void 0 : connectedWallet.connector) === null || _h === void 0 ? void 0 : _h.endSession());
247
+ yield ((_j = connectedWallet === null || connectedWallet === void 0 ? void 0 : connectedWallet.connector) === null || _j === void 0 ? void 0 : _j.endSession());
226
248
  setAuthMode(initialAuthenticationMode);
227
249
  setShowAuthFlow(false);
228
250
  setMultiWalletWidgetState('idle');
@@ -233,7 +255,7 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
233
255
  removeConnectedUser();
234
256
  clearPrimaryWalletId();
235
257
  removeConnectedNameService();
236
- (_j = eventsCallbacks === null || eventsCallbacks === void 0 ? void 0 : eventsCallbacks.onLogout) === null || _j === void 0 ? void 0 : _j.call(eventsCallbacks, user);
258
+ (_k = eventsCallbacks === null || eventsCallbacks === void 0 ? void 0 : eventsCallbacks.onLogout) === null || _k === void 0 ? void 0 : _k.call(eventsCallbacks, user);
237
259
  }), [
238
260
  clearAllWalletConnectSessions,
239
261
  walletsByChain,
@@ -252,10 +274,11 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
252
274
  environmentId,
253
275
  walletConnectors,
254
276
  ]);
277
+ useEventListener.useEventListener('logOut', handleLogOut);
255
278
  let wcVersion;
256
279
  if (projectSettings) {
257
280
  wcVersion =
258
- ((_f = (_e = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk) === null || _e === void 0 ? void 0 : _e.walletConnect) === null || _f === void 0 ? void 0 : _f.v2Enabled) && !walletConnectV1Bridge
281
+ ((_g = (_f = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk) === null || _f === void 0 ? void 0 : _f.walletConnect) === null || _g === void 0 ? void 0 : _g.v2Enabled) && !walletConnectV1Bridge
259
282
  ? 2
260
283
  : 1;
261
284
  }
@@ -307,6 +330,7 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
307
330
  onLinkSuccess: eventsCallbacks === null || eventsCallbacks === void 0 ? void 0 : eventsCallbacks.onLinkSuccess,
308
331
  onUserProfileUpdate: eventsCallbacks === null || eventsCallbacks === void 0 ? void 0 : eventsCallbacks.onUserProfileUpdate,
309
332
  },
333
+ connectedWallets,
310
334
  handleLogOut,
311
335
  isAuthenticated,
312
336
  primaryWallet,
@@ -360,10 +384,7 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
360
384
  computeConnectedStateForWallets,
361
385
  connectWallet,
362
386
  connectedWallet,
363
- connectedWallets: primaryWallet
364
- ? [primaryWallet, ...secondaryWallets]
365
- : [],
366
- connectedWalletsInfo,
387
+ connectedWallets,
367
388
  consumeNonce,
368
389
  cssOverrides,
369
390
  customPrivacyPolicy,
@@ -388,6 +409,7 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
388
409
  isSingleWalletAccount,
389
410
  isUserConnected,
390
411
  isVerifying,
412
+ linkedWallets: primaryWallet ? [primaryWallet, ...secondaryWallets] : [],
391
413
  loadingNetwork,
392
414
  loginWithEmail,
393
415
  multiWallet,
@@ -419,6 +441,7 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
419
441
  setIsSingleWalletAccount,
420
442
  setIsVerifying,
421
443
  setLogInWithEmail,
444
+ setMultiWallet,
422
445
  setMultiWalletWidgetState,
423
446
  setNetwork,
424
447
  setOnboardingOnlyJwt,
@@ -451,6 +474,7 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
451
474
  theme,
452
475
  toolkitEnabled,
453
476
  unlinkConnectedWallet,
477
+ updateConnectedWalletById,
454
478
  user,
455
479
  walletConnector: (_b = primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector) !== null && _b !== void 0 ? _b : null,
456
480
  walletUiUtils,
@@ -460,7 +484,6 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
460
484
  walletsToConnectByChain,
461
485
  });
462
486
  }, [
463
- socialProvidersFilter,
464
487
  accessDeniedButton,
465
488
  accessDeniedMessagePrimary,
466
489
  accessDeniedMessageSecondary,
@@ -475,13 +498,11 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
475
498
  computeConnectedStateForWallets,
476
499
  connectWallet,
477
500
  connectedWallet,
478
- customPrivacyPolicy,
479
- customTermsOfServices,
480
- primaryWallet,
481
- secondaryWallets,
482
- connectedWalletsInfo,
501
+ connectedWallets,
483
502
  consumeNonce,
484
503
  cssOverrides,
504
+ customPrivacyPolicy,
505
+ customTermsOfServices,
485
506
  debugError,
486
507
  onboardingOnlyJwt,
487
508
  defaultNumberOfWalletsToShow,
@@ -492,6 +513,7 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
492
513
  getConnectedWalletById,
493
514
  getNameService,
494
515
  handleLogOut,
516
+ unlinkConnectedWallet,
495
517
  handleUnlinkWallet,
496
518
  isAuthenticated,
497
519
  isBridgeFlow,
@@ -499,6 +521,8 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
499
521
  isSingleWalletAccount,
500
522
  isUserConnected,
501
523
  isVerifying,
524
+ primaryWallet,
525
+ secondaryWallets,
502
526
  loadingNetwork,
503
527
  loginWithEmail,
504
528
  multiWallet,
@@ -525,6 +549,7 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
525
549
  setCallback,
526
550
  setConnectedUser,
527
551
  setLogInWithEmail,
552
+ setMultiWallet,
528
553
  setMultiWalletWidgetState,
529
554
  setNetwork,
530
555
  setPrimaryWallet,
@@ -544,16 +569,17 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
544
569
  socialMediaIconUrl,
545
570
  socialMediaLinkText,
546
571
  socialMediaUrl,
572
+ socialProvidersFilter,
547
573
  termsOfServiceUrl,
548
574
  theme,
549
575
  toolkitEnabled,
550
- unlinkConnectedWallet,
551
576
  user,
552
577
  walletUiUtils,
553
578
  wallets,
554
579
  walletsByChain,
555
580
  walletsFilter,
556
581
  walletsToConnectByChain,
582
+ updateConnectedWalletById,
557
583
  ]);
558
584
  React.useEffect(() => {
559
585
  const addPrefetch = (attr) => {
@@ -597,7 +623,8 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
597
623
  setShowDynamicUserProfile(true);
598
624
  }
599
625
  }, [multiWallet, multiWalletWidgetState, showDynamicUserProfile, user]);
600
- return (jsxRuntime.jsx(DynamicContext.Provider, Object.assign({ value: value }, { children: jsxRuntime.jsx(walletBook.WalletBookContextProvider, Object.assign({ walletBook: walletBook$1 }, { children: jsxRuntime.jsx(ThemeContext.ThemeContextProvider, Object.assign({ customerTheme: parseTheme.parseTheme(theme, ((_g = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.design) === null || _g === void 0 ? void 0 : _g.modal) || undefined), designSettings: projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.design }, { children: jsxRuntime.jsx(LoadingContext.LoadingContextProvider, { children: jsxRuntime.jsx(ViewContext.ViewContextProvider, Object.assign({ initialView: helpers.getInitialView({
626
+ return (jsxRuntime.jsx(DynamicContext.Provider, Object.assign({ value: value }, { children: jsxRuntime.jsx(walletBook.WalletBookContextProvider, Object.assign({ walletBook: walletBook$1 }, { children: jsxRuntime.jsx(ThemeContext.ThemeContextProvider, Object.assign({ customerTheme: parseTheme.parseTheme(theme, ((_h = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.design) === null || _h === void 0 ? void 0 : _h.modal) || undefined), designSettings: projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.design }, { children: jsxRuntime.jsx(LoadingContext.LoadingContextProvider, { children: jsxRuntime.jsx(ViewContext.ViewContextProvider, Object.assign({ initialView: helpers.getInitialView({
627
+ connectedWallets,
601
628
  isBridgeFlow,
602
629
  isUserConnected,
603
630
  loginWithEmail,
@@ -606,3 +633,4 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
606
633
 
607
634
  exports.DynamicContext = DynamicContext;
608
635
  exports.DynamicContextProvider = DynamicContextProvider;
636
+ exports.PUBLIC_PROJECT_LIVE_ENVIRONMENT_ID = PUBLIC_PROJECT_LIVE_ENVIRONMENT_ID;
@@ -7,9 +7,10 @@ import { WalletOption, UserProfile, Wallet, MultiWalletWidgetState, AccountSwitc
7
7
  import { ThemeData, ThemeSetting } from '../ThemeContext';
8
8
  import { MultiWalletWidgetStateSetter } from '../../utils/hooks/multiWallet';
9
9
  import { SocialNetworkIconType } from '../../utils/functions/getSocialNetworkIcon';
10
- import { ConnectedWalletConnectorType } from '../../utils/hooks/useConnectWallet/useConnectWallet';
10
+ import type { ConnectedWalletConnectorType } from '../../utils/hooks/useConnectWallet/useConnectWallet';
11
11
  import { Callback } from './useCustomerCallbacks';
12
12
  import { DisplayOrder, SetDisplayOrderPriority } from './hooks';
13
+ export declare const PUBLIC_PROJECT_LIVE_ENVIRONMENT_ID = "2762a57b-faa4-41ce-9f16-abff9300e2c9";
13
14
  export type ChainsToConnect = {
14
15
  chain: Chain;
15
16
  numberOfWallets: number;
@@ -34,9 +35,9 @@ export interface IDynamicContext {
34
35
  connectWallet: (walletConnector: WalletConnector, fetchPublicAddressOpts?: FetchPublicAddressOpts) => Promise<string>;
35
36
  connectedWallet: Wallet | null;
36
37
  connectedWallets: Wallet[];
38
+ linkedWallets: Wallet[];
37
39
  isUserConnected: boolean;
38
40
  setConnectedUser: (value: boolean | ((val: boolean) => boolean)) => void;
39
- connectedWalletsInfo: ConnectedWalletConnectorType[] | [];
40
41
  consumeNonce: () => string | undefined;
41
42
  cssOverrides?: string | JSX.Element;
42
43
  customPrivacyPolicy?: ReactNode;
@@ -88,6 +89,7 @@ export interface IDynamicContext {
88
89
  setIsSingleWalletAccount: Dispatch<SetStateAction<boolean>>;
89
90
  setIsVerifying: Dispatch<SetStateAction<boolean>>;
90
91
  setLogInWithEmail: Dispatch<SetStateAction<boolean>>;
92
+ setMultiWallet: (value: boolean) => void;
91
93
  setMultiWalletWidgetState: MultiWalletWidgetStateSetter;
92
94
  setNetwork: Dispatch<SetStateAction<number | string | undefined>>;
93
95
  setOnboardingOnlyJwt: Dispatch<SetStateAction<string | undefined>>;
@@ -130,6 +132,7 @@ export interface IDynamicContext {
130
132
  walletsFilter?: (options: WalletOption[]) => WalletOption[];
131
133
  socialProvidersFilter?: SocialProviderFilter;
132
134
  removeConnectedWalletsInfo: () => void;
135
+ updateConnectedWalletById: (walletId: string, payload: Partial<ConnectedWalletConnectorType>) => void;
133
136
  }
134
137
  export interface DynamicContextProps {
135
138
  children: ReactNode;
@@ -160,7 +163,7 @@ export interface DynamicContextProps {
160
163
  * @default WARN
161
164
  */
162
165
  logLevel?: keyof typeof LogLevel;
163
- /** @deprecated enable multi wallet in the bashboard settings instead */
166
+ /** @deprecated enable multi wallet in the dashboard settings instead */
164
167
  multiWallet?: boolean;
165
168
  newToWeb3WalletChainMap?: ChainToWalletMap;
166
169
  notInTheListImageUrl?: string;