@daimo/pay 1.16.0 → 1.16.2

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 (566) hide show
  1. package/build/index.d.ts +628 -15
  2. package/build/package.json.js +6 -4
  3. package/build/package.json.js.map +1 -1
  4. package/build/src/assets/MobileWithLogos.js +320 -1
  5. package/build/src/assets/MobileWithLogos.js.map +1 -1
  6. package/build/src/assets/ScanIconWithLogos.js +216 -10
  7. package/build/src/assets/ScanIconWithLogos.js.map +1 -1
  8. package/build/src/assets/browsers.js +963 -7
  9. package/build/src/assets/browsers.js.map +1 -1
  10. package/build/src/assets/chains.js +633 -103
  11. package/build/src/assets/chains.js.map +1 -1
  12. package/build/src/assets/coins.js +38 -1
  13. package/build/src/assets/coins.js.map +1 -1
  14. package/build/src/assets/crepe.js +35 -1
  15. package/build/src/assets/crepe.js.map +1 -1
  16. package/build/src/assets/icons.js +258 -15
  17. package/build/src/assets/icons.js.map +1 -1
  18. package/build/src/assets/logos.js +1510 -140
  19. package/build/src/assets/logos.js.map +1 -1
  20. package/build/src/assets/wallet.js +32 -1
  21. package/build/src/assets/wallet.js.map +1 -1
  22. package/build/src/assets/wave.js +41 -1
  23. package/build/src/assets/wave.js.map +1 -1
  24. package/build/src/components/Common/Alert/index.js +4 -1
  25. package/build/src/components/Common/Alert/index.js.map +1 -1
  26. package/build/src/components/Common/Alert/styles.js +4 -4
  27. package/build/src/components/Common/Alert/styles.js.map +1 -1
  28. package/build/src/components/Common/AmountInput/AmountInputField.js +29 -18
  29. package/build/src/components/Common/AmountInput/AmountInputField.js.map +1 -1
  30. package/build/src/components/Common/AmountInput/index.js +112 -99
  31. package/build/src/components/Common/AmountInput/index.js.map +1 -1
  32. package/build/src/components/Common/Avatar/index.js +63 -51
  33. package/build/src/components/Common/Avatar/index.js.map +1 -1
  34. package/build/src/components/Common/Avatar/styles.js +9 -14
  35. package/build/src/components/Common/Avatar/styles.js.map +1 -1
  36. package/build/src/components/Common/BrowserIcon/index.js +15 -14
  37. package/build/src/components/Common/BrowserIcon/index.js.map +1 -1
  38. package/build/src/components/Common/BrowserIcon/styles.js +1 -1
  39. package/build/src/components/Common/BrowserIcon/styles.js.map +1 -1
  40. package/build/src/components/Common/Button/index.js +131 -25
  41. package/build/src/components/Common/Button/index.js.map +1 -1
  42. package/build/src/components/Common/Button/styles.js +20 -24
  43. package/build/src/components/Common/Button/styles.js.map +1 -1
  44. package/build/src/components/Common/Chain/index.js +130 -14
  45. package/build/src/components/Common/Chain/index.js.map +1 -1
  46. package/build/src/components/Common/Chain/styles.js +9 -13
  47. package/build/src/components/Common/Chain/styles.js.map +1 -1
  48. package/build/src/components/Common/ChainSelectList/index.js +232 -89
  49. package/build/src/components/Common/ChainSelectList/index.js.map +1 -1
  50. package/build/src/components/Common/ChainSelectList/styles.js +11 -13
  51. package/build/src/components/Common/ChainSelectList/styles.js.map +1 -1
  52. package/build/src/components/Common/CircleTimer.js +85 -41
  53. package/build/src/components/Common/CircleTimer.js.map +1 -1
  54. package/build/src/components/Common/ConnectorList/index.js +106 -80
  55. package/build/src/components/Common/ConnectorList/index.js.map +1 -1
  56. package/build/src/components/Common/ConnectorList/styles.js +28 -36
  57. package/build/src/components/Common/ConnectorList/styles.js.map +1 -1
  58. package/build/src/components/Common/CopyToClipboard/CopyToClipboardIcon.js +16 -9
  59. package/build/src/components/Common/CopyToClipboard/CopyToClipboardIcon.js.map +1 -1
  60. package/build/src/components/Common/CopyToClipboard/index.js +3 -5
  61. package/build/src/components/Common/CopyToClipboard/index.js.map +1 -1
  62. package/build/src/components/Common/CustomQRCode/QRCode.js +120 -57
  63. package/build/src/components/Common/CustomQRCode/QRCode.js.map +1 -1
  64. package/build/src/components/Common/CustomQRCode/index.js +60 -10
  65. package/build/src/components/Common/CustomQRCode/index.js.map +1 -1
  66. package/build/src/components/Common/CustomQRCode/styles.js +6 -6
  67. package/build/src/components/Common/CustomQRCode/styles.js.map +1 -1
  68. package/build/src/components/Common/FitText/index.js +24 -17
  69. package/build/src/components/Common/FitText/index.js.map +1 -1
  70. package/build/src/components/Common/Modal/index.js +481 -267
  71. package/build/src/components/Common/Modal/index.js.map +1 -1
  72. package/build/src/components/Common/Modal/styles.js +44 -48
  73. package/build/src/components/Common/Modal/styles.js.map +1 -1
  74. package/build/src/components/Common/OptionsList/index.js +75 -33
  75. package/build/src/components/Common/OptionsList/index.js.map +1 -1
  76. package/build/src/components/Common/OptionsList/styles.js +7 -8
  77. package/build/src/components/Common/OptionsList/styles.js.map +1 -1
  78. package/build/src/components/Common/OrderHeader/index.js +109 -65
  79. package/build/src/components/Common/OrderHeader/index.js.map +1 -1
  80. package/build/src/components/Common/PaymentBreakdown/index.js +29 -7
  81. package/build/src/components/Common/PaymentBreakdown/index.js.map +1 -1
  82. package/build/src/components/Common/Portal/index.js +21 -22
  83. package/build/src/components/Common/Portal/index.js.map +1 -1
  84. package/build/src/components/Common/PoweredByFooter/index.js +39 -21
  85. package/build/src/components/Common/PoweredByFooter/index.js.map +1 -1
  86. package/build/src/components/Common/ScrollArea/index.js +107 -52
  87. package/build/src/components/Common/ScrollArea/index.js.map +1 -1
  88. package/build/src/components/Common/ScrollArea/styles.js +7 -11
  89. package/build/src/components/Common/ScrollArea/styles.js.map +1 -1
  90. package/build/src/components/Common/SelectAnotherMethodButton/index.js +80 -56
  91. package/build/src/components/Common/SelectAnotherMethodButton/index.js.map +1 -1
  92. package/build/src/components/Common/Spinner/index.js +56 -16
  93. package/build/src/components/Common/Spinner/index.js.map +1 -1
  94. package/build/src/components/Common/Spinner/styles.js +2 -2
  95. package/build/src/components/Common/Spinner/styles.js.map +1 -1
  96. package/build/src/components/Common/SwitchButton/index.js +18 -15
  97. package/build/src/components/Common/SwitchButton/index.js.map +1 -1
  98. package/build/src/components/Common/ThemedButton/index.js +37 -16
  99. package/build/src/components/Common/ThemedButton/index.js.map +1 -1
  100. package/build/src/components/Common/ThemedButton/styles.js +2 -2
  101. package/build/src/components/Common/ThemedButton/styles.js.map +1 -1
  102. package/build/src/components/Common/TokenChainLogo/index.js +14 -8
  103. package/build/src/components/Common/TokenChainLogo/index.js.map +1 -1
  104. package/build/src/components/Common/Tooltip/index.js +115 -83
  105. package/build/src/components/Common/Tooltip/index.js.map +1 -1
  106. package/build/src/components/Common/Tooltip/styles.js +8 -8
  107. package/build/src/components/Common/Tooltip/styles.js.map +1 -1
  108. package/build/src/components/Common/WalletChainLogo/index.js +13 -6
  109. package/build/src/components/Common/WalletChainLogo/index.js.map +1 -1
  110. package/build/src/components/DaimoPayButton/index.js +171 -180
  111. package/build/src/components/DaimoPayButton/index.js.map +1 -1
  112. package/build/src/components/DaimoPayButton/styles.js +4 -4
  113. package/build/src/components/DaimoPayButton/styles.js.map +1 -1
  114. package/build/src/components/DaimoPayModal/ConnectUsing.js +50 -24
  115. package/build/src/components/DaimoPayModal/ConnectUsing.js.map +1 -1
  116. package/build/src/components/DaimoPayModal/ConnectWithInjector/index.js +303 -163
  117. package/build/src/components/DaimoPayModal/ConnectWithInjector/index.js.map +1 -1
  118. package/build/src/components/DaimoPayModal/ConnectWithInjector/styles.js +10 -12
  119. package/build/src/components/DaimoPayModal/ConnectWithInjector/styles.js.map +1 -1
  120. package/build/src/components/DaimoPayModal/ConnectWithQRCode.js +69 -39
  121. package/build/src/components/DaimoPayModal/ConnectWithQRCode.js.map +1 -1
  122. package/build/src/components/DaimoPayModal/index.js +409 -416
  123. package/build/src/components/DaimoPayModal/index.js.map +1 -1
  124. package/build/src/components/DaimoPayThemeProvider/DaimoPayThemeProvider.js +15 -11
  125. package/build/src/components/DaimoPayThemeProvider/DaimoPayThemeProvider.js.map +1 -1
  126. package/build/src/components/Pages/About/graphics.js +796 -130
  127. package/build/src/components/Pages/About/graphics.js.map +1 -1
  128. package/build/src/components/Pages/About/index.js +203 -110
  129. package/build/src/components/Pages/About/index.js.map +1 -1
  130. package/build/src/components/Pages/About/styles.js +11 -15
  131. package/build/src/components/Pages/About/styles.js.map +1 -1
  132. package/build/src/components/Pages/Confirmation/index.js +71 -48
  133. package/build/src/components/Pages/Confirmation/index.js.map +1 -1
  134. package/build/src/components/Pages/Connectors/index.js +50 -16
  135. package/build/src/components/Pages/Connectors/index.js.map +1 -1
  136. package/build/src/components/Pages/Connectors/styles.js +10 -10
  137. package/build/src/components/Pages/Connectors/styles.js.map +1 -1
  138. package/build/src/components/Pages/DownloadApp/index.js +23 -18
  139. package/build/src/components/Pages/DownloadApp/index.js.map +1 -1
  140. package/build/src/components/Pages/Error/index.js +27 -15
  141. package/build/src/components/Pages/Error/index.js.map +1 -1
  142. package/build/src/components/Pages/MobileConnectors/index.js +50 -44
  143. package/build/src/components/Pages/MobileConnectors/index.js.map +1 -1
  144. package/build/src/components/Pages/MobileConnectors/styles.js +9 -11
  145. package/build/src/components/Pages/MobileConnectors/styles.js.map +1 -1
  146. package/build/src/components/Pages/Onboarding/index.js +20 -4
  147. package/build/src/components/Pages/Onboarding/index.js.map +1 -1
  148. package/build/src/components/Pages/Onboarding/styles.js +13 -13
  149. package/build/src/components/Pages/Onboarding/styles.js.map +1 -1
  150. package/build/src/components/Pages/PayWithToken/index.js +133 -122
  151. package/build/src/components/Pages/PayWithToken/index.js.map +1 -1
  152. package/build/src/components/Pages/SelectAmount/index.js +12 -5
  153. package/build/src/components/Pages/SelectAmount/index.js.map +1 -1
  154. package/build/src/components/Pages/SelectDepositAddressAmount/index.js +56 -38
  155. package/build/src/components/Pages/SelectDepositAddressAmount/index.js.map +1 -1
  156. package/build/src/components/Pages/SelectDepositAddressChain/index.js +57 -40
  157. package/build/src/components/Pages/SelectDepositAddressChain/index.js.map +1 -1
  158. package/build/src/components/Pages/SelectExchange/index.js +29 -24
  159. package/build/src/components/Pages/SelectExchange/index.js.map +1 -1
  160. package/build/src/components/Pages/SelectExternalAmount/index.js +57 -41
  161. package/build/src/components/Pages/SelectExternalAmount/index.js.map +1 -1
  162. package/build/src/components/Pages/SelectMethod/index.js +200 -183
  163. package/build/src/components/Pages/SelectMethod/index.js.map +1 -1
  164. package/build/src/components/Pages/SelectToken/index.js +72 -46
  165. package/build/src/components/Pages/SelectToken/index.js.map +1 -1
  166. package/build/src/components/Pages/SelectWalletAmount/index.js +40 -32
  167. package/build/src/components/Pages/SelectWalletAmount/index.js.map +1 -1
  168. package/build/src/components/Pages/SelectWalletChain/index.js +40 -36
  169. package/build/src/components/Pages/SelectWalletChain/index.js.map +1 -1
  170. package/build/src/components/Pages/SelectZKP/index.js +29 -24
  171. package/build/src/components/Pages/SelectZKP/index.js.map +1 -1
  172. package/build/src/components/Pages/Solana/ConnectorSolana/index.js +60 -45
  173. package/build/src/components/Pages/Solana/ConnectorSolana/index.js.map +1 -1
  174. package/build/src/components/Pages/Solana/PayWithSolanaToken/index.js +73 -61
  175. package/build/src/components/Pages/Solana/PayWithSolanaToken/index.js.map +1 -1
  176. package/build/src/components/Pages/Solana/SelectSolanaAmount/index.js +12 -5
  177. package/build/src/components/Pages/Solana/SelectSolanaAmount/index.js.map +1 -1
  178. package/build/src/components/Pages/SwitchNetworks/index.js +29 -10
  179. package/build/src/components/Pages/SwitchNetworks/index.js.map +1 -1
  180. package/build/src/components/Pages/WaitingDepositAddress/index.js +332 -184
  181. package/build/src/components/Pages/WaitingDepositAddress/index.js.map +1 -1
  182. package/build/src/components/Pages/WaitingExternal/index.js +69 -46
  183. package/build/src/components/Pages/WaitingExternal/index.js.map +1 -1
  184. package/build/src/components/Pages/WaitingWallet/index.js +37 -16
  185. package/build/src/components/Pages/WaitingWallet/index.js.map +1 -1
  186. package/build/src/components/Spinners/CircleSpinner/index.js +96 -7
  187. package/build/src/components/Spinners/CircleSpinner/index.js.map +1 -1
  188. package/build/src/components/Spinners/CircleSpinner/styles.js +6 -7
  189. package/build/src/components/Spinners/CircleSpinner/styles.js.map +1 -1
  190. package/build/src/components/Spinners/ExternalPaymentSpinner/index.js +18 -9
  191. package/build/src/components/Spinners/ExternalPaymentSpinner/index.js.map +1 -1
  192. package/build/src/components/Spinners/SquircleSpinner/index.js +60 -7
  193. package/build/src/components/Spinners/SquircleSpinner/index.js.map +1 -1
  194. package/build/src/components/Spinners/SquircleSpinner/styles.js +4 -4
  195. package/build/src/components/Spinners/SquircleSpinner/styles.js.map +1 -1
  196. package/build/src/components/Spinners/TokenLogoSpinner/index.js +12 -1
  197. package/build/src/components/Spinners/TokenLogoSpinner/index.js.map +1 -1
  198. package/build/src/components/Spinners/TokenLogoSpinner/styles.js +1 -1
  199. package/build/src/components/Spinners/TokenLogoSpinner/styles.js.map +1 -1
  200. package/build/src/components/Spinners/WalletPaymentSpinner/index.js +27 -20
  201. package/build/src/components/Spinners/WalletPaymentSpinner/index.js.map +1 -1
  202. package/build/src/components/Spinners/styles.js +3 -4
  203. package/build/src/components/Spinners/styles.js.map +1 -1
  204. package/build/src/constants/defaultTheme.js +1 -1
  205. package/build/src/constants/defaultTheme.js.map +1 -1
  206. package/build/src/constants/routes.js +29 -30
  207. package/build/src/constants/routes.js.map +1 -1
  208. package/build/src/defaultConfig.js +49 -46
  209. package/build/src/defaultConfig.js.map +1 -1
  210. package/build/src/defaultConnectors.js +32 -19
  211. package/build/src/defaultConnectors.js.map +1 -1
  212. package/build/src/hooks/useChainIsSupported.js +3 -5
  213. package/build/src/hooks/useChainIsSupported.js.map +1 -1
  214. package/build/src/hooks/useChains.js +3 -4
  215. package/build/src/hooks/useChains.js.map +1 -1
  216. package/build/src/hooks/useConnect.js +51 -39
  217. package/build/src/hooks/useConnect.js.map +1 -1
  218. package/build/src/hooks/useConnectCallback.js +15 -12
  219. package/build/src/hooks/useConnectCallback.js.map +1 -1
  220. package/build/src/hooks/useConnectors.js +2 -2
  221. package/build/src/hooks/useConnectors.js.map +1 -1
  222. package/build/src/hooks/useDaimoPay.js +98 -82
  223. package/build/src/hooks/useDaimoPay.js.map +1 -1
  224. package/build/src/hooks/useDaimoPayStatus.js +4 -15
  225. package/build/src/hooks/useDaimoPayStatus.js.map +1 -1
  226. package/build/src/hooks/useDaimoPayUI.js +7 -7
  227. package/build/src/hooks/useDaimoPayUI.js.map +1 -1
  228. package/build/src/hooks/useDepositAddressOptions.js +29 -25
  229. package/build/src/hooks/useDepositAddressOptions.js.map +1 -1
  230. package/build/src/hooks/useEnsFallbackConfig.js +5 -5
  231. package/build/src/hooks/useEnsFallbackConfig.js.map +1 -1
  232. package/build/src/hooks/useExternalPaymentOptions.js +57 -52
  233. package/build/src/hooks/useExternalPaymentOptions.js.map +1 -1
  234. package/build/src/hooks/useFitText.js +120 -135
  235. package/build/src/hooks/useFitText.js.map +1 -1
  236. package/build/src/hooks/useFocusTrap.js +33 -37
  237. package/build/src/hooks/useFocusTrap.js.map +1 -1
  238. package/build/src/hooks/useIsMobile.js +3 -3
  239. package/build/src/hooks/useIsMobile.js.map +1 -1
  240. package/build/src/hooks/useIsMounted.js +3 -5
  241. package/build/src/hooks/useIsMounted.js.map +1 -1
  242. package/build/src/hooks/useLastConnector.js +15 -15
  243. package/build/src/hooks/useLastConnector.js.map +1 -1
  244. package/build/src/hooks/useLocales.js +44 -42
  245. package/build/src/hooks/useLocales.js.map +1 -1
  246. package/build/src/hooks/useLockBodyScroll.js +38 -44
  247. package/build/src/hooks/useLockBodyScroll.js.map +1 -1
  248. package/build/src/hooks/useOrderUsdLimits.js +17 -19
  249. package/build/src/hooks/useOrderUsdLimits.js.map +1 -1
  250. package/build/src/hooks/usePayContext.js +3 -5
  251. package/build/src/hooks/usePayContext.js.map +1 -1
  252. package/build/src/hooks/usePaymentState.js +351 -324
  253. package/build/src/hooks/usePaymentState.js.map +1 -1
  254. package/build/src/hooks/usePrevious.js +6 -7
  255. package/build/src/hooks/usePrevious.js.map +1 -1
  256. package/build/src/hooks/useSolanaPaymentOptions.js +33 -33
  257. package/build/src/hooks/useSolanaPaymentOptions.js.map +1 -1
  258. package/build/src/hooks/useTokenOptions.js +129 -112
  259. package/build/src/hooks/useTokenOptions.js.map +1 -1
  260. package/build/src/hooks/useUntronAvailability.js +26 -34
  261. package/build/src/hooks/useUntronAvailability.js.map +1 -1
  262. package/build/src/hooks/useWalletPaymentOptions.js +83 -78
  263. package/build/src/hooks/useWalletPaymentOptions.js.map +1 -1
  264. package/build/src/hooks/useWindowSize.js +16 -16
  265. package/build/src/hooks/useWindowSize.js.map +1 -1
  266. package/build/src/localizations/index.js +28 -31
  267. package/build/src/localizations/index.js.map +1 -1
  268. package/build/src/localizations/locales/ar-AE.js +88 -88
  269. package/build/src/localizations/locales/ar-AE.js.map +1 -1
  270. package/build/src/localizations/locales/ca-AD.js +88 -88
  271. package/build/src/localizations/locales/ca-AD.js.map +1 -1
  272. package/build/src/localizations/locales/ee-EE.js +96 -88
  273. package/build/src/localizations/locales/ee-EE.js.map +1 -1
  274. package/build/src/localizations/locales/en-US.js +134 -126
  275. package/build/src/localizations/locales/en-US.js.map +1 -1
  276. package/build/src/localizations/locales/es-ES.js +126 -126
  277. package/build/src/localizations/locales/es-ES.js.map +1 -1
  278. package/build/src/localizations/locales/fa-IR.js +88 -88
  279. package/build/src/localizations/locales/fa-IR.js.map +1 -1
  280. package/build/src/localizations/locales/fr-FR.js +88 -88
  281. package/build/src/localizations/locales/fr-FR.js.map +1 -1
  282. package/build/src/localizations/locales/ja-JP.js +88 -88
  283. package/build/src/localizations/locales/ja-JP.js.map +1 -1
  284. package/build/src/localizations/locales/pt-BR.js +96 -88
  285. package/build/src/localizations/locales/pt-BR.js.map +1 -1
  286. package/build/src/localizations/locales/ru-RU.js +92 -88
  287. package/build/src/localizations/locales/ru-RU.js.map +1 -1
  288. package/build/src/localizations/locales/tr-TR.js +96 -88
  289. package/build/src/localizations/locales/tr-TR.js.map +1 -1
  290. package/build/src/localizations/locales/vi-VN.js +96 -88
  291. package/build/src/localizations/locales/vi-VN.js.map +1 -1
  292. package/build/src/localizations/locales/zh-CN.js +88 -88
  293. package/build/src/localizations/locales/zh-CN.js.map +1 -1
  294. package/build/src/payment/paymentEffects.js +237 -265
  295. package/build/src/payment/paymentEffects.js.map +1 -1
  296. package/build/src/payment/paymentFsm.js +165 -186
  297. package/build/src/payment/paymentFsm.js.map +1 -1
  298. package/build/src/payment/paymentStore.js +8 -10
  299. package/build/src/payment/paymentStore.js.map +1 -1
  300. package/build/src/payment/paymentUtils.js +5 -9
  301. package/build/src/payment/paymentUtils.js.map +1 -1
  302. package/build/src/provider/DaimoPayProvider.js +258 -249
  303. package/build/src/provider/DaimoPayProvider.js.map +1 -1
  304. package/build/src/provider/PayContext.js +0 -1
  305. package/build/src/provider/PayContext.js.map +1 -1
  306. package/build/src/provider/PaymentProvider.js +18 -17
  307. package/build/src/provider/PaymentProvider.js.map +1 -1
  308. package/build/src/provider/SolanaContextProvider.js +6 -3
  309. package/build/src/provider/SolanaContextProvider.js.map +1 -1
  310. package/build/src/provider/Web3ContextProvider.js +23 -23
  311. package/build/src/provider/Web3ContextProvider.js.map +1 -1
  312. package/build/src/stateStore.js +28 -74
  313. package/build/src/stateStore.js.map +1 -1
  314. package/build/src/styles/defaultTheme.js +64 -73
  315. package/build/src/styles/defaultTheme.js.map +1 -1
  316. package/build/src/styles/index.js +202 -217
  317. package/build/src/styles/index.js.map +1 -1
  318. package/build/src/styles/styled/index.js +0 -10
  319. package/build/src/styles/styled/index.js.map +1 -1
  320. package/build/src/styles/themes/base.js +136 -136
  321. package/build/src/styles/themes/base.js.map +1 -1
  322. package/build/src/styles/themes/index.js.map +1 -1
  323. package/build/src/styles/themes/midnight.js +71 -71
  324. package/build/src/styles/themes/midnight.js.map +1 -1
  325. package/build/src/styles/themes/minimal.js +75 -75
  326. package/build/src/styles/themes/minimal.js.map +1 -1
  327. package/build/src/styles/themes/nouns.js +76 -76
  328. package/build/src/styles/themes/nouns.js.map +1 -1
  329. package/build/src/styles/themes/retro.js +88 -88
  330. package/build/src/styles/themes/retro.js.map +1 -1
  331. package/build/src/styles/themes/rounded.js +84 -84
  332. package/build/src/styles/themes/rounded.js.map +1 -1
  333. package/build/src/styles/themes/soft.js +66 -66
  334. package/build/src/styles/themes/soft.js.map +1 -1
  335. package/build/src/styles/themes/web95.js +95 -95
  336. package/build/src/styles/themes/web95.js.map +1 -1
  337. package/build/src/utils/exports.js +0 -1
  338. package/build/src/utils/exports.js.map +1 -1
  339. package/build/src/utils/format.js +25 -63
  340. package/build/src/utils/format.js.map +1 -1
  341. package/build/src/utils/index.js +23 -20
  342. package/build/src/utils/index.js.map +1 -1
  343. package/build/src/utils/p3.js +8 -9
  344. package/build/src/utils/p3.js.map +1 -1
  345. package/build/src/utils/platform.js +6 -8
  346. package/build/src/utils/platform.js.map +1 -1
  347. package/build/src/utils/polling.js +31 -31
  348. package/build/src/utils/polling.js.map +1 -1
  349. package/build/src/utils/supportUrl.js +9 -9
  350. package/build/src/utils/supportUrl.js.map +1 -1
  351. package/build/src/utils/trpc.js +11 -11
  352. package/build/src/utils/trpc.js.map +1 -1
  353. package/build/src/utils/validateInput.js +9 -29
  354. package/build/src/utils/validateInput.js.map +1 -1
  355. package/build/src/wallets/index.js +13 -22
  356. package/build/src/wallets/index.js.map +1 -1
  357. package/build/src/wallets/useWallets.js +183 -181
  358. package/build/src/wallets/useWallets.js.map +1 -1
  359. package/build/src/wallets/walletConfigs.js +230 -235
  360. package/build/src/wallets/walletConfigs.js.map +1 -1
  361. package/build/src/world-mini-app/WorldPayButton.js +113 -118
  362. package/build/src/world-mini-app/WorldPayButton.js.map +1 -1
  363. package/build/src/world-mini-app/promptWorldPayment.js +49 -47
  364. package/build/src/world-mini-app/promptWorldPayment.js.map +1 -1
  365. package/build/{types.d.ts → types-7ed033b6.d.ts} +31 -11
  366. package/build/world.d.ts +89 -1
  367. package/package.json +7 -5
  368. package/build/assets/MobileWithLogos.d.ts +0 -2
  369. package/build/assets/ScanIconWithLogos.d.ts +0 -6
  370. package/build/assets/browsers.d.ts +0 -10
  371. package/build/assets/chains.d.ts +0 -28
  372. package/build/assets/coins.d.ts +0 -2
  373. package/build/assets/crepe.d.ts +0 -3
  374. package/build/assets/icons.d.ts +0 -35
  375. package/build/assets/logos.d.ts +0 -207
  376. package/build/assets/wallet.d.ts +0 -3
  377. package/build/assets/wave.d.ts +0 -2
  378. package/build/components/Common/Alert/index.d.ts +0 -6
  379. package/build/components/Common/Alert/styles.d.ts +0 -2
  380. package/build/components/Common/Alert/types.d.ts +0 -5
  381. package/build/components/Common/AmountInput/AmountInputField.d.ts +0 -8
  382. package/build/components/Common/AmountInput/index.d.ts +0 -9
  383. package/build/components/Common/Avatar/index.d.ts +0 -17
  384. package/build/components/Common/Avatar/styles.d.ts +0 -2
  385. package/build/components/Common/BrowserIcon/index.d.ts +0 -4
  386. package/build/components/Common/BrowserIcon/styles.d.ts +0 -1
  387. package/build/components/Common/BrowserIcon/types.d.ts +0 -3
  388. package/build/components/Common/Button/index.d.ts +0 -4
  389. package/build/components/Common/Button/styles.d.ts +0 -10
  390. package/build/components/Common/Button/types.d.ts +0 -15
  391. package/build/components/Common/Chain/index.d.ts +0 -9
  392. package/build/components/Common/Chain/styles.d.ts +0 -4
  393. package/build/components/Common/ChainSelectList/index.d.ts +0 -4
  394. package/build/components/Common/ChainSelectList/styles.d.ts +0 -9
  395. package/build/components/Common/CircleTimer.d.ts +0 -17
  396. package/build/components/Common/ConnectorList/index.d.ts +0 -2
  397. package/build/components/Common/ConnectorList/styles.d.ts +0 -8
  398. package/build/components/Common/CopyToClipboard/CopyToClipboardIcon.d.ts +0 -6
  399. package/build/components/Common/CopyToClipboard/index.d.ts +0 -7
  400. package/build/components/Common/CustomQRCode/QRCode.d.ts +0 -12
  401. package/build/components/Common/CustomQRCode/index.d.ts +0 -6
  402. package/build/components/Common/CustomQRCode/styles.d.ts +0 -6
  403. package/build/components/Common/CustomQRCode/types.d.ts +0 -11
  404. package/build/components/Common/DynamicContainer/index.d.ts +0 -7
  405. package/build/components/Common/FitText/index.d.ts +0 -8
  406. package/build/components/Common/LazyImage/index.d.ts +0 -8
  407. package/build/components/Common/Logo/index.d.ts +0 -8
  408. package/build/components/Common/Logo/styles.d.ts +0 -3
  409. package/build/components/Common/Modal/index.d.ts +0 -25
  410. package/build/components/Common/Modal/styles.d.ts +0 -25
  411. package/build/components/Common/OptionsList/index.d.ts +0 -17
  412. package/build/components/Common/OptionsList/styles.d.ts +0 -5
  413. package/build/components/Common/OrderHeader/index.d.ts +0 -5
  414. package/build/components/Common/PaymentBreakdown/index.d.ts +0 -6
  415. package/build/components/Common/Portal/index.d.ts +0 -2
  416. package/build/components/Common/PoweredByFooter/index.d.ts +0 -5
  417. package/build/components/Common/ScrollArea/index.d.ts +0 -9
  418. package/build/components/Common/ScrollArea/styles.d.ts +0 -3
  419. package/build/components/Common/SelectAnotherMethodButton/index.d.ts +0 -1
  420. package/build/components/Common/Spinner/index.d.ts +0 -1
  421. package/build/components/Common/Spinner/styles.d.ts +0 -1
  422. package/build/components/Common/SquareTimer.d.ts +0 -19
  423. package/build/components/Common/SwitchButton/index.d.ts +0 -6
  424. package/build/components/Common/ThemedButton/index.d.ts +0 -15
  425. package/build/components/Common/ThemedButton/styles.d.ts +0 -2
  426. package/build/components/Common/TokenChainLogo/index.d.ts +0 -7
  427. package/build/components/Common/Tooltip/index.d.ts +0 -4
  428. package/build/components/Common/Tooltip/styles.d.ts +0 -3
  429. package/build/components/Common/Tooltip/types.d.ts +0 -9
  430. package/build/components/Common/WalletChainLogo/index.d.ts +0 -6
  431. package/build/components/DaimoPayButton/index.d.ts +0 -149
  432. package/build/components/DaimoPayButton/styles.d.ts +0 -4
  433. package/build/components/DaimoPayModal/ConnectUsing.d.ts +0 -2
  434. package/build/components/DaimoPayModal/ConnectWithInjector/index.d.ts +0 -15
  435. package/build/components/DaimoPayModal/ConnectWithInjector/styles.d.ts +0 -6
  436. package/build/components/DaimoPayModal/ConnectWithQRCode.d.ts +0 -12
  437. package/build/components/DaimoPayModal/index.d.ts +0 -8
  438. package/build/components/DaimoPayThemeProvider/DaimoPayThemeProvider.d.ts +0 -16
  439. package/build/components/Pages/About/graphics.d.ts +0 -11
  440. package/build/components/Pages/About/index.d.ts +0 -3
  441. package/build/components/Pages/About/styles.d.ts +0 -8
  442. package/build/components/Pages/Confirmation/index.d.ts +0 -3
  443. package/build/components/Pages/Connectors/index.d.ts +0 -3
  444. package/build/components/Pages/Connectors/styles.d.ts +0 -9
  445. package/build/components/Pages/DownloadApp/index.d.ts +0 -2
  446. package/build/components/Pages/Error/index.d.ts +0 -1
  447. package/build/components/Pages/MobileConnectors/index.d.ts +0 -3
  448. package/build/components/Pages/MobileConnectors/styles.d.ts +0 -5
  449. package/build/components/Pages/Onboarding/index.d.ts +0 -3
  450. package/build/components/Pages/Onboarding/styles.d.ts +0 -9
  451. package/build/components/Pages/PayWithToken/index.d.ts +0 -3
  452. package/build/components/Pages/SelectAmount/index.d.ts +0 -3
  453. package/build/components/Pages/SelectDepositAddressAmount/index.d.ts +0 -3
  454. package/build/components/Pages/SelectDepositAddressChain/index.d.ts +0 -3
  455. package/build/components/Pages/SelectExchange/index.d.ts +0 -3
  456. package/build/components/Pages/SelectExternalAmount/index.d.ts +0 -3
  457. package/build/components/Pages/SelectMethod/index.d.ts +0 -1
  458. package/build/components/Pages/SelectMethod/styles.d.ts +0 -9
  459. package/build/components/Pages/SelectToken/index.d.ts +0 -1
  460. package/build/components/Pages/SelectWalletAmount/index.d.ts +0 -3
  461. package/build/components/Pages/SelectWalletChain/index.d.ts +0 -3
  462. package/build/components/Pages/SelectZKP/index.d.ts +0 -3
  463. package/build/components/Pages/Solana/ConnectorSolana/index.d.ts +0 -4
  464. package/build/components/Pages/Solana/PayWithSolanaToken/index.d.ts +0 -3
  465. package/build/components/Pages/Solana/SelectSolanaAmount/index.d.ts +0 -3
  466. package/build/components/Pages/SwitchNetworks/index.d.ts +0 -3
  467. package/build/components/Pages/WaitingDepositAddress/index.d.ts +0 -1
  468. package/build/components/Pages/WaitingExternal/index.d.ts +0 -3
  469. package/build/components/Pages/WaitingWallet/index.d.ts +0 -3
  470. package/build/components/Spinners/CircleSpinner/index.d.ts +0 -9
  471. package/build/components/Spinners/CircleSpinner/styles.d.ts +0 -5
  472. package/build/components/Spinners/ExternalPaymentSpinner/index.d.ts +0 -5
  473. package/build/components/Spinners/SquircleSpinner/index.d.ts +0 -5
  474. package/build/components/Spinners/SquircleSpinner/styles.d.ts +0 -4
  475. package/build/components/Spinners/TokenLogoSpinner/index.d.ts +0 -5
  476. package/build/components/Spinners/TokenLogoSpinner/styles.d.ts +0 -1
  477. package/build/components/Spinners/WalletPaymentSpinner/index.d.ts +0 -5
  478. package/build/components/Spinners/styles.d.ts +0 -2
  479. package/build/constants/defaultTheme.d.ts +0 -4
  480. package/build/constants/routes.d.ts +0 -28
  481. package/build/defaultConfig.d.ts +0 -17
  482. package/build/defaultConnectors.d.ts +0 -14
  483. package/build/hooks/useChainIsSupported.d.ts +0 -2
  484. package/build/hooks/useChains.d.ts +0 -3
  485. package/build/hooks/useConnect.d.ts +0 -110
  486. package/build/hooks/useConnectCallback.d.ts +0 -8
  487. package/build/hooks/useConnectors.d.ts +0 -3
  488. package/build/hooks/useDaimoPay.d.ts +0 -94
  489. package/build/hooks/useDaimoPayStatus.d.ts +0 -15
  490. package/build/hooks/useDaimoPayUI.d.ts +0 -6
  491. package/build/hooks/useDepositAddressOptions.d.ts +0 -10
  492. package/build/hooks/useEnsFallbackConfig.d.ts +0 -2
  493. package/build/hooks/useExternalPaymentOptions.d.ts +0 -12
  494. package/build/hooks/useFitText.d.ts +0 -14
  495. package/build/hooks/useFocusTrap.d.ts +0 -1
  496. package/build/hooks/useGoogleFont.d.ts +0 -3
  497. package/build/hooks/useIsMobile.d.ts +0 -5
  498. package/build/hooks/useIsMounted.d.ts +0 -3
  499. package/build/hooks/useLastConnector.d.ts +0 -4
  500. package/build/hooks/useLocalStorage.d.ts +0 -7
  501. package/build/hooks/useLocales.d.ts +0 -2
  502. package/build/hooks/useLockBodyScroll.d.ts +0 -1
  503. package/build/hooks/useModal.d.ts +0 -8
  504. package/build/hooks/useOrderUsdLimits.d.ts +0 -7
  505. package/build/hooks/usePayContext.d.ts +0 -2
  506. package/build/hooks/usePaymentState.d.ts +0 -67
  507. package/build/hooks/usePrevious.d.ts +0 -1
  508. package/build/hooks/useSolanaPaymentOptions.d.ts +0 -13
  509. package/build/hooks/useTokenOptions.d.ts +0 -5
  510. package/build/hooks/useUntronAvailability.d.ts +0 -14
  511. package/build/hooks/useWalletPaymentOptions.d.ts +0 -31
  512. package/build/hooks/useWindowSize.d.ts +0 -4
  513. package/build/localizations/index.d.ts +0 -2
  514. package/build/localizations/locales/ar-AE.d.ts +0 -3
  515. package/build/localizations/locales/ca-AD.d.ts +0 -3
  516. package/build/localizations/locales/ee-EE.d.ts +0 -3
  517. package/build/localizations/locales/en-US.d.ts +0 -128
  518. package/build/localizations/locales/es-ES.d.ts +0 -3
  519. package/build/localizations/locales/fa-IR.d.ts +0 -3
  520. package/build/localizations/locales/fr-FR.d.ts +0 -3
  521. package/build/localizations/locales/index.d.ts +0 -3
  522. package/build/localizations/locales/ja-JP.d.ts +0 -91
  523. package/build/localizations/locales/pt-BR.d.ts +0 -3
  524. package/build/localizations/locales/ru-RU.d.ts +0 -3
  525. package/build/localizations/locales/tr-TR.d.ts +0 -3
  526. package/build/localizations/locales/vi-VN.d.ts +0 -3
  527. package/build/localizations/locales/zh-CN.d.ts +0 -3
  528. package/build/payment/paymentEffects.d.ts +0 -12
  529. package/build/payment/paymentFsm.d.ts +0 -131
  530. package/build/payment/paymentStore.d.ts +0 -14
  531. package/build/payment/paymentUtils.d.ts +0 -6
  532. package/build/provider/DaimoPayProvider.d.ts +0 -24
  533. package/build/provider/PayContext.d.ts +0 -66
  534. package/build/provider/PaymentProvider.d.ts +0 -8
  535. package/build/provider/SolanaContextProvider.d.ts +0 -6
  536. package/build/provider/Web3ContextProvider.d.ts +0 -24
  537. package/build/stateStore.d.ts +0 -66
  538. package/build/styles/defaultTheme.d.ts +0 -3
  539. package/build/styles/index.d.ts +0 -1
  540. package/build/styles/styled/index.d.ts +0 -12
  541. package/build/styles/themes/base.d.ts +0 -129
  542. package/build/styles/themes/index.d.ts +0 -673
  543. package/build/styles/themes/midnight.d.ts +0 -74
  544. package/build/styles/themes/minimal.d.ts +0 -94
  545. package/build/styles/themes/nouns.d.ts +0 -79
  546. package/build/styles/themes/retro.d.ts +0 -89
  547. package/build/styles/themes/rounded.d.ts +0 -86
  548. package/build/styles/themes/soft.d.ts +0 -69
  549. package/build/styles/themes/web95.d.ts +0 -91
  550. package/build/styles/types.d.ts +0 -80
  551. package/build/utils/exports.d.ts +0 -1
  552. package/build/utils/format.d.ts +0 -49
  553. package/build/utils/index.d.ts +0 -17
  554. package/build/utils/localstorage.d.ts +0 -9
  555. package/build/utils/p3.d.ts +0 -2
  556. package/build/utils/platform.d.ts +0 -2
  557. package/build/utils/polling.d.ts +0 -13
  558. package/build/utils/supportUrl.d.ts +0 -2
  559. package/build/utils/trpc.d.ts +0 -4
  560. package/build/utils/validateInput.d.ts +0 -16
  561. package/build/utils/wallets.d.ts +0 -24
  562. package/build/wallets/index.d.ts +0 -5
  563. package/build/wallets/useWallets.d.ts +0 -16
  564. package/build/wallets/walletConfigs.d.ts +0 -29
  565. package/build/world-mini-app/WorldPayButton.d.ts +0 -84
  566. package/build/world-mini-app/promptWorldPayment.d.ts +0 -9
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../src/components/Common/OptionsList/index.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx","_Fragment"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../src/components/Common/OptionsList/index.tsx"],"sourcesContent":["import { motion } from \"framer-motion\";\nimport { useEffect } from \"react\";\nimport { keyframes } from \"styled-components\";\nimport { usePayContext } from \"../../../hooks/usePayContext\";\nimport styled from \"../../../styles/styled\";\nimport { OrDivider } from \"../Modal\";\nimport { ScrollArea } from \"../ScrollArea\";\nimport {\n OptionButton,\n OptionLabel,\n OptionSubtitle,\n OptionTitle,\n OptionsContainer,\n} from \"./styles\";\n\nexport interface Option {\n id: string;\n sortValue?: number;\n title: string;\n subtitle?: string;\n icons: (React.ReactNode | string)[];\n onClick: () => void;\n disabled?: boolean;\n}\n\nexport const OptionsList = ({\n options,\n isLoading,\n requiredSkeletons,\n scrollHeight = 300,\n orDivider = false,\n hideBottomLine = false,\n}: {\n options: Option[];\n isLoading?: boolean;\n requiredSkeletons?: number;\n scrollHeight?: number;\n orDivider?: boolean;\n hideBottomLine?: boolean;\n}) => {\n const { triggerResize, log } = usePayContext();\n const optionsLength = options.length;\n\n useEffect(() => {\n log(`[OPTIONS RESIZE]: ${optionsLength}, triggering resize`);\n if (optionsLength > 0) triggerResize();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [optionsLength]);\n\n if (isLoading) {\n const skeletonCount = requiredSkeletons\n ? Math.max(requiredSkeletons - optionsLength, 0)\n : 0;\n\n return (\n <OptionsContainer $totalResults={options.length}>\n {options.map((option) => (\n <OptionItem key={option.id} option={option} />\n ))}\n {isLoading &&\n Array.from({ length: skeletonCount }).map((_, index) => (\n <SkeletonOptionItem key={index} />\n ))}\n </OptionsContainer>\n );\n }\n\n return (\n <>\n <ScrollArea\n mobileDirection={\"vertical\"}\n height={scrollHeight}\n hideBottomLine={orDivider || hideBottomLine}\n totalItems={options.length}\n >\n <OptionsContainer $totalResults={options.length}>\n {options.map((option) => (\n <OptionItem key={option.id} option={option} />\n ))}\n </OptionsContainer>\n </ScrollArea>\n {orDivider && <OrDivider />}\n </>\n );\n};\n\nconst SkeletonOptionItem = () => {\n return (\n <OptionButton type=\"button\">\n <SkeletonIcon />\n <SkeletonLabel />\n </OptionButton>\n );\n};\n\nconst pulse = keyframes`\n 0% {\n opacity: 0.6;\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 0.6;\n }\n`;\n\nconst SkeletonIcon = styled.div`\n position: absolute;\n right: 20px;\n width: 32px;\n height: 32px;\n border-radius: 22.5%;\n background-color: rgba(0, 0, 0, 0.1);\n animation: ${pulse} 1.5s ease-in-out infinite;\n`;\n\nconst SkeletonLabel = styled.div`\n width: 100px;\n height: 16px;\n border-radius: 8px;\n background-color: rgba(0, 0, 0, 0.1);\n animation: ${pulse} 1.5s ease-in-out infinite;\n`;\n\nconst OptionItem = ({ option }: { option: Option }) => {\n const hydratedIcons = option.icons.map((icon) => {\n if (typeof icon === \"string\") {\n return <img key={option.id} src={icon} alt=\"\" />;\n }\n return icon;\n });\n\n const iconContent = (() => {\n return (\n <IconStackContainer>\n {hydratedIcons.map((icon, index) => (\n <IconStackItem\n key={index}\n $marginRight={index !== hydratedIcons.length - 1 ? -12 : 0}\n $zIndex={hydratedIcons.length - index}\n >\n {icon}\n </IconStackItem>\n ))}\n </IconStackContainer>\n );\n })();\n\n return (\n <OptionButton\n type=\"button\"\n onClick={option.onClick}\n disabled={option.disabled}\n >\n {iconContent}\n <OptionLabel>\n <OptionTitle>{option.title}</OptionTitle>\n {option.subtitle && <OptionSubtitle>{option.subtitle}</OptionSubtitle>}\n </OptionLabel>\n </OptionButton>\n );\n};\n\nconst IconStackContainer = styled(motion.div)`\n position: absolute;\n right: 20px;\n display: flex;\n align-items: center;\n justify-content: center;\n`;\n\nconst IconStackItem = styled(motion.div)<{\n $marginRight?: number;\n $zIndex?: number;\n}>`\n display: block;\n overflow: hidden;\n user-select: none;\n display: flex;\n align-items: center;\n justify-content: center;\n margin-right: ${(props) => props.$marginRight || 0}px;\n z-index: ${(props) => props.$zIndex || 2};\n width: 32px;\n height: 32px;\n overflow: hidden;\n svg,\n img {\n display: block;\n position: relative;\n pointer-events: none;\n overflow: hidden;\n width: 100%;\n height: 100%;\n }\n border-radius: 22.5%;\n`;\n"],"names":[],"mappings":"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"}
@@ -2,10 +2,10 @@ import { css } from 'styled-components';
2
2
  import styled from '../../../styles/styled/index.js';
3
3
  import { motion } from 'framer-motion';
4
4
 
5
- const OptionButton = styled(motion.button) `
5
+ const OptionButton = styled(motion.button)`
6
6
  display: block;
7
7
  text-decoration: none;
8
- cursor: ${(props) => (props.disabled ? "default" : "pointer")};
8
+ cursor: ${(props) => props.disabled ? "default" : "pointer"};
9
9
  user-select: none;
10
10
  position: relative;
11
11
  display: flex;
@@ -97,7 +97,7 @@ const OptionButton = styled(motion.button) `
97
97
  }
98
98
  }
99
99
  `;
100
- const OptionLabel = styled(motion.span) `
100
+ const OptionLabel = styled(motion.span)`
101
101
  display: flex;
102
102
  flex-direction: column;
103
103
  align-items: flex-start;
@@ -107,13 +107,13 @@ const OptionLabel = styled(motion.span) `
107
107
  padding: 2px 0;
108
108
  padding-right: 38px;
109
109
  `;
110
- const OptionTitle = styled(motion.span) `
110
+ const OptionTitle = styled(motion.span)`
111
111
  white-space: nowrap;
112
112
  text-overflow: ellipsis;
113
113
  overflow: hidden;
114
114
  width: 100%;
115
115
  `;
116
- const OptionSubtitle = styled(motion.span) `
116
+ const OptionSubtitle = styled(motion.span)`
117
117
  font-size: 14px;
118
118
  opacity: 0.6;
119
119
  font-weight: 400;
@@ -122,14 +122,13 @@ const OptionSubtitle = styled(motion.span) `
122
122
  overflow: hidden;
123
123
  width: 100%;
124
124
  `;
125
- const OptionsContainer = styled.div `
125
+ const OptionsContainer = styled.div`
126
126
  transition: opacity 300ms ease;
127
127
  display: flex;
128
128
  flex-direction: column;
129
129
  gap: 12px;
130
130
 
131
- ${(props) => props.$disabled &&
132
- css `
131
+ ${(props) => props.$disabled && css`
133
132
  pointer-events: none;
134
133
  opacity: 0.4;
135
134
  `}
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","sources":["../../../../../src/components/Common/OptionsList/styles.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;AAKa,MAAA,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA,CAAA;;;AAGrC,UAAA,EAAA,CAAC,KAAK,MAAM,KAAK,CAAC,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2F7D;AAEW,MAAA,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,CAAA;;;;;;;;;EAS5C;AAEW,MAAA,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,CAAA;;;;;EAK5C;AAEW,MAAA,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,CAAA;;;;;;;;EAQ/C;AAEW,MAAA,gBAAgB,GAAG,MAAM,CAAC,GAAG,CAExC,CAAA;;;;;;AAME,EAAA,EAAA,CAAC,KAAK,KACN,KAAK,CAAC,SAAS;AACf,IAAA,GAAG,CAAA,CAAA;;;AAGF,IAAA,CAAA,CAAA;;;;;"}
1
+ {"version":3,"file":"styles.js","sources":["../../../../../src/components/Common/OptionsList/styles.ts"],"sourcesContent":["import { css } from \"styled-components\";\nimport styled from \"../../../styles/styled\";\n\nimport { motion } from \"framer-motion\";\n\nexport const OptionButton = styled(motion.button)`\n display: block;\n text-decoration: none;\n cursor: ${(props) => (props.disabled ? \"default\" : \"pointer\")};\n user-select: none;\n position: relative;\n display: flex;\n align-items: center;\n padding: 0 20px;\n height: 64px;\n font-size: 17px;\n font-weight: var(--ck-primary-button-font-weight, 500);\n line-height: 20px;\n text-align: var(--ck-body-button-text-align, left);\n transition: 180ms ease;\n transition-property: background, color, box-shadow, transform, opacity;\n will-change: transform, box-shadow, background-color, color, opacity;\n\n --fallback-color: var(--ck-primary-button-color);\n --fallback-background: var(--ck-primary-button-background);\n --fallback-box-shadow: var(--ck-primary-button-box-shadow);\n --fallback-border-radius: var(--ck-primary-button-border-radius);\n\n --color: var(--ck-primary-button-color, var(--fallback-color));\n --background: var(--ck-primary-button-background, var(--fallback-background));\n --box-shadow: var(--ck-primary-button-box-shadow, var(--fallback-box-shadow));\n --border-radius: var(\n --ck-primary-button-border-radius,\n var(--fallback-border-radius)\n );\n\n --hover-color: var(--ck-primary-button-hover-color, var(--color));\n --hover-background: var(\n --ck-primary-button-hover-background,\n var(--background)\n );\n --hover-box-shadow: var(\n --ck-primary-button-hover-box-shadow,\n var(--box-shadow)\n );\n --hover-border-radius: var(\n --ck-primary-button-hover-border-radius,\n var(--border-radius)\n );\n\n --active-color: var(--ck-primary-button-active-color, var(--hover-color));\n --active-background: var(\n --ck-primary-button-active-background,\n var(--hover-background)\n );\n --active-box-shadow: var(\n --ck-primary-button-active-box-shadow,\n var(--hover-box-shadow)\n );\n --active-border-radius: var(\n --ck-primary-button-active-border-radius,\n var(--hover-border-radius)\n );\n\n color: var(--color);\n background: var(--background);\n box-shadow: var(--box-shadow);\n border-radius: var(--border-radius);\n\n &:disabled {\n transition: 180ms ease;\n opacity: 0.4;\n }\n\n --bg: var(--background);\n &:not(:disabled) {\n &:hover {\n color: var(--hover-color);\n background: var(--hover-background);\n box-shadow: var(--hover-box-shadow);\n border-radius: var(--hover-border-radius);\n --bg: var(--hover-background, var(--background));\n }\n &:focus-visible {\n transition-duration: 100ms;\n color: var(--hover-color);\n background: var(--hover-background);\n box-shadow: var(--hover-box-shadow);\n border-radius: var(--hover-border-radius);\n --bg: var(--hover-background, var(--background));\n }\n &:active {\n color: var(--active-color);\n background: var(--active-background);\n box-shadow: var(--active-box-shadow);\n border-radius: var(--active-border-radius);\n --bg: var(--active-background, var(--background));\n }\n }\n`;\n\nexport const OptionLabel = styled(motion.span)`\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n gap: 2px;\n width: 100%;\n overflow: hidden;\n padding: 2px 0;\n padding-right: 38px;\n`;\n\nexport const OptionTitle = styled(motion.span)`\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 100%;\n`;\n\nexport const OptionSubtitle = styled(motion.span)`\n font-size: 14px;\n opacity: 0.6;\n font-weight: 400;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 100%;\n`;\n\nexport const OptionsContainer = styled.div<{\n $disabled?: boolean;\n}>`\n transition: opacity 300ms ease;\n display: flex;\n flex-direction: column;\n gap: 12px;\n\n ${(props) =>\n props.$disabled &&\n css`\n pointer-events: none;\n opacity: 0.4;\n `}\n`;\n"],"names":[],"mappings":";;;;AAKa,MAAA,YAAA,GAAe,MAAO,CAAA,MAAA,CAAO,MAAM,CAAA,CAAA;AAAA;AAAA;AAAA,UAAA,EAGpC,CAAC,KAAA,KAAW,KAAM,CAAA,QAAA,GAAW,YAAY,SAAU,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAAA;AA6FlD,MAAA,WAAA,GAAc,MAAO,CAAA,MAAA,CAAO,IAAI,CAAA,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAAA;AAWhC,MAAA,WAAA,GAAc,MAAO,CAAA,MAAA,CAAO,IAAI,CAAA,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAAA;AAOhC,MAAA,cAAA,GAAiB,MAAO,CAAA,MAAA,CAAO,IAAI,CAAA,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAAA;AAUzC,MAAM,mBAAmB,MAAO,CAAA,GAAA,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQnC,EAAA,CAAC,KACD,KAAA,KAAA,CAAM,SACN,IAAA,GAAA,CAAA;AAAA;AAAA;AAAA,IAGC,CAAA,CAAA;AAAA;;;;"}
@@ -13,75 +13,119 @@ import { usePayContext } from '../../../hooks/usePayContext.js';
13
13
  import styled from '../../../styles/styled/index.js';
14
14
  import { formatUsd } from '../../../utils/format.js';
15
15
 
16
- /** Shows payment amount. */
17
- const OrderHeader = ({ minified = false, show = "all", }) => {
18
- const { paymentState, route } = usePayContext();
19
- const { isConnected: isEthConnected, address, connector } = useAccount();
20
- const { connected: isSolanaConnected, publicKey, wallet: solanaWallet, } = useWallet();
21
- const { senderEnsName } = paymentState;
22
- const { order } = useDaimoPay();
23
- const ethWalletDisplayName = senderEnsName ?? (address ? getAddressContraction(address) : "wallet");
24
- const solWalletDisplayName = getAddressContraction(publicKey?.toBase58() ?? "");
25
- const orderUsd = order?.destFinalCallTokenAmount.usd;
26
- const locales = useLocales();
27
- const titleAmountContent = (() => {
28
- if (paymentState.isDepositFlow) {
29
- return route === ROUTES.SELECT_TOKEN ? (
30
- // TODO: make this match `ModalH1` font size for mobile
31
- jsx("span", { style: { fontSize: "19px", lineHeight: "22px" }, children: locales.yourBalances })) : null;
32
- }
33
- else {
34
- return orderUsd != null ? (jsx("span", { children: formatUsd(orderUsd, "nearest") })) : null;
35
- }
36
- })();
37
- const renderIcon = (icon, name, size = 32) => {
38
- if (!icon) {
39
- return null;
40
- }
41
- return (jsx(LogoContainer, { "$size": size, "$zIndex": 1, style: { borderRadius: "22.5%" }, children: typeof icon === "string" ? (jsx("img", { src: icon, alt: name || "wallet", style: { maxWidth: "100%", maxHeight: "100%" } })) : (icon) }));
42
- };
43
- let walletIcon = renderIcon(connector?.icon);
44
- let solanaIcon = renderIcon(solanaWallet?.adapter.icon || jsx(Solana, {}), solanaWallet?.adapter.name);
45
- if (minified) {
46
- if (titleAmountContent != null) {
47
- if (show === "zkp2p") {
48
- return (jsx(MinifiedContainer, { children: jsx(MinifiedTitleAmount, { children: titleAmountContent }) }));
49
- }
50
- return (jsxs(MinifiedContainer, { children: [jsx(MinifiedTitleAmount, { children: titleAmountContent }), show === "evm" && isEthConnected && (jsx(Fragment, { children: jsxs(SubtitleContainer, { children: [jsx(Subtitle, { children: ethWalletDisplayName }), walletIcon] }) })), show === "solana" && isSolanaConnected && (jsx(Fragment, { children: jsxs(SubtitleContainer, { children: [jsx(Subtitle, { children: solWalletDisplayName }), solanaIcon] }) })), show === "all" && (jsx(Fragment, { children: jsx(CoinLogos, { "$size": 32 }) }))] }));
51
- }
52
- else {
53
- return (jsxs(MinifiedContainer, { children: [jsx(CoinLogos, {}), jsx(Subtitle, { children: locales.tokensAccepted })] }));
54
- }
16
+ const OrderHeader = ({
17
+ minified = false,
18
+ show = "all"
19
+ }) => {
20
+ const { paymentState, route } = usePayContext();
21
+ const { isConnected: isEthConnected, address, connector } = useAccount();
22
+ const {
23
+ connected: isSolanaConnected,
24
+ publicKey,
25
+ wallet: solanaWallet
26
+ } = useWallet();
27
+ const { senderEnsName } = paymentState;
28
+ const { order } = useDaimoPay();
29
+ const ethWalletDisplayName = senderEnsName ?? (address ? getAddressContraction(address) : "wallet");
30
+ const solWalletDisplayName = getAddressContraction(
31
+ publicKey?.toBase58() ?? ""
32
+ );
33
+ const orderUsd = order?.destFinalCallTokenAmount.usd;
34
+ const locales = useLocales();
35
+ const titleAmountContent = (() => {
36
+ if (paymentState.isDepositFlow) {
37
+ return route === ROUTES.SELECT_TOKEN ? (
38
+ // TODO: make this match `ModalH1` font size for mobile
39
+ /* @__PURE__ */ jsx("span", { style: { fontSize: "19px", lineHeight: "22px" }, children: locales.yourBalances })
40
+ ) : null;
41
+ } else {
42
+ return orderUsd != null ? /* @__PURE__ */ jsx("span", { children: formatUsd(orderUsd, "nearest") }) : null;
55
43
  }
56
- else {
57
- return (jsxs(Fragment, { children: [titleAmountContent && jsx(TitleAmount, { children: titleAmountContent }), jsxs(AnyChainAnyCoinContainer, { children: [jsx(CoinLogos, {}), jsx(Subtitle, { children: locales.tokensAccepted })] })] }));
44
+ })();
45
+ const renderIcon = (icon, name, size = 32) => {
46
+ if (!icon) {
47
+ return null;
58
48
  }
49
+ return /* @__PURE__ */ jsx(LogoContainer, { $size: size, $zIndex: 1, style: { borderRadius: "22.5%" }, children: typeof icon === "string" ? /* @__PURE__ */ jsx(
50
+ "img",
51
+ {
52
+ src: icon,
53
+ alt: name || "wallet",
54
+ style: { maxWidth: "100%", maxHeight: "100%" }
55
+ }
56
+ ) : icon });
57
+ };
58
+ let walletIcon = renderIcon(connector?.icon);
59
+ let solanaIcon = renderIcon(
60
+ solanaWallet?.adapter.icon || /* @__PURE__ */ jsx(Solana, {}),
61
+ solanaWallet?.adapter.name
62
+ );
63
+ if (minified) {
64
+ if (titleAmountContent != null) {
65
+ if (show === "zkp2p") {
66
+ return /* @__PURE__ */ jsx(MinifiedContainer, { children: /* @__PURE__ */ jsx(MinifiedTitleAmount, { children: titleAmountContent }) });
67
+ }
68
+ return /* @__PURE__ */ jsxs(MinifiedContainer, { children: [
69
+ /* @__PURE__ */ jsx(MinifiedTitleAmount, { children: titleAmountContent }),
70
+ show === "evm" && isEthConnected && /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsxs(SubtitleContainer, { children: [
71
+ /* @__PURE__ */ jsx(Subtitle, { children: ethWalletDisplayName }),
72
+ walletIcon
73
+ ] }) }),
74
+ show === "solana" && isSolanaConnected && /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsxs(SubtitleContainer, { children: [
75
+ /* @__PURE__ */ jsx(Subtitle, { children: solWalletDisplayName }),
76
+ solanaIcon
77
+ ] }) }),
78
+ show === "all" && /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx(CoinLogos, { $size: 32 }) })
79
+ ] });
80
+ } else {
81
+ return /* @__PURE__ */ jsxs(MinifiedContainer, { children: [
82
+ /* @__PURE__ */ jsx(CoinLogos, {}),
83
+ /* @__PURE__ */ jsx(Subtitle, { children: locales.tokensAccepted })
84
+ ] });
85
+ }
86
+ } else {
87
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
88
+ titleAmountContent && /* @__PURE__ */ jsx(TitleAmount, { children: titleAmountContent }),
89
+ /* @__PURE__ */ jsxs(AnyChainAnyCoinContainer, { children: [
90
+ /* @__PURE__ */ jsx(CoinLogos, {}),
91
+ /* @__PURE__ */ jsx(Subtitle, { children: locales.tokensAccepted })
92
+ ] })
93
+ ] });
94
+ }
59
95
  };
60
96
  function CoinLogos({ $size = 24 }) {
61
- const logos = [
62
- jsx(Ethereum, {}, "eth"),
63
- jsx(USDC, {}, "usdc"),
64
- jsx(Optimism, {}, "optimism"),
65
- jsx(Arbitrum, {}, "arbitrum"),
66
- jsx(Base, {}, "base"),
67
- jsx(Polygon, {}, "polygon"),
68
- jsx(Solana, {}, "solana"),
69
- ];
70
- const logoBlock = (element, index) => (jsx(LogoContainer, { "$marginLeft": index !== 0 ? -($size / 3) : 0, "$zIndex": logos.length - index, "$size": $size, transition: { duration: 0.5, ease: [0.175, 0.885, 0.32, 0.98] }, children: element }, index));
71
- return (jsx(Logos, { children: logos.map((element, index) => logoBlock(element, index)) }));
97
+ const logos = [
98
+ /* @__PURE__ */ jsx(Ethereum, {}, "eth"),
99
+ /* @__PURE__ */ jsx(USDC, {}, "usdc"),
100
+ /* @__PURE__ */ jsx(Optimism, {}, "optimism"),
101
+ /* @__PURE__ */ jsx(Arbitrum, {}, "arbitrum"),
102
+ /* @__PURE__ */ jsx(Base, {}, "base"),
103
+ /* @__PURE__ */ jsx(Polygon, {}, "polygon"),
104
+ /* @__PURE__ */ jsx(Solana, {}, "solana")
105
+ ];
106
+ const logoBlock = (element, index) => /* @__PURE__ */ jsx(
107
+ LogoContainer,
108
+ {
109
+ $marginLeft: index !== 0 ? -($size / 3) : 0,
110
+ $zIndex: logos.length - index,
111
+ $size,
112
+ transition: { duration: 0.5, ease: [0.175, 0.885, 0.32, 0.98] },
113
+ children: element
114
+ },
115
+ index
116
+ );
117
+ return /* @__PURE__ */ jsx(Logos, { children: logos.map((element, index) => logoBlock(element, index)) });
72
118
  }
73
- const TitleAmount = styled(motion.h1) `
119
+ const TitleAmount = styled(motion.h1)`
74
120
  margin-bottom: 24px;
75
121
  padding: 0;
76
122
  line-height: 66px;
77
123
  font-size: 64px;
78
124
  font-weight: var(--ck-modal-h1-font-weight, 600);
79
125
  color: ${(props) => {
80
- if (props.$error)
81
- return "var(--ck-body-color-danger)";
82
- if (props.$valid)
83
- return "var(--ck-body-color-valid)";
84
- return "var(--ck-body-color)";
126
+ if (props.$error) return "var(--ck-body-color-danger)";
127
+ if (props.$valid) return "var(--ck-body-color-valid)";
128
+ return "var(--ck-body-color)";
85
129
  }};
86
130
  @media only screen and (max-width: ${defaultTheme.mobileWidth}px) {
87
131
  font-size: 64px;
@@ -91,13 +135,13 @@ const TitleAmount = styled(motion.h1) `
91
135
  justify-content: center;
92
136
  gap: 8px;
93
137
  `;
94
- const Subtitle = styled(motion.div) `
138
+ const Subtitle = styled(motion.div)`
95
139
  font-size: 18px;
96
140
  font-weight: 500;
97
141
  line-height: 21px;
98
142
  color: var(--ck-body-color-muted);
99
143
  `;
100
- const MinifiedTitleAmount = styled(motion.div) `
144
+ const MinifiedTitleAmount = styled(motion.div)`
101
145
  font-size: 32px;
102
146
  font-weight: var(--ck-modal-h1-font-weight, 600);
103
147
  line-height: 36px;
@@ -107,14 +151,14 @@ const MinifiedTitleAmount = styled(motion.div) `
107
151
  justify-content: start;
108
152
  gap: 8px;
109
153
  `;
110
- const MinifiedContainer = styled(motion.div) `
154
+ const MinifiedContainer = styled(motion.div)`
111
155
  display: flex;
112
156
  align-items: center;
113
157
  justify-content: space-between;
114
158
  width: 100%;
115
159
  margin-bottom: 24px;
116
160
  `;
117
- const AnyChainAnyCoinContainer = styled(motion.div) `
161
+ const AnyChainAnyCoinContainer = styled(motion.div)`
118
162
  display: flex;
119
163
  vertical-align: middle;
120
164
  align-items: center;
@@ -123,7 +167,7 @@ const AnyChainAnyCoinContainer = styled(motion.div) `
123
167
  gap: 8px;
124
168
  margin-bottom: 24px;
125
169
  `;
126
- const LogoContainer = styled(motion.div) `
170
+ const LogoContainer = styled(motion.div)`
127
171
  display: block;
128
172
  overflow: hidden;
129
173
  user-select: none;
@@ -141,12 +185,12 @@ const LogoContainer = styled(motion.div) `
141
185
  height: auto;
142
186
  }
143
187
  `;
144
- const Logos = styled(motion.div) `
188
+ const Logos = styled(motion.div)`
145
189
  display: flex;
146
190
  align-items: center;
147
191
  justify-content: center;
148
192
  `;
149
- const SubtitleContainer = styled.div `
193
+ const SubtitleContainer = styled.div`
150
194
  display: flex;
151
195
  align-items: center;
152
196
  justify-content: flex-end;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../src/components/Common/OrderHeader/index.tsx"],"sourcesContent":[null],"names":["_jsx","_jsxs","_Fragment"],"mappings":";;;;;;;;;;;;;;;AAsBA;AACO,MAAM,WAAW,GAAG,CAAC,EAC1B,QAAQ,GAAG,KAAK,EAChB,IAAI,GAAG,KAAK,GAIb,KAAI;IACH,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,aAAa,EAAE,CAAC;AAChD,IAAA,MAAM,EAAE,WAAW,EAAE,cAAc,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,UAAU,EAAE,CAAC;AACzE,IAAA,MAAM,EACJ,SAAS,EAAE,iBAAiB,EAC5B,SAAS,EACT,MAAM,EAAE,YAAY,GACrB,GAAG,SAAS,EAAE,CAAC;AAChB,IAAA,MAAM,EAAE,aAAa,EAAE,GAAG,YAAY,CAAC;AACvC,IAAA,MAAM,EAAE,KAAK,EAAE,GAAG,WAAW,EAAE,CAAC;AAEhC,IAAA,MAAM,oBAAoB,GACxB,aAAa,KAAK,OAAO,GAAG,qBAAqB,CAAC,OAAO,CAAC,GAAG,QAAQ,CAAC,CAAC;IACzE,MAAM,oBAAoB,GAAG,qBAAqB,CAChD,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,CAC5B,CAAC;AACF,IAAA,MAAM,QAAQ,GAAG,KAAK,EAAE,wBAAwB,CAAC,GAAG,CAAC;AAErD,IAAA,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;AAE7B,IAAA,MAAM,kBAAkB,GAAG,CAAC,MAAK;AAC/B,QAAA,IAAI,YAAY,CAAC,aAAa,EAAE;AAC9B,YAAA,OAAO,KAAK,KAAK,MAAM,CAAC,YAAY;;YAElCA,GAAM,CAAA,MAAA,EAAA,EAAA,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,EAClD,QAAA,EAAA,OAAO,CAAC,YAAY,EAAA,CAChB,IACL,IAAI,CAAC;SACV;aAAM;YACL,OAAO,QAAQ,IAAI,IAAI,IACrBA,wBAAO,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAQ,CAAA,IAC3C,IAAI,CAAC;SACV;KACF,GAAG,CAAC;IAEL,MAAM,UAAU,GAAG,CACjB,IAA0C,EAC1C,IAAa,EACb,IAAI,GAAG,EAAE,KACa;QACtB,IAAI,CAAC,IAAI,EAAE;AACT,YAAA,OAAO,IAAI,CAAC;SACb;QAED,QACEA,GAAC,CAAA,aAAa,EAAQ,EAAA,OAAA,EAAA,IAAI,EAAW,SAAA,EAAA,CAAC,EAAE,KAAK,EAAE,EAAE,YAAY,EAAE,OAAO,EAAE,EAAA,QAAA,EACrE,OAAO,IAAI,KAAK,QAAQ,IACvBA,GACE,CAAA,KAAA,EAAA,EAAA,GAAG,EAAE,IAAI,EACT,GAAG,EAAE,IAAI,IAAI,QAAQ,EACrB,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,EAC9C,CAAA,KAEF,IAAI,CACL,EACa,CAAA,EAChB;AACJ,KAAC,CAAC;IACF,IAAI,UAAU,GAAG,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAC7C,IAAI,UAAU,GAAG,UAAU,CACzB,YAAY,EAAE,OAAO,CAAC,IAAI,IAAIA,IAAC,MAAM,EAAA,EAAA,CAAG,EACxC,YAAY,EAAE,OAAO,CAAC,IAAI,CAC3B,CAAC;IAEF,IAAI,QAAQ,EAAE;AACZ,QAAA,IAAI,kBAAkB,IAAI,IAAI,EAAE;AAC9B,YAAA,IAAI,IAAI,KAAK,OAAO,EAAE;gBACpB,QACEA,GAAC,CAAA,iBAAiB,EAChB,EAAA,QAAA,EAAAA,GAAA,CAAC,mBAAmB,EAAA,EAAA,QAAA,EAAE,kBAAkB,EAAA,CAAuB,EAC7C,CAAA,EACpB;aACH;AAED,YAAA,QACEC,IAAA,CAAC,iBAAiB,EAAA,EAAA,QAAA,EAAA,CAChBD,IAAC,mBAAmB,EAAA,EAAA,QAAA,EAAE,kBAAkB,EAAA,CAAuB,EAC9D,IAAI,KAAK,KAAK,IAAI,cAAc,KAC/BA,GAAA,CAAAE,QAAA,EAAA,EAAA,QAAA,EACED,IAAC,CAAA,iBAAiB,EAChB,EAAA,QAAA,EAAA,CAAAD,GAAA,CAAC,QAAQ,EAAE,EAAA,QAAA,EAAA,oBAAoB,EAAY,CAAA,EAC1C,UAAU,CAAA,EAAA,CACO,EACnB,CAAA,CACJ,EACA,IAAI,KAAK,QAAQ,IAAI,iBAAiB,KACrCA,GAAA,CAAAE,QAAA,EAAA,EAAA,QAAA,EACED,KAAC,iBAAiB,EAAA,EAAA,QAAA,EAAA,CAChBD,GAAC,CAAA,QAAQ,EAAE,EAAA,QAAA,EAAA,oBAAoB,EAAY,CAAA,EAC1C,UAAU,CACO,EAAA,CAAA,EAAA,CACnB,CACJ,EACA,IAAI,KAAK,KAAK,KACbA,GACE,CAAAE,QAAA,EAAA,EAAA,QAAA,EAAAF,GAAA,CAAC,SAAS,EAAA,EAAA,OAAA,EAAQ,EAAE,EAAI,CAAA,EAAA,CACvB,CACJ,CAAA,EAAA,CACiB,EACpB;SACH;aAAM;AACL,YAAA,QACEC,IAAC,CAAA,iBAAiB,EAChB,EAAA,QAAA,EAAA,CAAAD,GAAA,CAAC,SAAS,EAAG,EAAA,CAAA,EACbA,GAAC,CAAA,QAAQ,cAAE,OAAO,CAAC,cAAc,EAAY,CAAA,CAAA,EAAA,CAC3B,EACpB;SACH;KACF;SAAM;QACL,QACEC,IACG,CAAAC,QAAA,EAAA,EAAA,QAAA,EAAA,CAAA,kBAAkB,IAAIF,GAAA,CAAC,WAAW,EAAA,EAAA,QAAA,EAAE,kBAAkB,EAAA,CAAe,EACtEC,IAAA,CAAC,wBAAwB,EAAA,EAAA,QAAA,EAAA,CACvBD,GAAC,CAAA,SAAS,EAAG,EAAA,CAAA,EACbA,GAAC,CAAA,QAAQ,EAAE,EAAA,QAAA,EAAA,OAAO,CAAC,cAAc,EAAY,CAAA,CAAA,EAAA,CACpB,CAC1B,EAAA,CAAA,EACH;KACH;AACH,EAAE;AAEF,SAAS,SAAS,CAAC,EAAE,KAAK,GAAG,EAAE,EAAsB,EAAA;AACnD,IAAA,MAAM,KAAK,GAAG;QACZA,GAAC,CAAA,QAAQ,EAAK,EAAA,EAAA,KAAK,CAAG;QACtBA,GAAC,CAAA,IAAI,EAAK,EAAA,EAAA,MAAM,CAAG;QACnBA,GAAC,CAAA,QAAQ,EAAK,EAAA,EAAA,UAAU,CAAG;QAC3BA,GAAC,CAAA,QAAQ,EAAK,EAAA,EAAA,UAAU,CAAG;QAC3BA,GAAC,CAAA,IAAI,EAAK,EAAA,EAAA,MAAM,CAAG;QACnBA,GAAC,CAAA,OAAO,EAAK,EAAA,EAAA,SAAS,CAAG;QACzBA,GAAC,CAAA,MAAM,EAAK,EAAA,EAAA,QAAQ,CAAG;KACxB,CAAC;AAEF,IAAA,MAAM,SAAS,GAAG,CAAC,OAA2B,EAAE,KAAa,MAC3DA,GAAC,CAAA,aAAa,EAEC,EAAA,aAAA,EAAA,KAAK,KAAK,CAAC,GAAG,EAAE,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,EAClC,SAAA,EAAA,KAAK,CAAC,MAAM,GAAG,KAAK,EACtB,OAAA,EAAA,KAAK,EACZ,UAAU,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,EAAA,QAAA,EAE9D,OAAO,EAAA,EANH,KAAK,CAOI,CACjB,CAAC;IAEF,QACEA,GAAC,CAAA,KAAK,EAAE,EAAA,QAAA,EAAA,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,KAAK,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,EAAS,CAAA,EACzE;AACJ,CAAC;AAED,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAGnC,CAAA;;;;;;WAMS,CAAC,KAAK,KAAI;IACjB,IAAI,KAAK,CAAC,MAAM;AAAE,QAAA,OAAO,6BAA6B,CAAC;IACvD,IAAI,KAAK,CAAC,MAAM;AAAE,QAAA,OAAO,4BAA4B,CAAC;AACtD,IAAA,OAAO,sBAAsB,CAAC;AAChC,CAAC,CAAA;AACoC,qCAAA,EAAA,YAAY,CAAC,WAAW,CAAA;;;;;;;CAO9D,CAAC;AAEF,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA,CAAA;;;;;CAKlC,CAAC;AAEF,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA,CAAA;;;;;;;;;CAS7C,CAAC;AAEF,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA,CAAA;;;;;;CAM3C,CAAC;AAEF,MAAM,wBAAwB,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA,CAAA;;;;;;;;CAQlD,CAAC;AAEF,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAItC,CAAA;;;;;;;iBAOe,CAAC,KAAK,KAAK,KAAK,CAAC,WAAW,IAAI,CAAC,CAAA;aACrC,CAAC,KAAK,KAAK,KAAK,CAAC,OAAO,IAAI,CAAC,CAAA;AAC/B,SAAA,EAAA,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,CAAA;AACrB,UAAA,EAAA,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,CAAA;;;;;;;CAOjC,CAAC;AAEF,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA,CAAA;;;;CAI/B,CAAC;AAEF,MAAM,iBAAiB,GAAG,MAAM,CAAC,GAAG,CAAA,CAAA;;;;;CAKnC;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../src/components/Common/OrderHeader/index.tsx"],"sourcesContent":["import { getAddressContraction } from \"@daimo/pay-common\";\nimport { useWallet } from \"@solana/wallet-adapter-react\";\nimport { motion } from \"framer-motion\";\nimport React from \"react\";\nimport { useAccount } from \"wagmi\";\nimport {\n Arbitrum,\n Base,\n Ethereum,\n Optimism,\n Polygon,\n Solana,\n} from \"../../../assets/chains\";\nimport { USDC } from \"../../../assets/coins\";\nimport defaultTheme from \"../../../constants/defaultTheme\";\nimport { ROUTES } from \"../../../constants/routes\";\nimport { useDaimoPay } from \"../../../hooks/useDaimoPay\";\nimport useLocales from \"../../../hooks/useLocales\";\nimport { usePayContext } from \"../../../hooks/usePayContext\";\nimport styled from \"../../../styles/styled\";\nimport { formatUsd } from \"../../../utils/format\";\n\n/** Shows payment amount. */\nexport const OrderHeader = ({\n minified = false,\n show = \"all\",\n}: {\n minified?: boolean;\n show?: \"evm\" | \"solana\" | \"zkp2p\" | \"all\";\n}) => {\n const { paymentState, route } = usePayContext();\n const { isConnected: isEthConnected, address, connector } = useAccount();\n const {\n connected: isSolanaConnected,\n publicKey,\n wallet: solanaWallet,\n } = useWallet();\n const { senderEnsName } = paymentState;\n const { order } = useDaimoPay();\n\n const ethWalletDisplayName =\n senderEnsName ?? (address ? getAddressContraction(address) : \"wallet\");\n const solWalletDisplayName = getAddressContraction(\n publicKey?.toBase58() ?? \"\",\n );\n const orderUsd = order?.destFinalCallTokenAmount.usd;\n\n const locales = useLocales();\n\n const titleAmountContent = (() => {\n if (paymentState.isDepositFlow) {\n return route === ROUTES.SELECT_TOKEN ? (\n // TODO: make this match `ModalH1` font size for mobile\n <span style={{ fontSize: \"19px\", lineHeight: \"22px\" }}>\n {locales.yourBalances}\n </span>\n ) : null;\n } else {\n return orderUsd != null ? (\n <span>{formatUsd(orderUsd, \"nearest\")}</span>\n ) : null;\n }\n })();\n\n const renderIcon = (\n icon: React.ReactNode | string | undefined,\n name?: string,\n size = 32,\n ): JSX.Element | null => {\n if (!icon) {\n return null;\n }\n\n return (\n <LogoContainer $size={size} $zIndex={1} style={{ borderRadius: \"22.5%\" }}>\n {typeof icon === \"string\" ? (\n <img\n src={icon}\n alt={name || \"wallet\"}\n style={{ maxWidth: \"100%\", maxHeight: \"100%\" }}\n />\n ) : (\n icon\n )}\n </LogoContainer>\n );\n };\n let walletIcon = renderIcon(connector?.icon);\n let solanaIcon = renderIcon(\n solanaWallet?.adapter.icon || <Solana />,\n solanaWallet?.adapter.name,\n );\n\n if (minified) {\n if (titleAmountContent != null) {\n if (show === \"zkp2p\") {\n return (\n <MinifiedContainer>\n <MinifiedTitleAmount>{titleAmountContent}</MinifiedTitleAmount>\n </MinifiedContainer>\n );\n }\n\n return (\n <MinifiedContainer>\n <MinifiedTitleAmount>{titleAmountContent}</MinifiedTitleAmount>\n {show === \"evm\" && isEthConnected && (\n <>\n <SubtitleContainer>\n <Subtitle>{ethWalletDisplayName}</Subtitle>\n {walletIcon}\n </SubtitleContainer>\n </>\n )}\n {show === \"solana\" && isSolanaConnected && (\n <>\n <SubtitleContainer>\n <Subtitle>{solWalletDisplayName}</Subtitle>\n {solanaIcon}\n </SubtitleContainer>\n </>\n )}\n {show === \"all\" && (\n <>\n <CoinLogos $size={32} />\n </>\n )}\n </MinifiedContainer>\n );\n } else {\n return (\n <MinifiedContainer>\n <CoinLogos />\n <Subtitle>{locales.tokensAccepted}</Subtitle>\n </MinifiedContainer>\n );\n }\n } else {\n return (\n <>\n {titleAmountContent && <TitleAmount>{titleAmountContent}</TitleAmount>}\n <AnyChainAnyCoinContainer>\n <CoinLogos />\n <Subtitle>{locales.tokensAccepted}</Subtitle>\n </AnyChainAnyCoinContainer>\n </>\n );\n }\n};\n\nfunction CoinLogos({ $size = 24 }: { $size?: number }) {\n const logos = [\n <Ethereum key=\"eth\" />,\n <USDC key=\"usdc\" />,\n <Optimism key=\"optimism\" />,\n <Arbitrum key=\"arbitrum\" />,\n <Base key=\"base\" />,\n <Polygon key=\"polygon\" />,\n <Solana key=\"solana\" />,\n ];\n\n const logoBlock = (element: React.ReactElement, index: number) => (\n <LogoContainer\n key={index}\n $marginLeft={index !== 0 ? -($size / 3) : 0}\n $zIndex={logos.length - index}\n $size={$size}\n transition={{ duration: 0.5, ease: [0.175, 0.885, 0.32, 0.98] }}\n >\n {element}\n </LogoContainer>\n );\n\n return (\n <Logos>{logos.map((element, index) => logoBlock(element, index))}</Logos>\n );\n}\n\nconst TitleAmount = styled(motion.h1)<{\n $error?: boolean;\n $valid?: boolean;\n}>`\n margin-bottom: 24px;\n padding: 0;\n line-height: 66px;\n font-size: 64px;\n font-weight: var(--ck-modal-h1-font-weight, 600);\n color: ${(props) => {\n if (props.$error) return \"var(--ck-body-color-danger)\";\n if (props.$valid) return \"var(--ck-body-color-valid)\";\n return \"var(--ck-body-color)\";\n }};\n @media only screen and (max-width: ${defaultTheme.mobileWidth}px) {\n font-size: 64px;\n }\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 8px;\n`;\n\nconst Subtitle = styled(motion.div)`\n font-size: 18px;\n font-weight: 500;\n line-height: 21px;\n color: var(--ck-body-color-muted);\n`;\n\nconst MinifiedTitleAmount = styled(motion.div)`\n font-size: 32px;\n font-weight: var(--ck-modal-h1-font-weight, 600);\n line-height: 36px;\n color: var(--ck-body-color);\n display: flex;\n align-items: center;\n justify-content: start;\n gap: 8px;\n`;\n\nconst MinifiedContainer = styled(motion.div)`\n display: flex;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n margin-bottom: 24px;\n`;\n\nconst AnyChainAnyCoinContainer = styled(motion.div)`\n display: flex;\n vertical-align: middle;\n align-items: center;\n justify-content: center;\n text-align: center;\n gap: 8px;\n margin-bottom: 24px;\n`;\n\nconst LogoContainer = styled(motion.div)<{\n $marginLeft?: number;\n $zIndex?: number;\n $size: number;\n}>`\n display: block;\n overflow: hidden;\n user-select: none;\n display: flex;\n align-items: center;\n justify-content: center;\n margin-left: ${(props) => props.$marginLeft || 0}px;\n z-index: ${(props) => props.$zIndex || 2};\n width: ${(props) => props.$size}px;\n height: ${(props) => props.$size}px;\n border-radius: 9999px;\n svg {\n display: block;\n width: 100%;\n height: auto;\n }\n`;\n\nconst Logos = styled(motion.div)`\n display: flex;\n align-items: center;\n justify-content: center;\n`;\n\nconst SubtitleContainer = styled.div`\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: 8px;\n`;\n"],"names":[],"mappings":"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"}
@@ -4,12 +4,34 @@ import styled from '../../../styles/styled/index.js';
4
4
  import { ModalBody } from '../Modal/styles.js';
5
5
 
6
6
  const PaymentBreakdown = ({ paymentOption }) => {
7
- const subtotalUsd = paymentOption.required.usd;
8
- const feesUsd = paymentOption.fees.usd;
9
- const totalUsd = subtotalUsd + feesUsd;
10
- return (jsxs(FeesContainer, { children: [feesUsd > 0 && (jsxs(FeeRow, { children: [jsx(ModalBody, { children: "Subtotal" }), jsxs(ModalBody, { children: ["$", subtotalUsd.toFixed(2)] })] })), jsxs(FeeRow, { children: [jsx(ModalBody, { children: "Fees" }), feesUsd === 0 ? (jsx(Badge, { children: "Free" })) : (jsxs(ModalBody, { children: ["$", feesUsd.toFixed(2)] }))] }), jsxs(FeeRow, { style: { marginTop: 8 }, children: [jsx(ModalBody, { style: { fontWeight: 600 }, children: "Total" }), jsxs(ModalBody, { style: { fontWeight: 600 }, children: ["$", totalUsd.toFixed(2)] })] })] }));
7
+ const subtotalUsd = paymentOption.required.usd;
8
+ const feesUsd = paymentOption.fees.usd;
9
+ const totalUsd = subtotalUsd + feesUsd;
10
+ return /* @__PURE__ */ jsxs(FeesContainer, { children: [
11
+ feesUsd > 0 && /* @__PURE__ */ jsxs(FeeRow, { children: [
12
+ /* @__PURE__ */ jsx(ModalBody, { children: "Subtotal" }),
13
+ /* @__PURE__ */ jsxs(ModalBody, { children: [
14
+ "$",
15
+ subtotalUsd.toFixed(2)
16
+ ] })
17
+ ] }),
18
+ /* @__PURE__ */ jsxs(FeeRow, { children: [
19
+ /* @__PURE__ */ jsx(ModalBody, { children: "Fees" }),
20
+ feesUsd === 0 ? /* @__PURE__ */ jsx(Badge, { children: "Free" }) : /* @__PURE__ */ jsxs(ModalBody, { children: [
21
+ "$",
22
+ feesUsd.toFixed(2)
23
+ ] })
24
+ ] }),
25
+ /* @__PURE__ */ jsxs(FeeRow, { style: { marginTop: 8 }, children: [
26
+ /* @__PURE__ */ jsx(ModalBody, { style: { fontWeight: 600 }, children: "Total" }),
27
+ /* @__PURE__ */ jsxs(ModalBody, { style: { fontWeight: 600 }, children: [
28
+ "$",
29
+ totalUsd.toFixed(2)
30
+ ] })
31
+ ] })
32
+ ] });
11
33
  };
12
- const FeesContainer = styled.div `
34
+ const FeesContainer = styled.div`
13
35
  display: flex;
14
36
  flex-direction: column;
15
37
  align-items: center;
@@ -25,13 +47,13 @@ const FeesContainer = styled.div `
25
47
  }
26
48
  }
27
49
  `;
28
- const FeeRow = styled.div `
50
+ const FeeRow = styled.div`
29
51
  display: flex;
30
52
  justify-content: space-between;
31
53
  align-items: center;
32
54
  width: 50%;
33
55
  `;
34
- const Badge = styled.span `
56
+ const Badge = styled.span`
35
57
  display: inline-block;
36
58
  padding: 3px 8px;
37
59
  border-radius: var(--ck-primary-button-border-radius);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../src/components/Common/PaymentBreakdown/index.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx"],"mappings":";;;;;AAOA,MAAM,gBAAgB,GAEjB,CAAC,EAAE,aAAa,EAAE,KAAI;AACzB,IAAA,MAAM,WAAW,GAAG,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC;AAC/C,IAAA,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC;AACvC,IAAA,MAAM,QAAQ,GAAG,WAAW,GAAG,OAAO,CAAC;IAEvC,QACEA,IAAC,CAAA,aAAa,EACX,EAAA,QAAA,EAAA,CAAA,OAAO,GAAG,CAAC,KACVA,IAAA,CAAC,MAAM,EAAA,EAAA,QAAA,EAAA,CACLC,IAAC,SAAS,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,CAAqB,EAC/BD,IAAA,CAAC,SAAS,EAAA,EAAA,QAAA,EAAA,CAAA,GAAA,EAAG,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA,EAAA,CAAa,IACzC,CACV,EACDA,IAAC,CAAA,MAAM,EACL,EAAA,QAAA,EAAA,CAAAC,GAAA,CAAC,SAAS,EAAiB,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,EAC1B,OAAO,KAAK,CAAC,IACZA,GAAC,CAAA,KAAK,EAAa,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,KAEnBD,IAAA,CAAC,SAAS,EAAA,EAAA,QAAA,EAAA,CAAA,GAAA,EAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA,EAAA,CAAa,CAC7C,CACM,EAAA,CAAA,EACTA,IAAC,CAAA,MAAM,EAAC,EAAA,KAAK,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,EAAA,QAAA,EAAA,CAC7BC,IAAC,SAAS,EAAA,EAAC,KAAK,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,EAAmB,QAAA,EAAA,OAAA,EAAA,CAAA,EACxDD,IAAC,CAAA,SAAS,IAAC,KAAK,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,EACjC,QAAA,EAAA,CAAA,GAAA,EAAA,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CACX,EAAA,CAAA,CAAA,EAAA,CACL,CACK,EAAA,CAAA,EAChB;AACJ,EAAE;AAEF,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAA,CAAA;;;;;;;;AAQO,qCAAA,EAAA,YAAY,CAAC,WAAW,CAAA;QACvD,SAAS,CAAA;;;;;;CAMhB,CAAC;AACF,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAA,CAAA;;;;;CAKxB,CAAC;AACF,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAA,CAAA;;;;;;;;;;;CAWxB;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../src/components/Common/PaymentBreakdown/index.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { WalletPaymentOption } from \"@daimo/pay-common\";\nimport defaultTheme from \"../../../constants/defaultTheme\";\nimport styled from \"../../../styles/styled\";\nimport { ModalBody } from \"../../Common/Modal/styles\";\n\nconst PaymentBreakdown: React.FC<{\n paymentOption: WalletPaymentOption;\n}> = ({ paymentOption }) => {\n const subtotalUsd = paymentOption.required.usd;\n const feesUsd = paymentOption.fees.usd;\n const totalUsd = subtotalUsd + feesUsd;\n\n return (\n <FeesContainer>\n {feesUsd > 0 && (\n <FeeRow>\n <ModalBody>Subtotal</ModalBody>\n <ModalBody>${subtotalUsd.toFixed(2)}</ModalBody>\n </FeeRow>\n )}\n <FeeRow>\n <ModalBody>Fees</ModalBody>\n {feesUsd === 0 ? (\n <Badge>Free</Badge>\n ) : (\n <ModalBody>${feesUsd.toFixed(2)}</ModalBody>\n )}\n </FeeRow>\n <FeeRow style={{ marginTop: 8 }}>\n <ModalBody style={{ fontWeight: 600 }}>Total</ModalBody>\n <ModalBody style={{ fontWeight: 600 }}>\n ${totalUsd.toFixed(2)}\n </ModalBody>\n </FeeRow>\n </FeesContainer>\n );\n};\n\nconst FeesContainer = styled.div`\n display: flex;\n flex-direction: column;\n align-items: center;\n width: 100%;\n gap: 4px;\n margin: 16px 0;\n\n @media only screen and (max-width: ${defaultTheme.mobileWidth}px) {\n & ${ModalBody} {\n margin: 0 !important;\n max-width: 100% !important;\n text-align: left !important;\n }\n }\n`;\nconst FeeRow = styled.div`\n display: flex;\n justify-content: space-between;\n align-items: center;\n width: 50%;\n`;\nconst Badge = styled.span`\n display: inline-block;\n padding: 3px 8px;\n border-radius: var(--ck-primary-button-border-radius);\n font-size: 14px;\n font-weight: 400;\n background: var(\n --ck-secondary-button-background,\n var(--ck-body-background-secondary)\n );\n color: var(--ck-body-color-muted);\n`;\n\nexport default PaymentBreakdown;\n"],"names":[],"mappings":";;;;;AAOA,MAAM,gBAED,GAAA,CAAC,EAAE,aAAA,EAAoB,KAAA;AAC1B,EAAM,MAAA,WAAA,GAAc,cAAc,QAAS,CAAA,GAAA,CAAA;AAC3C,EAAM,MAAA,OAAA,GAAU,cAAc,IAAK,CAAA,GAAA,CAAA;AACnC,EAAA,MAAM,WAAW,WAAc,GAAA,OAAA,CAAA;AAE/B,EAAA,4BACG,aACE,EAAA,EAAA,QAAA,EAAA;AAAA,IAAU,OAAA,GAAA,CAAA,yBACR,MACC,EAAA,EAAA,QAAA,EAAA;AAAA,sBAAA,GAAA,CAAC,aAAU,QAAQ,EAAA,UAAA,EAAA,CAAA;AAAA,2BAClB,SAAU,EAAA,EAAA,QAAA,EAAA;AAAA,QAAA,GAAA;AAAA,QAAE,WAAA,CAAY,QAAQ,CAAC,CAAA;AAAA,OAAE,EAAA,CAAA;AAAA,KACtC,EAAA,CAAA;AAAA,yBAED,MACC,EAAA,EAAA,QAAA,EAAA;AAAA,sBAAA,GAAA,CAAC,aAAU,QAAI,EAAA,MAAA,EAAA,CAAA;AAAA,MACd,YAAY,CACX,mBAAA,GAAA,CAAC,SAAM,QAAI,EAAA,MAAA,EAAA,CAAA,wBAEV,SAAU,EAAA,EAAA,QAAA,EAAA;AAAA,QAAA,GAAA;AAAA,QAAE,OAAA,CAAQ,QAAQ,CAAC,CAAA;AAAA,OAAE,EAAA,CAAA;AAAA,KAEpC,EAAA,CAAA;AAAA,yBACC,MAAO,EAAA,EAAA,KAAA,EAAO,EAAE,SAAA,EAAW,GAC1B,EAAA,QAAA,EAAA;AAAA,sBAAA,GAAA,CAAC,aAAU,KAAO,EAAA,EAAE,UAAY,EAAA,GAAA,IAAO,QAAK,EAAA,OAAA,EAAA,CAAA;AAAA,2BAC3C,SAAU,EAAA,EAAA,KAAA,EAAO,EAAE,UAAA,EAAY,KAAO,EAAA,QAAA,EAAA;AAAA,QAAA,GAAA;AAAA,QACnC,QAAA,CAAS,QAAQ,CAAC,CAAA;AAAA,OACtB,EAAA,CAAA;AAAA,KACF,EAAA,CAAA;AAAA,GACF,EAAA,CAAA,CAAA;AAEJ,EAAA;AAEA,MAAM,gBAAgB,MAAO,CAAA,GAAA,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qCAAA,EAQU,aAAa,WAAW,CAAA;AAAA,MAAA,EACvD,SAAS,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAAA,CAAA;AAOjB,MAAM,SAAS,MAAO,CAAA,GAAA,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAAA,CAAA;AAMtB,MAAM,QAAQ,MAAO,CAAA,IAAA,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAAA;;;;"}
@@ -3,28 +3,27 @@ import { createPortal } from 'react-dom';
3
3
  import packageJson from '../../../../package.json.js';
4
4
 
5
5
  const Portal = (props) => {
6
- props = {
7
- selector: "__DAIMOPAY__",
8
- ...props,
9
- };
10
- const { selector, children } = props;
11
- const ref = useRef(null);
12
- const [mounted, setMounted] = useState(false);
13
- useEffect(() => {
14
- const selectorPrefixed = "#" + selector.replace(/^#/, "");
15
- ref.current = document.querySelector(selectorPrefixed);
16
- if (!ref.current) {
17
- const div = document.createElement("div");
18
- div.setAttribute("id", selector);
19
- div.setAttribute("data-daimopay", `${packageJson.version}`);
20
- document.body.appendChild(div);
21
- ref.current = div;
22
- }
23
- setMounted(true);
24
- }, [selector]);
25
- if (!ref.current)
26
- return null;
27
- return mounted ? createPortal(children, ref.current) : null;
6
+ props = {
7
+ selector: "__DAIMOPAY__",
8
+ ...props
9
+ };
10
+ const { selector, children } = props;
11
+ const ref = useRef(null);
12
+ const [mounted, setMounted] = useState(false);
13
+ useEffect(() => {
14
+ const selectorPrefixed = "#" + selector.replace(/^#/, "");
15
+ ref.current = document.querySelector(selectorPrefixed);
16
+ if (!ref.current) {
17
+ const div = document.createElement("div");
18
+ div.setAttribute("id", selector);
19
+ div.setAttribute("data-daimopay", `${packageJson.version}`);
20
+ document.body.appendChild(div);
21
+ ref.current = div;
22
+ }
23
+ setMounted(true);
24
+ }, [selector]);
25
+ if (!ref.current) return null;
26
+ return mounted ? createPortal(children, ref.current) : null;
28
27
  };
29
28
 
30
29
  export { Portal as default };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../src/components/Common/Portal/index.tsx"],"sourcesContent":[null],"names":[],"mappings":";;;;AAIA,MAAM,MAAM,GAAG,CAAC,KAAU,KAAI;AAC5B,IAAA,KAAK,GAAG;AACN,QAAA,QAAQ,EAAE,cAAc;AACxB,QAAA,GAAG,KAAK;KACT,CAAC;AAEF,IAAA,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;AAErC,IAAA,MAAM,GAAG,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IACzC,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAU,KAAK,CAAC,CAAC;IAEvD,SAAS,CAAC,MAAK;AACb,QAAA,MAAM,gBAAgB,GAAG,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC1D,GAAG,CAAC,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;AAEvD,QAAA,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE;YAChB,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;AAC1C,YAAA,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YACjC,GAAG,CAAC,YAAY,CAAC,eAAe,EAAE,CAAG,EAAA,WAAW,CAAC,OAAO,CAAE,CAAA,CAAC,CAAC;AAC5D,YAAA,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;AAC/B,YAAA,GAAG,CAAC,OAAO,GAAG,GAAG,CAAC;SACnB;QAED,UAAU,CAAC,IAAI,CAAC,CAAC;AACnB,KAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,IAAI,CAAC,GAAG,CAAC,OAAO;AAAE,QAAA,OAAO,IAAI,CAAC;AAC9B,IAAA,OAAO,OAAO,GAAG,YAAY,CAAC,QAAQ,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;AAC9D;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../src/components/Common/Portal/index.tsx"],"sourcesContent":["import { useEffect, useRef, useState } from \"react\";\nimport { createPortal } from \"react-dom\";\nimport packageJson from \"../../../../package.json\";\n\nconst Portal = (props: any) => {\n props = {\n selector: \"__DAIMOPAY__\",\n ...props,\n };\n\n const { selector, children } = props;\n\n const ref = useRef<Element | null>(null);\n const [mounted, setMounted] = useState<boolean>(false);\n\n useEffect(() => {\n const selectorPrefixed = \"#\" + selector.replace(/^#/, \"\");\n ref.current = document.querySelector(selectorPrefixed);\n\n if (!ref.current) {\n const div = document.createElement(\"div\");\n div.setAttribute(\"id\", selector);\n div.setAttribute(\"data-daimopay\", `${packageJson.version}`);\n document.body.appendChild(div);\n ref.current = div;\n }\n\n setMounted(true);\n }, [selector]);\n\n if (!ref.current) return null;\n return mounted ? createPortal(children, ref.current) : null;\n};\n\nexport default Portal;\n"],"names":[],"mappings":";;;;AAIM,MAAA,MAAA,GAAS,CAAC,KAAe,KAAA;AAC7B,EAAQ,KAAA,GAAA;AAAA,IACN,QAAU,EAAA,cAAA;AAAA,IACV,GAAG,KAAA;AAAA,GACL,CAAA;AAEA,EAAM,MAAA,EAAE,QAAU,EAAA,QAAA,EAAa,GAAA,KAAA,CAAA;AAE/B,EAAM,MAAA,GAAA,GAAM,OAAuB,IAAI,CAAA,CAAA;AACvC,EAAA,MAAM,CAAC,OAAA,EAAS,UAAU,CAAA,GAAI,SAAkB,KAAK,CAAA,CAAA;AAErD,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,MAAM,gBAAmB,GAAA,GAAA,GAAM,QAAS,CAAA,OAAA,CAAQ,MAAM,EAAE,CAAA,CAAA;AACxD,IAAI,GAAA,CAAA,OAAA,GAAU,QAAS,CAAA,aAAA,CAAc,gBAAgB,CAAA,CAAA;AAErD,IAAI,IAAA,CAAC,IAAI,OAAS,EAAA;AAChB,MAAM,MAAA,GAAA,GAAM,QAAS,CAAA,aAAA,CAAc,KAAK,CAAA,CAAA;AACxC,MAAI,GAAA,CAAA,YAAA,CAAa,MAAM,QAAQ,CAAA,CAAA;AAC/B,MAAA,GAAA,CAAI,YAAa,CAAA,eAAA,EAAiB,CAAG,EAAA,WAAA,CAAY,OAAO,CAAE,CAAA,CAAA,CAAA;AAC1D,MAAS,QAAA,CAAA,IAAA,CAAK,YAAY,GAAG,CAAA,CAAA;AAC7B,MAAA,GAAA,CAAI,OAAU,GAAA,GAAA,CAAA;AAAA,KAChB;AAEA,IAAA,UAAA,CAAW,IAAI,CAAA,CAAA;AAAA,GACjB,EAAG,CAAC,QAAQ,CAAC,CAAA,CAAA;AAEb,EAAI,IAAA,CAAC,GAAI,CAAA,OAAA,EAAgB,OAAA,IAAA,CAAA;AACzB,EAAA,OAAO,OAAU,GAAA,YAAA,CAAa,QAAU,EAAA,GAAA,CAAI,OAAO,CAAI,GAAA,IAAA,CAAA;AACzD;;;;"}