@dynamic-labs/sdk-react-core 0.17.0-RC.17 → 0.17.0-RC.18

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 (266) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/package.cjs +2 -2
  3. package/package.js +2 -2
  4. package/package.json +8 -8
  5. package/src/index.cjs +8 -0
  6. package/src/index.js +5 -0
  7. package/src/lib/Main.cjs +2 -0
  8. package/src/lib/Main.js +2 -0
  9. package/src/lib/components/Accordion/components/AccordionItem/AccordionItem.cjs +2 -0
  10. package/src/lib/components/Accordion/components/AccordionItem/AccordionItem.js +2 -0
  11. package/src/lib/components/AnimatePresence/AnimatePresence.cjs +2 -0
  12. package/src/lib/components/AnimatePresence/AnimatePresence.js +2 -0
  13. package/src/lib/components/AppOriginTile/AppOriginTile.types.d.ts +1 -1
  14. package/src/lib/components/Divider/Divider.cjs +2 -0
  15. package/src/lib/components/Divider/Divider.js +2 -0
  16. package/src/lib/components/IconWithSpinner/IconWithSpinner.cjs +1 -0
  17. package/src/lib/components/IconWithSpinner/IconWithSpinner.js +1 -0
  18. package/src/lib/components/IconWithSpinner/Spinner/Spinner.cjs +1 -0
  19. package/src/lib/components/IconWithSpinner/Spinner/Spinner.js +1 -0
  20. package/src/lib/components/IconWithStatus/IconWithStatus.cjs +1 -0
  21. package/src/lib/components/IconWithStatus/IconWithStatus.js +1 -0
  22. package/src/lib/components/Input/Input.cjs +10 -6
  23. package/src/lib/components/Input/Input.js +10 -6
  24. package/src/lib/components/NetworkPicker/components/ActionList/ActionList.cjs +2 -0
  25. package/src/lib/components/NetworkPicker/components/ActionList/ActionList.js +2 -0
  26. package/src/lib/components/NetworkPicker/components/EvmNetworkControl/EvmNetworkControl.cjs +2 -0
  27. package/src/lib/components/NetworkPicker/components/EvmNetworkControl/EvmNetworkControl.js +2 -0
  28. package/src/lib/components/NetworkPicker/components/Network/Network.cjs +2 -0
  29. package/src/lib/components/NetworkPicker/components/Network/Network.js +2 -0
  30. package/src/lib/components/NetworkPicker/components/NonNetworkSwitchingSupportedControl/NonNetworkSwitchingSupportedControl.cjs +2 -0
  31. package/src/lib/components/NetworkPicker/components/NonNetworkSwitchingSupportedControl/NonNetworkSwitchingSupportedControl.js +2 -0
  32. package/src/lib/components/OTPVerificationView/OTPVerificationView.cjs +2 -0
  33. package/src/lib/components/OTPVerificationView/OTPVerificationView.js +2 -0
  34. package/src/lib/components/OverlayCard/OverlayCard.cjs +2 -0
  35. package/src/lib/components/OverlayCard/OverlayCard.js +2 -0
  36. package/src/lib/components/Portal/Portal.cjs +2 -0
  37. package/src/lib/components/Portal/Portal.js +2 -0
  38. package/src/lib/components/SendBalanceForm/SendBalanceForm.cjs +24 -0
  39. package/src/lib/components/SendBalanceForm/SendBalanceForm.d.ts +10 -0
  40. package/src/lib/components/SendBalanceForm/SendBalanceForm.js +22 -0
  41. package/src/lib/components/SendBalancePageLayout/SendBalancePageLayout.d.ts +16 -0
  42. package/src/lib/components/SendBalancePageLayout/components/TokenBalanceCard/TokenBalanceCard.d.ts +8 -0
  43. package/src/lib/components/SendBalancePageLayout/components/TokenBalanceCard/index.d.ts +1 -0
  44. package/src/lib/components/SendBalancePageLayout/components/index.d.ts +1 -0
  45. package/src/lib/components/SendBalancePageLayout/index.d.ts +2 -0
  46. package/src/lib/components/Tooltip/Tooltip.cjs +2 -0
  47. package/src/lib/components/Tooltip/Tooltip.js +2 -0
  48. package/src/lib/components/TransactionConfirmationPageLayout/TransactionConfirmationPageLayout.d.ts +1 -1
  49. package/src/lib/components/TransactionOriginDestination/TransactionOriginDestination.d.ts +11 -0
  50. package/src/lib/components/TransactionStatusLayout/TransactionStatusLayout.d.ts +11 -0
  51. package/src/lib/components/Transition/VerticalDrawerTransition/VerticalDrawerTransition.cjs +2 -0
  52. package/src/lib/components/Transition/VerticalDrawerTransition/VerticalDrawerTransition.js +2 -0
  53. package/src/lib/components/UserProfile/parts/UserProfileField/UserProfileField.cjs +2 -0
  54. package/src/lib/components/UserProfile/parts/UserProfileField/UserProfileField.js +2 -0
  55. package/src/lib/components/UserProfile/parts/UserProfileSection/UserProfileSection.cjs +2 -0
  56. package/src/lib/components/UserProfile/parts/UserProfileSection/UserProfileSection.js +2 -0
  57. package/src/lib/components/UserProfile/parts/UserProfileSocialAccount/UserProfileSocialAccount.cjs +2 -0
  58. package/src/lib/components/UserProfile/parts/UserProfileSocialAccount/UserProfileSocialAccount.js +2 -0
  59. package/src/lib/components/index.d.ts +1 -0
  60. package/src/lib/context/DynamicContext/DynamicContext.cjs +3 -2
  61. package/src/lib/context/DynamicContext/DynamicContext.js +3 -2
  62. package/src/lib/context/DynamicContext/hooks/useEmailLoginState/useEmailLoginState.cjs +1 -0
  63. package/src/lib/context/DynamicContext/hooks/useEmailLoginState/useEmailLoginState.js +1 -0
  64. package/src/lib/context/DynamicContext/useCustomerCallbacks/useCustomerAuthFlowCallbacks.cjs +2 -0
  65. package/src/lib/context/DynamicContext/useCustomerCallbacks/useCustomerAuthFlowCallbacks.js +2 -0
  66. package/src/lib/context/QrCodeContext/QrCodeContext.cjs +2 -0
  67. package/src/lib/context/QrCodeContext/QrCodeContext.js +2 -0
  68. package/src/lib/context/SocialRedirectContext/SocialRedirectContext.cjs +4 -2
  69. package/src/lib/context/SocialRedirectContext/SocialRedirectContext.js +4 -2
  70. package/src/lib/layout/DynamicAuthLayout/DynamicAuthLayout.cjs +2 -0
  71. package/src/lib/layout/DynamicAuthLayout/DynamicAuthLayout.js +2 -0
  72. package/src/lib/layout/DynamicAuthLayout/Footer/Footer.cjs +2 -0
  73. package/src/lib/layout/DynamicAuthLayout/Footer/Footer.js +2 -0
  74. package/src/lib/layout/DynamicAuthLayout/FooterContent/WalletListFooterContent/Item/Item.cjs +2 -0
  75. package/src/lib/layout/DynamicAuthLayout/FooterContent/WalletListFooterContent/Item/Item.js +2 -0
  76. package/src/lib/layout/DynamicAuthLayout/FooterContent/WalletListFooterContent/WalletExtensionOrAppContinueButton/WalletExtensionOrAppContinueButton.cjs +2 -0
  77. package/src/lib/layout/DynamicAuthLayout/FooterContent/WalletListFooterContent/WalletExtensionOrAppContinueButton/WalletExtensionOrAppContinueButton.js +2 -0
  78. package/src/lib/layout/DynamicAuthLayout/FooterContent/WalletListFooterContent/WalletListFooterContent.cjs +1 -0
  79. package/src/lib/layout/DynamicAuthLayout/FooterContent/WalletListFooterContent/WalletListFooterContent.js +1 -0
  80. package/src/lib/layout/DynamicAuthLayout/FooterContent/WalletMoreInfoContent/WalletMoreInfoContent.cjs +2 -0
  81. package/src/lib/layout/DynamicAuthLayout/FooterContent/WalletMoreInfoContent/WalletMoreInfoContent.js +2 -0
  82. package/src/lib/layout/DynamicAuthLayout/Header/header.cjs +2 -0
  83. package/src/lib/layout/DynamicAuthLayout/Header/header.js +2 -0
  84. package/src/lib/modals/SignMessageConfirmationModal/SignMessageConfirmationModal.cjs +2 -0
  85. package/src/lib/modals/SignMessageConfirmationModal/SignMessageConfirmationModal.js +2 -0
  86. package/src/lib/modals/TransactionConfirmationModal/TransactionConfirmationModal.cjs +22 -70
  87. package/src/lib/modals/TransactionConfirmationModal/TransactionConfirmationModal.js +24 -72
  88. package/src/lib/modals/TransactionConfirmationModal/TransactionConfirmationModal.types.d.ts +0 -3
  89. package/src/lib/shared/utils/functions/formatBigNumber/formatBigNumber.cjs +2 -1
  90. package/src/lib/shared/utils/functions/formatBigNumber/formatBigNumber.js +2 -1
  91. package/src/lib/shared/utils/functions/index.d.ts +1 -0
  92. package/src/lib/shared/utils/functions/trimEnd/index.d.ts +1 -0
  93. package/src/lib/shared/utils/functions/trimEnd/trimEnd.cjs +13 -0
  94. package/src/lib/shared/utils/functions/trimEnd/trimEnd.d.ts +1 -0
  95. package/src/lib/shared/utils/functions/trimEnd/trimEnd.js +9 -0
  96. package/src/lib/shared/utils/hooks/index.d.ts +2 -0
  97. package/src/lib/shared/utils/hooks/useIsMounted/index.d.ts +1 -0
  98. package/src/lib/shared/utils/hooks/useIsMounted/useIsMounted.cjs +18 -0
  99. package/src/lib/shared/utils/hooks/useIsMounted/useIsMounted.d.ts +1 -0
  100. package/src/lib/shared/utils/hooks/useIsMounted/useIsMounted.js +14 -0
  101. package/src/lib/styles/index.shadow.cjs +1 -1
  102. package/src/lib/styles/index.shadow.js +1 -1
  103. package/src/lib/utils/functions/getAppOrigin/getAppOrigin.cjs +12 -0
  104. package/src/lib/utils/functions/getAppOrigin/getAppOrigin.d.ts +1 -0
  105. package/src/lib/utils/functions/getAppOrigin/getAppOrigin.js +8 -0
  106. package/src/lib/utils/functions/getAppOrigin/index.d.ts +1 -0
  107. package/src/lib/utils/functions/getReferencedAccount/getReferencedAccount.d.ts +7 -0
  108. package/src/lib/utils/functions/getReferencedAccount/index.d.ts +1 -0
  109. package/src/lib/utils/functions/index.d.ts +2 -0
  110. package/src/lib/utils/hooks/authenticationHooks/useConnectAndSign/useConnectAndSign.cjs +1 -1
  111. package/src/lib/utils/hooks/authenticationHooks/useConnectAndSign/useConnectAndSign.js +1 -1
  112. package/src/lib/utils/hooks/authenticationHooks/useEmailVerificationRequest/useEmailVerificationRequest.cjs +1 -0
  113. package/src/lib/utils/hooks/authenticationHooks/useEmailVerificationRequest/useEmailVerificationRequest.js +1 -0
  114. package/src/lib/utils/hooks/multiWallet/useSyncPrimaryWallet/useSyncPrimaryWallet.cjs +12 -3
  115. package/src/lib/utils/hooks/multiWallet/useSyncPrimaryWallet/useSyncPrimaryWallet.js +12 -3
  116. package/src/lib/utils/hooks/useVerifyWallet/useVerifyWallet.cjs +1 -1
  117. package/src/lib/utils/hooks/useVerifyWallet/useVerifyWallet.js +1 -1
  118. package/src/lib/utils/hooks/useWalletConnectors/reconnectSocialWallet.d.ts +8 -0
  119. package/src/lib/utils/hooks/useWalletEventListeners/useWalletEventListeners.cjs +4 -3
  120. package/src/lib/utils/hooks/useWalletEventListeners/useWalletEventListeners.js +4 -3
  121. package/src/lib/utils/hooks/useWalletItemActions/useWalletItemActions.cjs +1 -1
  122. package/src/lib/utils/hooks/useWalletItemActions/useWalletItemActions.js +1 -1
  123. package/src/lib/utils/hooks/useWalletUiUtils/useWalletUiUtils.cjs +19 -17
  124. package/src/lib/utils/hooks/useWalletUiUtils/useWalletUiUtils.js +19 -17
  125. package/src/lib/utils/hooks/useWallets/useWallets.cjs +26 -36
  126. package/src/lib/utils/hooks/useWallets/useWallets.d.ts +1 -2
  127. package/src/lib/utils/hooks/useWallets/useWallets.js +27 -37
  128. package/src/lib/views/CaptchaVerifyUser/CaptchaVerifyUser.cjs +2 -0
  129. package/src/lib/views/CaptchaVerifyUser/CaptchaVerifyUser.js +2 -0
  130. package/src/lib/views/CollectUserDataView/CollectUserDataView.cjs +1 -0
  131. package/src/lib/views/CollectUserDataView/CollectUserDataView.js +1 -0
  132. package/src/lib/views/CollectUserDataView/OnboardingUserDataForm/OnboardingUserDataForm.cjs +2 -0
  133. package/src/lib/views/CollectUserDataView/OnboardingUserDataForm/OnboardingUserDataForm.js +2 -0
  134. package/src/lib/views/CollectUserDataView/UserDataFields/index.cjs +2 -0
  135. package/src/lib/views/CollectUserDataView/UserDataFields/index.js +2 -0
  136. package/src/lib/views/CollectUserDataViewLoginWithEmail/CollectUserDataViewLoginWithEmail.cjs +2 -0
  137. package/src/lib/views/CollectUserDataViewLoginWithEmail/CollectUserDataViewLoginWithEmail.js +2 -0
  138. package/src/lib/views/EmailConfirmationWaitingView/EmailConfirmationWaitingView.cjs +2 -0
  139. package/src/lib/views/EmailConfirmationWaitingView/EmailConfirmationWaitingView.js +2 -0
  140. package/src/lib/views/EmailUpdate/EmailUpdate.cjs +2 -0
  141. package/src/lib/views/EmailUpdate/EmailUpdate.js +2 -0
  142. package/src/lib/views/EmailVerification/EmailVerification.cjs +2 -0
  143. package/src/lib/views/EmailVerification/EmailVerification.js +2 -0
  144. package/src/lib/views/EmailWalletOTPVerificationView/EmailWalletOTPVerificationView.cjs +2 -0
  145. package/src/lib/views/EmailWalletOTPVerificationView/EmailWalletOTPVerificationView.js +2 -0
  146. package/src/lib/views/LoginWithEmailView/components/ListItemButton/ListItemButton.cjs +2 -0
  147. package/src/lib/views/LoginWithEmailView/components/ListItemButton/ListItemButton.js +2 -0
  148. package/src/lib/views/LoginWithEmailView/components/LoginWithEmailForm/LoginWithEmailForm.cjs +2 -0
  149. package/src/lib/views/LoginWithEmailView/components/LoginWithEmailForm/LoginWithEmailForm.js +2 -0
  150. package/src/lib/views/LoginWithEmailView/components/SocialSignIn/SocialSignIn.cjs +2 -0
  151. package/src/lib/views/LoginWithEmailView/components/SocialSignIn/SocialSignIn.js +2 -0
  152. package/src/lib/views/NetworkNotSupported/NetworkNotSupported.cjs +1 -0
  153. package/src/lib/views/NetworkNotSupported/NetworkNotSupported.js +1 -0
  154. package/src/lib/views/NetworkNotSupportedSwitchManual/NetworkNotSupportedSwitchManual.cjs +1 -0
  155. package/src/lib/views/NetworkNotSupportedSwitchManual/NetworkNotSupportedSwitchManual.js +1 -0
  156. package/src/lib/views/NoAccess/NoAccess.cjs +1 -0
  157. package/src/lib/views/NoAccess/NoAccess.js +1 -0
  158. package/src/lib/views/NoQrNotInstalledView/NoQrNotInstalledView.cjs +1 -0
  159. package/src/lib/views/NoQrNotInstalledView/NoQrNotInstalledView.js +1 -0
  160. package/src/lib/views/NoQrNotInstalledView/WalletHelpLink.cjs +2 -0
  161. package/src/lib/views/NoQrNotInstalledView/WalletHelpLink.js +2 -0
  162. package/src/lib/views/PendingConnectView/PendingConnectView.cjs +1 -0
  163. package/src/lib/views/PendingConnectView/PendingConnectView.js +1 -0
  164. package/src/lib/views/PendingSignatureView/PendingSignatureView.cjs +1 -0
  165. package/src/lib/views/PendingSignatureView/PendingSignatureView.js +1 -0
  166. package/src/lib/views/QrCodeView/QrCodeContainer/QrCodeContainer.cjs +2 -0
  167. package/src/lib/views/QrCodeView/QrCodeContainer/QrCodeContainer.js +2 -0
  168. package/src/lib/views/QrCodeView/QrCodeView.cjs +1 -0
  169. package/src/lib/views/QrCodeView/QrCodeView.js +1 -0
  170. package/src/lib/views/SocialRedirectView/SocialRedirectView.cjs +2 -0
  171. package/src/lib/views/SocialRedirectView/SocialRedirectView.js +2 -0
  172. package/src/lib/views/TransactionConfirmationView/TransactionConfirmationView.cjs +92 -0
  173. package/src/lib/views/TransactionConfirmationView/TransactionConfirmationView.d.ts +13 -0
  174. package/src/lib/views/TransactionConfirmationView/TransactionConfirmationView.js +88 -0
  175. package/src/lib/{modals/TransactionConfirmationModal → views/TransactionConfirmationView}/helpers/transactionErrorMessage.cjs +6 -1
  176. package/src/lib/{modals/TransactionConfirmationModal → views/TransactionConfirmationView}/helpers/transactionErrorMessage.d.ts +1 -0
  177. package/src/lib/{modals/TransactionConfirmationModal → views/TransactionConfirmationView}/helpers/transactionErrorMessage.js +6 -1
  178. package/src/lib/{modals/TransactionConfirmationModal → views/TransactionConfirmationView}/hooks/useTransactionData/useTransactionData.cjs +2 -0
  179. package/src/lib/{modals/TransactionConfirmationModal → views/TransactionConfirmationView}/hooks/useTransactionData/useTransactionData.js +2 -0
  180. package/src/lib/views/TransactionConfirmationView/index.d.ts +2 -0
  181. package/src/lib/views/WalletList/SearchInstead/SearchInstead.cjs +2 -0
  182. package/src/lib/views/WalletList/SearchInstead/SearchInstead.js +2 -0
  183. package/src/lib/views/WalletList/WalletListItem/WalletListItem.cjs +1 -0
  184. package/src/lib/views/WalletList/WalletListItem/WalletListItem.js +1 -0
  185. package/src/lib/views/WalletList/data.cjs +4 -5
  186. package/src/lib/views/WalletList/data.d.ts +2 -2
  187. package/src/lib/views/WalletList/data.js +4 -5
  188. package/src/lib/views/WalletSignSpinnerView/WalletSignSpinnerView.cjs +1 -0
  189. package/src/lib/views/WalletSignSpinnerView/WalletSignSpinnerView.js +1 -0
  190. package/src/lib/views/WalletUsedView/WalletUsedView.cjs +1 -0
  191. package/src/lib/views/WalletUsedView/WalletUsedView.js +1 -0
  192. package/src/lib/widgets/DynamicWidget/DynamicWidget.cjs +2 -0
  193. package/src/lib/widgets/DynamicWidget/DynamicWidget.js +2 -0
  194. package/src/lib/widgets/DynamicWidget/components/AccountControl/AccountControl.cjs +1 -0
  195. package/src/lib/widgets/DynamicWidget/components/AccountControl/AccountControl.js +1 -0
  196. package/src/lib/widgets/DynamicWidget/components/Balance/Balance.cjs +2 -0
  197. package/src/lib/widgets/DynamicWidget/components/Balance/Balance.js +2 -0
  198. package/src/lib/widgets/DynamicWidget/components/DotsMenu/DotsMenu.cjs +2 -0
  199. package/src/lib/widgets/DynamicWidget/components/DotsMenu/DotsMenu.js +2 -0
  200. package/src/lib/widgets/DynamicWidget/components/DotsMenuDropdown/DotsMenuDropdown.cjs +2 -0
  201. package/src/lib/widgets/DynamicWidget/components/DotsMenuDropdown/DotsMenuDropdown.js +2 -0
  202. package/src/lib/widgets/DynamicWidget/components/DynamicUserProfile/DynamicUserProfile.cjs +2 -0
  203. package/src/lib/widgets/DynamicWidget/components/DynamicUserProfile/DynamicUserProfile.js +2 -0
  204. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.cjs +2 -0
  205. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.js +2 -0
  206. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetWalletHeader/DynamicWidgetWalletHeader.cjs +1 -0
  207. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetWalletHeader/DynamicWidgetWalletHeader.js +1 -0
  208. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetSwitcher/DynamicWidgetSwitcher.cjs +2 -0
  209. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetSwitcher/DynamicWidgetSwitcher.js +2 -0
  210. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetVariants/variants/DynamicWidgetDropdown/DynamicWidgetDropdown.cjs +2 -0
  211. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetVariants/variants/DynamicWidgetDropdown/DynamicWidgetDropdown.js +2 -0
  212. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetVariants/variants/DynamicWidgetModal/DynamicWidgetModal.cjs +2 -0
  213. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetVariants/variants/DynamicWidgetModal/DynamicWidgetModal.js +2 -0
  214. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetWallets/DynamicWidgetWallets.cjs +2 -0
  215. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetWallets/DynamicWidgetWallets.js +2 -0
  216. package/src/lib/widgets/DynamicWidget/components/EmailConnectorPendingSignModalContent/EmailConnectorPendingSignModalContent.cjs +2 -0
  217. package/src/lib/widgets/DynamicWidget/components/EmailConnectorPendingSignModalContent/EmailConnectorPendingSignModalContent.js +2 -0
  218. package/src/lib/widgets/DynamicWidget/components/EmailOTPConnectorPendingSignModalContent/EmailOTPConnectorPendingSignModalContent.cjs +2 -0
  219. package/src/lib/widgets/DynamicWidget/components/EmailOTPConnectorPendingSignModalContent/EmailOTPConnectorPendingSignModalContent.js +2 -0
  220. package/src/lib/widgets/DynamicWidget/components/EmptyWallets/EmptyWallets.cjs +2 -0
  221. package/src/lib/widgets/DynamicWidget/components/EmptyWallets/EmptyWallets.js +2 -0
  222. package/src/lib/widgets/DynamicWidget/components/SingleWalletButtons/SingleWalletButtons.cjs +2 -0
  223. package/src/lib/widgets/DynamicWidget/components/SingleWalletButtons/SingleWalletButtons.js +2 -0
  224. package/src/lib/widgets/DynamicWidget/components/Wallet/Wallet.cjs +2 -0
  225. package/src/lib/widgets/DynamicWidget/components/Wallet/Wallet.js +2 -0
  226. package/src/lib/widgets/DynamicWidget/components/WalletIconWithStatus/WalletIconWithStatus.cjs +1 -0
  227. package/src/lib/widgets/DynamicWidget/components/WalletIconWithStatus/WalletIconWithStatus.js +1 -0
  228. package/src/lib/widgets/DynamicWidget/components/WidgetPortal/WidgetPortal.cjs +2 -0
  229. package/src/lib/widgets/DynamicWidget/components/WidgetPortal/WidgetPortal.js +2 -0
  230. package/src/lib/widgets/DynamicWidget/context/DynamicWidgetContext.cjs +2 -0
  231. package/src/lib/widgets/DynamicWidget/context/DynamicWidgetContext.js +2 -0
  232. package/src/lib/widgets/DynamicWidget/hooks/useFetchBalance/useFetchBalance.cjs +1 -0
  233. package/src/lib/widgets/DynamicWidget/hooks/useFetchBalance/useFetchBalance.js +1 -0
  234. package/src/lib/widgets/DynamicWidget/prompts/DefaultPromptModal/DefaultPromptModal.cjs +2 -0
  235. package/src/lib/widgets/DynamicWidget/prompts/DefaultPromptModal/DefaultPromptModal.js +2 -0
  236. package/src/lib/widgets/DynamicWidget/prompts/DetectedNewWalletModal/DetectedNewWalletModal.cjs +2 -0
  237. package/src/lib/widgets/DynamicWidget/prompts/DetectedNewWalletModal/DetectedNewWalletModal.js +2 -0
  238. package/src/lib/widgets/DynamicWidget/prompts/NoQrNotInstalledModalView/NoQrNotInstalledModalView.cjs +1 -0
  239. package/src/lib/widgets/DynamicWidget/prompts/NoQrNotInstalledModalView/NoQrNotInstalledModalView.js +1 -0
  240. package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/SwitchAccountView/SwitchAccountView.cjs +2 -0
  241. package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/SwitchAccountView/SwitchAccountView.js +2 -0
  242. package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/SwitchOrUseActiveAccountView/SwitchOrUseActiveAccountView.cjs +1 -0
  243. package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/SwitchOrUseActiveAccountView/SwitchOrUseActiveAccountView.js +1 -0
  244. package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchToLinkModal/PendingAccountSwitchToLinkModal.cjs +1 -0
  245. package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchToLinkModal/PendingAccountSwitchToLinkModal.js +1 -0
  246. package/src/lib/widgets/DynamicWidget/prompts/PendingConnectionModal/PendingConnectionModal.cjs +1 -0
  247. package/src/lib/widgets/DynamicWidget/prompts/PendingConnectionModal/PendingConnectionModal.js +1 -0
  248. package/src/lib/widgets/DynamicWidget/prompts/PendingSignModal/DefaultPendingSignModalContent/DefaultPendingSignModalContent.cjs +1 -0
  249. package/src/lib/widgets/DynamicWidget/prompts/PendingSignModal/DefaultPendingSignModalContent/DefaultPendingSignModalContent.js +1 -0
  250. package/src/lib/widgets/DynamicWidget/prompts/PrimaryNotConnectedModal/PrimaryNotConnectedModal.cjs +1 -0
  251. package/src/lib/widgets/DynamicWidget/prompts/PrimaryNotConnectedModal/PrimaryNotConnectedModal.js +1 -0
  252. package/src/lib/widgets/DynamicWidget/prompts/QrCodeModalView/QrCodeModalView.cjs +1 -0
  253. package/src/lib/widgets/DynamicWidget/prompts/QrCodeModalView/QrCodeModalView.js +1 -0
  254. package/src/lib/widgets/DynamicWidget/prompts/UnlinkWalletPopUp/UnlinkWalletPopUp.cjs +2 -0
  255. package/src/lib/widgets/DynamicWidget/prompts/UnlinkWalletPopUp/UnlinkWalletPopUp.js +2 -0
  256. package/src/lib/widgets/DynamicWidget/views/EditProfileView/EditProfileView.cjs +2 -0
  257. package/src/lib/widgets/DynamicWidget/views/EditProfileView/EditProfileView.js +2 -0
  258. package/src/lib/widgets/DynamicWidget/views/IndexView/IndexView.cjs +2 -0
  259. package/src/lib/widgets/DynamicWidget/views/IndexView/IndexView.js +2 -0
  260. package/src/lib/widgets/DynamicWidget/views/ProfileView/ProfileView.cjs +2 -0
  261. package/src/lib/widgets/DynamicWidget/views/ProfileView/ProfileView.js +2 -0
  262. package/src/lib/widgets/FundingWidget/views/FundWalletView/FundWalletView.cjs +2 -0
  263. package/src/lib/widgets/FundingWidget/views/FundWalletView/FundWalletView.js +2 -0
  264. /package/src/lib/{modals/TransactionConfirmationModal → views/TransactionConfirmationView}/hooks/index.d.ts +0 -0
  265. /package/src/lib/{modals/TransactionConfirmationModal → views/TransactionConfirmationView}/hooks/useTransactionData/index.d.ts +0 -0
  266. /package/src/lib/{modals/TransactionConfirmationModal → views/TransactionConfirmationView}/hooks/useTransactionData/useTransactionData.d.ts +0 -0
@@ -4,36 +4,28 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var jsxRuntime = require('react/jsx-runtime');
6
6
  var React = require('react');
7
- var ethers = require('ethers');
8
- var utils = require('@dynamic-labs/utils');
9
7
  require('@dynamic-labs/sdk-api');
10
8
  require('../../shared/logger.cjs');
11
- var getChainIcon = require('../../shared/utils/functions/chain/getChainIcon.cjs');
9
+ require('@dynamic-labs/iconic');
12
10
  require('@dynamic-labs/wallet-connector-core');
13
- var shortenWalletAddress = require('../../shared/utils/functions/shortenWalletAddress/shortenWalletAddress.cjs');
11
+ require('../../context/ViewContext/ViewContext.cjs');
12
+ require('@dynamic-labs/utils');
14
13
  require('../../utils/constants/colors.cjs');
15
- var formatBigNumber = require('../../shared/utils/functions/formatBigNumber/formatBigNumber.cjs');
14
+ require('ethers');
16
15
  var usePreventPageScroll = require('../../shared/utils/hooks/usePreventPageScroll/usePreventPageScroll.cjs');
17
- require('@dynamic-labs/iconic');
18
- require('../../context/ViewContext/ViewContext.cjs');
19
16
  var index = require('../../shared/consts/index.cjs');
20
- var useInternalDynamicContext = require('../../context/DynamicContext/useInternalDynamicContext.cjs');
17
+ require('../../context/DynamicContext/DynamicContext.cjs');
21
18
  require('@dynamic-labs/multi-wallet');
22
19
  require('../../components/ShadowDOM/ShadowDOM.cjs');
23
20
  require('../../context/ThemeContext/ThemeContext.cjs');
24
- var Icon = require('../../components/Icon/Icon.cjs');
25
21
  var Portal = require('../../components/Portal/Portal.cjs');
26
22
  require('react-dom');
27
23
  require('../../config/ApiEndpoint.cjs');
28
24
  require('@dynamic-labs/rpc-providers');
29
25
  require('../../context/ErrorContext/ErrorContext.cjs');
30
- var useFetchCurrency = require('../../widgets/DynamicWidget/hooks/useFetchCurrency/useFetchCurrency.cjs');
31
- var transactionErrorMessage = require('./helpers/transactionErrorMessage.cjs');
32
- var useTransactionData = require('./hooks/useTransactionData/useTransactionData.cjs');
26
+ var TransactionConfirmationView = require('../../views/TransactionConfirmationView/TransactionConfirmationView.cjs');
33
27
  require('../../context/MockContext/MockContext.cjs');
34
28
  require('../../context/CaptchaContext/CaptchaContext.cjs');
35
- var usePromise = require('../../utils/hooks/usePromise/usePromise.cjs');
36
- var useMutation = require('../../utils/hooks/useMutation/useMutation.cjs');
37
29
  require('../../utils/hooks/useUserUpdateRequest/useUserUpdateRequest.cjs');
38
30
  require('../../components/IconButton/IconButton.cjs');
39
31
  require('../../components/Alert/Alert.cjs');
@@ -42,70 +34,30 @@ require('../../components/Transition/SlideInUpTransition/SlideInUpTransition.cjs
42
34
  require('../../components/Transition/OpacityTransition/OpacityTransition.cjs');
43
35
  require('../../components/Popper/Popper/Popper.cjs');
44
36
  require('../../components/Popper/PopperContext/PopperContext.cjs');
45
- var TransactionConfirmationPageLayout = require('../../components/TransactionConfirmationPageLayout/TransactionConfirmationPageLayout.cjs');
46
- var TransactionRow = require('../../components/TransactionConfirmationPageLayout/components/TransactionRow/TransactionRow.cjs');
37
+ require('@dynamic-labs/wallet-book');
38
+ require('../../components/SendBalanceForm/SendBalanceForm.cjs');
47
39
 
48
- const TransactionConfirmationModal = ({ title, appOrigin, handler, onReject, onTransactionResponseSuccess, appLogoUrl, appName, transaction, provider, }) => {
40
+ const TransactionConfirmationModal = ({ title, handler, onReject, onTransactionResponseSuccess, transaction, provider, }) => {
49
41
  usePreventPageScroll.usePreventPageScroll(true);
50
- const { primaryWallet } = useInternalDynamicContext.useInternalDynamicContext();
51
- const didConfirmRef = React.useRef(false);
52
42
  const [show, setShow] = React.useState(true);
53
- if (!primaryWallet) {
54
- throw new utils.DynamicError('Primary wallet is not available, transaction cannot be displayed');
55
- }
56
- const { data: balance } = usePromise.usePromise(() => primaryWallet.connector
57
- .getBalance()
58
- .then((balanceText) => balanceText ? ethers.ethers.utils.parseEther(balanceText) : undefined));
59
- const [currencySymbol] = useFetchCurrency.useFetchCurrency(primaryWallet.connector);
60
- const { isLoading, mutate: sendTransaction, data: transactionResponse, error: transactionError, } = useMutation.useMutation(() => handler(transaction), {
61
- onSuccess: () => {
62
- didConfirmRef.current = true;
63
- setShow(false);
64
- },
65
- });
66
- const { isLoading: isLoadingTransaction, isTransactionFromAddressLoading, isTransactionToAddressLoading, transactionFromAddress, transactionToAddress, isEffectiveValueLoading, transactionValue, gasEstimate, isGasPriceLoading, total, } = useTransactionData.useTransactionData({
67
- provider,
68
- transaction,
69
- });
70
- const hasInsufficientFunds = React.useMemo(() => {
71
- if (balance === undefined || total === undefined)
72
- return false;
73
- return total.gt(balance);
74
- }, [balance, total]);
75
- const missingFunds = React.useMemo(() => {
76
- if (balance === undefined || total === undefined)
77
- return undefined;
78
- return total.sub(balance);
79
- }, [balance, total]);
80
- const handleOnReject = React.useCallback(() => {
81
- didConfirmRef.current = false;
43
+ const errorRef = React.useRef(null);
44
+ const transactionResponseRef = React.useRef(null);
45
+ const closeModal = React.useCallback(() => {
82
46
  setShow(false);
83
47
  }, [setShow]);
84
48
  const handleOnModalUnmount = React.useCallback(() => {
85
- if (transactionResponse) {
86
- return onTransactionResponseSuccess(transactionResponse);
49
+ if (transactionResponseRef.current) {
50
+ return onTransactionResponseSuccess(transactionResponseRef.current);
87
51
  }
88
- onReject(transactionError || new Error('user rejected transaction'));
89
- }, [
90
- transactionResponse,
91
- transactionError,
92
- onTransactionResponseSuccess,
93
- onReject,
94
- ]);
95
- const ChainIconComponent = getChainIcon.getChainIcon('evm');
96
- const chainIcon = (jsxRuntime.jsx(Icon.Icon, Object.assign({ size: 'small' }, { children: jsxRuntime.jsx(ChainIconComponent, {}) })));
97
- const errorMessage = transactionError && transactionErrorMessage.transactionErrorMessage(transactionError);
98
- const warningMessage = React.useMemo(() => {
99
- const showInsufficientFundsWarningMessage = hasInsufficientFunds && missingFunds;
100
- if (!showInsufficientFundsWarningMessage)
101
- return;
102
- const amountLeft = formatBigNumber.formatBigNumber(missingFunds, 5);
103
- return `Insufficient funds due to gas price increase from estimate. Please add ${amountLeft} ${currencySymbol} to continue.`;
104
- }, [currencySymbol, hasInsufficientFunds, missingFunds]);
105
- return (jsxRuntime.jsx(Portal.Portal, Object.assign({ handleClose: handleOnReject, isShown: show, zIndex: index.authModalZIndex, withBackdrop: true, elementId: 'dynamic-send-transaction', transitionEvents: {
52
+ onReject(errorRef.current || new Error('user rejected transaction'));
53
+ }, [onTransactionResponseSuccess, onReject]);
54
+ return (jsxRuntime.jsx(Portal.Portal, Object.assign({ handleClose: closeModal, isShown: show, zIndex: index.authModalZIndex, withBackdrop: true, elementId: 'dynamic-send-transaction', transitionEvents: {
106
55
  onUnmount: handleOnModalUnmount,
107
- } }, { children: jsxRuntime.jsx("div", Object.assign({ className: 'transaction-confirmation' }, { children: jsxRuntime.jsxs(TransactionConfirmationPageLayout.TransactionConfirmationPageLayout, Object.assign({ appOrigin: appOrigin, appLogoUrl: appLogoUrl, appName: appName, isLoading: isLoading, disableSendButton: isLoadingTransaction || hasInsufficientFunds, onClickSend: () => sendTransaction(), onClickClose: handleOnReject, displayPoweredByDynamicFooter: true, error: errorMessage, warningMessage: warningMessage, title: title }, { children: [jsxRuntime.jsx(TransactionRow.TransactionRow, Object.assign({ label: 'From (You)', isLoading: isTransactionFromAddressLoading, title: transactionFromAddress }, { children: shortenWalletAddress.shortenWalletAddress(transactionFromAddress, 4, 4) })), jsxRuntime.jsx(TransactionRow.TransactionRow, Object.assign({ label: 'To', isLoading: isTransactionToAddressLoading, title: transactionToAddress }, { children: transactionToAddress &&
108
- shortenWalletAddress.shortenWalletAddress(transactionToAddress, 4, 4) })), jsxRuntime.jsx(TransactionRow.TransactionRow, Object.assign({ label: 'Amount', isLoading: isEffectiveValueLoading, isEmpty: !transactionValue, title: transactionValue && formatBigNumber.formatBigNumber(transactionValue), suffix: currencySymbol, icon: chainIcon, dataTestId: 'transaction-amount' }, { children: transactionValue ? formatBigNumber.formatBigNumber(transactionValue, 10) : 0 })), jsxRuntime.jsx(TransactionRow.TransactionRow, Object.assign({ label: 'Gas (estimated)', isEmpty: !gasEstimate, isLoading: isGasPriceLoading, title: gasEstimate && formatBigNumber.formatBigNumber(gasEstimate), suffix: gasEstimate && currencySymbol, icon: gasEstimate && chainIcon, dataTestId: 'transaction-gas-free' }, { children: gasEstimate ? formatBigNumber.formatBigNumber(gasEstimate, 10) : 'N/A' })), jsxRuntime.jsx(TransactionRow.TransactionRow, Object.assign({ label: 'Total', isEmpty: !total, title: total && formatBigNumber.formatBigNumber(total), suffix: total && currencySymbol, icon: total && chainIcon, dataTestId: 'transaction-total' }, { children: total ? formatBigNumber.formatBigNumber(total, 10) : 'N/A' }))] })) })) })));
56
+ } }, { children: jsxRuntime.jsx("div", Object.assign({ className: 'transaction-confirmation' }, { children: jsxRuntime.jsx(TransactionConfirmationView.TransactionConfirmationView, { provider: provider, transaction: transaction, title: title, mutation: () => handler(transaction), onClickClose: closeModal, onError: (error) => (errorRef.current = error), onSuccess: (transactionResponse) => {
57
+ errorRef.current = null;
58
+ transactionResponseRef.current = transactionResponse;
59
+ closeModal();
60
+ } }) })) })));
109
61
  };
110
62
 
111
63
  exports.TransactionConfirmationModal = TransactionConfirmationModal;
@@ -1,35 +1,27 @@
1
- import { jsx, jsxs } from 'react/jsx-runtime';
2
- import { useRef, useState, useMemo, useCallback } from 'react';
3
- import { ethers } from 'ethers';
4
- import { DynamicError } from '@dynamic-labs/utils';
1
+ import { jsx } from 'react/jsx-runtime';
2
+ import { useState, useRef, useCallback } from 'react';
5
3
  import '@dynamic-labs/sdk-api';
6
4
  import '../../shared/logger.js';
7
- import { getChainIcon } from '../../shared/utils/functions/chain/getChainIcon.js';
5
+ import '@dynamic-labs/iconic';
8
6
  import '@dynamic-labs/wallet-connector-core';
9
- import { shortenWalletAddress } from '../../shared/utils/functions/shortenWalletAddress/shortenWalletAddress.js';
7
+ import '../../context/ViewContext/ViewContext.js';
8
+ import '@dynamic-labs/utils';
10
9
  import '../../utils/constants/colors.js';
11
- import { formatBigNumber } from '../../shared/utils/functions/formatBigNumber/formatBigNumber.js';
10
+ import 'ethers';
12
11
  import { usePreventPageScroll } from '../../shared/utils/hooks/usePreventPageScroll/usePreventPageScroll.js';
13
- import '@dynamic-labs/iconic';
14
- import '../../context/ViewContext/ViewContext.js';
15
12
  import { authModalZIndex } from '../../shared/consts/index.js';
16
- import { useInternalDynamicContext } from '../../context/DynamicContext/useInternalDynamicContext.js';
13
+ import '../../context/DynamicContext/DynamicContext.js';
17
14
  import '@dynamic-labs/multi-wallet';
18
15
  import '../../components/ShadowDOM/ShadowDOM.js';
19
16
  import '../../context/ThemeContext/ThemeContext.js';
20
- import { Icon } from '../../components/Icon/Icon.js';
21
17
  import { Portal } from '../../components/Portal/Portal.js';
22
18
  import 'react-dom';
23
19
  import '../../config/ApiEndpoint.js';
24
20
  import '@dynamic-labs/rpc-providers';
25
21
  import '../../context/ErrorContext/ErrorContext.js';
26
- import { useFetchCurrency } from '../../widgets/DynamicWidget/hooks/useFetchCurrency/useFetchCurrency.js';
27
- import { transactionErrorMessage } from './helpers/transactionErrorMessage.js';
28
- import { useTransactionData } from './hooks/useTransactionData/useTransactionData.js';
22
+ import { TransactionConfirmationView } from '../../views/TransactionConfirmationView/TransactionConfirmationView.js';
29
23
  import '../../context/MockContext/MockContext.js';
30
24
  import '../../context/CaptchaContext/CaptchaContext.js';
31
- import { usePromise } from '../../utils/hooks/usePromise/usePromise.js';
32
- import { useMutation } from '../../utils/hooks/useMutation/useMutation.js';
33
25
  import '../../utils/hooks/useUserUpdateRequest/useUserUpdateRequest.js';
34
26
  import '../../components/IconButton/IconButton.js';
35
27
  import '../../components/Alert/Alert.js';
@@ -38,70 +30,30 @@ import '../../components/Transition/SlideInUpTransition/SlideInUpTransition.js';
38
30
  import '../../components/Transition/OpacityTransition/OpacityTransition.js';
39
31
  import '../../components/Popper/Popper/Popper.js';
40
32
  import '../../components/Popper/PopperContext/PopperContext.js';
41
- import { TransactionConfirmationPageLayout } from '../../components/TransactionConfirmationPageLayout/TransactionConfirmationPageLayout.js';
42
- import { TransactionRow } from '../../components/TransactionConfirmationPageLayout/components/TransactionRow/TransactionRow.js';
33
+ import '@dynamic-labs/wallet-book';
34
+ import '../../components/SendBalanceForm/SendBalanceForm.js';
43
35
 
44
- const TransactionConfirmationModal = ({ title, appOrigin, handler, onReject, onTransactionResponseSuccess, appLogoUrl, appName, transaction, provider, }) => {
36
+ const TransactionConfirmationModal = ({ title, handler, onReject, onTransactionResponseSuccess, transaction, provider, }) => {
45
37
  usePreventPageScroll(true);
46
- const { primaryWallet } = useInternalDynamicContext();
47
- const didConfirmRef = useRef(false);
48
38
  const [show, setShow] = useState(true);
49
- if (!primaryWallet) {
50
- throw new DynamicError('Primary wallet is not available, transaction cannot be displayed');
51
- }
52
- const { data: balance } = usePromise(() => primaryWallet.connector
53
- .getBalance()
54
- .then((balanceText) => balanceText ? ethers.utils.parseEther(balanceText) : undefined));
55
- const [currencySymbol] = useFetchCurrency(primaryWallet.connector);
56
- const { isLoading, mutate: sendTransaction, data: transactionResponse, error: transactionError, } = useMutation(() => handler(transaction), {
57
- onSuccess: () => {
58
- didConfirmRef.current = true;
59
- setShow(false);
60
- },
61
- });
62
- const { isLoading: isLoadingTransaction, isTransactionFromAddressLoading, isTransactionToAddressLoading, transactionFromAddress, transactionToAddress, isEffectiveValueLoading, transactionValue, gasEstimate, isGasPriceLoading, total, } = useTransactionData({
63
- provider,
64
- transaction,
65
- });
66
- const hasInsufficientFunds = useMemo(() => {
67
- if (balance === undefined || total === undefined)
68
- return false;
69
- return total.gt(balance);
70
- }, [balance, total]);
71
- const missingFunds = useMemo(() => {
72
- if (balance === undefined || total === undefined)
73
- return undefined;
74
- return total.sub(balance);
75
- }, [balance, total]);
76
- const handleOnReject = useCallback(() => {
77
- didConfirmRef.current = false;
39
+ const errorRef = useRef(null);
40
+ const transactionResponseRef = useRef(null);
41
+ const closeModal = useCallback(() => {
78
42
  setShow(false);
79
43
  }, [setShow]);
80
44
  const handleOnModalUnmount = useCallback(() => {
81
- if (transactionResponse) {
82
- return onTransactionResponseSuccess(transactionResponse);
45
+ if (transactionResponseRef.current) {
46
+ return onTransactionResponseSuccess(transactionResponseRef.current);
83
47
  }
84
- onReject(transactionError || new Error('user rejected transaction'));
85
- }, [
86
- transactionResponse,
87
- transactionError,
88
- onTransactionResponseSuccess,
89
- onReject,
90
- ]);
91
- const ChainIconComponent = getChainIcon('evm');
92
- const chainIcon = (jsx(Icon, Object.assign({ size: 'small' }, { children: jsx(ChainIconComponent, {}) })));
93
- const errorMessage = transactionError && transactionErrorMessage(transactionError);
94
- const warningMessage = useMemo(() => {
95
- const showInsufficientFundsWarningMessage = hasInsufficientFunds && missingFunds;
96
- if (!showInsufficientFundsWarningMessage)
97
- return;
98
- const amountLeft = formatBigNumber(missingFunds, 5);
99
- return `Insufficient funds due to gas price increase from estimate. Please add ${amountLeft} ${currencySymbol} to continue.`;
100
- }, [currencySymbol, hasInsufficientFunds, missingFunds]);
101
- return (jsx(Portal, Object.assign({ handleClose: handleOnReject, isShown: show, zIndex: authModalZIndex, withBackdrop: true, elementId: 'dynamic-send-transaction', transitionEvents: {
48
+ onReject(errorRef.current || new Error('user rejected transaction'));
49
+ }, [onTransactionResponseSuccess, onReject]);
50
+ return (jsx(Portal, Object.assign({ handleClose: closeModal, isShown: show, zIndex: authModalZIndex, withBackdrop: true, elementId: 'dynamic-send-transaction', transitionEvents: {
102
51
  onUnmount: handleOnModalUnmount,
103
- } }, { children: jsx("div", Object.assign({ className: 'transaction-confirmation' }, { children: jsxs(TransactionConfirmationPageLayout, Object.assign({ appOrigin: appOrigin, appLogoUrl: appLogoUrl, appName: appName, isLoading: isLoading, disableSendButton: isLoadingTransaction || hasInsufficientFunds, onClickSend: () => sendTransaction(), onClickClose: handleOnReject, displayPoweredByDynamicFooter: true, error: errorMessage, warningMessage: warningMessage, title: title }, { children: [jsx(TransactionRow, Object.assign({ label: 'From (You)', isLoading: isTransactionFromAddressLoading, title: transactionFromAddress }, { children: shortenWalletAddress(transactionFromAddress, 4, 4) })), jsx(TransactionRow, Object.assign({ label: 'To', isLoading: isTransactionToAddressLoading, title: transactionToAddress }, { children: transactionToAddress &&
104
- shortenWalletAddress(transactionToAddress, 4, 4) })), jsx(TransactionRow, Object.assign({ label: 'Amount', isLoading: isEffectiveValueLoading, isEmpty: !transactionValue, title: transactionValue && formatBigNumber(transactionValue), suffix: currencySymbol, icon: chainIcon, dataTestId: 'transaction-amount' }, { children: transactionValue ? formatBigNumber(transactionValue, 10) : 0 })), jsx(TransactionRow, Object.assign({ label: 'Gas (estimated)', isEmpty: !gasEstimate, isLoading: isGasPriceLoading, title: gasEstimate && formatBigNumber(gasEstimate), suffix: gasEstimate && currencySymbol, icon: gasEstimate && chainIcon, dataTestId: 'transaction-gas-free' }, { children: gasEstimate ? formatBigNumber(gasEstimate, 10) : 'N/A' })), jsx(TransactionRow, Object.assign({ label: 'Total', isEmpty: !total, title: total && formatBigNumber(total), suffix: total && currencySymbol, icon: total && chainIcon, dataTestId: 'transaction-total' }, { children: total ? formatBigNumber(total, 10) : 'N/A' }))] })) })) })));
52
+ } }, { children: jsx("div", Object.assign({ className: 'transaction-confirmation' }, { children: jsx(TransactionConfirmationView, { provider: provider, transaction: transaction, title: title, mutation: () => handler(transaction), onClickClose: closeModal, onError: (error) => (errorRef.current = error), onSuccess: (transactionResponse) => {
53
+ errorRef.current = null;
54
+ transactionResponseRef.current = transactionResponse;
55
+ closeModal();
56
+ } }) })) })));
105
57
  };
106
58
 
107
59
  export { TransactionConfirmationModal };
@@ -1,9 +1,6 @@
1
1
  import { FC, ReactNode } from 'react';
2
2
  import { ethers } from 'ethers';
3
3
  export type TransactionConfirmationModalProps = {
4
- appLogoUrl?: string;
5
- appName?: string;
6
- appOrigin: string;
7
4
  handler: (transaction: ethers.utils.Deferrable<ethers.providers.TransactionRequest>) => Promise<ethers.providers.TransactionResponse>;
8
5
  onReject: (error: unknown) => void;
9
6
  onTransactionResponseSuccess: (transactionResponse: ethers.providers.TransactionResponse) => void;
@@ -3,6 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var ethers = require('ethers');
6
+ var trimEnd = require('../trimEnd/trimEnd.cjs');
6
7
 
7
8
  const formatBigNumber = (value, decimals) => {
8
9
  const formatted = ethers.ethers.utils.formatEther(value);
@@ -14,7 +15,7 @@ const formatBigNumber = (value, decimals) => {
14
15
  const roundedNumber = Math.round(toFloat * power) / power;
15
16
  const hasDecimals = roundedNumber.toString().split('.').length !== 1;
16
17
  if (hasDecimals) {
17
- return roundedNumber.toString();
18
+ return trimEnd.trimEnd(roundedNumber.toFixed(decimals), '0');
18
19
  }
19
20
  return roundedNumber.toFixed(1);
20
21
  };
@@ -1,4 +1,5 @@
1
1
  import { ethers } from 'ethers';
2
+ import { trimEnd } from '../trimEnd/trimEnd.js';
2
3
 
3
4
  const formatBigNumber = (value, decimals) => {
4
5
  const formatted = ethers.utils.formatEther(value);
@@ -10,7 +11,7 @@ const formatBigNumber = (value, decimals) => {
10
11
  const roundedNumber = Math.round(toFloat * power) / power;
11
12
  const hasDecimals = roundedNumber.toString().split('.').length !== 1;
12
13
  if (hasDecimals) {
13
- return roundedNumber.toString();
14
+ return trimEnd(roundedNumber.toFixed(decimals), '0');
14
15
  }
15
16
  return roundedNumber.toFixed(1);
16
17
  };
@@ -12,3 +12,4 @@ export * from './isDisplayOrderPriorityForWeb3';
12
12
  export * from './isDisplayOrderPriorityForWeb2';
13
13
  export * from './getWalletListItemLabel';
14
14
  export * from './formatBigNumber';
15
+ export * from './trimEnd';
@@ -0,0 +1 @@
1
+ export { trimEnd } from './trimEnd';
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const trimEnd = (text, char = '') => {
6
+ let endIndex = text.length - 1;
7
+ while (endIndex >= 0 && text[endIndex] === char) {
8
+ endIndex--;
9
+ }
10
+ return text.slice(0, endIndex + 1);
11
+ };
12
+
13
+ exports.trimEnd = trimEnd;
@@ -0,0 +1 @@
1
+ export declare const trimEnd: (text: string, char?: string) => string;
@@ -0,0 +1,9 @@
1
+ const trimEnd = (text, char = '') => {
2
+ let endIndex = text.length - 1;
3
+ while (endIndex >= 0 && text[endIndex] === char) {
4
+ endIndex--;
5
+ }
6
+ return text.slice(0, endIndex + 1);
7
+ };
8
+
9
+ export { trimEnd };
@@ -1,3 +1,5 @@
1
1
  export { useLocalStorage } from './useLocalStorage';
2
2
  export { useOnClickOutside } from './useOnClickOutside';
3
3
  export { usePreventPageScroll } from './usePreventPageScroll';
4
+ export { useIsMounted } from './useIsMounted';
5
+ export { useGlobalLoading } from './useGlobalLoading';
@@ -0,0 +1 @@
1
+ export { useIsMounted } from './useIsMounted';
@@ -0,0 +1,18 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+
7
+ const useIsMounted = () => {
8
+ const isMounted = React.useRef(false);
9
+ React.useEffect(() => {
10
+ isMounted.current = true;
11
+ return () => {
12
+ isMounted.current = false;
13
+ };
14
+ }, []);
15
+ return React.useCallback(() => isMounted.current, []);
16
+ };
17
+
18
+ exports.useIsMounted = useIsMounted;
@@ -0,0 +1 @@
1
+ export declare const useIsMounted: () => () => boolean;
@@ -0,0 +1,14 @@
1
+ import { useRef, useEffect, useCallback } from 'react';
2
+
3
+ const useIsMounted = () => {
4
+ const isMounted = useRef(false);
5
+ useEffect(() => {
6
+ isMounted.current = true;
7
+ return () => {
8
+ isMounted.current = false;
9
+ };
10
+ }, []);
11
+ return useCallback(() => isMounted.current, []);
12
+ };
13
+
14
+ export { useIsMounted };