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

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 (361) hide show
  1. package/CHANGELOG.md +37 -0
  2. package/package.cjs +1 -1
  3. package/package.js +1 -1
  4. package/package.json +8 -8
  5. package/src/index.cjs +3 -0
  6. package/src/index.js +2 -0
  7. package/src/lib/Main.cjs +1 -0
  8. package/src/lib/Main.js +1 -0
  9. package/src/lib/components/Accordion/components/AccordionItem/AccordionItem.cjs +1 -0
  10. package/src/lib/components/Accordion/components/AccordionItem/AccordionItem.js +1 -0
  11. package/src/lib/components/AnimatePresence/AnimatePresence.cjs +1 -0
  12. package/src/lib/components/AnimatePresence/AnimatePresence.js +1 -0
  13. package/src/lib/components/AuthProviderIcon/AuthProviderIcon.cjs +1 -0
  14. package/src/lib/components/AuthProviderIcon/AuthProviderIcon.js +1 -0
  15. package/src/lib/components/Button/Button.cjs +12 -4
  16. package/src/lib/components/Button/Button.d.ts +3 -2
  17. package/src/lib/components/Button/Button.js +12 -4
  18. package/src/lib/components/ChainCard/ChainCard.cjs +1 -1
  19. package/src/lib/components/ChainCard/ChainCard.js +1 -1
  20. package/src/lib/components/Divider/Divider.cjs +1 -0
  21. package/src/lib/components/Divider/Divider.js +1 -0
  22. package/src/lib/components/IconWithSpinner/IconWithSpinner.cjs +2 -2
  23. package/src/lib/components/IconWithSpinner/IconWithSpinner.js +2 -2
  24. package/src/lib/components/LegacySafariCssOverrides/LegacySafariCssOverrides.cjs +9 -0
  25. package/src/lib/components/LegacySafariCssOverrides/LegacySafariCssOverrides.d.ts +2 -0
  26. package/src/lib/components/LegacySafariCssOverrides/LegacySafariCssOverrides.js +5 -0
  27. package/src/lib/components/LegacySafariCssOverrides/index.d.ts +1 -0
  28. package/src/lib/components/LogoutButton/LogoutButton.cjs +17 -3
  29. package/src/lib/components/LogoutButton/LogoutButton.js +17 -3
  30. package/src/lib/components/MenuList/Dropdown/Dropdown.cjs +85 -0
  31. package/src/lib/components/MenuList/Dropdown/Dropdown.d.ts +16 -0
  32. package/src/lib/components/MenuList/Dropdown/Dropdown.js +81 -0
  33. package/src/lib/components/MenuList/Dropdown/index.d.ts +1 -0
  34. package/src/lib/components/MenuList/MenuList/MenuList.cjs +34 -0
  35. package/src/lib/components/MenuList/MenuList/MenuList.d.ts +15 -0
  36. package/src/lib/components/MenuList/MenuList/MenuList.js +30 -0
  37. package/src/lib/components/MenuList/MenuList/index.d.ts +1 -0
  38. package/src/lib/components/MenuList/index.d.ts +1 -0
  39. package/src/lib/components/MenuList/utils/index.d.ts +1 -0
  40. package/src/lib/components/{Popper → MenuList}/utils/watchToScrollInHierarchy/watchToScrollInHierarchy.cjs +6 -1
  41. package/src/lib/components/MenuList/utils/watchToScrollInHierarchy/watchToScrollInHierarchy.d.ts +5 -0
  42. package/src/lib/components/{Popper → MenuList}/utils/watchToScrollInHierarchy/watchToScrollInHierarchy.js +6 -1
  43. package/src/lib/components/Modal/Modal.cjs +1 -0
  44. package/src/lib/components/Modal/Modal.js +1 -0
  45. package/src/lib/components/NetworkPicker/NetworkPicker.cjs +9 -12
  46. package/src/lib/components/NetworkPicker/NetworkPicker.js +9 -12
  47. package/src/lib/components/NetworkPicker/components/EvmNetworkControl/EvmNetworkControl.cjs +1 -0
  48. package/src/lib/components/NetworkPicker/components/EvmNetworkControl/EvmNetworkControl.js +1 -0
  49. package/src/lib/components/NetworkPicker/components/Network/Network.cjs +1 -0
  50. package/src/lib/components/NetworkPicker/components/Network/Network.js +1 -0
  51. package/src/lib/components/NetworkPicker/components/NonNetworkSwitchingSupportedControl/NonNetworkSwitchingSupportedControl.cjs +1 -0
  52. package/src/lib/components/NetworkPicker/components/NonNetworkSwitchingSupportedControl/NonNetworkSwitchingSupportedControl.js +1 -0
  53. package/src/lib/components/OTPVerificationView/OTPVerificationView.cjs +1 -0
  54. package/src/lib/components/OTPVerificationView/OTPVerificationView.js +1 -0
  55. package/src/lib/components/OverlayCard/OverlayCard.cjs +10 -11
  56. package/src/lib/components/OverlayCard/OverlayCard.d.ts +4 -2
  57. package/src/lib/components/OverlayCard/OverlayCard.js +11 -11
  58. package/src/lib/components/Popper/Popper/Popper.cjs +12 -12
  59. package/src/lib/components/Popper/Popper/Popper.d.ts +7 -4
  60. package/src/lib/components/Popper/Popper/Popper.js +12 -12
  61. package/src/lib/components/Popper/PopperContent/PopperContent.cjs +1 -1
  62. package/src/lib/components/Popper/PopperContent/PopperContent.d.ts +2 -1
  63. package/src/lib/components/Popper/PopperContent/PopperContent.js +1 -1
  64. package/src/lib/components/Popper/utils/getChildPosition/getChildPosition.cjs +1 -0
  65. package/src/lib/components/Popper/utils/getChildPosition/getChildPosition.d.ts +1 -0
  66. package/src/lib/components/Popper/utils/getChildPosition/getChildPosition.js +1 -0
  67. package/src/lib/components/Popper/utils/index.d.ts +0 -1
  68. package/src/lib/components/Portal/Portal.cjs +3 -2
  69. package/src/lib/components/Portal/Portal.js +3 -2
  70. package/src/lib/components/PoweredByDynamic/PoweredByDynamic.cjs +2 -1
  71. package/src/lib/components/PoweredByDynamic/PoweredByDynamic.js +2 -1
  72. package/src/lib/components/ShadowDOM/ShadowDOM.cjs +4 -2
  73. package/src/lib/components/ShadowDOM/ShadowDOM.js +4 -2
  74. package/src/lib/components/Tooltip/Tooltip.cjs +1 -0
  75. package/src/lib/components/Tooltip/Tooltip.js +1 -0
  76. package/src/lib/components/TransactionStatusLayout/TransactionStatusLayout.cjs +1 -0
  77. package/src/lib/components/TransactionStatusLayout/TransactionStatusLayout.js +1 -0
  78. package/src/lib/components/Transition/VerticalDrawerTransition/VerticalDrawerTransition.cjs +1 -0
  79. package/src/lib/components/Transition/VerticalDrawerTransition/VerticalDrawerTransition.js +1 -0
  80. package/src/lib/components/UserAddress/UserAddress.cjs +1 -0
  81. package/src/lib/components/UserAddress/UserAddress.js +1 -0
  82. package/src/lib/components/UserProfile/parts/UserProfileField/UserProfileField.cjs +1 -0
  83. package/src/lib/components/UserProfile/parts/UserProfileField/UserProfileField.js +1 -0
  84. package/src/lib/components/UserProfile/parts/UserProfileSection/UserProfileSection.cjs +1 -0
  85. package/src/lib/components/UserProfile/parts/UserProfileSection/UserProfileSection.js +1 -0
  86. package/src/lib/components/UserProfile/parts/UserProfileSocialAccount/UserProfileSocialAccount.cjs +1 -0
  87. package/src/lib/components/UserProfile/parts/UserProfileSocialAccount/UserProfileSocialAccount.js +1 -0
  88. package/src/lib/components/index.d.ts +1 -0
  89. package/src/lib/context/DynamicContext/DynamicContext.cjs +80 -48
  90. package/src/lib/context/DynamicContext/DynamicContext.d.ts +7 -134
  91. package/src/lib/context/DynamicContext/DynamicContext.js +81 -49
  92. package/src/lib/context/DynamicContext/types/index.d.ts +144 -0
  93. package/src/lib/context/DynamicContext/useCustomerCallbacks/types.d.ts +5 -1
  94. package/src/lib/context/DynamicContext/useCustomerCallbacks/useCustomerAuthFlowCallbacks.cjs +1 -0
  95. package/src/lib/context/DynamicContext/useCustomerCallbacks/useCustomerAuthFlowCallbacks.js +1 -0
  96. package/src/lib/context/DynamicContext/useCustomerCallbacks/useCustomerCallbacks.cjs +9 -3
  97. package/src/lib/context/DynamicContext/useCustomerCallbacks/useCustomerCallbacks.d.ts +2 -2
  98. package/src/lib/context/DynamicContext/useCustomerCallbacks/useCustomerCallbacks.js +9 -3
  99. package/src/lib/context/DynamicContext/useCustomerCallbacks/utils/disableAuthVerificationFlag/disableAuthVerificationFlag.cjs +27 -0
  100. package/src/lib/context/DynamicContext/useCustomerCallbacks/utils/disableAuthVerificationFlag/disableAuthVerificationFlag.d.ts +3 -0
  101. package/src/lib/context/DynamicContext/useCustomerCallbacks/utils/disableAuthVerificationFlag/disableAuthVerificationFlag.js +23 -0
  102. package/src/lib/context/DynamicContext/useCustomerCallbacks/utils/disableAuthVerificationFlag/index.d.ts +1 -0
  103. package/src/lib/context/DynamicContext/useCustomerCallbacks/utils/index.d.ts +1 -0
  104. package/src/lib/context/DynamicContext/useDynamicContext.cjs +5 -1
  105. package/src/lib/context/DynamicContext/useDynamicContext.d.ts +4 -2
  106. package/src/lib/context/DynamicContext/useDynamicContext.js +5 -1
  107. package/src/lib/context/DynamicContext/useInternalDynamicContext.d.ts +1 -1
  108. package/src/lib/context/QrCodeContext/QrCodeContext.cjs +1 -0
  109. package/src/lib/context/QrCodeContext/QrCodeContext.js +1 -0
  110. package/src/lib/context/SendBalanceContext/SendBalanceContext.cjs +1 -0
  111. package/src/lib/context/SendBalanceContext/SendBalanceContext.js +1 -0
  112. package/src/lib/context/SocialRedirectContext/SocialRedirectContext.cjs +2 -1
  113. package/src/lib/context/SocialRedirectContext/SocialRedirectContext.js +2 -1
  114. package/src/lib/context/WalletContext/WalletContext.cjs +3 -3
  115. package/src/lib/context/WalletContext/WalletContext.d.ts +1 -3
  116. package/src/lib/context/WalletContext/WalletContext.js +3 -3
  117. package/src/lib/data/api.cjs +14 -0
  118. package/src/lib/data/api.d.ts +1 -0
  119. package/src/lib/data/api.js +14 -1
  120. package/src/lib/layout/DynamicAuthLayout/DynamicAuthLayout.cjs +1 -0
  121. package/src/lib/layout/DynamicAuthLayout/DynamicAuthLayout.js +1 -0
  122. package/src/lib/layout/DynamicAuthLayout/Header/header.cjs +2 -1
  123. package/src/lib/layout/DynamicAuthLayout/Header/header.js +2 -1
  124. package/src/lib/layout/DynamicAuthLayout/HelpContent/HelpHeader/HelpHeader.cjs +2 -1
  125. package/src/lib/layout/DynamicAuthLayout/HelpContent/HelpHeader/HelpHeader.js +2 -1
  126. package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletListHelpContent/Item/Item.cjs +1 -0
  127. package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletListHelpContent/Item/Item.js +1 -0
  128. package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletListHelpContent/WalletExtensionOrAppContinueButton/WalletExtensionOrAppContinueButton.cjs +1 -0
  129. package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletListHelpContent/WalletExtensionOrAppContinueButton/WalletExtensionOrAppContinueButton.js +1 -0
  130. package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletListHelpContent/WalletListHelpContent.cjs +1 -0
  131. package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletListHelpContent/WalletListHelpContent.js +1 -0
  132. package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletMoreInfoContent/WalletMoreInfoContent.cjs +1 -0
  133. package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletMoreInfoContent/WalletMoreInfoContent.js +1 -0
  134. package/src/lib/layout/DynamicAuthLayout/ToSFooter/ToSFooter.cjs +1 -0
  135. package/src/lib/layout/DynamicAuthLayout/ToSFooter/ToSFooter.js +1 -0
  136. package/src/lib/layout/DynamicAuthLayout/WalletProgressStepper/WalletProgressStepper.cjs +1 -0
  137. package/src/lib/layout/DynamicAuthLayout/WalletProgressStepper/WalletProgressStepper.js +1 -0
  138. package/src/lib/layouts/BridgeNextWalletToConnectLayout/BridgeNextWalletToConnectLayout.cjs +1 -0
  139. package/src/lib/layouts/BridgeNextWalletToConnectLayout/BridgeNextWalletToConnectLayout.js +1 -0
  140. package/src/lib/layouts/BridgeWelcomeLayout/BridgeWelcomeLayout.cjs +1 -0
  141. package/src/lib/layouts/BridgeWelcomeLayout/BridgeWelcomeLayout.js +1 -0
  142. package/src/lib/layouts/ConnectedWalletsListLayout/ConnectedWalletsListLayout.cjs +1 -0
  143. package/src/lib/layouts/ConnectedWalletsListLayout/ConnectedWalletsListLayout.js +1 -0
  144. package/src/lib/modals/SendBalanceModal/SendBalanceModal.cjs +1 -0
  145. package/src/lib/modals/SendBalanceModal/SendBalanceModal.js +1 -0
  146. package/src/lib/modals/SignMessageConfirmationModal/SignMessageConfirmationModal.cjs +1 -0
  147. package/src/lib/modals/SignMessageConfirmationModal/SignMessageConfirmationModal.js +1 -0
  148. package/src/lib/modals/TransactionConfirmationModal/TransactionConfirmationModal.cjs +1 -0
  149. package/src/lib/modals/TransactionConfirmationModal/TransactionConfirmationModal.js +1 -0
  150. package/src/lib/shared/types/index.d.ts +2 -1
  151. package/src/lib/shared/utils/hooks/index.d.ts +1 -0
  152. package/src/lib/shared/utils/hooks/useForwardedRef/index.d.ts +1 -0
  153. package/src/lib/shared/utils/hooks/useForwardedRef/useForwardedRef.cjs +25 -0
  154. package/src/lib/shared/utils/hooks/useForwardedRef/useForwardedRef.d.ts +2 -0
  155. package/src/lib/shared/utils/hooks/useForwardedRef/useForwardedRef.js +21 -0
  156. package/src/lib/styles/index.shadow.cjs +1 -1
  157. package/src/lib/styles/index.shadow.js +1 -1
  158. package/src/lib/utils/functions/createUserProfile/createUserProfile.cjs +1 -1
  159. package/src/lib/utils/functions/createUserProfile/createUserProfile.js +1 -1
  160. package/src/lib/utils/functions/getMissingChains/getMissingChains.cjs +1 -1
  161. package/src/lib/utils/functions/getMissingChains/getMissingChains.d.ts +1 -1
  162. package/src/lib/utils/functions/getMissingChains/getMissingChains.js +1 -1
  163. package/src/lib/utils/hooks/authenticationHooks/useConnectAndSign/useConnectAndSign.cjs +5 -1
  164. package/src/lib/utils/hooks/authenticationHooks/useConnectAndSign/useConnectAndSign.js +5 -1
  165. package/src/lib/utils/hooks/authenticationHooks/useConnectAndSignSplitSteps/useConnectAndSignSplitSteps.cjs +7 -1
  166. package/src/lib/utils/hooks/authenticationHooks/useConnectAndSignSplitSteps/useConnectAndSignSplitSteps.js +7 -1
  167. package/src/lib/utils/hooks/index.d.ts +0 -1
  168. package/src/lib/utils/hooks/multiWallet/useSyncPrimaryWallet/useSyncPrimaryWallet.cjs +3 -3
  169. package/src/lib/utils/hooks/multiWallet/useSyncPrimaryWallet/useSyncPrimaryWallet.d.ts +3 -3
  170. package/src/lib/utils/hooks/multiWallet/useSyncPrimaryWallet/useSyncPrimaryWallet.js +3 -3
  171. package/src/lib/utils/hooks/multiWallet/useVerifyOnAwaitingSignature/useVerifyOnAwaitingSignature.cjs +8 -11
  172. package/src/lib/utils/hooks/multiWallet/useVerifyOnAwaitingSignature/useVerifyOnAwaitingSignature.js +8 -11
  173. package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.cjs +97 -84
  174. package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.d.ts +5 -7
  175. package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.js +99 -86
  176. package/src/lib/utils/hooks/useConnectWithEmail/useConnectWithEmail.cjs +5 -0
  177. package/src/lib/utils/hooks/useConnectWithEmail/useConnectWithEmail.js +5 -0
  178. package/src/lib/utils/hooks/useConnectedWalletsNetworkValidation/useConnectedWalletsNetworkValidation.cjs +69 -0
  179. package/src/lib/utils/hooks/useConnectedWalletsNetworkValidation/useConnectedWalletsNetworkValidation.d.ts +1 -0
  180. package/src/lib/utils/hooks/useConnectedWalletsNetworkValidation/useConnectedWalletsNetworkValidation.js +65 -0
  181. package/src/lib/utils/hooks/useFetchProjectSettings/useFetchProjectSettings.cjs +2 -1
  182. package/src/lib/utils/hooks/useFetchProjectSettings/useFetchProjectSettings.d.ts +3 -1
  183. package/src/lib/utils/hooks/useFetchProjectSettings/useFetchProjectSettings.js +3 -2
  184. package/src/lib/utils/hooks/useHandleWalletsToConnect/useHandleWalletsToConnect.cjs +5 -0
  185. package/src/lib/utils/hooks/useHandleWalletsToConnect/useHandleWalletsToConnect.js +5 -0
  186. package/src/lib/utils/hooks/useVerifyWallet/useVerifyWallet.cjs +3 -1
  187. package/src/lib/utils/hooks/useVerifyWallet/useVerifyWallet.js +3 -1
  188. package/src/lib/utils/hooks/useWalletConnectors/useWalletConnectors.cjs +11 -2
  189. package/src/lib/utils/hooks/useWalletConnectors/useWalletConnectors.d.ts +3 -2
  190. package/src/lib/utils/hooks/useWalletConnectors/useWalletConnectors.js +11 -2
  191. package/src/lib/utils/hooks/useWalletEventListeners/useWalletEventListeners.cjs +18 -8
  192. package/src/lib/utils/hooks/useWalletEventListeners/useWalletEventListeners.d.ts +3 -3
  193. package/src/lib/utils/hooks/useWalletEventListeners/useWalletEventListeners.js +18 -8
  194. package/src/lib/utils/hooks/useWalletItemActions/useWalletItemActions.cjs +4 -4
  195. package/src/lib/utils/hooks/useWalletItemActions/useWalletItemActions.js +4 -4
  196. package/src/lib/utils/hooks/useWalletUiUtils/useWalletUiUtils.cjs +1 -0
  197. package/src/lib/utils/hooks/useWalletUiUtils/useWalletUiUtils.js +1 -0
  198. package/src/lib/views/CaptchaVerifyUser/CaptchaVerifyUser.cjs +2 -1
  199. package/src/lib/views/CaptchaVerifyUser/CaptchaVerifyUser.js +2 -1
  200. package/src/lib/views/CollectUserDataView/CollectUserDataView.cjs +1 -0
  201. package/src/lib/views/CollectUserDataView/CollectUserDataView.js +1 -0
  202. package/src/lib/views/CollectUserDataView/OnboardingUserDataForm/OnboardingUserDataForm.cjs +1 -0
  203. package/src/lib/views/CollectUserDataView/OnboardingUserDataForm/OnboardingUserDataForm.js +1 -0
  204. package/src/lib/views/CollectUserDataView/UserDataFields/index.cjs +1 -0
  205. package/src/lib/views/CollectUserDataView/UserDataFields/index.js +1 -0
  206. package/src/lib/views/CollectUserDataView/fieldsConfig.cjs +8 -4
  207. package/src/lib/views/CollectUserDataView/fieldsConfig.js +8 -4
  208. package/src/lib/views/CollectUserDataViewLoginWithEmail/CollectUserDataViewLoginWithEmail.cjs +1 -0
  209. package/src/lib/views/CollectUserDataViewLoginWithEmail/CollectUserDataViewLoginWithEmail.js +1 -0
  210. package/src/lib/views/EmailConfirmationWaitingView/EmailConfirmationWaitingView.cjs +1 -0
  211. package/src/lib/views/EmailConfirmationWaitingView/EmailConfirmationWaitingView.js +1 -0
  212. package/src/lib/views/EmailUpdate/EmailUpdate.cjs +1 -0
  213. package/src/lib/views/EmailUpdate/EmailUpdate.js +1 -0
  214. package/src/lib/views/EmailVerification/EmailVerification.cjs +1 -0
  215. package/src/lib/views/EmailVerification/EmailVerification.js +1 -0
  216. package/src/lib/views/EmailWalletOTPVerificationView/EmailWalletOTPVerificationView.cjs +1 -0
  217. package/src/lib/views/EmailWalletOTPVerificationView/EmailWalletOTPVerificationView.js +1 -0
  218. package/src/lib/views/LoginWithEmailView/components/ListItemButton/ListItemButton.cjs +1 -0
  219. package/src/lib/views/LoginWithEmailView/components/ListItemButton/ListItemButton.js +1 -0
  220. package/src/lib/views/LoginWithEmailView/components/LoginWithEmailForm/LoginWithEmailForm.cjs +1 -0
  221. package/src/lib/views/LoginWithEmailView/components/LoginWithEmailForm/LoginWithEmailForm.js +1 -0
  222. package/src/lib/views/LoginWithEmailView/components/SocialSignIn/SocialSignIn.cjs +1 -0
  223. package/src/lib/views/LoginWithEmailView/components/SocialSignIn/SocialSignIn.js +1 -0
  224. package/src/lib/views/NetworkNotSupported/NetworkNotSupported.cjs +9 -10
  225. package/src/lib/views/NetworkNotSupported/NetworkNotSupported.js +10 -11
  226. package/src/lib/views/NetworkNotSupportedSwitchManual/NetworkNotSupportedSwitchManual.cjs +12 -12
  227. package/src/lib/views/NetworkNotSupportedSwitchManual/NetworkNotSupportedSwitchManual.js +13 -13
  228. package/src/lib/views/NoAccess/NoAccess.cjs +1 -0
  229. package/src/lib/views/NoAccess/NoAccess.js +1 -0
  230. package/src/lib/views/NoAccess/useNoAccessText.cjs +1 -1
  231. package/src/lib/views/NoAccess/useNoAccessText.js +1 -1
  232. package/src/lib/views/NoQrNotInstalledView/NoQrNotInstalledView.cjs +1 -0
  233. package/src/lib/views/NoQrNotInstalledView/NoQrNotInstalledView.js +1 -0
  234. package/src/lib/views/NoQrNotInstalledView/WalletHelpLink.cjs +1 -0
  235. package/src/lib/views/NoQrNotInstalledView/WalletHelpLink.js +1 -0
  236. package/src/lib/views/PendingConnectView/PendingConnectView.cjs +1 -0
  237. package/src/lib/views/PendingConnectView/PendingConnectView.js +1 -0
  238. package/src/lib/views/PendingSignatureView/PendingSignatureView.cjs +1 -0
  239. package/src/lib/views/PendingSignatureView/PendingSignatureView.js +1 -0
  240. package/src/lib/views/QrCodeView/QRCode.cjs +1 -0
  241. package/src/lib/views/QrCodeView/QRCode.js +1 -0
  242. package/src/lib/views/QrCodeView/QrCodeContainer/QrCodeContainer.cjs +1 -0
  243. package/src/lib/views/QrCodeView/QrCodeContainer/QrCodeContainer.js +1 -0
  244. package/src/lib/views/QrCodeView/QrCodeView.cjs +1 -0
  245. package/src/lib/views/QrCodeView/QrCodeView.js +1 -0
  246. package/src/lib/views/SendBalanceView/SendBalanceView.cjs +1 -0
  247. package/src/lib/views/SendBalanceView/SendBalanceView.js +1 -0
  248. package/src/lib/views/SocialRedirectView/SocialRedirectView.cjs +1 -0
  249. package/src/lib/views/SocialRedirectView/SocialRedirectView.js +1 -0
  250. package/src/lib/views/SocialWrongAccountView/SocialWrongAccountView.cjs +1 -0
  251. package/src/lib/views/SocialWrongAccountView/SocialWrongAccountView.js +1 -0
  252. package/src/lib/views/TransactionConfirmationView/TransactionConfirmationView.cjs +1 -0
  253. package/src/lib/views/TransactionConfirmationView/TransactionConfirmationView.js +1 -0
  254. package/src/lib/views/TransactionConfirmationView/hooks/useTransactionData/useTransactionData.cjs +1 -0
  255. package/src/lib/views/TransactionConfirmationView/hooks/useTransactionData/useTransactionData.js +1 -0
  256. package/src/lib/views/WalletList/SearchNotFoundMessage/SearchNotFoundMessage.cjs +1 -0
  257. package/src/lib/views/WalletList/SearchNotFoundMessage/SearchNotFoundMessage.js +1 -0
  258. package/src/lib/views/WalletList/WalletListItem/WalletListItem.cjs +2 -1
  259. package/src/lib/views/WalletList/WalletListItem/WalletListItem.js +2 -1
  260. package/src/lib/views/WalletLockedView/WalletLockedView.cjs +1 -0
  261. package/src/lib/views/WalletLockedView/WalletLockedView.js +1 -0
  262. package/src/lib/views/WalletSignSpinnerView/WalletSignSpinnerView.cjs +1 -0
  263. package/src/lib/views/WalletSignSpinnerView/WalletSignSpinnerView.js +1 -0
  264. package/src/lib/views/WalletUsedView/WalletUsedView.cjs +1 -0
  265. package/src/lib/views/WalletUsedView/WalletUsedView.js +1 -0
  266. package/src/lib/widgets/DynamicBridgeWidget/DynamicBridgeWidget.cjs +2 -1
  267. package/src/lib/widgets/DynamicBridgeWidget/DynamicBridgeWidget.js +2 -1
  268. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeUserProfile/DynamicBridgeUserProfile.cjs +1 -0
  269. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeUserProfile/DynamicBridgeUserProfile.js +1 -0
  270. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWalletCard/DynamicBridgeWalletCard.cjs +1 -0
  271. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWalletCard/DynamicBridgeWalletCard.js +1 -0
  272. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWalletCardBody/DynamicBridgeWalletCardBody.cjs +1 -0
  273. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWalletCardBody/DynamicBridgeWalletCardBody.js +1 -0
  274. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWidgetEmptyCard/DynamicBridgeWidgetEmptyCard.cjs +1 -0
  275. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWidgetEmptyCard/DynamicBridgeWidgetEmptyCard.js +1 -0
  276. package/src/lib/widgets/DynamicBridgeWidget/context/DynamicBridgeWidgetContext/DynamicBridgeWidgetContext.cjs +2 -0
  277. package/src/lib/widgets/DynamicBridgeWidget/context/DynamicBridgeWidgetContext/DynamicBridgeWidgetContext.js +2 -0
  278. package/src/lib/widgets/DynamicBridgeWidget/views/WalletsView/WalletsView.cjs +2 -1
  279. package/src/lib/widgets/DynamicBridgeWidget/views/WalletsView/WalletsView.js +2 -1
  280. package/src/lib/widgets/DynamicBridgeWidget/views/WalletsView/components/SecondaryWallets/SecondaryWallets.cjs +1 -1
  281. package/src/lib/widgets/DynamicBridgeWidget/views/WalletsView/components/SecondaryWallets/SecondaryWallets.js +1 -1
  282. package/src/lib/widgets/DynamicWidget/DynamicWidget.cjs +10 -3
  283. package/src/lib/widgets/DynamicWidget/DynamicWidget.js +12 -5
  284. package/src/lib/widgets/DynamicWidget/components/AccountControl/AccountControl.cjs +1 -0
  285. package/src/lib/widgets/DynamicWidget/components/AccountControl/AccountControl.js +1 -0
  286. package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveWalletInformation.cjs +5 -4
  287. package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveWalletInformation.js +5 -4
  288. package/src/lib/widgets/DynamicWidget/components/Balance/Balance.cjs +1 -0
  289. package/src/lib/widgets/DynamicWidget/components/Balance/Balance.js +1 -0
  290. package/src/lib/widgets/DynamicWidget/components/DotsMenu/DotsMenu.cjs +5 -4
  291. package/src/lib/widgets/DynamicWidget/components/DotsMenu/DotsMenu.d.ts +4 -7
  292. package/src/lib/widgets/DynamicWidget/components/DotsMenu/DotsMenu.js +5 -4
  293. package/src/lib/widgets/DynamicWidget/components/DotsMenuDropdown/DotsMenuDropdown.cjs +1 -0
  294. package/src/lib/widgets/DynamicWidget/components/DotsMenuDropdown/DotsMenuDropdown.js +1 -0
  295. package/src/lib/widgets/DynamicWidget/components/DynamicUserProfile/DynamicUserProfile.cjs +4 -1
  296. package/src/lib/widgets/DynamicWidget/components/DynamicUserProfile/DynamicUserProfile.js +4 -1
  297. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.cjs +1 -0
  298. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.js +1 -0
  299. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetWalletHeader/DynamicWidgetWalletHeader.cjs +4 -3
  300. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetWalletHeader/DynamicWidgetWalletHeader.js +4 -3
  301. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetVariants/variants/DynamicWidgetDropdown/DynamicWidgetDropdown.cjs +1 -0
  302. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetVariants/variants/DynamicWidgetDropdown/DynamicWidgetDropdown.js +1 -0
  303. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetVariants/variants/DynamicWidgetModal/DynamicWidgetModal.cjs +1 -0
  304. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetVariants/variants/DynamicWidgetModal/DynamicWidgetModal.js +1 -0
  305. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetWallets/DynamicWidgetWallets.cjs +1 -0
  306. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetWallets/DynamicWidgetWallets.js +1 -0
  307. package/src/lib/widgets/DynamicWidget/components/EmailConnectorPendingSignModalContent/EmailConnectorPendingSignModalContent.cjs +1 -0
  308. package/src/lib/widgets/DynamicWidget/components/EmailConnectorPendingSignModalContent/EmailConnectorPendingSignModalContent.js +1 -0
  309. package/src/lib/widgets/DynamicWidget/components/EmailOTPConnectorPendingSignModalContent/EmailOTPConnectorPendingSignModalContent.cjs +1 -0
  310. package/src/lib/widgets/DynamicWidget/components/EmailOTPConnectorPendingSignModalContent/EmailOTPConnectorPendingSignModalContent.js +1 -0
  311. package/src/lib/widgets/DynamicWidget/components/EmptyWallets/EmptyWallets.cjs +1 -0
  312. package/src/lib/widgets/DynamicWidget/components/EmptyWallets/EmptyWallets.js +1 -0
  313. package/src/lib/widgets/DynamicWidget/components/SingleWalletButtons/SingleWalletButtons.cjs +1 -0
  314. package/src/lib/widgets/DynamicWidget/components/SingleWalletButtons/SingleWalletButtons.js +1 -0
  315. package/src/lib/widgets/DynamicWidget/components/Wallet/Wallet.cjs +2 -1
  316. package/src/lib/widgets/DynamicWidget/components/Wallet/Wallet.js +2 -1
  317. package/src/lib/widgets/DynamicWidget/components/WidgetPortal/WidgetPortal.cjs +1 -0
  318. package/src/lib/widgets/DynamicWidget/components/WidgetPortal/WidgetPortal.js +1 -0
  319. package/src/lib/widgets/DynamicWidget/context/DynamicWidgetContext.cjs +1 -0
  320. package/src/lib/widgets/DynamicWidget/context/DynamicWidgetContext.js +1 -0
  321. package/src/lib/widgets/DynamicWidget/helpers/helpers.cjs +17 -1
  322. package/src/lib/widgets/DynamicWidget/helpers/helpers.js +17 -1
  323. package/src/lib/widgets/DynamicWidget/prompts/DefaultPromptModal/DefaultPromptModal.cjs +1 -0
  324. package/src/lib/widgets/DynamicWidget/prompts/DefaultPromptModal/DefaultPromptModal.js +1 -0
  325. package/src/lib/widgets/DynamicWidget/prompts/DetectedNewWalletModal/DetectedNewWalletModal.cjs +1 -0
  326. package/src/lib/widgets/DynamicWidget/prompts/DetectedNewWalletModal/DetectedNewWalletModal.js +1 -0
  327. package/src/lib/widgets/DynamicWidget/prompts/NoQrNotInstalledModalView/NoQrNotInstalledModalView.cjs +1 -0
  328. package/src/lib/widgets/DynamicWidget/prompts/NoQrNotInstalledModalView/NoQrNotInstalledModalView.js +1 -0
  329. package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/SwitchAccountView/SwitchAccountView.cjs +1 -0
  330. package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/SwitchAccountView/SwitchAccountView.js +1 -0
  331. package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/SwitchOrUseActiveAccountView/SwitchOrUseActiveAccountView.cjs +1 -0
  332. package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/SwitchOrUseActiveAccountView/SwitchOrUseActiveAccountView.js +1 -0
  333. package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchToLinkModal/PendingAccountSwitchToLinkModal.cjs +1 -0
  334. package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchToLinkModal/PendingAccountSwitchToLinkModal.js +1 -0
  335. package/src/lib/widgets/DynamicWidget/prompts/PendingConnectionModal/PendingConnectionModal.cjs +1 -0
  336. package/src/lib/widgets/DynamicWidget/prompts/PendingConnectionModal/PendingConnectionModal.js +1 -0
  337. package/src/lib/widgets/DynamicWidget/prompts/PendingSignModal/DefaultPendingSignModalContent/DefaultPendingSignModalContent.cjs +1 -0
  338. package/src/lib/widgets/DynamicWidget/prompts/PendingSignModal/DefaultPendingSignModalContent/DefaultPendingSignModalContent.js +1 -0
  339. package/src/lib/widgets/DynamicWidget/prompts/PrimaryNotConnectedModal/PrimaryNotConnectedModal.cjs +1 -0
  340. package/src/lib/widgets/DynamicWidget/prompts/PrimaryNotConnectedModal/PrimaryNotConnectedModal.js +1 -0
  341. package/src/lib/widgets/DynamicWidget/prompts/QrCodeModalView/QrCodeModalView.cjs +1 -0
  342. package/src/lib/widgets/DynamicWidget/prompts/QrCodeModalView/QrCodeModalView.js +1 -0
  343. package/src/lib/widgets/DynamicWidget/prompts/UnlinkWalletPopUp/UnlinkWalletPopUp.cjs +1 -0
  344. package/src/lib/widgets/DynamicWidget/prompts/UnlinkWalletPopUp/UnlinkWalletPopUp.js +1 -0
  345. package/src/lib/widgets/DynamicWidget/views/EditProfileView/EditProfileView.cjs +1 -0
  346. package/src/lib/widgets/DynamicWidget/views/EditProfileView/EditProfileView.js +1 -0
  347. package/src/lib/widgets/DynamicWidget/views/ProfileView/ProfileView.cjs +1 -0
  348. package/src/lib/widgets/DynamicWidget/views/ProfileView/ProfileView.js +1 -0
  349. package/src/lib/widgets/DynamicWidget/views/WalletsView/WalletsView.cjs +1 -0
  350. package/src/lib/widgets/DynamicWidget/views/WalletsView/WalletsView.js +1 -0
  351. package/src/lib/widgets/FundingWidget/views/FundWalletView/FundWalletView.cjs +1 -0
  352. package/src/lib/widgets/FundingWidget/views/FundWalletView/FundWalletView.js +1 -0
  353. package/src/lib/components/NetworkPicker/components/ActionList/ActionList.cjs +0 -71
  354. package/src/lib/components/NetworkPicker/components/ActionList/ActionList.d.ts +0 -12
  355. package/src/lib/components/NetworkPicker/components/ActionList/ActionList.js +0 -65
  356. package/src/lib/components/NetworkPicker/components/ActionList/index.d.ts +0 -1
  357. package/src/lib/components/Popper/utils/watchToScrollInHierarchy/watchToScrollInHierarchy.d.ts +0 -1
  358. package/src/lib/utils/hooks/useWalletConnectorEvents/useWalletConnectorEvents.cjs +0 -17
  359. package/src/lib/utils/hooks/useWalletConnectorEvents/useWalletConnectorEvents.d.ts +0 -2
  360. package/src/lib/utils/hooks/useWalletConnectorEvents/useWalletConnectorEvents.js +0 -13
  361. /package/src/lib/components/{Popper → MenuList}/utils/watchToScrollInHierarchy/index.d.ts +0 -0
@@ -0,0 +1,16 @@
1
+ /// <reference types="react" />
2
+ import { PopperProps } from '../../Popper/Popper/Popper';
3
+ export type DropdownProps = PopperProps & {
4
+ isOpen: boolean;
5
+ onClickOutside?: () => void;
6
+ onScroll?: () => void;
7
+ maxHeight?: number;
8
+ };
9
+ export declare const Dropdown: import("react").ForwardRefExoticComponent<PopperProps & {
10
+ isOpen: boolean;
11
+ onClickOutside?: (() => void) | undefined;
12
+ onScroll?: (() => void) | undefined;
13
+ maxHeight?: number | undefined;
14
+ } & {
15
+ children?: import("react").ReactNode;
16
+ } & import("react").RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,81 @@
1
+ import { __rest } from '../../../../../_virtual/_tslib.js';
2
+ import { jsx } from 'react/jsx-runtime';
3
+ import { forwardRef, useEffect } from 'react';
4
+ import { classNames } from '../../../utils/functions/classNames/classNames.js';
5
+ import { Popper } from '../../Popper/Popper/Popper.js';
6
+ import { usePopper } from '../../Popper/PopperContext/PopperContext.js';
7
+ import { watchToScrollInHierarchy } from '../utils/watchToScrollInHierarchy/watchToScrollInHierarchy.js';
8
+ import '../../../shared/logger.js';
9
+ import '../../../shared/utils/classes/storage/localStorage.js';
10
+ import { useOnClickOutside } from '../../../shared/utils/hooks/useOnClickOutside/index.js';
11
+ import { useForwardedRef } from '../../../shared/utils/hooks/useForwardedRef/useForwardedRef.js';
12
+ import '@dynamic-labs/sdk-api';
13
+ import '@dynamic-labs/iconic';
14
+ import '@dynamic-labs/wallet-connector-core';
15
+ import '../../../context/ViewContext/ViewContext.js';
16
+ import '@dynamic-labs/wallet-book';
17
+ import '@dynamic-labs/utils';
18
+ import '../../../utils/constants/colors.js';
19
+ import 'ethers';
20
+ import '../../../shared/consts/index.js';
21
+ import '../../../config/ApiEndpoint.js';
22
+ import '@dynamic-labs/multi-wallet';
23
+ import '@dynamic-labs/rpc-providers';
24
+ import '../../../utils/hooks/useWallets/utils/verifyMagicIsSetup/verifyMagicIsSetup.js';
25
+ import '../../../context/DynamicContext/DynamicContext.js';
26
+ import '../../../context/ErrorContext/ErrorContext.js';
27
+ import '../../../context/AccessDeniedContext/AccessDeniedContext.js';
28
+ import { useTransition } from '../../../utils/hooks/useTransition/useTransition.js';
29
+ import 'react-dom';
30
+ import '../../ShadowDOM/ShadowDOM.js';
31
+ import '../../../context/ThemeContext/ThemeContext.js';
32
+ import 'react-focus-lock';
33
+ import '../../Transition/ZoomTransition/ZoomTransition.js';
34
+ import '../../Transition/SlideInUpTransition/SlideInUpTransition.js';
35
+ import '../../Transition/OpacityTransition/OpacityTransition.js';
36
+ import '../../IconButton/IconButton.js';
37
+ import '../../Alert/Alert.js';
38
+ import 'formik';
39
+ import 'yup';
40
+ import '../../InlineWidget/InlineWidget.js';
41
+ import '../../../context/MockContext/MockContext.js';
42
+ import '../../../context/CaptchaContext/CaptchaContext.js';
43
+ import '../../../utils/hooks/useUserUpdateRequest/useUserUpdateRequest.js';
44
+
45
+ const IN_DURATION = 300;
46
+ const OUT_DURATION = 300;
47
+ const Dropdown = forwardRef((_a, ref) => {
48
+ var { children, isOpen, onClickOutside, onScroll, className, style, maxHeight = 300 } = _a, popperProps = __rest(_a, ["children", "isOpen", "onClickOutside", "onScroll", "className", "style", "maxHeight"]);
49
+ // Get popper container
50
+ const { containerRef } = usePopper();
51
+ // ==============================
52
+ // OPEN/CLOSE LOGIC
53
+ // ==============================
54
+ const contentRef = useForwardedRef(ref);
55
+ // Close on click outside
56
+ useOnClickOutside(contentRef, () => onClickOutside === null || onClickOutside === void 0 ? void 0 : onClickOutside());
57
+ // Listen for scroll events to auto close
58
+ useEffect(() => {
59
+ if (!containerRef.current || !popperProps.anchorRef.current)
60
+ return;
61
+ return watchToScrollInHierarchy(containerRef.current, popperProps.anchorRef.current, () => onScroll === null || onScroll === void 0 ? void 0 : onScroll());
62
+ }, [containerRef, popperProps.anchorRef, onScroll]);
63
+ // ==============================
64
+ // ANIMATIONS
65
+ // ==============================
66
+ const { mount, stage, currentDuration } = useTransition({
67
+ inDuration: IN_DURATION,
68
+ isShown: isOpen,
69
+ outDuration: OUT_DURATION,
70
+ });
71
+ const transitionClassName = classNames({
72
+ 'dropdown--entering': stage === 'ENTERING',
73
+ 'dropdown--exiting': stage === 'EXITING',
74
+ });
75
+ if (!mount)
76
+ return null;
77
+ return (jsx(Popper, Object.assign({}, popperProps, { ref: contentRef }, { children: jsx("div", Object.assign({ className: classNames('dropdown', transitionClassName, className), style: Object.assign({ '--max-height': `${maxHeight}px`, animationDuration: `${currentDuration}ms` }, style) }, { children: children })) })));
78
+ });
79
+ Dropdown.displayName = 'Dropdown';
80
+
81
+ export { Dropdown };
@@ -0,0 +1 @@
1
+ export * from './Dropdown';
@@ -0,0 +1,34 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var jsxRuntime = require('react/jsx-runtime');
6
+ var utils = require('@dynamic-labs/utils');
7
+ var classNames = require('../../../utils/functions/classNames/classNames.cjs');
8
+ var OverlayCard = require('../../OverlayCard/OverlayCard.cjs');
9
+ require('react');
10
+ require('../../OverlayCard/OverlayCard.context.cjs');
11
+ var Dropdown = require('../Dropdown/Dropdown.cjs');
12
+ var ModalHeader = require('../../ModalHeader/ModalHeader.cjs');
13
+ var Typography = require('../../Typography/Typography.cjs');
14
+ var IconButton = require('../../IconButton/IconButton.cjs');
15
+ require('@dynamic-labs/sdk-api');
16
+ require('../../../shared/logger.cjs');
17
+ require('@dynamic-labs/iconic');
18
+ require('@dynamic-labs/wallet-connector-core');
19
+ require('../../../context/ViewContext/ViewContext.cjs');
20
+ var close = require('../../../shared/assets/close.cjs');
21
+ require('@dynamic-labs/wallet-book');
22
+ require('../../../utils/constants/colors.cjs');
23
+ require('../../../shared/utils/classes/storage/localStorage.cjs');
24
+ require('ethers');
25
+ require('../../../shared/consts/index.cjs');
26
+
27
+ const MenuList = ({ isOpen, onClickClose, popperProps, dropdownClassName, dropdownStyle, overlayCardClassName, overlayCardStyle, className, style, children, mobileTitle, }) => {
28
+ const closeButton = (jsxRuntime.jsx(IconButton.IconButton, Object.assign({ onClick: onClickClose, type: 'button' }, { children: jsxRuntime.jsx(close.ReactComponent, {}) })));
29
+ if (utils.isMobile())
30
+ return (jsxRuntime.jsxs(OverlayCard.OverlayCard, Object.assign({ isOpen: isOpen, onClickOverlay: onClickClose, className: classNames.classNames(overlayCardClassName, className), style: Object.assign(Object.assign({}, style), overlayCardStyle) }, { children: [jsxRuntime.jsx(ModalHeader.ModalHeader, Object.assign({ trailing: closeButton }, { children: jsxRuntime.jsx(Typography.Typography, Object.assign({ as: 'h1', variant: 'title', color: 'primary' }, { children: mobileTitle })) })), jsxRuntime.jsx("div", Object.assign({ className: 'menu-list__overlay-card__container' }, { children: children }))] })));
31
+ return (jsxRuntime.jsx(Dropdown.Dropdown, Object.assign({ isOpen: isOpen, onClickOutside: onClickClose, onScroll: onClickClose, className: classNames.classNames(dropdownClassName, className), style: Object.assign(Object.assign({}, style), dropdownStyle) }, popperProps, { children: children })));
32
+ };
33
+
34
+ exports.MenuList = MenuList;
@@ -0,0 +1,15 @@
1
+ import { CSSProperties, FC, PropsWithChildren } from 'react';
2
+ import { PopperProps } from '../../Popper/Popper/Popper';
3
+ export interface MenuListProps {
4
+ isOpen: boolean;
5
+ popperProps: Omit<Omit<PopperProps, 'className'>, 'style'>;
6
+ onClickClose?: () => void;
7
+ mobileTitle?: string;
8
+ dropdownClassName?: string;
9
+ dropdownStyle?: CSSProperties;
10
+ overlayCardClassName?: string;
11
+ overlayCardStyle?: CSSProperties;
12
+ className?: string;
13
+ style?: CSSProperties;
14
+ }
15
+ export declare const MenuList: FC<PropsWithChildren<MenuListProps>>;
@@ -0,0 +1,30 @@
1
+ import { jsx, jsxs } from 'react/jsx-runtime';
2
+ import { isMobile } from '@dynamic-labs/utils';
3
+ import { classNames } from '../../../utils/functions/classNames/classNames.js';
4
+ import { OverlayCard } from '../../OverlayCard/OverlayCard.js';
5
+ import 'react';
6
+ import '../../OverlayCard/OverlayCard.context.js';
7
+ import { Dropdown } from '../Dropdown/Dropdown.js';
8
+ import { ModalHeader } from '../../ModalHeader/ModalHeader.js';
9
+ import { Typography } from '../../Typography/Typography.js';
10
+ import { IconButton } from '../../IconButton/IconButton.js';
11
+ import '@dynamic-labs/sdk-api';
12
+ import '../../../shared/logger.js';
13
+ import '@dynamic-labs/iconic';
14
+ import '@dynamic-labs/wallet-connector-core';
15
+ import '../../../context/ViewContext/ViewContext.js';
16
+ import { ReactComponent as SvgClose } from '../../../shared/assets/close.js';
17
+ import '@dynamic-labs/wallet-book';
18
+ import '../../../utils/constants/colors.js';
19
+ import '../../../shared/utils/classes/storage/localStorage.js';
20
+ import 'ethers';
21
+ import '../../../shared/consts/index.js';
22
+
23
+ const MenuList = ({ isOpen, onClickClose, popperProps, dropdownClassName, dropdownStyle, overlayCardClassName, overlayCardStyle, className, style, children, mobileTitle, }) => {
24
+ const closeButton = (jsx(IconButton, Object.assign({ onClick: onClickClose, type: 'button' }, { children: jsx(SvgClose, {}) })));
25
+ if (isMobile())
26
+ return (jsxs(OverlayCard, Object.assign({ isOpen: isOpen, onClickOverlay: onClickClose, className: classNames(overlayCardClassName, className), style: Object.assign(Object.assign({}, style), overlayCardStyle) }, { children: [jsx(ModalHeader, Object.assign({ trailing: closeButton }, { children: jsx(Typography, Object.assign({ as: 'h1', variant: 'title', color: 'primary' }, { children: mobileTitle })) })), jsx("div", Object.assign({ className: 'menu-list__overlay-card__container' }, { children: children }))] })));
27
+ return (jsx(Dropdown, Object.assign({ isOpen: isOpen, onClickOutside: onClickClose, onScroll: onClickClose, className: classNames(dropdownClassName, className), style: Object.assign(Object.assign({}, style), dropdownStyle) }, popperProps, { children: children })));
28
+ };
29
+
30
+ export { MenuList };
@@ -0,0 +1 @@
1
+ export * from './MenuList';
@@ -0,0 +1 @@
1
+ export * from './Dropdown';
@@ -0,0 +1 @@
1
+ export * from './watchToScrollInHierarchy';
@@ -2,8 +2,13 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var isScrollable = require('../isScrollable/isScrollable.cjs');
5
+ var isScrollable = require('../../../Popper/utils/isScrollable/isScrollable.cjs');
6
6
 
7
+ // eslint-disable-next-line multiline-comment-style
8
+ /** Listens for scroll events in all elements in the hierarchy range between the root and the element,
9
+ * and executes the callback whenever it is triggered.
10
+ * @returns A callback to clean up all event listeners created
11
+ */
7
12
  const watchToScrollInHierarchy = (root, element, callback) => {
8
13
  const elementsWithListener = [];
9
14
  let currentElement = element;
@@ -0,0 +1,5 @@
1
+ /** Listens for scroll events in all elements in the hierarchy range between the root and the element,
2
+ * and executes the callback whenever it is triggered.
3
+ * @returns A callback to clean up all event listeners created
4
+ */
5
+ export declare const watchToScrollInHierarchy: (root: HTMLElement, element: HTMLElement, callback: () => void) => () => void;
@@ -1,5 +1,10 @@
1
- import { isScrollable } from '../isScrollable/isScrollable.js';
1
+ import { isScrollable } from '../../../Popper/utils/isScrollable/isScrollable.js';
2
2
 
3
+ // eslint-disable-next-line multiline-comment-style
4
+ /** Listens for scroll events in all elements in the hierarchy range between the root and the element,
5
+ * and executes the callback whenever it is triggered.
6
+ * @returns A callback to clean up all event listeners created
7
+ */
3
8
  const watchToScrollInHierarchy = (root, element, callback) => {
4
9
  const elementsWithListener = [];
5
10
  let currentElement = element;
@@ -37,6 +37,7 @@ require('../Popper/PopperContext/PopperContext.cjs');
37
37
  require('formik');
38
38
  require('yup');
39
39
  require('../InlineWidget/InlineWidget.cjs');
40
+ require('../MenuList/Dropdown/Dropdown.cjs');
40
41
  require('../../context/MockContext/MockContext.cjs');
41
42
  require('../../context/CaptchaContext/CaptchaContext.cjs');
42
43
  require('../../utils/hooks/useUserUpdateRequest/useUserUpdateRequest.cjs');
@@ -33,6 +33,7 @@ import '../Popper/PopperContext/PopperContext.js';
33
33
  import 'formik';
34
34
  import 'yup';
35
35
  import '../InlineWidget/InlineWidget.js';
36
+ import '../MenuList/Dropdown/Dropdown.js';
36
37
  import '../../context/MockContext/MockContext.js';
37
38
  import '../../context/CaptchaContext/CaptchaContext.js';
38
39
  import '../../utils/hooks/useUserUpdateRequest/useUserUpdateRequest.js';
@@ -5,6 +5,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var _tslib = require('../../../../_virtual/_tslib.cjs');
6
6
  var jsxRuntime = require('react/jsx-runtime');
7
7
  var React = require('react');
8
+ var useInternalDynamicContext = require('../../context/DynamicContext/useInternalDynamicContext.cjs');
8
9
  require('@dynamic-labs/sdk-api');
9
10
  var logger = require('../../shared/logger.cjs');
10
11
  require('@dynamic-labs/iconic');
@@ -15,12 +16,10 @@ require('@dynamic-labs/utils');
15
16
  require('../../utils/constants/colors.cjs');
16
17
  require('../../shared/utils/classes/storage/localStorage.cjs');
17
18
  require('ethers');
18
- var index = require('../../shared/utils/hooks/useOnClickOutside/index.cjs');
19
19
  require('../../shared/consts/index.cjs');
20
- var useInternalDynamicContext = require('../../context/DynamicContext/useInternalDynamicContext.cjs');
21
- var classNames = require('../../utils/functions/classNames/classNames.cjs');
22
20
  require('@dynamic-labs/multi-wallet');
23
21
  var isNetworkUnsupported = require('../../utils/functions/isNetworkUnsupported/isNetworkUnsupported.cjs');
22
+ var classNames = require('../../utils/functions/classNames/classNames.cjs');
24
23
  require('../../config/ApiEndpoint.cjs');
25
24
  require('@dynamic-labs/rpc-providers');
26
25
  require('../../utils/hooks/useWallets/utils/verifyMagicIsSetup/verifyMagicIsSetup.cjs');
@@ -40,13 +39,14 @@ require('../Popper/PopperContext/PopperContext.cjs');
40
39
  require('formik');
41
40
  require('yup');
42
41
  require('../InlineWidget/InlineWidget.cjs');
42
+ require('../MenuList/Dropdown/Dropdown.cjs');
43
43
  require('../../context/MockContext/MockContext.cjs');
44
44
  require('../../context/CaptchaContext/CaptchaContext.cjs');
45
45
  var usePromise = require('../../utils/hooks/usePromise/usePromise.cjs');
46
46
  require('../../utils/hooks/useUserUpdateRequest/useUserUpdateRequest.cjs');
47
- var NetworkControl = require('./components/NetworkControl/NetworkControl.cjs');
48
- var ActionList = require('./components/ActionList/ActionList.cjs');
47
+ var MenuList = require('../MenuList/MenuList/MenuList.cjs');
49
48
  var NetworkAction = require('./components/NetworkAction/NetworkAction.cjs');
49
+ var NetworkControl = require('./components/NetworkControl/NetworkControl.cjs');
50
50
 
51
51
  const NetworkPicker = ({ activeClassName = '', buttonClassName = '', checkboxClassName = '', connector, evmNetworks, isNetworkPickerOpen, listClassName = '', mainClassName = '', setIsNetworkPickerOpen, showNetworkName, customCallbackOnSuccess, }) => {
52
52
  const pickerRef = React.useRef(null);
@@ -54,11 +54,8 @@ const NetworkPicker = ({ activeClassName = '', buttonClassName = '', checkboxCla
54
54
  const { loadingNetwork, network, setNetwork } = useInternalDynamicContext.useInternalDynamicContext();
55
55
  const { data: supportedWalletNetworks } = usePromise.usePromise(() => connector === null || connector === void 0 ? void 0 : connector.getSupportedNetworks(), [network]);
56
56
  const shouldAllowOpenDropdown = isNetworkUnsupported.isNetworkUnsupported(network, evmNetworks) || (evmNetworks === null || evmNetworks === void 0 ? void 0 : evmNetworks.length) > 1;
57
- index.useOnClickOutside(pickerRef, () => {
58
- if (isNetworkPickerOpen) {
59
- setIsNetworkPickerOpen(false);
60
- }
61
- });
57
+ // Ref to anchor popper to
58
+ const anchorRef = React.useRef(null);
62
59
  const handleNetworkChange = (networkId) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
63
60
  setNewNetworkId(networkId);
64
61
  try {
@@ -78,8 +75,8 @@ const NetworkPicker = ({ activeClassName = '', buttonClassName = '', checkboxCla
78
75
  setIsNetworkPickerOpen(false);
79
76
  }
80
77
  });
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))) })) })))] })));
78
+ 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 }), jsxRuntime.jsx("div", { ref: anchorRef, style: { marginTop: 5, position: 'absolute' } }), shouldAllowOpenDropdown && (jsxRuntime.jsx(MenuList.MenuList, Object.assign({ className: listClassName, isOpen: isNetworkPickerOpen, onClickClose: () => setIsNetworkPickerOpen(false), popperProps: { anchorOrigin: 'bottom-left', anchorRef }, mobileTitle: 'Select network' }, { 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 &&
79
+ !supportedWalletNetworks.includes(`${networkId}`) }, networkId))) })))] })));
83
80
  };
84
81
 
85
82
  exports.NetworkPicker = NetworkPicker;
@@ -1,6 +1,7 @@
1
1
  import { __awaiter } from '../../../../_virtual/_tslib.js';
2
2
  import { jsxs, jsx } from 'react/jsx-runtime';
3
3
  import { useRef, useState } from 'react';
4
+ import { useInternalDynamicContext } from '../../context/DynamicContext/useInternalDynamicContext.js';
4
5
  import '@dynamic-labs/sdk-api';
5
6
  import { logger } from '../../shared/logger.js';
6
7
  import '@dynamic-labs/iconic';
@@ -11,12 +12,10 @@ import '@dynamic-labs/utils';
11
12
  import '../../utils/constants/colors.js';
12
13
  import '../../shared/utils/classes/storage/localStorage.js';
13
14
  import 'ethers';
14
- import { useOnClickOutside } from '../../shared/utils/hooks/useOnClickOutside/index.js';
15
15
  import '../../shared/consts/index.js';
16
- import { useInternalDynamicContext } from '../../context/DynamicContext/useInternalDynamicContext.js';
17
- import { classNames } from '../../utils/functions/classNames/classNames.js';
18
16
  import '@dynamic-labs/multi-wallet';
19
17
  import { isNetworkUnsupported } from '../../utils/functions/isNetworkUnsupported/isNetworkUnsupported.js';
18
+ import { classNames } from '../../utils/functions/classNames/classNames.js';
20
19
  import '../../config/ApiEndpoint.js';
21
20
  import '@dynamic-labs/rpc-providers';
22
21
  import '../../utils/hooks/useWallets/utils/verifyMagicIsSetup/verifyMagicIsSetup.js';
@@ -36,13 +35,14 @@ import '../Popper/PopperContext/PopperContext.js';
36
35
  import 'formik';
37
36
  import 'yup';
38
37
  import '../InlineWidget/InlineWidget.js';
38
+ import '../MenuList/Dropdown/Dropdown.js';
39
39
  import '../../context/MockContext/MockContext.js';
40
40
  import '../../context/CaptchaContext/CaptchaContext.js';
41
41
  import { usePromise } from '../../utils/hooks/usePromise/usePromise.js';
42
42
  import '../../utils/hooks/useUserUpdateRequest/useUserUpdateRequest.js';
43
- import { NetworkControl } from './components/NetworkControl/NetworkControl.js';
44
- import { ActionList } from './components/ActionList/ActionList.js';
43
+ import { MenuList } from '../MenuList/MenuList/MenuList.js';
45
44
  import { NetworkAction } from './components/NetworkAction/NetworkAction.js';
45
+ import { NetworkControl } from './components/NetworkControl/NetworkControl.js';
46
46
 
47
47
  const NetworkPicker = ({ activeClassName = '', buttonClassName = '', checkboxClassName = '', connector, evmNetworks, isNetworkPickerOpen, listClassName = '', mainClassName = '', setIsNetworkPickerOpen, showNetworkName, customCallbackOnSuccess, }) => {
48
48
  const pickerRef = useRef(null);
@@ -50,11 +50,8 @@ const NetworkPicker = ({ activeClassName = '', buttonClassName = '', checkboxCla
50
50
  const { loadingNetwork, network, setNetwork } = useInternalDynamicContext();
51
51
  const { data: supportedWalletNetworks } = usePromise(() => connector === null || connector === void 0 ? void 0 : connector.getSupportedNetworks(), [network]);
52
52
  const shouldAllowOpenDropdown = isNetworkUnsupported(network, evmNetworks) || (evmNetworks === null || evmNetworks === void 0 ? void 0 : evmNetworks.length) > 1;
53
- useOnClickOutside(pickerRef, () => {
54
- if (isNetworkPickerOpen) {
55
- setIsNetworkPickerOpen(false);
56
- }
57
- });
53
+ // Ref to anchor popper to
54
+ const anchorRef = useRef(null);
58
55
  const handleNetworkChange = (networkId) => __awaiter(void 0, void 0, void 0, function* () {
59
56
  setNewNetworkId(networkId);
60
57
  try {
@@ -74,8 +71,8 @@ const NetworkPicker = ({ activeClassName = '', buttonClassName = '', checkboxCla
74
71
  setIsNetworkPickerOpen(false);
75
72
  }
76
73
  });
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))) })) })))] })));
74
+ 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 }), jsx("div", { ref: anchorRef, style: { marginTop: 5, position: 'absolute' } }), shouldAllowOpenDropdown && (jsx(MenuList, Object.assign({ className: listClassName, isOpen: isNetworkPickerOpen, onClickClose: () => setIsNetworkPickerOpen(false), popperProps: { anchorOrigin: 'bottom-left', anchorRef }, mobileTitle: 'Select network' }, { 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 &&
75
+ !supportedWalletNetworks.includes(`${networkId}`) }, networkId))) })))] })));
79
76
  };
80
77
 
81
78
  export { NetworkPicker };
@@ -43,6 +43,7 @@ require('../../../Popper/PopperContext/PopperContext.cjs');
43
43
  require('formik');
44
44
  require('yup');
45
45
  require('../../../InlineWidget/InlineWidget.cjs');
46
+ require('../../../MenuList/Dropdown/Dropdown.cjs');
46
47
  var NetworkControlSkeleton = require('../NetworkControlSkeleton/NetworkControlSkeleton.cjs');
47
48
  var UnsupportedNetwork = require('../UnsupportedNetwork/UnsupportedNetwork.cjs');
48
49
 
@@ -39,6 +39,7 @@ import '../../../Popper/PopperContext/PopperContext.js';
39
39
  import 'formik';
40
40
  import 'yup';
41
41
  import '../../../InlineWidget/InlineWidget.js';
42
+ import '../../../MenuList/Dropdown/Dropdown.js';
42
43
  import { NetworkControlSkeleton } from '../NetworkControlSkeleton/NetworkControlSkeleton.js';
43
44
  import { UnsupportedNetwork } from '../UnsupportedNetwork/UnsupportedNetwork.js';
44
45
 
@@ -44,6 +44,7 @@ require('../../../Popper/PopperContext/PopperContext.cjs');
44
44
  require('formik');
45
45
  require('yup');
46
46
  require('../../../InlineWidget/InlineWidget.cjs');
47
+ require('../../../MenuList/Dropdown/Dropdown.cjs');
47
48
 
48
49
  const Network = ({ iconUrl, isActive, networkName, className, checkboxClassName = '', isChanging, notSupported = false, }) => (jsxRuntime.jsxs("div", Object.assign({ className: classNames.classNames('network', className, {
49
50
  'network--not-supported': notSupported,
@@ -40,6 +40,7 @@ import '../../../Popper/PopperContext/PopperContext.js';
40
40
  import 'formik';
41
41
  import 'yup';
42
42
  import '../../../InlineWidget/InlineWidget.js';
43
+ import '../../../MenuList/Dropdown/Dropdown.js';
43
44
 
44
45
  const Network = ({ iconUrl, isActive, networkName, className, checkboxClassName = '', isChanging, notSupported = false, }) => (jsxs("div", Object.assign({ className: classNames('network', className, {
45
46
  'network--not-supported': notSupported,
@@ -44,6 +44,7 @@ require('../../../Popper/PopperContext/PopperContext.cjs');
44
44
  require('formik');
45
45
  require('yup');
46
46
  require('../../../InlineWidget/InlineWidget.cjs');
47
+ require('../../../MenuList/Dropdown/Dropdown.cjs');
47
48
  var capitalize = require('../../../../shared/utils/functions/capitalize/capitalize.cjs');
48
49
 
49
50
  const NonNetworkSwitchingSupportedControl = ({ walletConnector, className, showNetworkName = false, }) => {
@@ -40,6 +40,7 @@ import '../../../Popper/PopperContext/PopperContext.js';
40
40
  import 'formik';
41
41
  import 'yup';
42
42
  import '../../../InlineWidget/InlineWidget.js';
43
+ import '../../../MenuList/Dropdown/Dropdown.js';
43
44
  import { capitalize } from '../../../../shared/utils/functions/capitalize/capitalize.js';
44
45
 
45
46
  const NonNetworkSwitchingSupportedControl = ({ walletConnector, className, showNetworkName = false, }) => {
@@ -51,6 +51,7 @@ require('../Popper/PopperContext/PopperContext.cjs');
51
51
  require('formik');
52
52
  require('yup');
53
53
  require('../InlineWidget/InlineWidget.cjs');
54
+ require('../MenuList/Dropdown/Dropdown.cjs');
54
55
 
55
56
  const OTPVerificationView = ({ onClickBack, onClickEditEmail, isLoading, email, onPinComplete, isValid, error, onPinChange, displayPoweredByDynamic = false, }) => {
56
57
  const backButton = (jsxRuntime.jsx(IconButton.IconButton, Object.assign({ type: 'button', onClick: onClickBack, "data-testid": 'back-button' }, { children: jsxRuntime.jsx(chevronLeft.ReactComponent, {}) })));
@@ -47,6 +47,7 @@ import '../Popper/PopperContext/PopperContext.js';
47
47
  import 'formik';
48
48
  import 'yup';
49
49
  import '../InlineWidget/InlineWidget.js';
50
+ import '../MenuList/Dropdown/Dropdown.js';
50
51
 
51
52
  const OTPVerificationView = ({ onClickBack, onClickEditEmail, isLoading, email, onPinComplete, isValid, error, onPinChange, displayPoweredByDynamic = false, }) => {
52
53
  const backButton = (jsx(IconButton, Object.assign({ type: 'button', onClick: onClickBack, "data-testid": 'back-button' }, { children: jsx(SvgChevronLeft, {}) })));
@@ -20,6 +20,7 @@ require('@dynamic-labs/wallet-book');
20
20
  require('../../utils/constants/colors.cjs');
21
21
  require('../../shared/utils/classes/storage/localStorage.cjs');
22
22
  require('ethers');
23
+ var usePreventPageScroll = require('../../shared/utils/hooks/usePreventPageScroll/usePreventPageScroll.cjs');
23
24
  require('../../shared/consts/index.cjs');
24
25
  require('@dynamic-labs/multi-wallet');
25
26
  require('@dynamic-labs/rpc-providers');
@@ -27,7 +28,8 @@ require('../../utils/hooks/useWallets/utils/verifyMagicIsSetup/verifyMagicIsSetu
27
28
  require('../../context/DynamicContext/DynamicContext.cjs');
28
29
  require('../../context/ErrorContext/ErrorContext.cjs');
29
30
  require('../../context/AccessDeniedContext/AccessDeniedContext.cjs');
30
- require('../ShadowDOM/ShadowDOM.cjs');
31
+ var classNames = require('../../utils/functions/classNames/classNames.cjs');
32
+ var ShadowDOM = require('../ShadowDOM/ShadowDOM.cjs');
31
33
  require('../../context/ThemeContext/ThemeContext.cjs');
32
34
  require('react-focus-lock');
33
35
  require('../IconButton/IconButton.cjs');
@@ -37,22 +39,19 @@ require('../Popper/PopperContext/PopperContext.cjs');
37
39
  require('formik');
38
40
  require('yup');
39
41
  require('../InlineWidget/InlineWidget.cjs');
42
+ require('../MenuList/Dropdown/Dropdown.cjs');
40
43
  require('../../context/MockContext/MockContext.cjs');
41
44
  require('../../context/CaptchaContext/CaptchaContext.cjs');
42
45
  require('../../utils/hooks/useUserUpdateRequest/useUserUpdateRequest.cjs');
43
46
  var OverlayCard_context = require('./OverlayCard.context.cjs');
44
47
 
45
- const noContextError = new Error('OverlayCard is not a child of OverlayCardTarget, please add OverlayCardTarget where the card should be displayed');
46
- const OverlayCard = ({ isOpen, children, onClickOverlay, }) => {
48
+ const OverlayCard = ({ isOpen, children, onClickOverlay, style, className, }) => {
47
49
  const context = React.useContext(OverlayCard_context.overlayCardContext);
48
- if (!context) {
49
- throw noContextError;
50
- }
51
- const { portal } = context;
52
- if (!portal)
53
- return null;
54
- return reactDom.createPortal(jsxRuntime.jsxs("div", { children: [jsxRuntime.jsx(AnimatePresence.AnimatePresence, Object.assign({ animationComponent: jsxRuntime.jsx(OpacityTransition.OpacityTransition, {}) }, { children: isOpen && (jsxRuntime.jsx("div", { onClick: onClickOverlay, className: 'overlay-card--overlay' })) })), jsxRuntime.jsx(AnimatePresence.AnimatePresence, Object.assign({ animationComponent: jsxRuntime.jsx(SlideInUpTransition.SlideInUpTransition, {}) }, { children: isOpen && (jsxRuntime.jsx(AnimatePresence.AnimatePresence, Object.assign({ animationComponent: jsxRuntime.jsx(OpacityTransition.OpacityTransition, {}) }, { children: isOpen && jsxRuntime.jsx("div", Object.assign({ className: 'overlay-card--content' }, { children: children })) }))) }))] }), portal);
50
+ usePreventPageScroll.usePreventPageScroll(isOpen && !context.portal);
51
+ const content = (jsxRuntime.jsxs("div", { children: [jsxRuntime.jsx(AnimatePresence.AnimatePresence, Object.assign({ animationComponent: jsxRuntime.jsx(OpacityTransition.OpacityTransition, {}) }, { children: isOpen && (jsxRuntime.jsx("div", { onClick: onClickOverlay, className: 'overlay-card--overlay' })) })), jsxRuntime.jsx(AnimatePresence.AnimatePresence, Object.assign({ animationComponent: jsxRuntime.jsx(SlideInUpTransition.SlideInUpTransition, {}) }, { children: isOpen && (jsxRuntime.jsx(AnimatePresence.AnimatePresence, Object.assign({ animationComponent: jsxRuntime.jsx(OpacityTransition.OpacityTransition, {}) }, { children: isOpen && (jsxRuntime.jsx("div", Object.assign({ className: classNames.classNames(className, 'overlay-card--content'), style: style }, { children: children }))) }))) }))] }));
52
+ if (context === null || context === void 0 ? void 0 : context.portal)
53
+ return reactDom.createPortal(content, context.portal);
54
+ return reactDom.createPortal(jsxRuntime.jsx(ShadowDOM.ShadowDOM, { children: content }), document.body);
55
55
  };
56
56
 
57
57
  exports.OverlayCard = OverlayCard;
58
- exports.noContextError = noContextError;
@@ -1,8 +1,10 @@
1
- import { FC, MouseEventHandler, PropsWithChildren } from 'react';
1
+ import { CSSProperties, FC, MouseEventHandler, PropsWithChildren } from 'react';
2
2
  type OverlayCardProps = {
3
3
  isOpen: boolean;
4
4
  onClickOverlay?: MouseEventHandler<HTMLDivElement>;
5
+ style?: CSSProperties;
6
+ className?: string;
7
+ maxHeight?: number;
5
8
  };
6
- export declare const noContextError: Error;
7
9
  export declare const OverlayCard: FC<PropsWithChildren<OverlayCardProps>>;
8
10
  export {};
@@ -16,6 +16,7 @@ import '@dynamic-labs/wallet-book';
16
16
  import '../../utils/constants/colors.js';
17
17
  import '../../shared/utils/classes/storage/localStorage.js';
18
18
  import 'ethers';
19
+ import { usePreventPageScroll } from '../../shared/utils/hooks/usePreventPageScroll/usePreventPageScroll.js';
19
20
  import '../../shared/consts/index.js';
20
21
  import '@dynamic-labs/multi-wallet';
21
22
  import '@dynamic-labs/rpc-providers';
@@ -23,7 +24,8 @@ import '../../utils/hooks/useWallets/utils/verifyMagicIsSetup/verifyMagicIsSetup
23
24
  import '../../context/DynamicContext/DynamicContext.js';
24
25
  import '../../context/ErrorContext/ErrorContext.js';
25
26
  import '../../context/AccessDeniedContext/AccessDeniedContext.js';
26
- import '../ShadowDOM/ShadowDOM.js';
27
+ import { classNames } from '../../utils/functions/classNames/classNames.js';
28
+ import { ShadowDOM } from '../ShadowDOM/ShadowDOM.js';
27
29
  import '../../context/ThemeContext/ThemeContext.js';
28
30
  import 'react-focus-lock';
29
31
  import '../IconButton/IconButton.js';
@@ -33,21 +35,19 @@ import '../Popper/PopperContext/PopperContext.js';
33
35
  import 'formik';
34
36
  import 'yup';
35
37
  import '../InlineWidget/InlineWidget.js';
38
+ import '../MenuList/Dropdown/Dropdown.js';
36
39
  import '../../context/MockContext/MockContext.js';
37
40
  import '../../context/CaptchaContext/CaptchaContext.js';
38
41
  import '../../utils/hooks/useUserUpdateRequest/useUserUpdateRequest.js';
39
42
  import { overlayCardContext } from './OverlayCard.context.js';
40
43
 
41
- const noContextError = new Error('OverlayCard is not a child of OverlayCardTarget, please add OverlayCardTarget where the card should be displayed');
42
- const OverlayCard = ({ isOpen, children, onClickOverlay, }) => {
44
+ const OverlayCard = ({ isOpen, children, onClickOverlay, style, className, }) => {
43
45
  const context = useContext(overlayCardContext);
44
- if (!context) {
45
- throw noContextError;
46
- }
47
- const { portal } = context;
48
- if (!portal)
49
- return null;
50
- return createPortal(jsxs("div", { children: [jsx(AnimatePresence, Object.assign({ animationComponent: jsx(OpacityTransition, {}) }, { children: isOpen && (jsx("div", { onClick: onClickOverlay, className: 'overlay-card--overlay' })) })), jsx(AnimatePresence, Object.assign({ animationComponent: jsx(SlideInUpTransition, {}) }, { children: isOpen && (jsx(AnimatePresence, Object.assign({ animationComponent: jsx(OpacityTransition, {}) }, { children: isOpen && jsx("div", Object.assign({ className: 'overlay-card--content' }, { children: children })) }))) }))] }), portal);
46
+ usePreventPageScroll(isOpen && !context.portal);
47
+ const content = (jsxs("div", { children: [jsx(AnimatePresence, Object.assign({ animationComponent: jsx(OpacityTransition, {}) }, { children: isOpen && (jsx("div", { onClick: onClickOverlay, className: 'overlay-card--overlay' })) })), jsx(AnimatePresence, Object.assign({ animationComponent: jsx(SlideInUpTransition, {}) }, { children: isOpen && (jsx(AnimatePresence, Object.assign({ animationComponent: jsx(OpacityTransition, {}) }, { children: isOpen && (jsx("div", Object.assign({ className: classNames(className, 'overlay-card--content'), style: style }, { children: children }))) }))) }))] }));
48
+ if (context === null || context === void 0 ? void 0 : context.portal)
49
+ return createPortal(content, context.portal);
50
+ return createPortal(jsx(ShadowDOM, { children: content }), document.body);
51
51
  };
52
52
 
53
- export { OverlayCard, noContextError };
53
+ export { OverlayCard };