@daimo/pay 1.6.2 → 1.6.3

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 (520) hide show
  1. package/build/index.d.ts +250 -249
  2. package/build/index.js +12039 -0
  3. package/build/index.js.map +1 -0
  4. package/package.json +5 -4
  5. package/build/package.json.js +0 -101
  6. package/build/package.json.js.map +0 -1
  7. package/build/pay/packages/connectkit/src/assets/ScanIconWithLogos.d.ts +0 -5
  8. package/build/pay/packages/connectkit/src/assets/browsers.d.ts +0 -10
  9. package/build/pay/packages/connectkit/src/assets/chains.d.ts +0 -28
  10. package/build/pay/packages/connectkit/src/assets/coins.d.ts +0 -2
  11. package/build/pay/packages/connectkit/src/assets/crepe.d.ts +0 -4
  12. package/build/pay/packages/connectkit/src/assets/icons.d.ts +0 -36
  13. package/build/pay/packages/connectkit/src/assets/logos.d.ts +0 -205
  14. package/build/pay/packages/connectkit/src/assets/wallet.d.ts +0 -4
  15. package/build/pay/packages/connectkit/src/assets/wave.d.ts +0 -2
  16. package/build/pay/packages/connectkit/src/components/Common/Alert/index.d.ts +0 -6
  17. package/build/pay/packages/connectkit/src/components/Common/Alert/styles.d.ts +0 -2
  18. package/build/pay/packages/connectkit/src/components/Common/Alert/types.d.ts +0 -5
  19. package/build/pay/packages/connectkit/src/components/Common/AmountInput/AmountInputField.d.ts +0 -8
  20. package/build/pay/packages/connectkit/src/components/Common/AmountInput/index.d.ts +0 -9
  21. package/build/pay/packages/connectkit/src/components/Common/Avatar/index.d.ts +0 -17
  22. package/build/pay/packages/connectkit/src/components/Common/Avatar/styles.d.ts +0 -2
  23. package/build/pay/packages/connectkit/src/components/Common/BrowserIcon/index.d.ts +0 -4
  24. package/build/pay/packages/connectkit/src/components/Common/BrowserIcon/styles.d.ts +0 -1
  25. package/build/pay/packages/connectkit/src/components/Common/BrowserIcon/types.d.ts +0 -3
  26. package/build/pay/packages/connectkit/src/components/Common/Button/index.d.ts +0 -4
  27. package/build/pay/packages/connectkit/src/components/Common/Button/styles.d.ts +0 -10
  28. package/build/pay/packages/connectkit/src/components/Common/Button/types.d.ts +0 -15
  29. package/build/pay/packages/connectkit/src/components/Common/Chain/index.d.ts +0 -9
  30. package/build/pay/packages/connectkit/src/components/Common/Chain/styles.d.ts +0 -4
  31. package/build/pay/packages/connectkit/src/components/Common/ChainSelect/index.d.ts +0 -3
  32. package/build/pay/packages/connectkit/src/components/Common/ChainSelectDropdown/index.d.ts +0 -9
  33. package/build/pay/packages/connectkit/src/components/Common/ChainSelectDropdown/styles.d.ts +0 -4
  34. package/build/pay/packages/connectkit/src/components/Common/ChainSelectList/index.d.ts +0 -4
  35. package/build/pay/packages/connectkit/src/components/Common/ChainSelectList/styles.d.ts +0 -9
  36. package/build/pay/packages/connectkit/src/components/Common/ConnectorList/index.d.ts +0 -2
  37. package/build/pay/packages/connectkit/src/components/Common/ConnectorList/styles.d.ts +0 -5
  38. package/build/pay/packages/connectkit/src/components/Common/CopyToClipboard/CopyToClipboardIcon.d.ts +0 -6
  39. package/build/pay/packages/connectkit/src/components/Common/CopyToClipboard/index.d.ts +0 -7
  40. package/build/pay/packages/connectkit/src/components/Common/CustomQRCode/QRCode.d.ts +0 -12
  41. package/build/pay/packages/connectkit/src/components/Common/CustomQRCode/index.d.ts +0 -6
  42. package/build/pay/packages/connectkit/src/components/Common/CustomQRCode/styles.d.ts +0 -6
  43. package/build/pay/packages/connectkit/src/components/Common/CustomQRCode/types.d.ts +0 -8
  44. package/build/pay/packages/connectkit/src/components/Common/DynamicContainer/index.d.ts +0 -7
  45. package/build/pay/packages/connectkit/src/components/Common/FitText/index.d.ts +0 -8
  46. package/build/pay/packages/connectkit/src/components/Common/LazyImage/index.d.ts +0 -8
  47. package/build/pay/packages/connectkit/src/components/Common/Logo/index.d.ts +0 -8
  48. package/build/pay/packages/connectkit/src/components/Common/Logo/styles.d.ts +0 -3
  49. package/build/pay/packages/connectkit/src/components/Common/Modal/index.d.ts +0 -25
  50. package/build/pay/packages/connectkit/src/components/Common/Modal/styles.d.ts +0 -24
  51. package/build/pay/packages/connectkit/src/components/Common/OptionsList/index.d.ts +0 -14
  52. package/build/pay/packages/connectkit/src/components/Common/OptionsList/styles.d.ts +0 -6
  53. package/build/pay/packages/connectkit/src/components/Common/OrderHeader/index.d.ts +0 -4
  54. package/build/pay/packages/connectkit/src/components/Common/PaymentBreakdown/index.d.ts +0 -6
  55. package/build/pay/packages/connectkit/src/components/Common/Portal/index.d.ts +0 -2
  56. package/build/pay/packages/connectkit/src/components/Common/PoweredByFooter/index.d.ts +0 -4
  57. package/build/pay/packages/connectkit/src/components/Common/ScrollArea/index.d.ts +0 -7
  58. package/build/pay/packages/connectkit/src/components/Common/ScrollArea/styles.d.ts +0 -3
  59. package/build/pay/packages/connectkit/src/components/Common/Spinner/index.d.ts +0 -1
  60. package/build/pay/packages/connectkit/src/components/Common/Spinner/styles.d.ts +0 -1
  61. package/build/pay/packages/connectkit/src/components/Common/SwitchButton/index.d.ts +0 -6
  62. package/build/pay/packages/connectkit/src/components/Common/ThemedButton/index.d.ts +0 -15
  63. package/build/pay/packages/connectkit/src/components/Common/ThemedButton/styles.d.ts +0 -2
  64. package/build/pay/packages/connectkit/src/components/Common/TokenChainLogo/index.d.ts +0 -5
  65. package/build/pay/packages/connectkit/src/components/Common/Tooltip/index.d.ts +0 -4
  66. package/build/pay/packages/connectkit/src/components/Common/Tooltip/styles.d.ts +0 -3
  67. package/build/pay/packages/connectkit/src/components/Common/Tooltip/types.d.ts +0 -9
  68. package/build/pay/packages/connectkit/src/components/Common/WalletChainLogo/index.d.ts +0 -6
  69. package/build/pay/packages/connectkit/src/components/DaimoPay.d.ts +0 -104
  70. package/build/pay/packages/connectkit/src/components/DaimoPayButton/index.d.ts +0 -153
  71. package/build/pay/packages/connectkit/src/components/DaimoPayButton/styles.d.ts +0 -4
  72. package/build/pay/packages/connectkit/src/components/DaimoPayModal/ConnectUsing.d.ts +0 -2
  73. package/build/pay/packages/connectkit/src/components/DaimoPayModal/ConnectWithInjector/index.d.ts +0 -15
  74. package/build/pay/packages/connectkit/src/components/DaimoPayModal/ConnectWithInjector/styles.d.ts +0 -6
  75. package/build/pay/packages/connectkit/src/components/DaimoPayModal/ConnectWithQRCode.d.ts +0 -5
  76. package/build/pay/packages/connectkit/src/components/DaimoPayModal/index.d.ts +0 -7
  77. package/build/pay/packages/connectkit/src/components/DaimoPayThemeProvider/DaimoPayThemeProvider.d.ts +0 -16
  78. package/build/pay/packages/connectkit/src/components/NetworkButton/index.d.ts +0 -8
  79. package/build/pay/packages/connectkit/src/components/Pages/About/graphics.d.ts +0 -11
  80. package/build/pay/packages/connectkit/src/components/Pages/About/index.d.ts +0 -3
  81. package/build/pay/packages/connectkit/src/components/Pages/About/styles.d.ts +0 -8
  82. package/build/pay/packages/connectkit/src/components/Pages/Confirmation/index.d.ts +0 -3
  83. package/build/pay/packages/connectkit/src/components/Pages/Connectors/index.d.ts +0 -3
  84. package/build/pay/packages/connectkit/src/components/Pages/Connectors/styles.d.ts +0 -9
  85. package/build/pay/packages/connectkit/src/components/Pages/DownloadApp/index.d.ts +0 -2
  86. package/build/pay/packages/connectkit/src/components/Pages/MobileConnectors/index.d.ts +0 -3
  87. package/build/pay/packages/connectkit/src/components/Pages/MobileConnectors/styles.d.ts +0 -5
  88. package/build/pay/packages/connectkit/src/components/Pages/Onboarding/index.d.ts +0 -3
  89. package/build/pay/packages/connectkit/src/components/Pages/Onboarding/styles.d.ts +0 -9
  90. package/build/pay/packages/connectkit/src/components/Pages/PayWithToken/index.d.ts +0 -3
  91. package/build/pay/packages/connectkit/src/components/Pages/SelectAmount/index.d.ts +0 -3
  92. package/build/pay/packages/connectkit/src/components/Pages/SelectDepositAddressAmount/index.d.ts +0 -3
  93. package/build/pay/packages/connectkit/src/components/Pages/SelectDepositAddressChain/index.d.ts +0 -3
  94. package/build/pay/packages/connectkit/src/components/Pages/SelectExternalAmount/index.d.ts +0 -3
  95. package/build/pay/packages/connectkit/src/components/Pages/SelectMethod/index.d.ts +0 -3
  96. package/build/pay/packages/connectkit/src/components/Pages/SelectMethod/styles.d.ts +0 -9
  97. package/build/pay/packages/connectkit/src/components/Pages/SelectToken/index.d.ts +0 -3
  98. package/build/pay/packages/connectkit/src/components/Pages/Solana/ConnectSolana/index.d.ts +0 -3
  99. package/build/pay/packages/connectkit/src/components/Pages/Solana/ConnectorSolana/index.d.ts +0 -4
  100. package/build/pay/packages/connectkit/src/components/Pages/Solana/PayWithSolanaToken/index.d.ts +0 -3
  101. package/build/pay/packages/connectkit/src/components/Pages/Solana/SelectSolanaAmount/index.d.ts +0 -3
  102. package/build/pay/packages/connectkit/src/components/Pages/Solana/SelectSolanaToken/index.d.ts +0 -3
  103. package/build/pay/packages/connectkit/src/components/Pages/SwitchNetworks/index.d.ts +0 -3
  104. package/build/pay/packages/connectkit/src/components/Pages/WaitingDepositAddress/index.d.ts +0 -3
  105. package/build/pay/packages/connectkit/src/components/Pages/WaitingExternal/index.d.ts +0 -3
  106. package/build/pay/packages/connectkit/src/components/Spinners/CircleSpinner/index.d.ts +0 -9
  107. package/build/pay/packages/connectkit/src/components/Spinners/CircleSpinner/styles.d.ts +0 -5
  108. package/build/pay/packages/connectkit/src/components/Spinners/ExternalPaymentSpinner/index.d.ts +0 -6
  109. package/build/pay/packages/connectkit/src/components/Spinners/SquircleSpinner/index.d.ts +0 -5
  110. package/build/pay/packages/connectkit/src/components/Spinners/SquircleSpinner/styles.d.ts +0 -4
  111. package/build/pay/packages/connectkit/src/components/Spinners/TokenLogoSpinner/index.d.ts +0 -6
  112. package/build/pay/packages/connectkit/src/components/Spinners/TokenLogoSpinner/styles.d.ts +0 -1
  113. package/build/pay/packages/connectkit/src/components/Spinners/styles.d.ts +0 -2
  114. package/build/pay/packages/connectkit/src/components/contexts/solana/index.d.ts +0 -6
  115. package/build/pay/packages/connectkit/src/components/contexts/web3/index.d.ts +0 -25
  116. package/build/pay/packages/connectkit/src/constants/defaultTheme.d.ts +0 -4
  117. package/build/pay/packages/connectkit/src/defaultConfig.d.ts +0 -22
  118. package/build/pay/packages/connectkit/src/defaultConnectors.d.ts +0 -15
  119. package/build/pay/packages/connectkit/src/hooks/connectors/useWalletConnectUri.d.ts +0 -7
  120. package/build/pay/packages/connectkit/src/hooks/hookTypes.d.ts +0 -9
  121. package/build/pay/packages/connectkit/src/hooks/useChainIsSupported.d.ts +0 -2
  122. package/build/pay/packages/connectkit/src/hooks/useChains.d.ts +0 -3
  123. package/build/pay/packages/connectkit/src/hooks/useConnect.d.ts +0 -110
  124. package/build/pay/packages/connectkit/src/hooks/useConnectCallback.d.ts +0 -8
  125. package/build/pay/packages/connectkit/src/hooks/useConnectors.d.ts +0 -7
  126. package/build/pay/packages/connectkit/src/hooks/useDaimoPayStatus.d.ts +0 -15
  127. package/build/pay/packages/connectkit/src/hooks/useDepositAddressOptions.d.ts +0 -10
  128. package/build/pay/packages/connectkit/src/hooks/useEnsFallbackConfig.d.ts +0 -2
  129. package/build/pay/packages/connectkit/src/hooks/useExternalPaymentOptions.d.ts +0 -12
  130. package/build/pay/packages/connectkit/src/hooks/useFitText.d.ts +0 -14
  131. package/build/pay/packages/connectkit/src/hooks/useFocusTrap.d.ts +0 -1
  132. package/build/pay/packages/connectkit/src/hooks/useGoogleFont.d.ts +0 -3
  133. package/build/pay/packages/connectkit/src/hooks/useIsMobile.d.ts +0 -1
  134. package/build/pay/packages/connectkit/src/hooks/useIsMounted.d.ts +0 -3
  135. package/build/pay/packages/connectkit/src/hooks/useLastConnector.d.ts +0 -4
  136. package/build/pay/packages/connectkit/src/hooks/useLocalStorage.d.ts +0 -7
  137. package/build/pay/packages/connectkit/src/hooks/useLocales.d.ts +0 -1
  138. package/build/pay/packages/connectkit/src/hooks/useLockBodyScroll.d.ts +0 -1
  139. package/build/pay/packages/connectkit/src/hooks/useModal.d.ts +0 -8
  140. package/build/pay/packages/connectkit/src/hooks/useOrderUsdLimits.d.ts +0 -7
  141. package/build/pay/packages/connectkit/src/hooks/usePayWithSolanaToken.d.ts +0 -12
  142. package/build/pay/packages/connectkit/src/hooks/usePayWithToken.d.ts +0 -14
  143. package/build/pay/packages/connectkit/src/hooks/usePaymentState.d.ts +0 -90
  144. package/build/pay/packages/connectkit/src/hooks/usePrevious.d.ts +0 -1
  145. package/build/pay/packages/connectkit/src/hooks/useSolanaPaymentOptions.d.ts +0 -12
  146. package/build/pay/packages/connectkit/src/hooks/useWalletConnectModal.d.ts +0 -4
  147. package/build/pay/packages/connectkit/src/hooks/useWalletPaymentOptions.d.ts +0 -20
  148. package/build/pay/packages/connectkit/src/hooks/useWindowSize.d.ts +0 -4
  149. package/build/pay/packages/connectkit/src/index.d.ts +0 -11
  150. package/build/pay/packages/connectkit/src/localizations/index.d.ts +0 -93
  151. package/build/pay/packages/connectkit/src/localizations/locales/ar-AE.d.ts +0 -3
  152. package/build/pay/packages/connectkit/src/localizations/locales/ca-AD.d.ts +0 -3
  153. package/build/pay/packages/connectkit/src/localizations/locales/ee-EE.d.ts +0 -3
  154. package/build/pay/packages/connectkit/src/localizations/locales/en-US.d.ts +0 -93
  155. package/build/pay/packages/connectkit/src/localizations/locales/es-ES.d.ts +0 -3
  156. package/build/pay/packages/connectkit/src/localizations/locales/fa-IR.d.ts +0 -3
  157. package/build/pay/packages/connectkit/src/localizations/locales/fr-FR.d.ts +0 -3
  158. package/build/pay/packages/connectkit/src/localizations/locales/index.d.ts +0 -2
  159. package/build/pay/packages/connectkit/src/localizations/locales/ja-JP.d.ts +0 -93
  160. package/build/pay/packages/connectkit/src/localizations/locales/pt-BR.d.ts +0 -3
  161. package/build/pay/packages/connectkit/src/localizations/locales/ru-RU.d.ts +0 -3
  162. package/build/pay/packages/connectkit/src/localizations/locales/tr-TR.d.ts +0 -3
  163. package/build/pay/packages/connectkit/src/localizations/locales/vi-VN.d.ts +0 -3
  164. package/build/pay/packages/connectkit/src/localizations/locales/zh-CN.d.ts +0 -3
  165. package/build/pay/packages/connectkit/src/styles/defaultTheme.d.ts +0 -3
  166. package/build/pay/packages/connectkit/src/styles/index.d.ts +0 -1
  167. package/build/pay/packages/connectkit/src/styles/styled/index.d.ts +0 -12
  168. package/build/pay/packages/connectkit/src/styles/themes/base.d.ts +0 -129
  169. package/build/pay/packages/connectkit/src/styles/themes/index.d.ts +0 -673
  170. package/build/pay/packages/connectkit/src/styles/themes/midnight.d.ts +0 -74
  171. package/build/pay/packages/connectkit/src/styles/themes/minimal.d.ts +0 -94
  172. package/build/pay/packages/connectkit/src/styles/themes/nouns.d.ts +0 -79
  173. package/build/pay/packages/connectkit/src/styles/themes/retro.d.ts +0 -89
  174. package/build/pay/packages/connectkit/src/styles/themes/rounded.d.ts +0 -86
  175. package/build/pay/packages/connectkit/src/styles/themes/soft.d.ts +0 -69
  176. package/build/pay/packages/connectkit/src/styles/themes/web95.d.ts +0 -91
  177. package/build/pay/packages/connectkit/src/styles/types.d.ts +0 -80
  178. package/build/pay/packages/connectkit/src/types.d.ts +0 -46
  179. package/build/pay/packages/connectkit/src/utils/exports.d.ts +0 -1
  180. package/build/pay/packages/connectkit/src/utils/format.d.ts +0 -49
  181. package/build/pay/packages/connectkit/src/utils/index.d.ts +0 -17
  182. package/build/pay/packages/connectkit/src/utils/localstorage.d.ts +0 -9
  183. package/build/pay/packages/connectkit/src/utils/p3.d.ts +0 -2
  184. package/build/pay/packages/connectkit/src/utils/platform.d.ts +0 -2
  185. package/build/pay/packages/connectkit/src/utils/supportUrl.d.ts +0 -2
  186. package/build/pay/packages/connectkit/src/utils/trpc.d.ts +0 -4
  187. package/build/pay/packages/connectkit/src/utils/validateInput.d.ts +0 -16
  188. package/build/pay/packages/connectkit/src/utils/wallets.d.ts +0 -24
  189. package/build/pay/packages/connectkit/src/wallets/index.d.ts +0 -5
  190. package/build/pay/packages/connectkit/src/wallets/useWallets.d.ts +0 -9
  191. package/build/pay/packages/connectkit/src/wallets/walletConfigs.d.ts +0 -30
  192. package/build/pay/packages/connectkit/tsconfig.tsbuildinfo +0 -1
  193. package/build/src/assets/ScanIconWithLogos.js +0 -34
  194. package/build/src/assets/ScanIconWithLogos.js.map +0 -1
  195. package/build/src/assets/browsers.js +0 -13
  196. package/build/src/assets/browsers.js.map +0 -1
  197. package/build/src/assets/chains.js +0 -70
  198. package/build/src/assets/chains.js.map +0 -1
  199. package/build/src/assets/coins.js +0 -6
  200. package/build/src/assets/coins.js.map +0 -1
  201. package/build/src/assets/crepe.js +0 -8
  202. package/build/src/assets/crepe.js.map +0 -1
  203. package/build/src/assets/icons.js +0 -29
  204. package/build/src/assets/icons.js.map +0 -1
  205. package/build/src/assets/logos.js +0 -153
  206. package/build/src/assets/logos.js.map +0 -1
  207. package/build/src/assets/wallet.js +0 -8
  208. package/build/src/assets/wallet.js.map +0 -1
  209. package/build/src/assets/wave.js +0 -6
  210. package/build/src/assets/wave.js.map +0 -1
  211. package/build/src/components/Common/Alert/index.js +0 -10
  212. package/build/src/components/Common/Alert/index.js.map +0 -1
  213. package/build/src/components/Common/Alert/styles.js +0 -55
  214. package/build/src/components/Common/Alert/styles.js.map +0 -1
  215. package/build/src/components/Common/AmountInput/AmountInputField.js +0 -59
  216. package/build/src/components/Common/AmountInput/AmountInputField.js.map +0 -1
  217. package/build/src/components/Common/AmountInput/index.js +0 -147
  218. package/build/src/components/Common/AmountInput/index.js.map +0 -1
  219. package/build/src/components/Common/Avatar/index.js +0 -66
  220. package/build/src/components/Common/Avatar/index.js.map +0 -1
  221. package/build/src/components/Common/Avatar/styles.js +0 -59
  222. package/build/src/components/Common/Avatar/styles.js.map +0 -1
  223. package/build/src/components/Common/BrowserIcon/index.js +0 -28
  224. package/build/src/components/Common/BrowserIcon/index.js.map +0 -1
  225. package/build/src/components/Common/BrowserIcon/styles.js +0 -20
  226. package/build/src/components/Common/BrowserIcon/styles.js.map +0 -1
  227. package/build/src/components/Common/Button/index.js +0 -38
  228. package/build/src/components/Common/Button/index.js.map +0 -1
  229. package/build/src/components/Common/Button/styles.js +0 -291
  230. package/build/src/components/Common/Button/styles.js.map +0 -1
  231. package/build/src/components/Common/Chain/index.js +0 -25
  232. package/build/src/components/Common/Chain/index.js.map +0 -1
  233. package/build/src/components/Common/Chain/styles.js +0 -94
  234. package/build/src/components/Common/Chain/styles.js.map +0 -1
  235. package/build/src/components/Common/ChainSelectList/index.js +0 -107
  236. package/build/src/components/Common/ChainSelectList/index.js.map +0 -1
  237. package/build/src/components/Common/ChainSelectList/styles.js +0 -228
  238. package/build/src/components/Common/ChainSelectList/styles.js.map +0 -1
  239. package/build/src/components/Common/ConnectorList/index.js +0 -71
  240. package/build/src/components/Common/ConnectorList/index.js.map +0 -1
  241. package/build/src/components/Common/ConnectorList/styles.js +0 -314
  242. package/build/src/components/Common/ConnectorList/styles.js.map +0 -1
  243. package/build/src/components/Common/CopyToClipboard/CopyToClipboardIcon.js +0 -71
  244. package/build/src/components/Common/CopyToClipboard/CopyToClipboardIcon.js.map +0 -1
  245. package/build/src/components/Common/CopyToClipboard/index.js +0 -51
  246. package/build/src/components/Common/CopyToClipboard/index.js.map +0 -1
  247. package/build/src/components/Common/CustomQRCode/QRCode.js +0 -69
  248. package/build/src/components/Common/CustomQRCode/QRCode.js.map +0 -1
  249. package/build/src/components/Common/CustomQRCode/index.js +0 -22
  250. package/build/src/components/Common/CustomQRCode/index.js.map +0 -1
  251. package/build/src/components/Common/CustomQRCode/styles.js +0 -155
  252. package/build/src/components/Common/CustomQRCode/styles.js.map +0 -1
  253. package/build/src/components/Common/FitText/index.js +0 -27
  254. package/build/src/components/Common/FitText/index.js.map +0 -1
  255. package/build/src/components/Common/Modal/index.js +0 -301
  256. package/build/src/components/Common/Modal/index.js.map +0 -1
  257. package/build/src/components/Common/Modal/styles.js +0 -661
  258. package/build/src/components/Common/Modal/styles.js.map +0 -1
  259. package/build/src/components/Common/OptionsList/index.js +0 -106
  260. package/build/src/components/Common/OptionsList/index.js.map +0 -1
  261. package/build/src/components/Common/OptionsList/styles.js +0 -165
  262. package/build/src/components/Common/OptionsList/styles.js.map +0 -1
  263. package/build/src/components/Common/OrderHeader/index.js +0 -128
  264. package/build/src/components/Common/OrderHeader/index.js.map +0 -1
  265. package/build/src/components/Common/PaymentBreakdown/index.js +0 -48
  266. package/build/src/components/Common/PaymentBreakdown/index.js.map +0 -1
  267. package/build/src/components/Common/Portal/index.js +0 -31
  268. package/build/src/components/Common/Portal/index.js.map +0 -1
  269. package/build/src/components/Common/PoweredByFooter/index.js +0 -79
  270. package/build/src/components/Common/PoweredByFooter/index.js.map +0 -1
  271. package/build/src/components/Common/ScrollArea/index.js +0 -62
  272. package/build/src/components/Common/ScrollArea/index.js.map +0 -1
  273. package/build/src/components/Common/ScrollArea/styles.js +0 -168
  274. package/build/src/components/Common/ScrollArea/styles.js.map +0 -1
  275. package/build/src/components/Common/Spinner/index.js +0 -24
  276. package/build/src/components/Common/Spinner/index.js.map +0 -1
  277. package/build/src/components/Common/Spinner/styles.js +0 -22
  278. package/build/src/components/Common/Spinner/styles.js.map +0 -1
  279. package/build/src/components/Common/SwitchButton/index.js +0 -39
  280. package/build/src/components/Common/SwitchButton/index.js.map +0 -1
  281. package/build/src/components/Common/ThemedButton/index.js +0 -25
  282. package/build/src/components/Common/ThemedButton/index.js.map +0 -1
  283. package/build/src/components/Common/ThemedButton/styles.js +0 -152
  284. package/build/src/components/Common/ThemedButton/styles.js.map +0 -1
  285. package/build/src/components/Common/TokenChainLogo/index.js +0 -24
  286. package/build/src/components/Common/TokenChainLogo/index.js.map +0 -1
  287. package/build/src/components/Common/Tooltip/index.js +0 -97
  288. package/build/src/components/Common/Tooltip/index.js.map +0 -1
  289. package/build/src/components/Common/Tooltip/styles.js +0 -81
  290. package/build/src/components/Common/Tooltip/styles.js.map +0 -1
  291. package/build/src/components/Common/WalletChainLogo/index.js +0 -24
  292. package/build/src/components/Common/WalletChainLogo/index.js.map +0 -1
  293. package/build/src/components/DaimoPay.js +0 -280
  294. package/build/src/components/DaimoPay.js.map +0 -1
  295. package/build/src/components/DaimoPayButton/index.js +0 -158
  296. package/build/src/components/DaimoPayButton/index.js.map +0 -1
  297. package/build/src/components/DaimoPayButton/styles.js +0 -50
  298. package/build/src/components/DaimoPayButton/styles.js.map +0 -1
  299. package/build/src/components/DaimoPayModal/ConnectUsing.js +0 -45
  300. package/build/src/components/DaimoPayModal/ConnectUsing.js.map +0 -1
  301. package/build/src/components/DaimoPayModal/ConnectWithInjector/index.js +0 -202
  302. package/build/src/components/DaimoPayModal/ConnectWithInjector/index.js.map +0 -1
  303. package/build/src/components/DaimoPayModal/ConnectWithInjector/styles.js +0 -133
  304. package/build/src/components/DaimoPayModal/ConnectWithInjector/styles.js.map +0 -1
  305. package/build/src/components/DaimoPayModal/ConnectWithQRCode.js +0 -75
  306. package/build/src/components/DaimoPayModal/ConnectWithQRCode.js.map +0 -1
  307. package/build/src/components/DaimoPayModal/index.js +0 -206
  308. package/build/src/components/DaimoPayModal/index.js.map +0 -1
  309. package/build/src/components/DaimoPayThemeProvider/DaimoPayThemeProvider.js +0 -21
  310. package/build/src/components/DaimoPayThemeProvider/DaimoPayThemeProvider.js.map +0 -1
  311. package/build/src/components/Pages/About/graphics.js +0 -187
  312. package/build/src/components/Pages/About/graphics.js.map +0 -1
  313. package/build/src/components/Pages/About/index.js +0 -131
  314. package/build/src/components/Pages/About/index.js.map +0 -1
  315. package/build/src/components/Pages/About/styles.js +0 -144
  316. package/build/src/components/Pages/About/styles.js.map +0 -1
  317. package/build/src/components/Pages/Confirmation/index.js +0 -105
  318. package/build/src/components/Pages/Confirmation/index.js.map +0 -1
  319. package/build/src/components/Pages/Connectors/index.js +0 -20
  320. package/build/src/components/Pages/Connectors/index.js.map +0 -1
  321. package/build/src/components/Pages/Connectors/styles.js +0 -267
  322. package/build/src/components/Pages/Connectors/styles.js.map +0 -1
  323. package/build/src/components/Pages/DownloadApp/index.js +0 -30
  324. package/build/src/components/Pages/DownloadApp/index.js.map +0 -1
  325. package/build/src/components/Pages/MobileConnectors/index.js +0 -78
  326. package/build/src/components/Pages/MobileConnectors/index.js.map +0 -1
  327. package/build/src/components/Pages/MobileConnectors/styles.js +0 -65
  328. package/build/src/components/Pages/MobileConnectors/styles.js.map +0 -1
  329. package/build/src/components/Pages/Onboarding/index.js +0 -18
  330. package/build/src/components/Pages/Onboarding/index.js.map +0 -1
  331. package/build/src/components/Pages/Onboarding/styles.js +0 -229
  332. package/build/src/components/Pages/Onboarding/styles.js.map +0 -1
  333. package/build/src/components/Pages/PayWithToken/index.js +0 -111
  334. package/build/src/components/Pages/PayWithToken/index.js.map +0 -1
  335. package/build/src/components/Pages/SelectAmount/index.js +0 -16
  336. package/build/src/components/Pages/SelectAmount/index.js.map +0 -1
  337. package/build/src/components/Pages/SelectDepositAddressAmount/index.js +0 -61
  338. package/build/src/components/Pages/SelectDepositAddressAmount/index.js.map +0 -1
  339. package/build/src/components/Pages/SelectDepositAddressChain/index.js +0 -38
  340. package/build/src/components/Pages/SelectDepositAddressChain/index.js.map +0 -1
  341. package/build/src/components/Pages/SelectExternalAmount/index.js +0 -63
  342. package/build/src/components/Pages/SelectExternalAmount/index.js.map +0 -1
  343. package/build/src/components/Pages/SelectMethod/index.js +0 -205
  344. package/build/src/components/Pages/SelectMethod/index.js.map +0 -1
  345. package/build/src/components/Pages/SelectToken/index.js +0 -61
  346. package/build/src/components/Pages/SelectToken/index.js.map +0 -1
  347. package/build/src/components/Pages/Solana/ConnectSolana/index.js +0 -80
  348. package/build/src/components/Pages/Solana/ConnectSolana/index.js.map +0 -1
  349. package/build/src/components/Pages/Solana/ConnectorSolana/index.js +0 -55
  350. package/build/src/components/Pages/Solana/ConnectorSolana/index.js.map +0 -1
  351. package/build/src/components/Pages/Solana/PayWithSolanaToken/index.js +0 -62
  352. package/build/src/components/Pages/Solana/PayWithSolanaToken/index.js.map +0 -1
  353. package/build/src/components/Pages/Solana/SelectSolanaAmount/index.js +0 -16
  354. package/build/src/components/Pages/Solana/SelectSolanaAmount/index.js.map +0 -1
  355. package/build/src/components/Pages/Solana/SelectSolanaToken/index.js +0 -59
  356. package/build/src/components/Pages/Solana/SelectSolanaToken/index.js.map +0 -1
  357. package/build/src/components/Pages/SwitchNetworks/index.js +0 -26
  358. package/build/src/components/Pages/SwitchNetworks/index.js.map +0 -1
  359. package/build/src/components/Pages/WaitingDepositAddress/index.js +0 -51
  360. package/build/src/components/Pages/WaitingDepositAddress/index.js.map +0 -1
  361. package/build/src/components/Pages/WaitingExternal/index.js +0 -53
  362. package/build/src/components/Pages/WaitingExternal/index.js.map +0 -1
  363. package/build/src/components/Spinners/CircleSpinner/index.js +0 -15
  364. package/build/src/components/Spinners/CircleSpinner/index.js.map +0 -1
  365. package/build/src/components/Spinners/CircleSpinner/styles.js +0 -118
  366. package/build/src/components/Spinners/CircleSpinner/styles.js.map +0 -1
  367. package/build/src/components/Spinners/ExternalPaymentSpinner/index.js +0 -20
  368. package/build/src/components/Spinners/ExternalPaymentSpinner/index.js.map +0 -1
  369. package/build/src/components/Spinners/SquircleSpinner/index.js +0 -15
  370. package/build/src/components/Spinners/SquircleSpinner/index.js.map +0 -1
  371. package/build/src/components/Spinners/SquircleSpinner/styles.js +0 -66
  372. package/build/src/components/Spinners/SquircleSpinner/styles.js.map +0 -1
  373. package/build/src/components/Spinners/TokenLogoSpinner/index.js +0 -13
  374. package/build/src/components/Spinners/TokenLogoSpinner/index.js.map +0 -1
  375. package/build/src/components/Spinners/TokenLogoSpinner/styles.js +0 -40
  376. package/build/src/components/Spinners/TokenLogoSpinner/styles.js.map +0 -1
  377. package/build/src/components/Spinners/styles.js +0 -33
  378. package/build/src/components/Spinners/styles.js.map +0 -1
  379. package/build/src/components/contexts/solana/index.js +0 -11
  380. package/build/src/components/contexts/solana/index.js.map +0 -1
  381. package/build/src/components/contexts/web3/index.js +0 -46
  382. package/build/src/components/contexts/web3/index.js.map +0 -1
  383. package/build/src/constants/defaultTheme.js +0 -6
  384. package/build/src/constants/defaultTheme.js.map +0 -1
  385. package/build/src/defaultConfig.js +0 -63
  386. package/build/src/defaultConfig.js.map +0 -1
  387. package/build/src/defaultConnectors.js +0 -43
  388. package/build/src/defaultConnectors.js.map +0 -1
  389. package/build/src/hooks/connectors/useWalletConnectUri.js +0 -93
  390. package/build/src/hooks/connectors/useWalletConnectUri.js.map +0 -1
  391. package/build/src/hooks/useChainIsSupported.js +0 -12
  392. package/build/src/hooks/useChainIsSupported.js.map +0 -1
  393. package/build/src/hooks/useChains.js +0 -11
  394. package/build/src/hooks/useChains.js.map +0 -1
  395. package/build/src/hooks/useConnect.js +0 -45
  396. package/build/src/hooks/useConnect.js.map +0 -1
  397. package/build/src/hooks/useConnectCallback.js +0 -18
  398. package/build/src/hooks/useConnectCallback.js.map +0 -1
  399. package/build/src/hooks/useConnectors.js +0 -29
  400. package/build/src/hooks/useConnectors.js.map +0 -1
  401. package/build/src/hooks/useDaimoPayStatus.js +0 -24
  402. package/build/src/hooks/useDaimoPayStatus.js.map +0 -1
  403. package/build/src/hooks/useDepositAddressOptions.js +0 -31
  404. package/build/src/hooks/useDepositAddressOptions.js.map +0 -1
  405. package/build/src/hooks/useEnsFallbackConfig.js +0 -16
  406. package/build/src/hooks/useEnsFallbackConfig.js.map +0 -1
  407. package/build/src/hooks/useExternalPaymentOptions.js +0 -49
  408. package/build/src/hooks/useExternalPaymentOptions.js.map +0 -1
  409. package/build/src/hooks/useFitText.js +0 -148
  410. package/build/src/hooks/useFitText.js.map +0 -1
  411. package/build/src/hooks/useFocusTrap.js +0 -60
  412. package/build/src/hooks/useFocusTrap.js.map +0 -1
  413. package/build/src/hooks/useGoogleFont.js +0 -45
  414. package/build/src/hooks/useGoogleFont.js.map +0 -1
  415. package/build/src/hooks/useIsMobile.js +0 -17
  416. package/build/src/hooks/useIsMobile.js.map +0 -1
  417. package/build/src/hooks/useIsMounted.js +0 -12
  418. package/build/src/hooks/useIsMounted.js.map +0 -1
  419. package/build/src/hooks/useLastConnector.js +0 -24
  420. package/build/src/hooks/useLastConnector.js.map +0 -1
  421. package/build/src/hooks/useLocales.js +0 -67
  422. package/build/src/hooks/useLocales.js.map +0 -1
  423. package/build/src/hooks/useLockBodyScroll.js +0 -53
  424. package/build/src/hooks/useLockBodyScroll.js.map +0 -1
  425. package/build/src/hooks/useOrderUsdLimits.js +0 -26
  426. package/build/src/hooks/useOrderUsdLimits.js.map +0 -1
  427. package/build/src/hooks/usePayWithSolanaToken.js +0 -50
  428. package/build/src/hooks/usePayWithSolanaToken.js.map +0 -1
  429. package/build/src/hooks/usePayWithToken.js +0 -58
  430. package/build/src/hooks/usePayWithToken.js.map +0 -1
  431. package/build/src/hooks/usePaymentState.js +0 -283
  432. package/build/src/hooks/usePaymentState.js.map +0 -1
  433. package/build/src/hooks/usePrevious.js +0 -14
  434. package/build/src/hooks/usePrevious.js.map +0 -1
  435. package/build/src/hooks/useSolanaPaymentOptions.js +0 -39
  436. package/build/src/hooks/useSolanaPaymentOptions.js.map +0 -1
  437. package/build/src/hooks/useWalletConnectModal.js +0 -52
  438. package/build/src/hooks/useWalletConnectModal.js.map +0 -1
  439. package/build/src/hooks/useWalletPaymentOptions.js +0 -50
  440. package/build/src/hooks/useWalletPaymentOptions.js.map +0 -1
  441. package/build/src/hooks/useWindowSize.js +0 -23
  442. package/build/src/hooks/useWindowSize.js.map +0 -1
  443. package/build/src/index.js +0 -10
  444. package/build/src/index.js.map +0 -1
  445. package/build/src/localizations/index.js +0 -57
  446. package/build/src/localizations/index.js.map +0 -1
  447. package/build/src/localizations/locales/ar-AE.js +0 -97
  448. package/build/src/localizations/locales/ar-AE.js.map +0 -1
  449. package/build/src/localizations/locales/ca-AD.js +0 -95
  450. package/build/src/localizations/locales/ca-AD.js.map +0 -1
  451. package/build/src/localizations/locales/ee-EE.js +0 -95
  452. package/build/src/localizations/locales/ee-EE.js.map +0 -1
  453. package/build/src/localizations/locales/en-US.js +0 -95
  454. package/build/src/localizations/locales/en-US.js.map +0 -1
  455. package/build/src/localizations/locales/es-ES.js +0 -95
  456. package/build/src/localizations/locales/es-ES.js.map +0 -1
  457. package/build/src/localizations/locales/fa-IR.js +0 -95
  458. package/build/src/localizations/locales/fa-IR.js.map +0 -1
  459. package/build/src/localizations/locales/fr-FR.js +0 -95
  460. package/build/src/localizations/locales/fr-FR.js.map +0 -1
  461. package/build/src/localizations/locales/ja-JP.js +0 -95
  462. package/build/src/localizations/locales/ja-JP.js.map +0 -1
  463. package/build/src/localizations/locales/pt-BR.js +0 -95
  464. package/build/src/localizations/locales/pt-BR.js.map +0 -1
  465. package/build/src/localizations/locales/ru-RU.js +0 -95
  466. package/build/src/localizations/locales/ru-RU.js.map +0 -1
  467. package/build/src/localizations/locales/tr-TR.js +0 -95
  468. package/build/src/localizations/locales/tr-TR.js.map +0 -1
  469. package/build/src/localizations/locales/vi-VN.js +0 -95
  470. package/build/src/localizations/locales/vi-VN.js.map +0 -1
  471. package/build/src/localizations/locales/zh-CN.js +0 -95
  472. package/build/src/localizations/locales/zh-CN.js.map +0 -1
  473. package/build/src/styles/defaultTheme.js +0 -89
  474. package/build/src/styles/defaultTheme.js.map +0 -1
  475. package/build/src/styles/index.js +0 -329
  476. package/build/src/styles/index.js.map +0 -1
  477. package/build/src/styles/styled/index.js +0 -16
  478. package/build/src/styles/styled/index.js.map +0 -1
  479. package/build/src/styles/themes/base.js +0 -141
  480. package/build/src/styles/themes/base.js.map +0 -1
  481. package/build/src/styles/themes/index.js +0 -13
  482. package/build/src/styles/themes/index.js.map +0 -1
  483. package/build/src/styles/themes/midnight.js +0 -76
  484. package/build/src/styles/themes/midnight.js.map +0 -1
  485. package/build/src/styles/themes/minimal.js +0 -96
  486. package/build/src/styles/themes/minimal.js.map +0 -1
  487. package/build/src/styles/themes/nouns.js +0 -81
  488. package/build/src/styles/themes/nouns.js.map +0 -1
  489. package/build/src/styles/themes/retro.js +0 -106
  490. package/build/src/styles/themes/retro.js.map +0 -1
  491. package/build/src/styles/themes/rounded.js +0 -106
  492. package/build/src/styles/themes/rounded.js.map +0 -1
  493. package/build/src/styles/themes/soft.js +0 -71
  494. package/build/src/styles/themes/soft.js.map +0 -1
  495. package/build/src/styles/themes/web95.js +0 -132
  496. package/build/src/styles/themes/web95.js.map +0 -1
  497. package/build/src/utils/exports.js +0 -7
  498. package/build/src/utils/exports.js.map +0 -1
  499. package/build/src/utils/format.js +0 -83
  500. package/build/src/utils/format.js.map +0 -1
  501. package/build/src/utils/index.js +0 -39
  502. package/build/src/utils/index.js.map +0 -1
  503. package/build/src/utils/p3.js +0 -16
  504. package/build/src/utils/p3.js.map +0 -1
  505. package/build/src/utils/platform.js +0 -13
  506. package/build/src/utils/platform.js.map +0 -1
  507. package/build/src/utils/supportUrl.js +0 -18
  508. package/build/src/utils/supportUrl.js.map +0 -1
  509. package/build/src/utils/trpc.js +0 -19
  510. package/build/src/utils/trpc.js.map +0 -1
  511. package/build/src/utils/validateInput.js +0 -36
  512. package/build/src/utils/validateInput.js.map +0 -1
  513. package/build/src/utils/wallets.js +0 -14
  514. package/build/src/utils/wallets.js.map +0 -1
  515. package/build/src/wallets/index.js +0 -32
  516. package/build/src/wallets/index.js.map +0 -1
  517. package/build/src/wallets/useWallets.js +0 -90
  518. package/build/src/wallets/useWallets.js.map +0 -1
  519. package/build/src/wallets/walletConfigs.js +0 -337
  520. package/build/src/wallets/walletConfigs.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"useLocales.js","sources":["../../../src/hooks/useLocales.tsx"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport React, { useMemo } from \"react\";\nimport Logos from \"../assets/logos\";\nimport { usePayContext } from \"../components/DaimoPay\";\nimport { getLocale } from \"./../localizations\";\nexport default function useLocales(replacements) {\n const context = usePayContext();\n const language = context.options?.language ?? \"en-US\";\n const translations = useMemo(() => {\n return getLocale(language);\n }, [language]);\n if (!translations) {\n console.error(`Missing translations for: ${language}`);\n return `Missing translations for: ${language}`;\n }\n const translated = {};\n Object.keys(translations).map((key) => {\n const string = translations[key];\n return (translated[key] = localize(string, replacements));\n });\n return translated;\n}\nconst localize = (text, replacements) => {\n let parsedText = text;\n if (replacements) {\n Object.keys(replacements).forEach((key) => {\n // use `replace` instead of `replaceAll` to support Node 14\n parsedText = parsedText.replace(new RegExp(`({{ ${key} }})`, \"g\"), replacements[key]);\n });\n }\n return replaceMarkdown(parsedText);\n};\nconst replaceMarkdown = (markdownText) => {\n let text = markdownText;\n text = text.split(\"\\n\");\n text = text.map((t, i) => {\n return (_jsxs(React.Fragment, { children: [wrapTags(t), i < text.length - 1 && _jsx(\"br\", {})] }, i));\n });\n return text;\n};\nconst wrapTags = (text) => {\n // Bold markdown handling\n const textArray = text.split(/(\\*\\*[^\\*]*\\*\\*)/g);\n let result = textArray.map((str, i) => {\n if (/(\\*\\*.*\\*\\*)/g.test(str)) {\n // use `replace` instead of `replaceAll` to support Node 14\n return _jsx(\"strong\", { children: str.replace(/\\*\\*/g, \"\") }, i);\n }\n return `${str}`;\n });\n // Replace text with logo\n return result.map((r) => {\n if (typeof r === \"string\") {\n return r.split(/(\\[WALLETCONNECTLOGO\\])/g).map((s) => {\n if (s === \"[WALLETCONNECTLOGO]\") {\n return (_jsx(\"span\", { className: \"ck-tt-logo\", children: _jsx(Logos.WalletConnect, {}) }, s));\n }\n return s;\n });\n }\n return r;\n });\n};\n"],"names":["_jsxs","_jsx"],"mappings":"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"}
@@ -1,53 +0,0 @@
1
- import { useState, useEffect, useLayoutEffect } from 'react';
2
- import { usePayContext } from '../components/DaimoPay.js';
3
-
4
- const useIsomorphicLayoutEffect = typeof window !== "undefined" ? useLayoutEffect : useEffect;
5
- function useLockBodyScroll(initialLocked) {
6
- const [locked, setLocked] = useState(initialLocked);
7
- const context = usePayContext();
8
- useIsomorphicLayoutEffect(() => {
9
- if (!locked)
10
- return;
11
- const original = {
12
- overflow: document.body.style.overflow,
13
- position: document.body.style.position,
14
- touchAction: document.body.style.touchAction,
15
- paddingRight: document.body.style.paddingRight,
16
- //htmlOverflow: document.documentElement.style.overflow,
17
- };
18
- const style = getComputedStyle(document.body);
19
- const offsetX = parseInt(style.marginRight) +
20
- parseInt(style.paddingRight) +
21
- parseInt(style.borderRight) +
22
- parseInt(style.marginLeft) +
23
- parseInt(style.paddingLeft) +
24
- parseInt(style.borderLeft);
25
- const scrollBarWidth = window.innerWidth - document.body.offsetWidth - offsetX;
26
- document.documentElement.style.setProperty("--ck-scrollbar-width", `${scrollBarWidth}px`);
27
- document.body.style.overflow = "hidden";
28
- document.body.style.position = "relative";
29
- document.body.style.touchAction = "none";
30
- //document.documentElement.style.overflow = 'hidden'; // overflow:hidden; on <html> breaks position:sticky;
31
- if (context.options?.avoidLayoutShift) {
32
- document.body.style.paddingRight = `${scrollBarWidth}px`;
33
- }
34
- return () => {
35
- document.documentElement.style.removeProperty("--ck-scrollbar-width");
36
- document.body.style.overflow = original.overflow;
37
- document.body.style.position = original.position;
38
- document.body.style.touchAction = original.touchAction;
39
- //document.documentElement.style.overflow = original.htmlOverflow;
40
- if (context.options?.avoidLayoutShift) {
41
- document.body.style.paddingRight = original.paddingRight;
42
- }
43
- };
44
- }, [locked]);
45
- useEffect(() => {
46
- if (locked !== initialLocked)
47
- setLocked(initialLocked);
48
- }, [initialLocked]);
49
- return [locked, setLocked];
50
- }
51
-
52
- export { useLockBodyScroll as default };
53
- //# sourceMappingURL=useLockBodyScroll.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useLockBodyScroll.js","sources":["../../../src/hooks/useLockBodyScroll.ts"],"sourcesContent":["import { useEffect, useLayoutEffect, useState } from \"react\";\nimport { usePayContext } from \"../components/DaimoPay\";\nconst useIsomorphicLayoutEffect = typeof window !== \"undefined\" ? useLayoutEffect : useEffect;\nexport default function useLockBodyScroll(initialLocked) {\n const [locked, setLocked] = useState(initialLocked);\n const context = usePayContext();\n useIsomorphicLayoutEffect(() => {\n if (!locked)\n return;\n const original = {\n overflow: document.body.style.overflow,\n position: document.body.style.position,\n touchAction: document.body.style.touchAction,\n paddingRight: document.body.style.paddingRight,\n //htmlOverflow: document.documentElement.style.overflow,\n };\n const style = getComputedStyle(document.body);\n const offsetX = parseInt(style.marginRight) +\n parseInt(style.paddingRight) +\n parseInt(style.borderRight) +\n parseInt(style.marginLeft) +\n parseInt(style.paddingLeft) +\n parseInt(style.borderLeft);\n const scrollBarWidth = window.innerWidth - document.body.offsetWidth - offsetX;\n document.documentElement.style.setProperty(\"--ck-scrollbar-width\", `${scrollBarWidth}px`);\n document.body.style.overflow = \"hidden\";\n document.body.style.position = \"relative\";\n document.body.style.touchAction = \"none\";\n //document.documentElement.style.overflow = 'hidden'; // overflow:hidden; on <html> breaks position:sticky;\n if (context.options?.avoidLayoutShift) {\n document.body.style.paddingRight = `${scrollBarWidth}px`;\n }\n return () => {\n document.documentElement.style.removeProperty(\"--ck-scrollbar-width\");\n document.body.style.overflow = original.overflow;\n document.body.style.position = original.position;\n document.body.style.touchAction = original.touchAction;\n //document.documentElement.style.overflow = original.htmlOverflow;\n if (context.options?.avoidLayoutShift) {\n document.body.style.paddingRight = original.paddingRight;\n }\n };\n }, [locked]);\n useEffect(() => {\n if (locked !== initialLocked)\n setLocked(initialLocked);\n }, [initialLocked]);\n return [locked, setLocked];\n}\n"],"names":[],"mappings":"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"}
@@ -1,26 +0,0 @@
1
- import { useState, useEffect } from 'react';
2
-
3
- function useOrderUsdLimits({ trpc }) {
4
- const [limits, setLimits] = useState({});
5
- const [loading, setLoading] = useState(false);
6
- useEffect(() => {
7
- const refreshOrderUsdLimits = async () => {
8
- setLoading(true);
9
- try {
10
- const { limits: newLimits } = await trpc.getOrderUsdLimits.query();
11
- setLimits(newLimits);
12
- }
13
- catch (e) {
14
- console.error(e);
15
- }
16
- finally {
17
- setLoading(false);
18
- }
19
- };
20
- refreshOrderUsdLimits();
21
- }, []);
22
- return { limits, loading };
23
- }
24
-
25
- export { useOrderUsdLimits };
26
- //# sourceMappingURL=useOrderUsdLimits.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useOrderUsdLimits.js","sources":["../../../src/hooks/useOrderUsdLimits.ts"],"sourcesContent":["import { useEffect, useState } from \"react\";\nexport function useOrderUsdLimits({ trpc }) {\n const [limits, setLimits] = useState({});\n const [loading, setLoading] = useState(false);\n useEffect(() => {\n const refreshOrderUsdLimits = async () => {\n setLoading(true);\n try {\n const { limits: newLimits } = await trpc.getOrderUsdLimits.query();\n setLimits(newLimits);\n }\n catch (e) {\n console.error(e);\n }\n finally {\n setLoading(false);\n }\n };\n refreshOrderUsdLimits();\n }, []);\n return { limits, loading };\n}\n"],"names":[],"mappings":";;AACO,SAAS,iBAAiB,CAAC,EAAE,IAAI,EAAE,EAAE;AAC5C,IAAI,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;AAC7C,IAAI,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;AAClD,IAAI,SAAS,CAAC,MAAM;AACpB,QAAQ,MAAM,qBAAqB,GAAG,YAAY;AAClD,YAAY,UAAU,CAAC,IAAI,CAAC,CAAC;AAC7B,YAAY,IAAI;AAChB,gBAAgB,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;AACnF,gBAAgB,SAAS,CAAC,SAAS,CAAC,CAAC;AACrC,aAAa;AACb,YAAY,OAAO,CAAC,EAAE;AACtB,gBAAgB,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACjC,aAAa;AACb,oBAAoB;AACpB,gBAAgB,UAAU,CAAC,KAAK,CAAC,CAAC;AAClC,aAAa;AACb,SAAS,CAAC;AACV,QAAQ,qBAAqB,EAAE,CAAC;AAChC,KAAK,EAAE,EAAE,CAAC,CAAC;AACX,IAAI,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;AAC/B;;;;"}
@@ -1,50 +0,0 @@
1
- import { assert, assertNotNull } from '@daimo/pay-common';
2
- import { useConnection, useWallet } from '@solana/wallet-adapter-react';
3
- import { VersionedTransaction } from '@solana/web3.js';
4
- import { hexToBytes } from 'viem';
5
-
6
- function usePayWithSolanaToken({ trpc, daimoPayOrder, setDaimoPayOrder, createOrHydrate, log, }) {
7
- const { connection } = useConnection();
8
- const wallet = useWallet();
9
- const payWithSolanaToken = async (inputToken) => {
10
- assert(!!wallet.publicKey, "[PAY SOLANA] No wallet connected");
11
- assert(!!daimoPayOrder, "[PAY SOLANA] daimoPayOrder cannot be null");
12
- const orderId = daimoPayOrder.id;
13
- const { hydratedOrder } = await createOrHydrate({
14
- order: daimoPayOrder,
15
- });
16
- log(`[CHECKOUT] Hydrated order: ${JSON.stringify(hydratedOrder)}, checking out with Solana ${inputToken}`);
17
- const txHash = await (async () => {
18
- try {
19
- const serializedTx = await trpc.getSolanaSwapAndBurnTx.query({
20
- orderId: orderId.toString(),
21
- userPublicKey: assertNotNull(wallet.publicKey, "[PAY SOLANA] wallet.publicKey cannot be null").toString(),
22
- inputTokenMint: inputToken,
23
- });
24
- const tx = VersionedTransaction.deserialize(hexToBytes(serializedTx));
25
- const txHash = await wallet.sendTransaction(tx, connection);
26
- return txHash;
27
- }
28
- catch (e) {
29
- console.error(e);
30
- setDaimoPayOrder(hydratedOrder);
31
- throw e;
32
- }
33
- finally {
34
- setDaimoPayOrder(hydratedOrder);
35
- }
36
- })();
37
- // TOOD: get the actual amount sent from the tx logs.
38
- // We are currently using a fake amount = 0.
39
- trpc.processSolanaSourcePayment.mutate({
40
- orderId: orderId.toString(),
41
- startIntentTxHash: txHash,
42
- token: inputToken,
43
- });
44
- return txHash;
45
- };
46
- return { payWithSolanaToken };
47
- }
48
-
49
- export { usePayWithSolanaToken };
50
- //# sourceMappingURL=usePayWithSolanaToken.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"usePayWithSolanaToken.js","sources":["../../../src/hooks/usePayWithSolanaToken.ts"],"sourcesContent":["import { assert, assertNotNull, } from \"@daimo/pay-common\";\nimport { useConnection, useWallet } from \"@solana/wallet-adapter-react\";\nimport { VersionedTransaction } from \"@solana/web3.js\";\nimport { hexToBytes } from \"viem\";\nexport function usePayWithSolanaToken({ trpc, daimoPayOrder, setDaimoPayOrder, createOrHydrate, log, }) {\n const { connection } = useConnection();\n const wallet = useWallet();\n const payWithSolanaToken = async (inputToken) => {\n assert(!!wallet.publicKey, \"[PAY SOLANA] No wallet connected\");\n assert(!!daimoPayOrder, \"[PAY SOLANA] daimoPayOrder cannot be null\");\n const orderId = daimoPayOrder.id;\n const { hydratedOrder } = await createOrHydrate({\n order: daimoPayOrder,\n });\n log(`[CHECKOUT] Hydrated order: ${JSON.stringify(hydratedOrder)}, checking out with Solana ${inputToken}`);\n const txHash = await (async () => {\n try {\n const serializedTx = await trpc.getSolanaSwapAndBurnTx.query({\n orderId: orderId.toString(),\n userPublicKey: assertNotNull(wallet.publicKey, \"[PAY SOLANA] wallet.publicKey cannot be null\").toString(),\n inputTokenMint: inputToken,\n });\n const tx = VersionedTransaction.deserialize(hexToBytes(serializedTx));\n const txHash = await wallet.sendTransaction(tx, connection);\n return txHash;\n }\n catch (e) {\n console.error(e);\n setDaimoPayOrder(hydratedOrder);\n throw e;\n }\n finally {\n setDaimoPayOrder(hydratedOrder);\n }\n })();\n // TOOD: get the actual amount sent from the tx logs.\n // We are currently using a fake amount = 0.\n trpc.processSolanaSourcePayment.mutate({\n orderId: orderId.toString(),\n startIntentTxHash: txHash,\n token: inputToken,\n });\n return txHash;\n };\n return { payWithSolanaToken };\n}\n"],"names":[],"mappings":";;;;;AAIO,SAAS,qBAAqB,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,gBAAgB,EAAE,eAAe,EAAE,GAAG,GAAG,EAAE;AACxG,IAAI,MAAM,EAAE,UAAU,EAAE,GAAG,aAAa,EAAE,CAAC;AAC3C,IAAI,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;AAC/B,IAAI,MAAM,kBAAkB,GAAG,OAAO,UAAU,KAAK;AACrD,QAAQ,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,kCAAkC,CAAC,CAAC;AACvE,QAAQ,MAAM,CAAC,CAAC,CAAC,aAAa,EAAE,2CAA2C,CAAC,CAAC;AAC7E,QAAQ,MAAM,OAAO,GAAG,aAAa,CAAC,EAAE,CAAC;AACzC,QAAQ,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,eAAe,CAAC;AACxD,YAAY,KAAK,EAAE,aAAa;AAChC,SAAS,CAAC,CAAC;AACX,QAAQ,GAAG,CAAC,CAAC,2BAA2B,EAAE,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,2BAA2B,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;AACnH,QAAQ,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY;AAC1C,YAAY,IAAI;AAChB,gBAAgB,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC;AAC7E,oBAAoB,OAAO,EAAE,OAAO,CAAC,QAAQ,EAAE;AAC/C,oBAAoB,aAAa,EAAE,aAAa,CAAC,MAAM,CAAC,SAAS,EAAE,8CAA8C,CAAC,CAAC,QAAQ,EAAE;AAC7H,oBAAoB,cAAc,EAAE,UAAU;AAC9C,iBAAiB,CAAC,CAAC;AACnB,gBAAgB,MAAM,EAAE,GAAG,oBAAoB,CAAC,WAAW,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC;AACtF,gBAAgB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;AAC5E,gBAAgB,OAAO,MAAM,CAAC;AAC9B,aAAa;AACb,YAAY,OAAO,CAAC,EAAE;AACtB,gBAAgB,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACjC,gBAAgB,gBAAgB,CAAC,aAAa,CAAC,CAAC;AAChD,gBAAgB,MAAM,CAAC,CAAC;AACxB,aAAa;AACb,oBAAoB;AACpB,gBAAgB,gBAAgB,CAAC,aAAa,CAAC,CAAC;AAChD,aAAa;AACb,SAAS,GAAG,CAAC;AACb;AACA;AACA,QAAQ,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC;AAC/C,YAAY,OAAO,EAAE,OAAO,CAAC,QAAQ,EAAE;AACvC,YAAY,iBAAiB,EAAE,MAAM;AACrC,YAAY,KAAK,EAAE,UAAU;AAC7B,SAAS,CAAC,CAAC;AACX,QAAQ,OAAO,MAAM,CAAC;AACtB,KAAK,CAAC;AACN,IAAI,OAAO,EAAE,kBAAkB,EAAE,CAAC;AAClC;;;;"}
@@ -1,58 +0,0 @@
1
- import { assert, debugJson, assertNotNull } from '@daimo/pay-common';
2
- import { zeroAddress, erc20Abi, getAddress } from 'viem';
3
- import { useWriteContract, useSendTransaction } from 'wagmi';
4
-
5
- function usePayWithToken({ trpc, senderAddr, daimoPayOrder, setDaimoPayOrder, createOrHydrate, log, }) {
6
- const { writeContractAsync } = useWriteContract();
7
- const { sendTransactionAsync } = useSendTransaction();
8
- /** Commit to a token + amount = initiate payment. */
9
- const payWithToken = async (walletOption) => {
10
- assert(!!daimoPayOrder, "[PAY TOKEN] daimoPayOrder cannot be null");
11
- const { required, fees } = walletOption;
12
- assert(required.token.token === fees.token.token, `[PAY TOKEN] required token ${debugJson(required)} does not match fees token ${debugJson(fees)}`);
13
- const paymentAmount = BigInt(required.amount) + BigInt(fees.amount);
14
- const { hydratedOrder } = await createOrHydrate({
15
- order: daimoPayOrder,
16
- refundAddress: senderAddr,
17
- });
18
- log(`[PAY TOKEN] hydrated order: ${JSON.stringify(hydratedOrder)}, paying ${paymentAmount} of token ${required.token.token}`);
19
- setDaimoPayOrder(hydratedOrder);
20
- const txHash = await (async () => {
21
- try {
22
- if (required.token.token === zeroAddress) {
23
- return await sendTransactionAsync({
24
- to: hydratedOrder.intentAddr,
25
- value: paymentAmount,
26
- });
27
- }
28
- else {
29
- return await writeContractAsync({
30
- abi: erc20Abi,
31
- address: getAddress(required.token.token),
32
- functionName: "transfer",
33
- args: [hydratedOrder.intentAddr, paymentAmount],
34
- });
35
- }
36
- }
37
- catch (e) {
38
- console.error(`[PAY TOKEN] error sending token: ${e}`);
39
- throw e;
40
- }
41
- })();
42
- if (txHash) {
43
- await trpc.processSourcePayment.mutate({
44
- orderId: daimoPayOrder.id.toString(),
45
- sourceInitiateTxHash: txHash,
46
- sourceChainId: required.token.chainId,
47
- sourceFulfillerAddr: assertNotNull(senderAddr, `[PAY TOKEN] senderAddr cannot be null on order ${daimoPayOrder.id}`),
48
- sourceToken: required.token.token,
49
- sourceAmount: paymentAmount.toString(),
50
- });
51
- // TODO: update order immediately, do not wait for polling.
52
- }
53
- };
54
- return { payWithToken };
55
- }
56
-
57
- export { usePayWithToken };
58
- //# sourceMappingURL=usePayWithToken.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"usePayWithToken.js","sources":["../../../src/hooks/usePayWithToken.ts"],"sourcesContent":["import { assert, assertNotNull, debugJson, } from \"@daimo/pay-common\";\nimport { erc20Abi, getAddress, zeroAddress } from \"viem\";\nimport { useSendTransaction, useWriteContract } from \"wagmi\";\nexport function usePayWithToken({ trpc, senderAddr, daimoPayOrder, setDaimoPayOrder, createOrHydrate, log, }) {\n const { writeContractAsync } = useWriteContract();\n const { sendTransactionAsync } = useSendTransaction();\n /** Commit to a token + amount = initiate payment. */\n const payWithToken = async (walletOption) => {\n assert(!!daimoPayOrder, \"[PAY TOKEN] daimoPayOrder cannot be null\");\n const { required, fees } = walletOption;\n assert(required.token.token === fees.token.token, `[PAY TOKEN] required token ${debugJson(required)} does not match fees token ${debugJson(fees)}`);\n const paymentAmount = BigInt(required.amount) + BigInt(fees.amount);\n const { hydratedOrder } = await createOrHydrate({\n order: daimoPayOrder,\n refundAddress: senderAddr,\n });\n log(`[PAY TOKEN] hydrated order: ${JSON.stringify(hydratedOrder)}, paying ${paymentAmount} of token ${required.token.token}`);\n setDaimoPayOrder(hydratedOrder);\n const txHash = await (async () => {\n try {\n if (required.token.token === zeroAddress) {\n return await sendTransactionAsync({\n to: hydratedOrder.intentAddr,\n value: paymentAmount,\n });\n }\n else {\n return await writeContractAsync({\n abi: erc20Abi,\n address: getAddress(required.token.token),\n functionName: \"transfer\",\n args: [hydratedOrder.intentAddr, paymentAmount],\n });\n }\n }\n catch (e) {\n console.error(`[PAY TOKEN] error sending token: ${e}`);\n throw e;\n }\n })();\n if (txHash) {\n await trpc.processSourcePayment.mutate({\n orderId: daimoPayOrder.id.toString(),\n sourceInitiateTxHash: txHash,\n sourceChainId: required.token.chainId,\n sourceFulfillerAddr: assertNotNull(senderAddr, `[PAY TOKEN] senderAddr cannot be null on order ${daimoPayOrder.id}`),\n sourceToken: required.token.token,\n sourceAmount: paymentAmount.toString(),\n });\n // TODO: update order immediately, do not wait for polling.\n }\n };\n return { payWithToken };\n}\n"],"names":[],"mappings":"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"}
@@ -1,283 +0,0 @@
1
- import { ethereum, readDaimoPayOrderID, assert, assertNotNull } from '@daimo/pay-common';
2
- import { useWallet } from '@solana/wallet-adapter-react';
3
- import { useState, useEffect, useCallback } from 'react';
4
- import { parseUnits, formatUnits } from 'viem';
5
- import { useAccount, useEnsName } from 'wagmi';
6
- import { detectPlatform } from '../utils/platform.js';
7
- import { useDepositAddressOptions } from './useDepositAddressOptions.js';
8
- import { useExternalPaymentOptions } from './useExternalPaymentOptions.js';
9
- import { useOrderUsdLimits } from './useOrderUsdLimits.js';
10
- import { usePayWithSolanaToken } from './usePayWithSolanaToken.js';
11
- import { usePayWithToken } from './usePayWithToken.js';
12
- import { useSolanaPaymentOptions } from './useSolanaPaymentOptions.js';
13
- import { useWalletPaymentOptions } from './useWalletPaymentOptions.js';
14
-
15
- function usePaymentState({ trpc, daimoPayOrder, setDaimoPayOrder, setOpen, log, redirectReturnUrl, }) {
16
- // Browser state.
17
- const [platform, setPlatform] = useState();
18
- useEffect(() => {
19
- setPlatform(detectPlatform(window.navigator.userAgent));
20
- }, []);
21
- // Wallet state.
22
- const { address: senderAddr } = useAccount();
23
- const { data: senderEnsName } = useEnsName({
24
- chainId: ethereum.chainId,
25
- address: senderAddr,
26
- });
27
- // Solana wallet state.
28
- const solanaWallet = useWallet();
29
- const solanaPubKey = solanaWallet.publicKey?.toBase58();
30
- // Daimo Pay order state.
31
- const [payParams, setPayParamsState] = useState();
32
- const [paymentWaitingMessage, setPaymentWaitingMessage] = useState();
33
- const [isDepositFlow, setIsDepositFlow] = useState(false);
34
- // Payment UI config.
35
- const [modalOptions, setModalOptions] = useState({});
36
- // UI state. Selection for external payment (Binance, etc) vs wallet payment.
37
- const externalPaymentOptions = useExternalPaymentOptions({
38
- trpc,
39
- filterIds: daimoPayOrder?.metadata.payer?.paymentOptions,
40
- platform,
41
- usdRequired: daimoPayOrder?.destFinalCallTokenAmount.usd,
42
- mode: daimoPayOrder?.mode,
43
- });
44
- const walletPaymentOptions = useWalletPaymentOptions({
45
- trpc,
46
- address: senderAddr,
47
- usdRequired: daimoPayOrder?.destFinalCallTokenAmount.usd,
48
- destChainId: daimoPayOrder?.destFinalCallTokenAmount.token.chainId,
49
- preferredChains: daimoPayOrder?.metadata.payer?.preferredChains,
50
- preferredTokens: daimoPayOrder?.metadata.payer?.preferredTokens,
51
- evmChains: daimoPayOrder?.metadata.payer?.evmChains,
52
- isDepositFlow,
53
- log,
54
- });
55
- const solanaPaymentOptions = useSolanaPaymentOptions({
56
- trpc,
57
- address: solanaPubKey,
58
- usdRequired: daimoPayOrder?.destFinalCallTokenAmount.usd,
59
- isDepositFlow,
60
- });
61
- const depositAddressOptions = useDepositAddressOptions({
62
- trpc,
63
- usdRequired: daimoPayOrder?.destFinalCallTokenAmount.usd,
64
- mode: daimoPayOrder?.mode,
65
- });
66
- const chainOrderUsdLimits = useOrderUsdLimits({ trpc });
67
- /** Create a new order or hydrate an existing one. */
68
- const createOrHydrate = async ({ order, refundAddress, externalPaymentOption, }) => {
69
- assert(!!platform, "[CREATE/HYDRATE] missing platform");
70
- if (payParams == null) {
71
- log(`[CREATE/HYDRATE] hydrating existing order ${order.id}`);
72
- return await trpc.hydrateOrder.query({
73
- id: order.id.toString(),
74
- chosenFinalTokenAmount: order.destFinalCallTokenAmount.amount,
75
- platform,
76
- refundAddress,
77
- externalPaymentOption,
78
- redirectReturnUrl,
79
- });
80
- }
81
- log(`[CREATE/HYDRATE] creating+hydrating new order ${order.id}`);
82
- // Update units, if isDepositFlow then the user may have changed the amount.
83
- const toUnits = formatUnits(BigInt(order.destFinalCallTokenAmount.amount), order.destFinalCallTokenAmount.token.decimals);
84
- return await trpc.createOrder.mutate({
85
- appId: payParams.appId,
86
- paymentInput: {
87
- ...payParams,
88
- id: order.id.toString(),
89
- toUnits,
90
- metadata: order.metadata,
91
- userMetadata: payParams.metadata,
92
- isAmountEditable: isDepositFlow,
93
- },
94
- platform,
95
- refundAddress,
96
- externalPaymentOption,
97
- redirectReturnUrl,
98
- });
99
- };
100
- const { payWithToken } = usePayWithToken({
101
- trpc,
102
- senderAddr,
103
- daimoPayOrder,
104
- setDaimoPayOrder,
105
- createOrHydrate,
106
- log,
107
- });
108
- const { payWithSolanaToken } = usePayWithSolanaToken({
109
- trpc,
110
- daimoPayOrder,
111
- setDaimoPayOrder,
112
- createOrHydrate,
113
- log,
114
- });
115
- const [selectedExternalOption, setSelectedExternalOption] = useState();
116
- const [selectedTokenOption, setSelectedTokenOption] = useState();
117
- const [selectedSolanaTokenOption, setSelectedSolanaTokenOption] = useState();
118
- const [selectedDepositAddressOption, setSelectedDepositAddressOption] = useState();
119
- const getOrderUsdLimit = () => {
120
- const DEFAULT_USD_LIMIT = 20000;
121
- if (daimoPayOrder == null || chainOrderUsdLimits.loading) {
122
- return DEFAULT_USD_LIMIT;
123
- }
124
- const destChainId = daimoPayOrder.destFinalCallTokenAmount.token.chainId;
125
- return destChainId in chainOrderUsdLimits.limits
126
- ? chainOrderUsdLimits.limits[destChainId]
127
- : DEFAULT_USD_LIMIT;
128
- };
129
- const payWithExternal = async (option) => {
130
- assert(!!daimoPayOrder, "[PAY EXTERNAL] daimoPayOrder cannot be null");
131
- assert(!!platform, "[PAY EXTERNAL] platform cannot be null");
132
- const { hydratedOrder, externalPaymentOptionData } = await createOrHydrate({
133
- order: daimoPayOrder,
134
- externalPaymentOption: option,
135
- });
136
- assert(!!externalPaymentOptionData, "[PAY EXTERNAL] missing externalPaymentOptionData");
137
- log(`[PAY EXTERNAL] hydrated order: ${JSON.stringify(hydratedOrder)}, checking out with external payment: ${option}`);
138
- setPaymentWaitingMessage(externalPaymentOptionData.waitingMessage);
139
- setDaimoPayOrder(hydratedOrder);
140
- return externalPaymentOptionData.url;
141
- };
142
- const payWithDepositAddress = async (option) => {
143
- assert(!!daimoPayOrder, "[PAY DEPOSIT ADDRESS] missing daimoPayOrder");
144
- const { hydratedOrder } = await createOrHydrate({
145
- order: daimoPayOrder,
146
- });
147
- setDaimoPayOrder(hydratedOrder);
148
- log(`[PAY DEPOSIT ADDRESS] hydrated order: ${JSON.stringify(hydratedOrder)}, checking out with deposit address: ${option}`);
149
- const depositAddressOption = await trpc.getDepositAddressOptionData.query({
150
- input: option,
151
- usdRequired: daimoPayOrder.destFinalCallTokenAmount.usd,
152
- toAddress: assertNotNull(hydratedOrder.intentAddr, `[PAY DEPOSIT ADDRESS] missing intentAddr on order ${hydratedOrder.id}`),
153
- });
154
- return depositAddressOption;
155
- };
156
- const refreshOrder = useCallback(async () => {
157
- const id = daimoPayOrder?.id?.toString();
158
- if (!id)
159
- return;
160
- const { order } = await trpc.getOrder.query({
161
- id,
162
- });
163
- // Don't overwrite the order if a new order was generated.
164
- if (daimoPayOrder == null || order.id === daimoPayOrder.id) {
165
- log(`[CHECKOUT] refreshed order: ${order.id}`);
166
- setDaimoPayOrder(order);
167
- }
168
- else {
169
- log(`[CHECKOUT] IGNORING refreshOrder, wrong ID: ${order.id} vs ${daimoPayOrder.id}`);
170
- }
171
- }, [daimoPayOrder?.id]);
172
- /** User picked a different deposit amount. */
173
- const setChosenUsd = (usd) => {
174
- assert(!!daimoPayOrder, "[SET CHOSEN USD] daimoPayOrder cannot be null");
175
- const token = daimoPayOrder.destFinalCallTokenAmount.token;
176
- const tokenUnits = (usd / token.usd).toString();
177
- const tokenAmount = parseUnits(tokenUnits, token.decimals);
178
- // TODO: remove amount from destFinalCall, it is redundant with
179
- // destFinalCallTokenAmount. Here, we only modify one and not the other.
180
- log(`[CHECKOUT] setting chosen USD amount to $${usd} = ${tokenUnits} ${token.symbol}`);
181
- setDaimoPayOrder({
182
- ...daimoPayOrder,
183
- destFinalCallTokenAmount: {
184
- token,
185
- amount: tokenAmount.toString(),
186
- usd: usd,
187
- },
188
- });
189
- };
190
- const setPayId = useCallback(async (payId) => {
191
- if (!payId)
192
- return;
193
- const id = readDaimoPayOrderID(payId).toString();
194
- if (daimoPayOrder && BigInt(id) == daimoPayOrder.id) {
195
- // Already loaded, ignore.
196
- return;
197
- }
198
- const { order } = await trpc.getOrder.query({ id });
199
- if (!order) {
200
- console.error(`[CHECKOUT] setPayId: no order found for ${payId}`);
201
- return;
202
- }
203
- log(`[CHECKOUT] setPayId: fetched order: ${JSON.stringify(order)}`);
204
- setDaimoPayOrder(order);
205
- }, [daimoPayOrder]);
206
- /** Called whenever params change. */
207
- const setPayParams = async (payParams) => {
208
- assert(payParams != null, "[SET PAY PARAMS] payParams cannot be null");
209
- setPayParamsState(payParams);
210
- setIsDepositFlow(payParams.toUnits == null);
211
- generatePreviewOrder(payParams);
212
- };
213
- const generatePreviewOrder = async (payParams) => {
214
- // toUnits is undefined if and only if we're in deposit flow.
215
- // Set dummy value for deposit flow, since user can edit the amount.
216
- const toUnits = payParams.toUnits == null ? "0" : payParams.toUnits;
217
- const orderPreview = await trpc.previewOrder.query({
218
- appId: payParams.appId,
219
- toChain: payParams.toChain,
220
- toToken: payParams.toToken,
221
- toUnits,
222
- toAddress: payParams.toAddress,
223
- toCallData: payParams.toCallData,
224
- isAmountEditable: payParams.toUnits == null,
225
- metadata: {
226
- intent: payParams.intent ?? "Pay",
227
- items: [],
228
- payer: {
229
- paymentOptions: payParams.paymentOptions,
230
- preferredChains: payParams.preferredChains,
231
- preferredTokens: payParams.preferredTokens,
232
- evmChains: payParams.evmChains,
233
- },
234
- },
235
- externalId: payParams.externalId,
236
- userMetadata: payParams.metadata,
237
- });
238
- log(`[CHECKOUT] generated preview: ${JSON.stringify(orderPreview)}`);
239
- setDaimoPayOrder(orderPreview);
240
- };
241
- const onSuccess = ({ txHash, txURL }) => {
242
- if (modalOptions?.closeOnSuccess) {
243
- log(`[CHECKOUT] transaction succeeded, closing: ${txHash} ${txURL}`);
244
- setTimeout(() => setOpen(false, { event: "wait-success" }), 1000);
245
- }
246
- };
247
- return {
248
- setPayId,
249
- payParams,
250
- setPayParams,
251
- generatePreviewOrder,
252
- daimoPayOrder,
253
- isDepositFlow,
254
- modalOptions,
255
- setModalOptions,
256
- paymentWaitingMessage,
257
- selectedExternalOption,
258
- selectedTokenOption,
259
- selectedSolanaTokenOption,
260
- externalPaymentOptions,
261
- walletPaymentOptions,
262
- solanaPaymentOptions,
263
- depositAddressOptions,
264
- selectedDepositAddressOption,
265
- getOrderUsdLimit,
266
- setPaymentWaitingMessage,
267
- setSelectedExternalOption,
268
- setSelectedTokenOption,
269
- setSelectedSolanaTokenOption,
270
- setSelectedDepositAddressOption,
271
- setChosenUsd,
272
- payWithToken,
273
- payWithExternal,
274
- payWithDepositAddress,
275
- payWithSolanaToken,
276
- refreshOrder,
277
- onSuccess,
278
- senderEnsName: senderEnsName ?? undefined,
279
- };
280
- }
281
-
282
- export { usePaymentState };
283
- //# sourceMappingURL=usePaymentState.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"usePaymentState.js","sources":["../../../src/hooks/usePaymentState.ts"],"sourcesContent":["import { assert, assertNotNull, ethereum, readDaimoPayOrderID, } from \"@daimo/pay-common\";\nimport { useWallet } from \"@solana/wallet-adapter-react\";\nimport { useCallback, useEffect, useState } from \"react\";\nimport { formatUnits, parseUnits } from \"viem\";\nimport { useAccount, useEnsName } from \"wagmi\";\nimport { detectPlatform } from \"../utils/platform\";\nimport { useDepositAddressOptions } from \"./useDepositAddressOptions\";\nimport { useExternalPaymentOptions } from \"./useExternalPaymentOptions\";\nimport { useOrderUsdLimits } from \"./useOrderUsdLimits\";\nimport { usePayWithSolanaToken } from \"./usePayWithSolanaToken\";\nimport { usePayWithToken } from \"./usePayWithToken\";\nimport { useSolanaPaymentOptions } from \"./useSolanaPaymentOptions\";\nimport { useWalletPaymentOptions } from \"./useWalletPaymentOptions\";\nexport function usePaymentState({ trpc, daimoPayOrder, setDaimoPayOrder, setOpen, log, redirectReturnUrl, }) {\n // Browser state.\n const [platform, setPlatform] = useState();\n useEffect(() => {\n setPlatform(detectPlatform(window.navigator.userAgent));\n }, []);\n // Wallet state.\n const { address: senderAddr } = useAccount();\n const { data: senderEnsName } = useEnsName({\n chainId: ethereum.chainId,\n address: senderAddr,\n });\n // Solana wallet state.\n const solanaWallet = useWallet();\n const solanaPubKey = solanaWallet.publicKey?.toBase58();\n // Daimo Pay order state.\n const [payParams, setPayParamsState] = useState();\n const [paymentWaitingMessage, setPaymentWaitingMessage] = useState();\n const [isDepositFlow, setIsDepositFlow] = useState(false);\n // Payment UI config.\n const [modalOptions, setModalOptions] = useState({});\n // UI state. Selection for external payment (Binance, etc) vs wallet payment.\n const externalPaymentOptions = useExternalPaymentOptions({\n trpc,\n filterIds: daimoPayOrder?.metadata.payer?.paymentOptions,\n platform,\n usdRequired: daimoPayOrder?.destFinalCallTokenAmount.usd,\n mode: daimoPayOrder?.mode,\n });\n const walletPaymentOptions = useWalletPaymentOptions({\n trpc,\n address: senderAddr,\n usdRequired: daimoPayOrder?.destFinalCallTokenAmount.usd,\n destChainId: daimoPayOrder?.destFinalCallTokenAmount.token.chainId,\n preferredChains: daimoPayOrder?.metadata.payer?.preferredChains,\n preferredTokens: daimoPayOrder?.metadata.payer?.preferredTokens,\n evmChains: daimoPayOrder?.metadata.payer?.evmChains,\n isDepositFlow,\n log,\n });\n const solanaPaymentOptions = useSolanaPaymentOptions({\n trpc,\n address: solanaPubKey,\n usdRequired: daimoPayOrder?.destFinalCallTokenAmount.usd,\n isDepositFlow,\n });\n const depositAddressOptions = useDepositAddressOptions({\n trpc,\n usdRequired: daimoPayOrder?.destFinalCallTokenAmount.usd,\n mode: daimoPayOrder?.mode,\n });\n const chainOrderUsdLimits = useOrderUsdLimits({ trpc });\n /** Create a new order or hydrate an existing one. */\n const createOrHydrate = async ({ order, refundAddress, externalPaymentOption, }) => {\n assert(!!platform, \"[CREATE/HYDRATE] missing platform\");\n if (payParams == null) {\n log(`[CREATE/HYDRATE] hydrating existing order ${order.id}`);\n return await trpc.hydrateOrder.query({\n id: order.id.toString(),\n chosenFinalTokenAmount: order.destFinalCallTokenAmount.amount,\n platform,\n refundAddress,\n externalPaymentOption,\n redirectReturnUrl,\n });\n }\n log(`[CREATE/HYDRATE] creating+hydrating new order ${order.id}`);\n // Update units, if isDepositFlow then the user may have changed the amount.\n const toUnits = formatUnits(BigInt(order.destFinalCallTokenAmount.amount), order.destFinalCallTokenAmount.token.decimals);\n return await trpc.createOrder.mutate({\n appId: payParams.appId,\n paymentInput: {\n ...payParams,\n id: order.id.toString(),\n toUnits,\n metadata: order.metadata,\n userMetadata: payParams.metadata,\n isAmountEditable: isDepositFlow,\n },\n platform,\n refundAddress,\n externalPaymentOption,\n redirectReturnUrl,\n });\n };\n const { payWithToken } = usePayWithToken({\n trpc,\n senderAddr,\n daimoPayOrder,\n setDaimoPayOrder,\n createOrHydrate,\n log,\n });\n const { payWithSolanaToken } = usePayWithSolanaToken({\n trpc,\n daimoPayOrder,\n setDaimoPayOrder,\n createOrHydrate,\n log,\n });\n const [selectedExternalOption, setSelectedExternalOption] = useState();\n const [selectedTokenOption, setSelectedTokenOption] = useState();\n const [selectedSolanaTokenOption, setSelectedSolanaTokenOption] = useState();\n const [selectedDepositAddressOption, setSelectedDepositAddressOption] = useState();\n const getOrderUsdLimit = () => {\n const DEFAULT_USD_LIMIT = 20000;\n if (daimoPayOrder == null || chainOrderUsdLimits.loading) {\n return DEFAULT_USD_LIMIT;\n }\n const destChainId = daimoPayOrder.destFinalCallTokenAmount.token.chainId;\n return destChainId in chainOrderUsdLimits.limits\n ? chainOrderUsdLimits.limits[destChainId]\n : DEFAULT_USD_LIMIT;\n };\n const payWithExternal = async (option) => {\n assert(!!daimoPayOrder, \"[PAY EXTERNAL] daimoPayOrder cannot be null\");\n assert(!!platform, \"[PAY EXTERNAL] platform cannot be null\");\n const { hydratedOrder, externalPaymentOptionData } = await createOrHydrate({\n order: daimoPayOrder,\n externalPaymentOption: option,\n });\n assert(!!externalPaymentOptionData, \"[PAY EXTERNAL] missing externalPaymentOptionData\");\n log(`[PAY EXTERNAL] hydrated order: ${JSON.stringify(hydratedOrder)}, checking out with external payment: ${option}`);\n setPaymentWaitingMessage(externalPaymentOptionData.waitingMessage);\n setDaimoPayOrder(hydratedOrder);\n return externalPaymentOptionData.url;\n };\n const payWithDepositAddress = async (option) => {\n assert(!!daimoPayOrder, \"[PAY DEPOSIT ADDRESS] missing daimoPayOrder\");\n const { hydratedOrder } = await createOrHydrate({\n order: daimoPayOrder,\n });\n setDaimoPayOrder(hydratedOrder);\n log(`[PAY DEPOSIT ADDRESS] hydrated order: ${JSON.stringify(hydratedOrder)}, checking out with deposit address: ${option}`);\n const depositAddressOption = await trpc.getDepositAddressOptionData.query({\n input: option,\n usdRequired: daimoPayOrder.destFinalCallTokenAmount.usd,\n toAddress: assertNotNull(hydratedOrder.intentAddr, `[PAY DEPOSIT ADDRESS] missing intentAddr on order ${hydratedOrder.id}`),\n });\n return depositAddressOption;\n };\n const refreshOrder = useCallback(async () => {\n const id = daimoPayOrder?.id?.toString();\n if (!id)\n return;\n const { order } = await trpc.getOrder.query({\n id,\n });\n // Don't overwrite the order if a new order was generated.\n if (daimoPayOrder == null || order.id === daimoPayOrder.id) {\n log(`[CHECKOUT] refreshed order: ${order.id}`);\n setDaimoPayOrder(order);\n }\n else {\n log(`[CHECKOUT] IGNORING refreshOrder, wrong ID: ${order.id} vs ${daimoPayOrder.id}`);\n }\n }, [daimoPayOrder?.id]);\n /** User picked a different deposit amount. */\n const setChosenUsd = (usd) => {\n assert(!!daimoPayOrder, \"[SET CHOSEN USD] daimoPayOrder cannot be null\");\n const token = daimoPayOrder.destFinalCallTokenAmount.token;\n const tokenUnits = (usd / token.usd).toString();\n const tokenAmount = parseUnits(tokenUnits, token.decimals);\n // TODO: remove amount from destFinalCall, it is redundant with\n // destFinalCallTokenAmount. Here, we only modify one and not the other.\n log(`[CHECKOUT] setting chosen USD amount to $${usd} = ${tokenUnits} ${token.symbol}`);\n setDaimoPayOrder({\n ...daimoPayOrder,\n destFinalCallTokenAmount: {\n token,\n amount: tokenAmount.toString(),\n usd: usd,\n },\n });\n };\n const setPayId = useCallback(async (payId) => {\n if (!payId)\n return;\n const id = readDaimoPayOrderID(payId).toString();\n if (daimoPayOrder && BigInt(id) == daimoPayOrder.id) {\n // Already loaded, ignore.\n return;\n }\n const { order } = await trpc.getOrder.query({ id });\n if (!order) {\n console.error(`[CHECKOUT] setPayId: no order found for ${payId}`);\n return;\n }\n log(`[CHECKOUT] setPayId: fetched order: ${JSON.stringify(order)}`);\n setDaimoPayOrder(order);\n }, [daimoPayOrder]);\n /** Called whenever params change. */\n const setPayParams = async (payParams) => {\n assert(payParams != null, \"[SET PAY PARAMS] payParams cannot be null\");\n setPayParamsState(payParams);\n setIsDepositFlow(payParams.toUnits == null);\n generatePreviewOrder(payParams);\n };\n const generatePreviewOrder = async (payParams) => {\n // toUnits is undefined if and only if we're in deposit flow.\n // Set dummy value for deposit flow, since user can edit the amount.\n const toUnits = payParams.toUnits == null ? \"0\" : payParams.toUnits;\n const orderPreview = await trpc.previewOrder.query({\n appId: payParams.appId,\n toChain: payParams.toChain,\n toToken: payParams.toToken,\n toUnits,\n toAddress: payParams.toAddress,\n toCallData: payParams.toCallData,\n isAmountEditable: payParams.toUnits == null,\n metadata: {\n intent: payParams.intent ?? \"Pay\",\n items: [],\n payer: {\n paymentOptions: payParams.paymentOptions,\n preferredChains: payParams.preferredChains,\n preferredTokens: payParams.preferredTokens,\n evmChains: payParams.evmChains,\n },\n },\n externalId: payParams.externalId,\n userMetadata: payParams.metadata,\n });\n log(`[CHECKOUT] generated preview: ${JSON.stringify(orderPreview)}`);\n setDaimoPayOrder(orderPreview);\n };\n const onSuccess = ({ txHash, txURL }) => {\n if (modalOptions?.closeOnSuccess) {\n log(`[CHECKOUT] transaction succeeded, closing: ${txHash} ${txURL}`);\n setTimeout(() => setOpen(false, { event: \"wait-success\" }), 1000);\n }\n };\n return {\n setPayId,\n payParams,\n setPayParams,\n generatePreviewOrder,\n daimoPayOrder,\n isDepositFlow,\n modalOptions,\n setModalOptions,\n paymentWaitingMessage,\n selectedExternalOption,\n selectedTokenOption,\n selectedSolanaTokenOption,\n externalPaymentOptions,\n walletPaymentOptions,\n solanaPaymentOptions,\n depositAddressOptions,\n selectedDepositAddressOption,\n getOrderUsdLimit,\n setPaymentWaitingMessage,\n setSelectedExternalOption,\n setSelectedTokenOption,\n setSelectedSolanaTokenOption,\n setSelectedDepositAddressOption,\n setChosenUsd,\n payWithToken,\n payWithExternal,\n payWithDepositAddress,\n payWithSolanaToken,\n refreshOrder,\n onSuccess,\n senderEnsName: senderEnsName ?? undefined,\n };\n}\n"],"names":[],"mappings":"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"}
@@ -1,14 +0,0 @@
1
- import { useRef } from 'react';
2
-
3
- function usePrevious(value, initial) {
4
- const ref = useRef({ target: value, previous: initial });
5
- if (ref.current.target !== value) {
6
- // The value changed.
7
- ref.current.previous = ref.current.target;
8
- ref.current.target = value;
9
- }
10
- return ref.current.previous;
11
- }
12
-
13
- export { usePrevious as default };
14
- //# sourceMappingURL=usePrevious.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"usePrevious.js","sources":["../../../src/hooks/usePrevious.tsx"],"sourcesContent":["import { useRef } from \"react\";\nexport default function usePrevious(value, initial) {\n const ref = useRef({ target: value, previous: initial });\n if (ref.current.target !== value) {\n // The value changed.\n ref.current.previous = ref.current.target;\n ref.current.target = value;\n }\n return ref.current.previous;\n}\n"],"names":[],"mappings":";;AACe,SAAS,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE;AACpD,IAAI,MAAM,GAAG,GAAG,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;AAC7D,IAAI,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,KAAK,EAAE;AACtC;AACA,QAAQ,GAAG,CAAC,OAAO,CAAC,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC;AAClD,QAAQ,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC;AACnC,KAAK;AACL,IAAI,OAAO,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC;AAChC;;;;"}
@@ -1,39 +0,0 @@
1
- import { useState, useEffect } from 'react';
2
-
3
- /** Wallet payment options. User picks one. */
4
- function useSolanaPaymentOptions({ trpc, address, usdRequired, isDepositFlow, }) {
5
- const [options, setOptions] = useState(null);
6
- const [isLoading, setIsLoading] = useState(false);
7
- useEffect(() => {
8
- const refreshWalletPaymentOptions = async () => {
9
- if (address == null || usdRequired == null)
10
- return;
11
- setOptions(null);
12
- setIsLoading(true);
13
- try {
14
- const newOptions = await trpc.getSolanaPaymentOptions.query({
15
- pubKey: address,
16
- // API expects undefined for deposit flow.
17
- usdRequired: isDepositFlow ? undefined : usdRequired,
18
- });
19
- setOptions(newOptions);
20
- }
21
- catch (error) {
22
- console.error(error);
23
- }
24
- finally {
25
- setIsLoading(false);
26
- }
27
- };
28
- if (address != null && usdRequired != null) {
29
- refreshWalletPaymentOptions();
30
- }
31
- }, [address, usdRequired, isDepositFlow]);
32
- return {
33
- options,
34
- isLoading,
35
- };
36
- }
37
-
38
- export { useSolanaPaymentOptions };
39
- //# sourceMappingURL=useSolanaPaymentOptions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useSolanaPaymentOptions.js","sources":["../../../src/hooks/useSolanaPaymentOptions.ts"],"sourcesContent":["import { useEffect, useState } from \"react\";\n/** Wallet payment options. User picks one. */\nexport function useSolanaPaymentOptions({ trpc, address, usdRequired, isDepositFlow, }) {\n const [options, setOptions] = useState(null);\n const [isLoading, setIsLoading] = useState(false);\n useEffect(() => {\n const refreshWalletPaymentOptions = async () => {\n if (address == null || usdRequired == null)\n return;\n setOptions(null);\n setIsLoading(true);\n try {\n const newOptions = await trpc.getSolanaPaymentOptions.query({\n pubKey: address,\n // API expects undefined for deposit flow.\n usdRequired: isDepositFlow ? undefined : usdRequired,\n });\n setOptions(newOptions);\n }\n catch (error) {\n console.error(error);\n }\n finally {\n setIsLoading(false);\n }\n };\n if (address != null && usdRequired != null) {\n refreshWalletPaymentOptions();\n }\n }, [address, usdRequired, isDepositFlow]);\n return {\n options,\n isLoading,\n };\n}\n"],"names":[],"mappings":";;AACA;AACO,SAAS,uBAAuB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,aAAa,GAAG,EAAE;AACxF,IAAI,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;AACjD,IAAI,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;AACtD,IAAI,SAAS,CAAC,MAAM;AACpB,QAAQ,MAAM,2BAA2B,GAAG,YAAY;AACxD,YAAY,IAAI,OAAO,IAAI,IAAI,IAAI,WAAW,IAAI,IAAI;AACtD,gBAAgB,OAAO;AACvB,YAAY,UAAU,CAAC,IAAI,CAAC,CAAC;AAC7B,YAAY,YAAY,CAAC,IAAI,CAAC,CAAC;AAC/B,YAAY,IAAI;AAChB,gBAAgB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC;AAC5E,oBAAoB,MAAM,EAAE,OAAO;AACnC;AACA,oBAAoB,WAAW,EAAE,aAAa,GAAG,SAAS,GAAG,WAAW;AACxE,iBAAiB,CAAC,CAAC;AACnB,gBAAgB,UAAU,CAAC,UAAU,CAAC,CAAC;AACvC,aAAa;AACb,YAAY,OAAO,KAAK,EAAE;AAC1B,gBAAgB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AACrC,aAAa;AACb,oBAAoB;AACpB,gBAAgB,YAAY,CAAC,KAAK,CAAC,CAAC;AACpC,aAAa;AACb,SAAS,CAAC;AACV,QAAQ,IAAI,OAAO,IAAI,IAAI,IAAI,WAAW,IAAI,IAAI,EAAE;AACpD,YAAY,2BAA2B,EAAE,CAAC;AAC1C,SAAS;AACT,KAAK,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC,CAAC;AAC9C,IAAI,OAAO;AACX,QAAQ,OAAO;AACf,QAAQ,SAAS;AACjB,KAAK,CAAC;AACN;;;;"}