@daimo/pay 1.19.9 → 1.19.11

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 (366) hide show
  1. package/package.json +2 -2
  2. package/build/index.d.ts +0 -619
  3. package/build/package.json.js +0 -118
  4. package/build/package.json.js.map +0 -1
  5. package/build/src/assets/MobileWithLogos.js +0 -329
  6. package/build/src/assets/MobileWithLogos.js.map +0 -1
  7. package/build/src/assets/ScanIconWithLogos.js +0 -243
  8. package/build/src/assets/ScanIconWithLogos.js.map +0 -1
  9. package/build/src/assets/browsers.js +0 -969
  10. package/build/src/assets/browsers.js.map +0 -1
  11. package/build/src/assets/chains.js +0 -661
  12. package/build/src/assets/chains.js.map +0 -1
  13. package/build/src/assets/icons.js +0 -273
  14. package/build/src/assets/icons.js.map +0 -1
  15. package/build/src/assets/logos.js +0 -1694
  16. package/build/src/assets/logos.js.map +0 -1
  17. package/build/src/assets/wave.js +0 -46
  18. package/build/src/assets/wave.js.map +0 -1
  19. package/build/src/components/Common/Alert/index.js +0 -13
  20. package/build/src/components/Common/Alert/index.js.map +0 -1
  21. package/build/src/components/Common/Alert/styles.js +0 -55
  22. package/build/src/components/Common/Alert/styles.js.map +0 -1
  23. package/build/src/components/Common/AmountInput/AmountInputField.js +0 -62
  24. package/build/src/components/Common/AmountInput/AmountInputField.js.map +0 -1
  25. package/build/src/components/Common/AmountInput/index.js +0 -166
  26. package/build/src/components/Common/AmountInput/index.js.map +0 -1
  27. package/build/src/components/Common/Avatar/index.js +0 -78
  28. package/build/src/components/Common/Avatar/index.js.map +0 -1
  29. package/build/src/components/Common/Avatar/styles.js +0 -54
  30. package/build/src/components/Common/Avatar/styles.js.map +0 -1
  31. package/build/src/components/Common/BrowserIcon/index.js +0 -29
  32. package/build/src/components/Common/BrowserIcon/index.js.map +0 -1
  33. package/build/src/components/Common/BrowserIcon/styles.js +0 -20
  34. package/build/src/components/Common/BrowserIcon/styles.js.map +0 -1
  35. package/build/src/components/Common/Button/index.js +0 -144
  36. package/build/src/components/Common/Button/index.js.map +0 -1
  37. package/build/src/components/Common/Button/styles.js +0 -287
  38. package/build/src/components/Common/Button/styles.js.map +0 -1
  39. package/build/src/components/Common/Chain/index.js +0 -141
  40. package/build/src/components/Common/Chain/index.js.map +0 -1
  41. package/build/src/components/Common/Chain/styles.js +0 -90
  42. package/build/src/components/Common/Chain/styles.js.map +0 -1
  43. package/build/src/components/Common/ChainSelectList/index.js +0 -250
  44. package/build/src/components/Common/ChainSelectList/index.js.map +0 -1
  45. package/build/src/components/Common/ChainSelectList/styles.js +0 -226
  46. package/build/src/components/Common/ChainSelectList/styles.js.map +0 -1
  47. package/build/src/components/Common/CircleTimer.js +0 -92
  48. package/build/src/components/Common/CircleTimer.js.map +0 -1
  49. package/build/src/components/Common/ConnectorList/index.js +0 -121
  50. package/build/src/components/Common/ConnectorList/index.js.map +0 -1
  51. package/build/src/components/Common/ConnectorList/styles.js +0 -344
  52. package/build/src/components/Common/ConnectorList/styles.js.map +0 -1
  53. package/build/src/components/Common/CopyToClipboard/CopyToClipboardIcon.js +0 -78
  54. package/build/src/components/Common/CopyToClipboard/CopyToClipboardIcon.js.map +0 -1
  55. package/build/src/components/Common/CustomQRCode/QRCode.js +0 -132
  56. package/build/src/components/Common/CustomQRCode/QRCode.js.map +0 -1
  57. package/build/src/components/Common/CustomQRCode/index.js +0 -89
  58. package/build/src/components/Common/CustomQRCode/index.js.map +0 -1
  59. package/build/src/components/Common/CustomQRCode/styles.js +0 -142
  60. package/build/src/components/Common/CustomQRCode/styles.js.map +0 -1
  61. package/build/src/components/Common/FitText/index.js +0 -34
  62. package/build/src/components/Common/FitText/index.js.map +0 -1
  63. package/build/src/components/Common/Modal/index.js +0 -558
  64. package/build/src/components/Common/Modal/index.js.map +0 -1
  65. package/build/src/components/Common/Modal/styles.js +0 -665
  66. package/build/src/components/Common/Modal/styles.js.map +0 -1
  67. package/build/src/components/Common/OptionsList/index.js +0 -145
  68. package/build/src/components/Common/OptionsList/index.js.map +0 -1
  69. package/build/src/components/Common/OptionsList/styles.js +0 -138
  70. package/build/src/components/Common/OptionsList/styles.js.map +0 -1
  71. package/build/src/components/Common/OrderHeader/index.js +0 -148
  72. package/build/src/components/Common/OrderHeader/index.js.map +0 -1
  73. package/build/src/components/Common/PaymentBreakdown/index.js +0 -70
  74. package/build/src/components/Common/PaymentBreakdown/index.js.map +0 -1
  75. package/build/src/components/Common/Portal/index.js +0 -30
  76. package/build/src/components/Common/Portal/index.js.map +0 -1
  77. package/build/src/components/Common/PoweredByFooter/index.js +0 -39
  78. package/build/src/components/Common/PoweredByFooter/index.js.map +0 -1
  79. package/build/src/components/Common/ScrollArea/index.js +0 -120
  80. package/build/src/components/Common/ScrollArea/index.js.map +0 -1
  81. package/build/src/components/Common/ScrollArea/styles.js +0 -169
  82. package/build/src/components/Common/ScrollArea/styles.js.map +0 -1
  83. package/build/src/components/Common/SelectAnotherMethodButton/index.js +0 -96
  84. package/build/src/components/Common/SelectAnotherMethodButton/index.js.map +0 -1
  85. package/build/src/components/Common/Spinner/index.js +0 -64
  86. package/build/src/components/Common/Spinner/index.js.map +0 -1
  87. package/build/src/components/Common/Spinner/styles.js +0 -22
  88. package/build/src/components/Common/Spinner/styles.js.map +0 -1
  89. package/build/src/components/Common/SwitchButton/index.js +0 -43
  90. package/build/src/components/Common/SwitchButton/index.js.map +0 -1
  91. package/build/src/components/Common/ThemedButton/index.js +0 -46
  92. package/build/src/components/Common/ThemedButton/index.js.map +0 -1
  93. package/build/src/components/Common/ThemedButton/styles.js +0 -152
  94. package/build/src/components/Common/ThemedButton/styles.js.map +0 -1
  95. package/build/src/components/Common/TokenChainLogo/index.js +0 -62
  96. package/build/src/components/Common/TokenChainLogo/index.js.map +0 -1
  97. package/build/src/components/Common/Tooltip/index.js +0 -129
  98. package/build/src/components/Common/Tooltip/index.js.map +0 -1
  99. package/build/src/components/Common/Tooltip/styles.js +0 -81
  100. package/build/src/components/Common/Tooltip/styles.js.map +0 -1
  101. package/build/src/components/Common/WalletChainLogo/index.js +0 -31
  102. package/build/src/components/Common/WalletChainLogo/index.js.map +0 -1
  103. package/build/src/components/DaimoPayButton/index.js +0 -196
  104. package/build/src/components/DaimoPayButton/index.js.map +0 -1
  105. package/build/src/components/DaimoPayButton/styles.js +0 -50
  106. package/build/src/components/DaimoPayButton/styles.js.map +0 -1
  107. package/build/src/components/DaimoPayModal/ConnectUsing.js +0 -70
  108. package/build/src/components/DaimoPayModal/ConnectUsing.js.map +0 -1
  109. package/build/src/components/DaimoPayModal/ConnectWithInjector/index.js +0 -339
  110. package/build/src/components/DaimoPayModal/ConnectWithInjector/index.js.map +0 -1
  111. package/build/src/components/DaimoPayModal/ConnectWithInjector/styles.js +0 -131
  112. package/build/src/components/DaimoPayModal/ConnectWithInjector/styles.js.map +0 -1
  113. package/build/src/components/DaimoPayModal/ConnectWithQRCode.js +0 -89
  114. package/build/src/components/DaimoPayModal/ConnectWithQRCode.js.map +0 -1
  115. package/build/src/components/DaimoPayModal/index.js +0 -605
  116. package/build/src/components/DaimoPayModal/index.js.map +0 -1
  117. package/build/src/components/DaimoPayThemeProvider/DaimoPayThemeProvider.js +0 -25
  118. package/build/src/components/DaimoPayThemeProvider/DaimoPayThemeProvider.js.map +0 -1
  119. package/build/src/components/Pages/About/graphics.js +0 -853
  120. package/build/src/components/Pages/About/graphics.js.map +0 -1
  121. package/build/src/components/Pages/About/index.js +0 -222
  122. package/build/src/components/Pages/About/index.js.map +0 -1
  123. package/build/src/components/Pages/About/styles.js +0 -140
  124. package/build/src/components/Pages/About/styles.js.map +0 -1
  125. package/build/src/components/Pages/Confirmation/index.js +0 -126
  126. package/build/src/components/Pages/Confirmation/index.js.map +0 -1
  127. package/build/src/components/Pages/Connectors/index.js +0 -26
  128. package/build/src/components/Pages/Connectors/index.js.map +0 -1
  129. package/build/src/components/Pages/Error/index.js +0 -57
  130. package/build/src/components/Pages/Error/index.js.map +0 -1
  131. package/build/src/components/Pages/MobileConnectors/index.js +0 -108
  132. package/build/src/components/Pages/MobileConnectors/index.js.map +0 -1
  133. package/build/src/components/Pages/MobileConnectors/styles.js +0 -64
  134. package/build/src/components/Pages/MobileConnectors/styles.js.map +0 -1
  135. package/build/src/components/Pages/Onboarding/index.js +0 -34
  136. package/build/src/components/Pages/Onboarding/index.js.map +0 -1
  137. package/build/src/components/Pages/Onboarding/styles.js +0 -229
  138. package/build/src/components/Pages/Onboarding/styles.js.map +0 -1
  139. package/build/src/components/Pages/PayWithToken/index.js +0 -157
  140. package/build/src/components/Pages/PayWithToken/index.js.map +0 -1
  141. package/build/src/components/Pages/SelectAmount/index.js +0 -24
  142. package/build/src/components/Pages/SelectAmount/index.js.map +0 -1
  143. package/build/src/components/Pages/SelectDepositAddressAmount/index.js +0 -79
  144. package/build/src/components/Pages/SelectDepositAddressAmount/index.js.map +0 -1
  145. package/build/src/components/Pages/SelectDepositAddressChain/index.js +0 -80
  146. package/build/src/components/Pages/SelectDepositAddressChain/index.js.map +0 -1
  147. package/build/src/components/Pages/SelectExchange/index.js +0 -62
  148. package/build/src/components/Pages/SelectExchange/index.js.map +0 -1
  149. package/build/src/components/Pages/SelectExternalAmount/index.js +0 -80
  150. package/build/src/components/Pages/SelectExternalAmount/index.js.map +0 -1
  151. package/build/src/components/Pages/SelectMethod/index.js +0 -315
  152. package/build/src/components/Pages/SelectMethod/index.js.map +0 -1
  153. package/build/src/components/Pages/SelectToken/index.js +0 -99
  154. package/build/src/components/Pages/SelectToken/index.js.map +0 -1
  155. package/build/src/components/Pages/SelectWalletAmount/index.js +0 -71
  156. package/build/src/components/Pages/SelectWalletAmount/index.js.map +0 -1
  157. package/build/src/components/Pages/SelectWalletChain/index.js +0 -55
  158. package/build/src/components/Pages/SelectWalletChain/index.js.map +0 -1
  159. package/build/src/components/Pages/SelectZKP/index.js +0 -41
  160. package/build/src/components/Pages/SelectZKP/index.js.map +0 -1
  161. package/build/src/components/Pages/Solana/ConnectorSolana/index.js +0 -94
  162. package/build/src/components/Pages/Solana/ConnectorSolana/index.js.map +0 -1
  163. package/build/src/components/Pages/Solana/PayWithSolanaToken/index.js +0 -92
  164. package/build/src/components/Pages/Solana/PayWithSolanaToken/index.js.map +0 -1
  165. package/build/src/components/Pages/Solana/SelectSolanaAmount/index.js +0 -24
  166. package/build/src/components/Pages/Solana/SelectSolanaAmount/index.js.map +0 -1
  167. package/build/src/components/Pages/SwitchNetworks/index.js +0 -45
  168. package/build/src/components/Pages/SwitchNetworks/index.js.map +0 -1
  169. package/build/src/components/Pages/WaitingDepositAddress/index.js +0 -586
  170. package/build/src/components/Pages/WaitingDepositAddress/index.js.map +0 -1
  171. package/build/src/components/Pages/WaitingExternal/index.js +0 -174
  172. package/build/src/components/Pages/WaitingExternal/index.js.map +0 -1
  173. package/build/src/components/Pages/WaitingWallet/index.js +0 -49
  174. package/build/src/components/Pages/WaitingWallet/index.js.map +0 -1
  175. package/build/src/components/Pages/Warning/index.js +0 -56
  176. package/build/src/components/Pages/Warning/index.js.map +0 -1
  177. package/build/src/components/Spinners/CircleSpinner/index.js +0 -104
  178. package/build/src/components/Spinners/CircleSpinner/index.js.map +0 -1
  179. package/build/src/components/Spinners/CircleSpinner/styles.js +0 -117
  180. package/build/src/components/Spinners/CircleSpinner/styles.js.map +0 -1
  181. package/build/src/components/Spinners/ExternalPaymentSpinner/index.js +0 -29
  182. package/build/src/components/Spinners/ExternalPaymentSpinner/index.js.map +0 -1
  183. package/build/src/components/Spinners/SquircleSpinner/index.js +0 -68
  184. package/build/src/components/Spinners/SquircleSpinner/index.js.map +0 -1
  185. package/build/src/components/Spinners/SquircleSpinner/styles.js +0 -66
  186. package/build/src/components/Spinners/SquircleSpinner/styles.js.map +0 -1
  187. package/build/src/components/Spinners/TokenLogoSpinner/index.js +0 -24
  188. package/build/src/components/Spinners/TokenLogoSpinner/index.js.map +0 -1
  189. package/build/src/components/Spinners/TokenLogoSpinner/styles.js +0 -40
  190. package/build/src/components/Spinners/TokenLogoSpinner/styles.js.map +0 -1
  191. package/build/src/components/Spinners/WalletPaymentSpinner/index.js +0 -37
  192. package/build/src/components/Spinners/WalletPaymentSpinner/index.js.map +0 -1
  193. package/build/src/components/Spinners/styles.js +0 -32
  194. package/build/src/components/Spinners/styles.js.map +0 -1
  195. package/build/src/constants/defaultTheme.js +0 -6
  196. package/build/src/constants/defaultTheme.js.map +0 -1
  197. package/build/src/constants/limits.js +0 -4
  198. package/build/src/constants/limits.js.map +0 -1
  199. package/build/src/constants/paymentOptions.js +0 -61
  200. package/build/src/constants/paymentOptions.js.map +0 -1
  201. package/build/src/constants/routes.js +0 -31
  202. package/build/src/constants/routes.js.map +0 -1
  203. package/build/src/constants/wallets.js +0 -7
  204. package/build/src/constants/wallets.js.map +0 -1
  205. package/build/src/defaultConfig.js +0 -65
  206. package/build/src/defaultConfig.js.map +0 -1
  207. package/build/src/defaultConnectors.js +0 -37
  208. package/build/src/defaultConnectors.js.map +0 -1
  209. package/build/src/hooks/useChainIsSupported.js +0 -10
  210. package/build/src/hooks/useChainIsSupported.js.map +0 -1
  211. package/build/src/hooks/useChains.js +0 -10
  212. package/build/src/hooks/useChains.js.map +0 -1
  213. package/build/src/hooks/useConnect.js +0 -61
  214. package/build/src/hooks/useConnect.js.map +0 -1
  215. package/build/src/hooks/useConnectCallback.js +0 -21
  216. package/build/src/hooks/useConnectCallback.js.map +0 -1
  217. package/build/src/hooks/useConnectors.js +0 -20
  218. package/build/src/hooks/useConnectors.js.map +0 -1
  219. package/build/src/hooks/useDaimoPay.js +0 -131
  220. package/build/src/hooks/useDaimoPay.js.map +0 -1
  221. package/build/src/hooks/useDaimoPayStatus.js +0 -12
  222. package/build/src/hooks/useDaimoPayStatus.js.map +0 -1
  223. package/build/src/hooks/useDaimoPayUI.js +0 -15
  224. package/build/src/hooks/useDaimoPayUI.js.map +0 -1
  225. package/build/src/hooks/useEnsFallbackConfig.js +0 -16
  226. package/build/src/hooks/useEnsFallbackConfig.js.map +0 -1
  227. package/build/src/hooks/useFitText.js +0 -133
  228. package/build/src/hooks/useFitText.js.map +0 -1
  229. package/build/src/hooks/useFocusTrap.js +0 -53
  230. package/build/src/hooks/useFocusTrap.js.map +0 -1
  231. package/build/src/hooks/useIsMobile.js +0 -11
  232. package/build/src/hooks/useIsMobile.js.map +0 -1
  233. package/build/src/hooks/useIsMounted.js +0 -10
  234. package/build/src/hooks/useIsMounted.js.map +0 -1
  235. package/build/src/hooks/useLastConnector.js +0 -24
  236. package/build/src/hooks/useLastConnector.js.map +0 -1
  237. package/build/src/hooks/useLocales.js +0 -60
  238. package/build/src/hooks/useLocales.js.map +0 -1
  239. package/build/src/hooks/useLockBodyScroll.js +0 -47
  240. package/build/src/hooks/useLockBodyScroll.js.map +0 -1
  241. package/build/src/hooks/useOrderUsdLimits.js +0 -24
  242. package/build/src/hooks/useOrderUsdLimits.js.map +0 -1
  243. package/build/src/hooks/usePayContext.js +0 -11
  244. package/build/src/hooks/usePayContext.js.map +0 -1
  245. package/build/src/hooks/usePaymentOptions.js +0 -183
  246. package/build/src/hooks/usePaymentOptions.js.map +0 -1
  247. package/build/src/hooks/usePaymentState.js +0 -399
  248. package/build/src/hooks/usePaymentState.js.map +0 -1
  249. package/build/src/hooks/usePrevious.js +0 -13
  250. package/build/src/hooks/usePrevious.js.map +0 -1
  251. package/build/src/hooks/useTokenOptions.js +0 -156
  252. package/build/src/hooks/useTokenOptions.js.map +0 -1
  253. package/build/src/hooks/useUntronAvailability.js +0 -32
  254. package/build/src/hooks/useUntronAvailability.js.map +0 -1
  255. package/build/src/hooks/useWindowSize.js +0 -23
  256. package/build/src/hooks/useWindowSize.js.map +0 -1
  257. package/build/src/index.js +0 -14
  258. package/build/src/index.js.map +0 -1
  259. package/build/src/localizations/index.js +0 -48
  260. package/build/src/localizations/index.js.map +0 -1
  261. package/build/src/localizations/locales/ar-AE.js +0 -95
  262. package/build/src/localizations/locales/ar-AE.js.map +0 -1
  263. package/build/src/localizations/locales/ca-AD.js +0 -93
  264. package/build/src/localizations/locales/ca-AD.js.map +0 -1
  265. package/build/src/localizations/locales/ee-EE.js +0 -101
  266. package/build/src/localizations/locales/ee-EE.js.map +0 -1
  267. package/build/src/localizations/locales/en-US.js +0 -145
  268. package/build/src/localizations/locales/en-US.js.map +0 -1
  269. package/build/src/localizations/locales/es-ES.js +0 -138
  270. package/build/src/localizations/locales/es-ES.js.map +0 -1
  271. package/build/src/localizations/locales/fa-IR.js +0 -93
  272. package/build/src/localizations/locales/fa-IR.js.map +0 -1
  273. package/build/src/localizations/locales/fr-FR.js +0 -93
  274. package/build/src/localizations/locales/fr-FR.js.map +0 -1
  275. package/build/src/localizations/locales/ja-JP.js +0 -93
  276. package/build/src/localizations/locales/ja-JP.js.map +0 -1
  277. package/build/src/localizations/locales/pt-BR.js +0 -145
  278. package/build/src/localizations/locales/pt-BR.js.map +0 -1
  279. package/build/src/localizations/locales/ru-RU.js +0 -97
  280. package/build/src/localizations/locales/ru-RU.js.map +0 -1
  281. package/build/src/localizations/locales/tr-TR.js +0 -101
  282. package/build/src/localizations/locales/tr-TR.js.map +0 -1
  283. package/build/src/localizations/locales/vi-VN.js +0 -101
  284. package/build/src/localizations/locales/vi-VN.js.map +0 -1
  285. package/build/src/localizations/locales/zh-CN.js +0 -93
  286. package/build/src/localizations/locales/zh-CN.js.map +0 -1
  287. package/build/src/payment/paymentEffects.js +0 -270
  288. package/build/src/payment/paymentEffects.js.map +0 -1
  289. package/build/src/payment/paymentFsm.js +0 -234
  290. package/build/src/payment/paymentFsm.js.map +0 -1
  291. package/build/src/payment/paymentStore.js +0 -18
  292. package/build/src/payment/paymentStore.js.map +0 -1
  293. package/build/src/payment/paymentUtils.js +0 -10
  294. package/build/src/payment/paymentUtils.js.map +0 -1
  295. package/build/src/provider/DaimoPayProvider.js +0 -300
  296. package/build/src/provider/DaimoPayProvider.js.map +0 -1
  297. package/build/src/provider/PayContext.js +0 -6
  298. package/build/src/provider/PayContext.js.map +0 -1
  299. package/build/src/provider/PaymentProvider.js +0 -35
  300. package/build/src/provider/PaymentProvider.js.map +0 -1
  301. package/build/src/provider/SolanaContextProvider.js +0 -14
  302. package/build/src/provider/SolanaContextProvider.js.map +0 -1
  303. package/build/src/provider/Web3ContextProvider.js +0 -36
  304. package/build/src/provider/Web3ContextProvider.js.map +0 -1
  305. package/build/src/stateStore.js +0 -36
  306. package/build/src/stateStore.js.map +0 -1
  307. package/build/src/styles/defaultTheme.js +0 -80
  308. package/build/src/styles/defaultTheme.js.map +0 -1
  309. package/build/src/styles/index.js +0 -313
  310. package/build/src/styles/index.js.map +0 -1
  311. package/build/src/styles/styled/index.js +0 -6
  312. package/build/src/styles/styled/index.js.map +0 -1
  313. package/build/src/styles/themes/base.js +0 -141
  314. package/build/src/styles/themes/base.js.map +0 -1
  315. package/build/src/styles/themes/index.js +0 -13
  316. package/build/src/styles/themes/index.js.map +0 -1
  317. package/build/src/styles/themes/midnight.js +0 -76
  318. package/build/src/styles/themes/midnight.js.map +0 -1
  319. package/build/src/styles/themes/minimal.js +0 -96
  320. package/build/src/styles/themes/minimal.js.map +0 -1
  321. package/build/src/styles/themes/nouns.js +0 -81
  322. package/build/src/styles/themes/nouns.js.map +0 -1
  323. package/build/src/styles/themes/retro.js +0 -106
  324. package/build/src/styles/themes/retro.js.map +0 -1
  325. package/build/src/styles/themes/rounded.js +0 -106
  326. package/build/src/styles/themes/rounded.js.map +0 -1
  327. package/build/src/styles/themes/soft.js +0 -71
  328. package/build/src/styles/themes/soft.js.map +0 -1
  329. package/build/src/styles/themes/web95.js +0 -132
  330. package/build/src/styles/themes/web95.js.map +0 -1
  331. package/build/src/utils/exports.js +0 -6
  332. package/build/src/utils/exports.js.map +0 -1
  333. package/build/src/utils/format.js +0 -48
  334. package/build/src/utils/format.js.map +0 -1
  335. package/build/src/utils/index.js +0 -42
  336. package/build/src/utils/index.js.map +0 -1
  337. package/build/src/utils/p3.js +0 -15
  338. package/build/src/utils/p3.js.map +0 -1
  339. package/build/src/utils/platform.js +0 -11
  340. package/build/src/utils/platform.js.map +0 -1
  341. package/build/src/utils/polling.js +0 -44
  342. package/build/src/utils/polling.js.map +0 -1
  343. package/build/src/utils/supportUrl.js +0 -16
  344. package/build/src/utils/supportUrl.js.map +0 -1
  345. package/build/src/utils/trpc.js +0 -19
  346. package/build/src/utils/trpc.js.map +0 -1
  347. package/build/src/utils/validateInput.js +0 -16
  348. package/build/src/utils/validateInput.js.map +0 -1
  349. package/build/src/wallets/index.js +0 -21
  350. package/build/src/wallets/index.js.map +0 -1
  351. package/build/src/wallets/useWallets.js +0 -278
  352. package/build/src/wallets/useWallets.js.map +0 -1
  353. package/build/src/wallets/walletConfigs.js +0 -190
  354. package/build/src/wallets/walletConfigs.js.map +0 -1
  355. package/build/src/world-mini-app/WorldPayButton.js +0 -165
  356. package/build/src/world-mini-app/WorldPayButton.js.map +0 -1
  357. package/build/src/world-mini-app/promptWorldPayment.js +0 -59
  358. package/build/src/world-mini-app/promptWorldPayment.js.map +0 -1
  359. package/build/src/world-mini-app/useWithdrawToWorld.js +0 -76
  360. package/build/src/world-mini-app/useWithdrawToWorld.js.map +0 -1
  361. package/build/src/world-mini-app/useWorldSignIn.js +0 -74
  362. package/build/src/world-mini-app/useWorldSignIn.js.map +0 -1
  363. package/build/src/world.js +0 -4
  364. package/build/src/world.js.map +0 -1
  365. package/build/types-26343050.d.ts +0 -65
  366. package/build/world.d.ts +0 -108
@@ -1,196 +0,0 @@
1
- import { jsx } from 'react/jsx-runtime';
2
- import { useEffect, useCallback, useRef } from 'react';
3
- import { usePayContext } from '../../hooks/usePayContext.js';
4
- import { TextContainer } from './styles.js';
5
- import { getOrderSourceChainId, DaimoPayEventType, writeDaimoPayOrderID, getDaimoPayOrderView, getOrderDestChainId, assertNotNull } from '@daimo/pay-common';
6
- import { AnimatePresence } from 'framer-motion';
7
- import { useDaimoPay } from '../../hooks/useDaimoPay.js';
8
- import useLocales from '../../hooks/useLocales.js';
9
- import { ResetContainer } from '../../styles/index.js';
10
- import ThemedButton from '../Common/ThemedButton/index.js';
11
- import { ThemeContainer } from '../Common/ThemedButton/styles.js';
12
-
13
- function DaimoPayButton(props) {
14
- const { theme, mode, customTheme } = props;
15
- const context = usePayContext();
16
- return /* @__PURE__ */ jsx(DaimoPayButtonCustom, { ...props, children: ({ show }) => /* @__PURE__ */ jsx(
17
- ResetContainer,
18
- {
19
- $useTheme: theme ?? context.theme,
20
- $useMode: mode ?? context.mode,
21
- $customTheme: customTheme ?? context.customTheme,
22
- children: /* @__PURE__ */ jsx(ThemeContainer, { onClick: props.disabled ? void 0 : show, children: /* @__PURE__ */ jsx(
23
- ThemedButton,
24
- {
25
- theme: theme ?? context.theme,
26
- mode: mode ?? context.mode,
27
- customTheme: customTheme ?? context.customTheme,
28
- children: /* @__PURE__ */ jsx(DaimoPayButtonInner, {})
29
- }
30
- ) })
31
- }
32
- ) });
33
- }
34
- function DaimoPayButtonCustom(props) {
35
- const context = usePayContext();
36
- let payParams = "appId" in props ? {
37
- appId: props.appId,
38
- toChain: props.toChain,
39
- toAddress: props.toAddress,
40
- toToken: props.toToken,
41
- toUnits: props.toUnits,
42
- toCallData: props.toCallData,
43
- intent: props.intent,
44
- paymentOptions: props.paymentOptions,
45
- preferredChains: props.preferredChains,
46
- preferredTokens: props.preferredTokens,
47
- evmChains: props.evmChains,
48
- externalId: props.externalId,
49
- metadata: props.metadata,
50
- refundAddress: props.refundAddress,
51
- passthroughTokens: props.passthroughTokens
52
- } : null;
53
- let payId = "payId" in props ? props.payId : null;
54
- const { paymentState } = context;
55
- const { order, paymentState: payState } = useDaimoPay();
56
- useEffect(() => {
57
- if (payId != null) {
58
- paymentState.setPayId(payId);
59
- } else if (payParams != null) {
60
- paymentState.setPayParams(payParams);
61
- }
62
- paymentState.setButtonProps(props);
63
- }, [payId, JSON.stringify(payParams || {})]);
64
- const { setConfirmationMessage } = context;
65
- useEffect(() => {
66
- if (props.confirmationMessage) {
67
- setConfirmationMessage(props.confirmationMessage);
68
- }
69
- }, [props.confirmationMessage, setConfirmationMessage]);
70
- const { setRedirectReturnUrl } = context;
71
- useEffect(() => {
72
- if (props.redirectReturnUrl) {
73
- setRedirectReturnUrl(props.redirectReturnUrl);
74
- }
75
- }, [props.redirectReturnUrl, setRedirectReturnUrl]);
76
- const { setOnOpen, setOnClose } = context;
77
- useEffect(() => {
78
- setOnOpen(props.onOpen);
79
- return () => setOnOpen(void 0);
80
- }, [props.onOpen, setOnOpen]);
81
- useEffect(() => {
82
- setOnClose(props.onClose);
83
- return () => setOnClose(void 0);
84
- }, [props.onClose, setOnClose]);
85
- const { onPaymentStarted, onPaymentCompleted, onPaymentBounced } = props;
86
- const { children, closeOnSuccess, resetOnSuccess, connectedWalletOnly } = props;
87
- const show = useCallback(() => {
88
- const modalOptions = {
89
- closeOnSuccess,
90
- resetOnSuccess,
91
- connectedWalletOnly
92
- };
93
- context.showPayment(modalOptions);
94
- }, [connectedWalletOnly, closeOnSuccess, resetOnSuccess, context]);
95
- const hide = useCallback(() => context.setOpen(false), [context]);
96
- const sentStart = useRef(false);
97
- useEffect(() => {
98
- if (sentStart.current) return;
99
- if (payState !== "payment_started") return;
100
- const sourceChainId = getOrderSourceChainId(order);
101
- if (sourceChainId == null) return;
102
- sentStart.current = true;
103
- onPaymentStarted?.({
104
- type: DaimoPayEventType.PaymentStarted,
105
- paymentId: writeDaimoPayOrderID(order.id),
106
- chainId: sourceChainId,
107
- txHash: order.sourceInitiateTxHash,
108
- payment: getDaimoPayOrderView(order)
109
- });
110
- }, [order, payState]);
111
- const sentComplete = useRef(false);
112
- useEffect(() => {
113
- if (sentComplete.current) return;
114
- if (payState !== "payment_completed" && payState !== "payment_bounced")
115
- return;
116
- sentComplete.current = true;
117
- const eventType = payState === "payment_completed" ? DaimoPayEventType.PaymentCompleted : DaimoPayEventType.PaymentBounced;
118
- const passthroughTxHash = order.passedToAddress == null ? void 0 : order.sourceInitiateTxHash;
119
- const event = {
120
- type: eventType,
121
- paymentId: writeDaimoPayOrderID(order.id),
122
- chainId: getOrderDestChainId(order),
123
- txHash: assertNotNull(
124
- order.destFastFinishTxHash ?? order.destClaimTxHash ?? passthroughTxHash,
125
- `[PAY BUTTON] dest tx hash null on order ${order.id} when intent status is ${order.intentStatus}`
126
- ),
127
- payment: getDaimoPayOrderView(order)
128
- };
129
- if (payState === "payment_completed") {
130
- onPaymentCompleted?.(event);
131
- } else if (payState === "payment_bounced") {
132
- onPaymentBounced?.(event);
133
- }
134
- }, [order, payState]);
135
- const hasAutoOpened = useRef(false);
136
- useEffect(() => {
137
- if (!props.defaultOpen || hasAutoOpened.current) return;
138
- if (order == null) return;
139
- show();
140
- hasAutoOpened.current = true;
141
- }, [order, props.defaultOpen, hasAutoOpened.current]);
142
- if (payId == null == (payParams == null)) {
143
- throw new Error("Must specify either payId or appId, not both");
144
- }
145
- return children({ show, hide });
146
- }
147
- DaimoPayButtonCustom.displayName = "DaimoPayButton.Custom";
148
- DaimoPayButton.Custom = DaimoPayButtonCustom;
149
- const contentVariants = {
150
- initial: {
151
- zIndex: 2,
152
- opacity: 0,
153
- x: "-100%"
154
- },
155
- animate: {
156
- opacity: 1,
157
- x: 0.1,
158
- transition: {
159
- duration: 0.4,
160
- ease: [0.25, 1, 0.5, 1]
161
- }
162
- },
163
- exit: {
164
- zIndex: 1,
165
- opacity: 0,
166
- x: "-100%",
167
- pointerEvents: "none",
168
- position: "absolute",
169
- transition: {
170
- duration: 0.4,
171
- ease: [0.25, 1, 0.5, 1]
172
- }
173
- }
174
- };
175
- function DaimoPayButtonInner() {
176
- const { order } = useDaimoPay();
177
- const locales = useLocales();
178
- const defaultLabel = locales.payButton_defaultLabel;
179
- const label = order?.metadata?.intent ?? defaultLabel;
180
- return /* @__PURE__ */ jsx(AnimatePresence, { initial: false, children: /* @__PURE__ */ jsx(
181
- TextContainer,
182
- {
183
- initial: "initial",
184
- animate: "animate",
185
- exit: "exit",
186
- variants: contentVariants,
187
- style: {
188
- height: 40
189
- },
190
- children: label
191
- }
192
- ) });
193
- }
194
-
195
- export { DaimoPayButton, DaimoPayButtonInner };
196
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/components/DaimoPayButton/index.tsx"],"sourcesContent":["import { ReactElement, useCallback, useEffect, useRef } from \"react\";\n\nimport { usePayContext } from \"../../hooks/usePayContext\";\nimport { TextContainer } from \"./styles\";\n\nimport {\n assertNotNull,\n DaimoPayEventType,\n DaimoPayOrderView,\n DaimoPayUserMetadata,\n ExternalPaymentOptionsString,\n getDaimoPayOrderView,\n getOrderDestChainId,\n getOrderSourceChainId,\n PaymentBouncedEvent,\n PaymentCompletedEvent,\n PaymentStartedEvent,\n writeDaimoPayOrderID,\n} from \"@daimo/pay-common\";\nimport { AnimatePresence, Variants } from \"framer-motion\";\nimport { Address, Hex } from \"viem\";\nimport { useDaimoPay } from \"../../hooks/useDaimoPay\";\nimport useLocales from \"../../hooks/useLocales\";\nimport { PayParams } from \"../../payment/paymentFsm\";\nimport { ResetContainer } from \"../../styles\";\nimport { CustomTheme, Mode, Theme } from \"../../types\";\nimport ThemedButton, { ThemeContainer } from \"../Common/ThemedButton\";\n\n/** Payment details and status. */\nexport type DaimoPayment = DaimoPayOrderView;\n\n/** Props for DaimoPayButton. */\nexport type PayButtonPaymentProps =\n | {\n /**\n * Your public app ID. Specify either (payId) or (appId + parameters).\n */\n appId: string;\n /**\n * Destination chain ID.\n */\n toChain: number;\n /**\n * The destination token to send, completing payment. Must be an ERC-20\n * token or the zero address, indicating the native token / ETH.\n */\n toToken: Address;\n /**\n * The amount of destination token to send (transfer or approve).\n * If not provided, the user will be prompted to enter an amount.\n */\n toUnits?: string;\n /**\n * The destination address to transfer to, or contract to call.\n */\n toAddress: Address;\n /**\n * Optional calldata to call an arbitrary function on `toAddress`.\n */\n toCallData?: Hex;\n /**\n * The intent verb, such as \"Pay\", \"Deposit\", or \"Purchase\".\n */\n intent?: string;\n /**\n * Payment options. By default, all are enabled.\n * Supports nested arrays for mobile wallet filtering, e.g. [[\"MiniPay\", \"Metamask\"], \"AllExchanges\"]\n */\n paymentOptions?: (\n | ExternalPaymentOptionsString\n | ExternalPaymentOptionsString[]\n )[];\n /**\n * Preferred chain IDs. Assets on these chains will appear first.\n */\n preferredChains?: number[];\n /**\n * Preferred tokens. These appear first in the token list.\n */\n preferredTokens?: { chain: number; address: Address }[];\n /**\n * Only allow payments on these EVM chains.\n */\n evmChains?: number[];\n /**\n * External ID. E.g. a correlation ID.\n */\n externalId?: string;\n /**\n * Developer metadata. E.g. correlation ID.\n * */\n metadata?: DaimoPayUserMetadata;\n /**\n * The address to refund to if the payment bounces.\n */\n refundAddress?: Address;\n /**\n * Pass-through tokens. If the user pays via a pass-through\n * token, it is sent directly to `toAddress` with no swapping or bridging.\n */\n passthroughTokens?: PassthroughToken[];\n /** Wallet connector id to force to the top of the list. */\n prioritizedWalletId?: string;\n }\n | {\n /** The payment ID, generated via the Daimo Pay API. Replaces params above. */\n payId: string;\n /** Payment options. By default, all are enabled. */\n paymentOptions?: (\n | ExternalPaymentOptionsString\n | ExternalPaymentOptionsString[]\n )[];\n /** Wallet connector id to force to the top of the list. */\n prioritizedWalletId?: string;\n };\n\n/**\n * Represents a pass-through token. If the user pays via a pass-through\n * token, it is sent directly to `toAddress` with no swapping or bridging.\n */\ntype PassthroughToken = {\n chain: number;\n address: Address;\n};\n\ntype PayButtonCommonProps = PayButtonPaymentProps & {\n /** Called when user sends payment and transaction is seen on chain */\n onPaymentStarted?: (event: PaymentStartedEvent) => void;\n /** Called when destination transfer or call completes successfully */\n onPaymentCompleted?: (event: PaymentCompletedEvent) => void;\n /** Called when destination call reverts and funds are refunded */\n onPaymentBounced?: (event: PaymentBouncedEvent) => void;\n /** Called when the modal is opened. */\n onOpen?: () => void;\n /** Called when the modal is closed. */\n onClose?: () => void;\n /** Open the modal by default. */\n defaultOpen?: boolean;\n /** Automatically close the modal after a successful payment. */\n closeOnSuccess?: boolean;\n /** Reset the payment after a successful payment. */\n resetOnSuccess?: boolean;\n /** Go directly to tokens in already-connected Ethereum and Solana wallet(s).\n * Don't let the user pick any other payment method. Used in embedded flows.*/\n connectedWalletOnly?: boolean;\n /** Custom message to display on confirmation page. */\n confirmationMessage?: string;\n /** Redirect URL to return to the app. E.g. after Coinbase, Binance, RampNetwork. */\n redirectReturnUrl?: string;\n /** Wallet connector id to force to the top of the list. */\n prioritizedWalletId?: string;\n};\n\nexport type DaimoPayButtonProps = PayButtonCommonProps & {\n /** Light mode, dark mode, or auto. */\n mode?: Mode;\n /** Named theme. See docs for options. */\n theme?: Theme;\n /** Custom theme. See docs for options. */\n customTheme?: CustomTheme;\n /** Disable interaction. */\n disabled?: boolean;\n};\n\nexport type DaimoPayButtonCustomProps = PayButtonCommonProps & {\n /** Custom renderer */\n children: (renderProps: {\n show: () => void;\n hide: () => void;\n }) => ReactElement;\n};\n\n/**\n * A button that shows the Daimo Pay checkout. Replaces the traditional\n * Connect Wallet » approve » execute sequence with a single action.\n */\nexport function DaimoPayButton(props: DaimoPayButtonProps): JSX.Element {\n const { theme, mode, customTheme } = props;\n const context = usePayContext();\n\n return (\n <DaimoPayButtonCustom {...props}>\n {({ show }) => (\n <ResetContainer\n $useTheme={theme ?? context.theme}\n $useMode={mode ?? context.mode}\n $customTheme={customTheme ?? context.customTheme}\n >\n <ThemeContainer onClick={props.disabled ? undefined : show}>\n <ThemedButton\n theme={theme ?? context.theme}\n mode={mode ?? context.mode}\n customTheme={customTheme ?? context.customTheme}\n >\n <DaimoPayButtonInner />\n </ThemedButton>\n </ThemeContainer>\n </ResetContainer>\n )}\n </DaimoPayButtonCustom>\n );\n}\n\n/** Like DaimoPayButton, but with custom styling. */\nfunction DaimoPayButtonCustom(props: DaimoPayButtonCustomProps): JSX.Element {\n const context = usePayContext();\n\n // Pre-load payment info in background.\n // Reload when any of the info changes.\n let payParams: PayParams | null =\n \"appId\" in props\n ? {\n appId: props.appId,\n toChain: props.toChain,\n toAddress: props.toAddress,\n toToken: props.toToken,\n toUnits: props.toUnits,\n toCallData: props.toCallData,\n intent: props.intent,\n paymentOptions: props.paymentOptions,\n preferredChains: props.preferredChains,\n preferredTokens: props.preferredTokens,\n evmChains: props.evmChains,\n externalId: props.externalId,\n metadata: props.metadata,\n refundAddress: props.refundAddress,\n passthroughTokens: props.passthroughTokens,\n }\n : null;\n let payId = \"payId\" in props ? props.payId : null;\n\n const { paymentState } = context;\n const { order, paymentState: payState } = useDaimoPay();\n\n // Set the payId or payParams\n useEffect(() => {\n if (payId != null) {\n paymentState.setPayId(payId);\n } else if (payParams != null) {\n paymentState.setPayParams(payParams);\n }\n paymentState.setButtonProps(props);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [payId, JSON.stringify(payParams || {})]);\n\n // Set the confirmation message\n const { setConfirmationMessage } = context;\n useEffect(() => {\n if (props.confirmationMessage) {\n setConfirmationMessage(props.confirmationMessage);\n }\n }, [props.confirmationMessage, setConfirmationMessage]);\n\n // Set the redirect return url\n const { setRedirectReturnUrl } = context;\n useEffect(() => {\n if (props.redirectReturnUrl) {\n setRedirectReturnUrl(props.redirectReturnUrl);\n }\n }, [props.redirectReturnUrl, setRedirectReturnUrl]);\n\n // Set the onOpen and onClose callbacks\n const { setOnOpen, setOnClose } = context;\n useEffect(() => {\n setOnOpen(props.onOpen);\n return () => setOnOpen(undefined);\n }, [props.onOpen, setOnOpen]);\n\n useEffect(() => {\n setOnClose(props.onClose);\n return () => setOnClose(undefined);\n }, [props.onClose, setOnClose]);\n\n // Payment events: call these three event handlers.\n const { onPaymentStarted, onPaymentCompleted, onPaymentBounced } = props;\n\n // Functions to show and hide the modal\n const { children, closeOnSuccess, resetOnSuccess, connectedWalletOnly } =\n props;\n const show = useCallback(() => {\n const modalOptions = {\n closeOnSuccess,\n resetOnSuccess,\n connectedWalletOnly,\n };\n context.showPayment(modalOptions);\n }, [connectedWalletOnly, closeOnSuccess, resetOnSuccess, context]);\n const hide = useCallback(() => context.setOpen(false), [context]);\n\n // Emit onPaymentStart handler when payment state changes to payment_started\n const sentStart = useRef(false);\n useEffect(() => {\n if (sentStart.current) return;\n if (payState !== \"payment_started\") return;\n\n // TODO: Populate source payment details immediately when the user pays.\n // Use this hack because source chain id is not immediately populated when\n // payment_started\n const sourceChainId = getOrderSourceChainId(order);\n if (sourceChainId == null) return;\n\n sentStart.current = true;\n onPaymentStarted?.({\n type: DaimoPayEventType.PaymentStarted,\n paymentId: writeDaimoPayOrderID(order.id),\n chainId: sourceChainId,\n txHash: order.sourceInitiateTxHash,\n payment: getDaimoPayOrderView(order),\n });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [order, payState]);\n\n // Emit onPaymentComplete or onPaymentBounced handler when payment state\n // changes to payment_completed or payment_bounced\n const sentComplete = useRef(false);\n useEffect(() => {\n if (sentComplete.current) return;\n if (payState !== \"payment_completed\" && payState !== \"payment_bounced\")\n return;\n\n sentComplete.current = true;\n const eventType =\n payState === \"payment_completed\"\n ? DaimoPayEventType.PaymentCompleted\n : DaimoPayEventType.PaymentBounced;\n const passthroughTxHash =\n order.passedToAddress == null ? undefined : order.sourceInitiateTxHash;\n const event = {\n type: eventType,\n paymentId: writeDaimoPayOrderID(order.id),\n chainId: getOrderDestChainId(order),\n txHash: assertNotNull(\n order.destFastFinishTxHash ??\n order.destClaimTxHash ??\n passthroughTxHash,\n `[PAY BUTTON] dest tx hash null on order ${order.id} when intent status is ${order.intentStatus}`,\n ),\n payment: getDaimoPayOrderView(order),\n };\n\n if (payState === \"payment_completed\") {\n onPaymentCompleted?.(event as PaymentCompletedEvent);\n } else if (payState === \"payment_bounced\") {\n onPaymentBounced?.(event as PaymentBouncedEvent);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [order, payState]);\n\n // Open the modal by default if the defaultOpen prop is true\n const hasAutoOpened = useRef(false);\n useEffect(() => {\n if (!props.defaultOpen || hasAutoOpened.current) return;\n if (order == null) return;\n show();\n hasAutoOpened.current = true;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [order, props.defaultOpen, hasAutoOpened.current]);\n\n // Validation\n if ((payId == null) == (payParams == null)) {\n throw new Error(\"Must specify either payId or appId, not both\");\n }\n\n return children({ show, hide });\n}\n\nDaimoPayButtonCustom.displayName = \"DaimoPayButton.Custom\";\n\nDaimoPayButton.Custom = DaimoPayButtonCustom;\n\nconst contentVariants: Variants = {\n initial: {\n zIndex: 2,\n opacity: 0,\n x: \"-100%\",\n },\n animate: {\n opacity: 1,\n x: 0.1,\n transition: {\n duration: 0.4,\n ease: [0.25, 1, 0.5, 1],\n },\n },\n exit: {\n zIndex: 1,\n opacity: 0,\n x: \"-100%\",\n pointerEvents: \"none\",\n position: \"absolute\",\n transition: {\n duration: 0.4,\n ease: [0.25, 1, 0.5, 1],\n },\n },\n};\n\nexport function DaimoPayButtonInner() {\n const { order } = useDaimoPay();\n const locales = useLocales();\n const defaultLabel = locales.payButton_defaultLabel;\n const label = order?.metadata?.intent ?? defaultLabel;\n\n return (\n <AnimatePresence initial={false}>\n <TextContainer\n initial={\"initial\"}\n animate={\"animate\"}\n exit={\"exit\"}\n variants={contentVariants}\n style={{\n height: 40,\n }}\n >\n {label}\n </TextContainer>\n </AnimatePresence>\n );\n}\n"],"names":[],"mappings":"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"}
@@ -1,50 +0,0 @@
1
- import { motion } from 'framer-motion';
2
- import styled from '../../styles/styled/index.js';
3
-
4
- const TextContainer = styled(motion.div)`
5
- top: 0;
6
- bottom: 0;
7
- left: 0;
8
- display: inline-flex;
9
- align-items: center;
10
- justify-content: center;
11
- white-space: nowrap;
12
- `;
13
- styled(motion.div)`
14
- position: relative;
15
- width: 24px;
16
- height: 24px;
17
- border-radius: 12px;
18
- overflow: hidden;
19
- svg {
20
- display: block;
21
- }
22
- `;
23
- styled(motion.div)`
24
- pointer-events: none;
25
- user-select: none;
26
- position: relative;
27
- width: 24px;
28
- height: 24px;
29
- margin-right: 8px;
30
- `;
31
- styled(motion.div)`
32
- z-index: 1;
33
- position: absolute;
34
- inset: 0;
35
- display: flex;
36
- align-items: center;
37
- justify-content: center;
38
- border-radius: 100%;
39
- box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.02);
40
- background: var(--ck-body-color-danger, red);
41
- color: #fff;
42
- svg {
43
- display: block;
44
- position: relative;
45
- top: -1px;
46
- }
47
- `;
48
-
49
- export { TextContainer };
50
- //# sourceMappingURL=styles.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"styles.js","sources":["../../../../src/components/DaimoPayButton/styles.ts"],"sourcesContent":["import { motion } from \"framer-motion\";\nimport styled from \"./../../styles/styled\";\n\nexport const TextContainer = styled(motion.div)`\n top: 0;\n bottom: 0;\n left: 0;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n white-space: nowrap;\n`;\n\nexport const ChainContainer = styled(motion.div)`\n position: relative;\n width: 24px;\n height: 24px;\n border-radius: 12px;\n overflow: hidden;\n svg {\n display: block;\n }\n`;\nexport const IconContainer = styled(motion.div)`\n pointer-events: none;\n user-select: none;\n position: relative;\n width: 24px;\n height: 24px;\n margin-right: 8px;\n`;\n\nexport const UnsupportedNetworkContainer = styled(motion.div)`\n z-index: 1;\n position: absolute;\n inset: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 100%;\n box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.02);\n background: var(--ck-body-color-danger, red);\n color: #fff;\n svg {\n display: block;\n position: relative;\n top: -1px;\n }\n`;\n"],"names":[],"mappings":";;;AAGa,MAAA,aAAA,GAAgB,MAAO,CAAA,MAAA,CAAO,GAAG,CAAA,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAAA;AAUhB,MAAO,CAAA,MAAA,CAAO,GAAG,CAAA,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAAA;AAUlB,MAAO,CAAA,MAAA,CAAO,GAAG,CAAA,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAAA;AASH,MAAO,CAAA,MAAA,CAAO,GAAG,CAAA,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;"}
@@ -1,70 +0,0 @@
1
- import { jsx, jsxs } from 'react/jsx-runtime';
2
- import { AnimatePresence, motion } from 'framer-motion';
3
- import { useState, useEffect } from 'react';
4
- import { usePayContext } from '../../hooks/usePayContext.js';
5
- import { useWallet } from '../../wallets/useWallets.js';
6
- import ConnectWithInjector from './ConnectWithInjector/index.js';
7
- import ConnectWithQRCode from './ConnectWithQRCode.js';
8
- import Alert from '../Common/Alert/index.js';
9
- import { contentVariants } from '../Common/Modal/index.js';
10
-
11
- const states = {
12
- QRCODE: "qrcode",
13
- INJECTOR: "injector"
14
- };
15
- const ConnectUsing = () => {
16
- const context = usePayContext();
17
- const { pendingConnectorId, paymentState } = context;
18
- const walletFromConnectors = useWallet(pendingConnectorId ?? "");
19
- const wallet = walletFromConnectors || paymentState.selectedWallet;
20
- const connector = wallet?.connector;
21
- const [status, setStatus] = useState(
22
- connector == null ? states.QRCODE : states.INJECTOR
23
- );
24
- useEffect(() => {
25
- const checkProvider = async () => {
26
- if (!wallet || connector == null) return;
27
- const provider = await connector.getProvider?.();
28
- if (!provider) {
29
- setStatus(states.QRCODE);
30
- setTimeout(context.triggerResize, 10);
31
- }
32
- };
33
- if (status === states.INJECTOR) checkProvider();
34
- }, []);
35
- if (!wallet) return /* @__PURE__ */ jsx(Alert, { children: "Connector not found" });
36
- return /* @__PURE__ */ jsxs(AnimatePresence, { children: [
37
- status === states.QRCODE && /* @__PURE__ */ jsx(
38
- motion.div,
39
- {
40
- initial: "initial",
41
- animate: "animate",
42
- exit: "exit",
43
- variants: contentVariants,
44
- children: /* @__PURE__ */ jsx(ConnectWithQRCode, {})
45
- },
46
- states.QRCODE
47
- ),
48
- status === states.INJECTOR && /* @__PURE__ */ jsx(
49
- motion.div,
50
- {
51
- initial: "initial",
52
- animate: "animate",
53
- exit: "exit",
54
- variants: contentVariants,
55
- children: /* @__PURE__ */ jsx(
56
- ConnectWithInjector,
57
- {
58
- switchConnectMethod: () => {
59
- setStatus(states.QRCODE);
60
- }
61
- }
62
- )
63
- },
64
- states.INJECTOR
65
- )
66
- ] });
67
- };
68
-
69
- export { ConnectUsing as default };
70
- //# sourceMappingURL=ConnectUsing.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ConnectUsing.js","sources":["../../../../src/components/DaimoPayModal/ConnectUsing.tsx"],"sourcesContent":["import { AnimatePresence, motion } from \"framer-motion\";\nimport { useEffect, useState } from \"react\";\n\nimport { usePayContext } from \"../../hooks/usePayContext\";\nimport { useWallet } from \"../../wallets/useWallets\";\n\nimport ConnectWithInjector from \"./ConnectWithInjector\";\nimport ConnectWithQRCode from \"./ConnectWithQRCode\";\n\nimport Alert from \"../Common/Alert\";\nimport { contentVariants } from \"../Common/Modal\";\n\nconst states = {\n QRCODE: \"qrcode\",\n INJECTOR: \"injector\",\n};\n\nconst ConnectUsing = () => {\n const context = usePayContext();\n const { pendingConnectorId, paymentState } = context;\n\n const walletFromConnectors = useWallet(pendingConnectorId ?? \"\");\n // Fall back to selectedWallet for wallets from walletConfigs (e.g. unique payment options)\n const wallet = walletFromConnectors || paymentState.selectedWallet;\n\n // Wallets from walletConfigs don't have connector/isInstalled, always show QR\n const connector = wallet?.connector;\n\n // If it doesn't have a connector, show QR code\n const [status, setStatus] = useState(\n connector == null ? states.QRCODE : states.INJECTOR,\n );\n\n useEffect(() => {\n // if no provider, change to qrcode\n const checkProvider = async () => {\n if (!wallet || connector == null) return;\n const provider = await connector.getProvider?.();\n if (!provider) {\n setStatus(states.QRCODE);\n setTimeout(context.triggerResize, 10); // delay required here for modal to resize\n }\n };\n if (status === states.INJECTOR) checkProvider();\n }, []); // eslint-disable-line react-hooks/exhaustive-deps\n\n if (!wallet) return <Alert>Connector not found</Alert>;\n\n return (\n <AnimatePresence>\n {status === states.QRCODE && (\n <motion.div\n key={states.QRCODE}\n initial={\"initial\"}\n animate={\"animate\"}\n exit={\"exit\"}\n variants={contentVariants}\n >\n <ConnectWithQRCode />\n </motion.div>\n )}\n {status === states.INJECTOR && (\n <motion.div\n key={states.INJECTOR}\n initial={\"initial\"}\n animate={\"animate\"}\n exit={\"exit\"}\n variants={contentVariants}\n >\n <ConnectWithInjector\n switchConnectMethod={() => {\n setStatus(states.QRCODE);\n }}\n />\n </motion.div>\n )}\n </AnimatePresence>\n );\n};\n\nexport default ConnectUsing;\n"],"names":[],"mappings":";;;;;;;;;;AAYA,MAAM,MAAS,GAAA;AAAA,EACb,MAAQ,EAAA,QAAA;AAAA,EACR,QAAU,EAAA,UAAA;AACZ,CAAA,CAAA;AAEA,MAAM,eAAe,MAAM;AACzB,EAAA,MAAM,UAAU,aAAc,EAAA,CAAA;AAC9B,EAAM,MAAA,EAAE,kBAAoB,EAAA,YAAA,EAAiB,GAAA,OAAA,CAAA;AAE7C,EAAM,MAAA,oBAAA,GAAuB,SAAU,CAAA,kBAAA,IAAsB,EAAE,CAAA,CAAA;AAE/D,EAAM,MAAA,MAAA,GAAS,wBAAwB,YAAa,CAAA,cAAA,CAAA;AAGpD,EAAA,MAAM,YAAY,MAAQ,EAAA,SAAA,CAAA;AAG1B,EAAM,MAAA,CAAC,MAAQ,EAAA,SAAS,CAAI,GAAA,QAAA;AAAA,IAC1B,SAAa,IAAA,IAAA,GAAO,MAAO,CAAA,MAAA,GAAS,MAAO,CAAA,QAAA;AAAA,GAC7C,CAAA;AAEA,EAAA,SAAA,CAAU,MAAM;AAEd,IAAA,MAAM,gBAAgB,YAAY;AAChC,MAAI,IAAA,CAAC,MAAU,IAAA,SAAA,IAAa,IAAM,EAAA,OAAA;AAClC,MAAM,MAAA,QAAA,GAAW,MAAM,SAAA,CAAU,WAAc,IAAA,CAAA;AAC/C,MAAA,IAAI,CAAC,QAAU,EAAA;AACb,QAAA,SAAA,CAAU,OAAO,MAAM,CAAA,CAAA;AACvB,QAAW,UAAA,CAAA,OAAA,CAAQ,eAAe,EAAE,CAAA,CAAA;AAAA,OACtC;AAAA,KACF,CAAA;AACA,IAAI,IAAA,MAAA,KAAW,MAAO,CAAA,QAAA,EAAwB,aAAA,EAAA,CAAA;AAAA,GAChD,EAAG,EAAE,CAAA,CAAA;AAEL,EAAA,IAAI,CAAC,MAAA,EAAe,uBAAA,GAAA,CAAC,SAAM,QAAmB,EAAA,qBAAA,EAAA,CAAA,CAAA;AAE9C,EAAA,4BACG,eACE,EAAA,EAAA,QAAA,EAAA;AAAA,IAAA,MAAA,KAAW,OAAO,MACjB,oBAAA,GAAA;AAAA,MAAC,MAAO,CAAA,GAAA;AAAA,MAAP;AAAA,QAEC,OAAS,EAAA,SAAA;AAAA,QACT,OAAS,EAAA,SAAA;AAAA,QACT,IAAM,EAAA,MAAA;AAAA,QACN,QAAU,EAAA,eAAA;AAAA,QAEV,8BAAC,iBAAkB,EAAA,EAAA,CAAA;AAAA,OAAA;AAAA,MANd,MAAO,CAAA,MAAA;AAAA,KAOd;AAAA,IAED,MAAA,KAAW,OAAO,QACjB,oBAAA,GAAA;AAAA,MAAC,MAAO,CAAA,GAAA;AAAA,MAAP;AAAA,QAEC,OAAS,EAAA,SAAA;AAAA,QACT,OAAS,EAAA,SAAA;AAAA,QACT,IAAM,EAAA,MAAA;AAAA,QACN,QAAU,EAAA,eAAA;AAAA,QAEV,QAAA,kBAAA,GAAA;AAAA,UAAC,mBAAA;AAAA,UAAA;AAAA,YACC,qBAAqB,MAAM;AACzB,cAAA,SAAA,CAAU,OAAO,MAAM,CAAA,CAAA;AAAA,aACzB;AAAA,WAAA;AAAA,SACF;AAAA,OAAA;AAAA,MAVK,MAAO,CAAA,QAAA;AAAA,KAWd;AAAA,GAEJ,EAAA,CAAA,CAAA;AAEJ;;;;"}