@daimo/sdk 1.0.0-rc.2 → 1.0.0-rc.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 (260) hide show
  1. package/dist/common/api.d.ts.map +1 -1
  2. package/dist/common/api.js +3 -1
  3. package/dist/common/api.js.map +1 -1
  4. package/dist/common/legacy/assert.d.ts +6 -0
  5. package/dist/common/legacy/assert.d.ts.map +1 -0
  6. package/dist/common/legacy/assert.js +25 -0
  7. package/dist/common/legacy/assert.js.map +1 -0
  8. package/dist/common/legacy/client.d.ts +67 -0
  9. package/dist/common/legacy/client.d.ts.map +1 -0
  10. package/dist/common/legacy/client.js +55 -0
  11. package/dist/common/legacy/client.js.map +1 -0
  12. package/dist/common/legacy/debug.d.ts +5 -0
  13. package/dist/common/legacy/debug.d.ts.map +1 -0
  14. package/dist/common/legacy/debug.js +21 -0
  15. package/dist/common/legacy/debug.js.map +1 -0
  16. package/dist/common/legacy/format.d.ts +16 -0
  17. package/dist/common/legacy/format.d.ts.map +1 -0
  18. package/dist/common/legacy/format.js +34 -0
  19. package/dist/common/legacy/format.js.map +1 -0
  20. package/dist/common/legacy/index.d.ts +11 -0
  21. package/dist/common/legacy/index.d.ts.map +1 -0
  22. package/dist/common/legacy/index.js +11 -0
  23. package/dist/common/legacy/index.js.map +1 -0
  24. package/dist/common/legacy/primitiveTypes.d.ts +11 -0
  25. package/dist/common/legacy/primitiveTypes.d.ts.map +1 -0
  26. package/dist/common/legacy/primitiveTypes.js +14 -0
  27. package/dist/common/legacy/primitiveTypes.js.map +1 -0
  28. package/dist/common/legacy/session.d.ts +246 -0
  29. package/dist/common/legacy/session.d.ts.map +1 -0
  30. package/dist/common/legacy/session.js +124 -0
  31. package/dist/common/legacy/session.js.map +1 -0
  32. package/dist/common/legacy/try.d.ts +4 -0
  33. package/dist/common/legacy/try.d.ts.map +1 -0
  34. package/dist/common/legacy/try.js +26 -0
  35. package/dist/common/legacy/try.js.map +1 -0
  36. package/dist/common/primitives.d.ts +2 -2
  37. package/dist/common/primitives.d.ts.map +1 -1
  38. package/dist/common/primitives.js +13 -4
  39. package/dist/common/primitives.js.map +1 -1
  40. package/dist/common/session.d.ts +2 -0
  41. package/dist/common/session.d.ts.map +1 -1
  42. package/dist/common/session.js +4 -0
  43. package/dist/common/session.js.map +1 -1
  44. package/dist/hooks/DaimoClientContext.d.ts +7 -0
  45. package/dist/hooks/DaimoClientContext.d.ts.map +1 -0
  46. package/dist/hooks/DaimoClientContext.js +15 -0
  47. package/dist/hooks/DaimoClientContext.js.map +1 -0
  48. package/dist/hooks/formatUserError.d.ts +3 -0
  49. package/dist/hooks/formatUserError.d.ts.map +1 -0
  50. package/dist/hooks/formatUserError.js +30 -0
  51. package/dist/hooks/formatUserError.js.map +1 -0
  52. package/dist/hooks/index.d.ts +12 -0
  53. package/dist/hooks/index.d.ts.map +1 -0
  54. package/dist/hooks/index.js +9 -0
  55. package/dist/hooks/index.js.map +1 -0
  56. package/dist/hooks/locale.d.ts +7 -0
  57. package/dist/hooks/locale.d.ts.map +1 -0
  58. package/dist/hooks/locale.js +15 -0
  59. package/dist/hooks/locale.js.map +1 -0
  60. package/dist/hooks/locales/en.d.ts +60 -0
  61. package/dist/hooks/locales/en.d.ts.map +1 -0
  62. package/dist/hooks/locales/en.js +76 -0
  63. package/dist/hooks/locales/en.js.map +1 -0
  64. package/dist/hooks/locales/es.d.ts +4 -0
  65. package/dist/hooks/locales/es.d.ts.map +1 -0
  66. package/dist/hooks/locales/es.js +60 -0
  67. package/dist/hooks/locales/es.js.map +1 -0
  68. package/dist/hooks/navEvent.d.ts +60 -0
  69. package/dist/hooks/navEvent.d.ts.map +1 -0
  70. package/dist/hooks/navEvent.js +16 -0
  71. package/dist/hooks/navEvent.js.map +1 -0
  72. package/dist/hooks/types.d.ts +71 -0
  73. package/dist/hooks/types.d.ts.map +1 -0
  74. package/dist/hooks/types.js +14 -0
  75. package/dist/hooks/types.js.map +1 -0
  76. package/dist/hooks/usePaymentCallbacks.d.ts +15 -0
  77. package/dist/hooks/usePaymentCallbacks.d.ts.map +1 -0
  78. package/dist/hooks/usePaymentCallbacks.js +27 -0
  79. package/dist/hooks/usePaymentCallbacks.js.map +1 -0
  80. package/dist/hooks/useSessionNav.d.ts +31 -0
  81. package/dist/hooks/useSessionNav.d.ts.map +1 -0
  82. package/dist/hooks/useSessionNav.js +439 -0
  83. package/dist/hooks/useSessionNav.js.map +1 -0
  84. package/dist/hooks/useSessionPolling.d.ts +10 -0
  85. package/dist/hooks/useSessionPolling.d.ts.map +1 -0
  86. package/dist/hooks/useSessionPolling.js +61 -0
  87. package/dist/hooks/useSessionPolling.js.map +1 -0
  88. package/dist/web/ChooseOptionPage.d.ts +9 -0
  89. package/dist/web/ChooseOptionPage.d.ts.map +1 -0
  90. package/dist/web/ChooseOptionPage.js +51 -0
  91. package/dist/web/ChooseOptionPage.js.map +1 -0
  92. package/dist/web/ConfirmationPage.d.ts +32 -0
  93. package/dist/web/ConfirmationPage.d.ts.map +1 -0
  94. package/dist/web/ConfirmationPage.js +72 -0
  95. package/dist/web/ConfirmationPage.js.map +1 -0
  96. package/dist/web/ConfirmationSpinner.d.ts +7 -0
  97. package/dist/web/ConfirmationSpinner.d.ts.map +1 -0
  98. package/dist/web/ConfirmationSpinner.js +20 -0
  99. package/dist/web/ConfirmationSpinner.js.map +1 -0
  100. package/dist/web/DaimoModal.d.ts +15 -0
  101. package/dist/web/DaimoModal.d.ts.map +1 -0
  102. package/dist/web/DaimoModal.js +283 -0
  103. package/dist/web/DaimoModal.js.map +1 -0
  104. package/dist/web/DeeplinkPage.d.ts +8 -0
  105. package/dist/web/DeeplinkPage.d.ts.map +1 -0
  106. package/dist/web/DeeplinkPage.js +13 -0
  107. package/dist/web/DeeplinkPage.js.map +1 -0
  108. package/dist/web/ErrorPage.d.ts +28 -0
  109. package/dist/web/ErrorPage.d.ts.map +1 -0
  110. package/dist/web/ErrorPage.js +47 -0
  111. package/dist/web/ErrorPage.js.map +1 -0
  112. package/dist/web/ExchangePage.d.ts +11 -0
  113. package/dist/web/ExchangePage.d.ts.map +1 -0
  114. package/dist/web/ExchangePage.js +13 -0
  115. package/dist/web/ExchangePage.js.map +1 -0
  116. package/dist/web/ExpiredPage.d.ts +9 -0
  117. package/dist/web/ExpiredPage.d.ts.map +1 -0
  118. package/dist/web/ExpiredPage.js +12 -0
  119. package/dist/web/ExpiredPage.js.map +1 -0
  120. package/dist/web/ModalSkeleton.d.ts +7 -0
  121. package/dist/web/ModalSkeleton.d.ts.map +1 -0
  122. package/dist/web/ModalSkeleton.js +13 -0
  123. package/dist/web/ModalSkeleton.js.map +1 -0
  124. package/dist/web/ProgressDots.d.ts +16 -0
  125. package/dist/web/ProgressDots.d.ts.map +1 -0
  126. package/dist/web/ProgressDots.js +55 -0
  127. package/dist/web/ProgressDots.js.map +1 -0
  128. package/dist/web/QRCode.d.ts +7 -0
  129. package/dist/web/QRCode.d.ts.map +1 -0
  130. package/dist/web/QRCode.js +69 -0
  131. package/dist/web/QRCode.js.map +1 -0
  132. package/dist/web/SelectAmountPage.d.ts +21 -0
  133. package/dist/web/SelectAmountPage.d.ts.map +1 -0
  134. package/dist/web/SelectAmountPage.js +27 -0
  135. package/dist/web/SelectAmountPage.js.map +1 -0
  136. package/dist/web/SelectTokenPage.d.ts +14 -0
  137. package/dist/web/SelectTokenPage.d.ts.map +1 -0
  138. package/dist/web/SelectTokenPage.js +71 -0
  139. package/dist/web/SelectTokenPage.js.map +1 -0
  140. package/dist/web/WaitingDepositAddressPage.d.ts +14 -0
  141. package/dist/web/WaitingDepositAddressPage.d.ts.map +1 -0
  142. package/dist/web/WaitingDepositAddressPage.js +126 -0
  143. package/dist/web/WaitingDepositAddressPage.js.map +1 -0
  144. package/dist/web/WalletAmountPage.d.ts +10 -0
  145. package/dist/web/WalletAmountPage.d.ts.map +1 -0
  146. package/dist/web/WalletAmountPage.js +158 -0
  147. package/dist/web/WalletAmountPage.js.map +1 -0
  148. package/dist/web/api/navTree.d.ts +1 -0
  149. package/dist/web/api/navTree.d.ts.map +1 -1
  150. package/dist/web/buttons.d.ts +15 -0
  151. package/dist/web/buttons.d.ts.map +1 -0
  152. package/dist/web/buttons.js +24 -0
  153. package/dist/web/buttons.js.map +1 -0
  154. package/dist/web/components/ChooseChainPage.d.ts +9 -0
  155. package/dist/web/components/ChooseChainPage.d.ts.map +1 -0
  156. package/dist/web/components/ChooseChainPage.js +10 -0
  157. package/dist/web/components/ChooseChainPage.js.map +1 -0
  158. package/dist/web/components/ChooseOptionPage.d.ts.map +1 -1
  159. package/dist/web/components/ChooseOptionPage.js +2 -10
  160. package/dist/web/components/ChooseOptionPage.js.map +1 -1
  161. package/dist/web/components/ChooseWalletPage.d.ts +13 -0
  162. package/dist/web/components/ChooseWalletPage.d.ts.map +1 -0
  163. package/dist/web/components/ChooseWalletPage.js +15 -0
  164. package/dist/web/components/ChooseWalletPage.js.map +1 -0
  165. package/dist/web/components/ConfirmationPage.d.ts +3 -1
  166. package/dist/web/components/ConfirmationPage.d.ts.map +1 -1
  167. package/dist/web/components/ConfirmationPage.js +3 -2
  168. package/dist/web/components/ConfirmationPage.js.map +1 -1
  169. package/dist/web/components/DaimoModal.d.ts.map +1 -1
  170. package/dist/web/components/DaimoModal.js +72 -137
  171. package/dist/web/components/DaimoModal.js.map +1 -1
  172. package/dist/web/components/DeeplinkPage.d.ts +1 -0
  173. package/dist/web/components/DeeplinkPage.d.ts.map +1 -1
  174. package/dist/web/components/DeeplinkPage.js +13 -2
  175. package/dist/web/components/DeeplinkPage.js.map +1 -1
  176. package/dist/web/components/ExchangePage.js +2 -2
  177. package/dist/web/components/ExchangePage.js.map +1 -1
  178. package/dist/web/components/ExpiredPage.d.ts +2 -1
  179. package/dist/web/components/ExpiredPage.d.ts.map +1 -1
  180. package/dist/web/components/ExpiredPage.js +3 -3
  181. package/dist/web/components/ExpiredPage.js.map +1 -1
  182. package/dist/web/components/SelectTokenPage.d.ts +2 -1
  183. package/dist/web/components/SelectTokenPage.d.ts.map +1 -1
  184. package/dist/web/components/SelectTokenPage.js +5 -9
  185. package/dist/web/components/SelectTokenPage.js.map +1 -1
  186. package/dist/web/components/WalletAmountPage.js +1 -1
  187. package/dist/web/components/WalletAmountPage.js.map +1 -1
  188. package/dist/web/components/containers.d.ts.map +1 -1
  189. package/dist/web/components/containers.js +6 -2
  190. package/dist/web/components/containers.js.map +1 -1
  191. package/dist/web/components/shared.d.ts +9 -4
  192. package/dist/web/components/shared.d.ts.map +1 -1
  193. package/dist/web/components/shared.js +13 -4
  194. package/dist/web/components/shared.js.map +1 -1
  195. package/dist/web/containers.d.ts +19 -0
  196. package/dist/web/containers.d.ts.map +1 -0
  197. package/dist/web/containers.js +77 -0
  198. package/dist/web/containers.js.map +1 -0
  199. package/dist/web/hooks/locales/en.d.ts +2 -0
  200. package/dist/web/hooks/locales/en.d.ts.map +1 -1
  201. package/dist/web/hooks/locales/en.js +2 -0
  202. package/dist/web/hooks/locales/en.js.map +1 -1
  203. package/dist/web/hooks/locales/es.d.ts.map +1 -1
  204. package/dist/web/hooks/locales/es.js +2 -0
  205. package/dist/web/hooks/locales/es.js.map +1 -1
  206. package/dist/web/hooks/types.d.ts +8 -0
  207. package/dist/web/hooks/types.d.ts.map +1 -1
  208. package/dist/web/hooks/types.js.map +1 -1
  209. package/dist/web/hooks/useDepositAddress.d.ts +7 -0
  210. package/dist/web/hooks/useDepositAddress.d.ts.map +1 -0
  211. package/dist/web/hooks/useDepositAddress.js +36 -0
  212. package/dist/web/hooks/useDepositAddress.js.map +1 -0
  213. package/dist/web/hooks/useInjectedWallets.d.ts +14 -0
  214. package/dist/web/hooks/useInjectedWallets.d.ts.map +1 -0
  215. package/dist/web/hooks/useInjectedWallets.js +67 -0
  216. package/dist/web/hooks/useInjectedWallets.js.map +1 -0
  217. package/dist/web/hooks/usePaymentCallbacks.d.ts.map +1 -1
  218. package/dist/web/hooks/usePaymentCallbacks.js +2 -3
  219. package/dist/web/hooks/usePaymentCallbacks.js.map +1 -1
  220. package/dist/web/hooks/useSessionNav.d.ts +5 -3
  221. package/dist/web/hooks/useSessionNav.d.ts.map +1 -1
  222. package/dist/web/hooks/useSessionNav.js +111 -30
  223. package/dist/web/hooks/useSessionNav.js.map +1 -1
  224. package/dist/web/hooks/useSessionPolling.d.ts +1 -1
  225. package/dist/web/hooks/useSessionPolling.d.ts.map +1 -1
  226. package/dist/web/hooks/useSessionPolling.js +14 -19
  227. package/dist/web/hooks/useSessionPolling.js.map +1 -1
  228. package/dist/web/hooks/useWalletFlow.d.ts +4 -0
  229. package/dist/web/hooks/useWalletFlow.d.ts.map +1 -1
  230. package/dist/web/hooks/useWalletFlow.js +66 -11
  231. package/dist/web/hooks/useWalletFlow.js.map +1 -1
  232. package/dist/web/hooks/walletProvider.d.ts +2 -0
  233. package/dist/web/hooks/walletProvider.d.ts.map +1 -1
  234. package/dist/web/hooks/walletProvider.js +9 -0
  235. package/dist/web/hooks/walletProvider.js.map +1 -1
  236. package/dist/web/icons.d.ts +22 -0
  237. package/dist/web/icons.d.ts.map +1 -0
  238. package/dist/web/icons.js +33 -0
  239. package/dist/web/icons.js.map +1 -0
  240. package/dist/web/index.d.ts +3 -0
  241. package/dist/web/index.d.ts.map +1 -1
  242. package/dist/web/index.js +2 -0
  243. package/dist/web/index.js.map +1 -1
  244. package/dist/web/shared.d.ts +93 -0
  245. package/dist/web/shared.d.ts.map +1 -0
  246. package/dist/web/shared.js +202 -0
  247. package/dist/web/shared.js.map +1 -0
  248. package/dist/web/useCopyToClipboard.d.ts +6 -0
  249. package/dist/web/useCopyToClipboard.d.ts.map +1 -0
  250. package/dist/web/useCopyToClipboard.js +20 -0
  251. package/dist/web/useCopyToClipboard.js.map +1 -0
  252. package/dist/web/useWalletFlow.d.ts +23 -0
  253. package/dist/web/useWalletFlow.d.ts.map +1 -0
  254. package/dist/web/useWalletFlow.js +334 -0
  255. package/dist/web/useWalletFlow.js.map +1 -0
  256. package/dist/web/walletProvider.d.ts +34 -0
  257. package/dist/web/walletProvider.d.ts.map +1 -0
  258. package/dist/web/walletProvider.js +14 -0
  259. package/dist/web/walletProvider.js.map +1 -0
  260. package/package.json +2 -1
@@ -1,9 +1,10 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { tron } from "../../common/chain.js";
3
- import { useCallback, useEffect, useRef, useState } from "react";
4
- import { formatUserError } from "../hooks/formatUserError.js";
3
+ import { isSessionTerminal } from "../../common/session.js";
4
+ import { useCallback, useEffect, useLayoutEffect, useRef, useState } from "react";
5
5
  import { t } from "../hooks/locale.js";
6
6
  import { createNavLogger } from "../hooks/navEvent.js";
7
+ import { useDepositAddress } from "../hooks/useDepositAddress.js";
7
8
  import { usePaymentCallbacks } from "../hooks/usePaymentCallbacks.js";
8
9
  import { useSessionNav } from "../hooks/useSessionNav.js";
9
10
  import { useSessionPolling } from "../hooks/useSessionPolling.js";
@@ -11,6 +12,8 @@ import { useDaimoClient } from "../hooks/DaimoClientContext.js";
11
12
  import { findNode, } from "../hooks/types.js";
12
13
  import { PrimaryButton } from "./buttons.js";
13
14
  import { ChooseOptionPage } from "./ChooseOptionPage.js";
15
+ import { ChooseChainPage } from "./ChooseChainPage.js";
16
+ import { ChooseWalletPage } from "./ChooseWalletPage.js";
14
17
  import { ConfirmationPage } from "./ConfirmationPage.js";
15
18
  import { EmbeddedContainer, ModalContainer } from "./containers.js";
16
19
  import { DeeplinkPage } from "./DeeplinkPage.js";
@@ -18,8 +21,9 @@ import { ExchangePage } from "./ExchangePage.js";
18
21
  import { ExpiredPage } from "./ExpiredPage.js";
19
22
  import { SelectAmountPage } from "./SelectAmountPage.js";
20
23
  import { SelectTokenPage } from "./SelectTokenPage.js";
21
- import { ContactSupportButton, ErrorMessage as SharedErrorMessage, } from "./shared.js";
22
- import { useWalletFlow, isUserRejection } from "../hooks/useWalletFlow.js";
24
+ import { CenteredContent, ContactSupportButton, ErrorMessage as SharedErrorMessage, PageHeader, } from "./shared.js";
25
+ import { useInjectedWallets, } from "../hooks/useInjectedWallets.js";
26
+ import { useWalletFlow } from "../hooks/useWalletFlow.js";
23
27
  import { WaitingDepositAddressPage } from "./WaitingDepositAddressPage.js";
24
28
  import { WalletAmountPage } from "./WalletAmountPage.js";
25
29
  function useModalCloseHandler(sessionId, clientSecret, getNodeCtx, isOpen, setIsOpen, onClose) {
@@ -38,166 +42,93 @@ function useModalCloseHandler(sessionId, clientSecret, getNodeCtx, isOpen, setIs
38
42
  return { handleClose };
39
43
  }
40
44
  export function DaimoModal(props) {
41
- const { sessionId, clientSecret, embedded = false, animate = true, defaultOpen = true, maxHeight, } = props;
45
+ const { sessionId, clientSecret, embedded = false, animate = true, defaultOpen = true, maxHeight, onClose, } = props;
42
46
  const client = useDaimoClient();
43
47
  const [session, setSession] = useState(null);
44
48
  const [isOpen, setIsOpen] = useState(defaultOpen);
49
+ const [pageKey, setPageKey] = useState();
50
+ const [showFooterSpacer, setShowFooterSpacer] = useState(true);
51
+ const closeRef = useRef(() => {
52
+ setIsOpen(false);
53
+ onClose?.();
54
+ });
45
55
  useEffect(() => {
46
56
  client.internal.sessions
47
57
  .retrieveWithNav(sessionId)
48
58
  .then(({ session: s }) => setSession({ ...s, clientSecret }))
49
59
  .catch((err) => console.error("failed to fetch session:", err));
50
60
  }, [sessionId, clientSecret]);
51
- if (!session) {
52
- if (!isOpen)
53
- return null;
54
- const skeleton = _jsx(SkeletonContent, {});
55
- if (embedded)
56
- return _jsx(EmbeddedContainer, { children: skeleton });
57
- return (_jsx(ModalContainer, { animate: animate, maxHeight: maxHeight, children: skeleton }));
61
+ if (!isOpen)
62
+ return null;
63
+ const content = session ? (_jsx(DaimoModalInner, { ...props, session: session, isOpen: isOpen, setIsOpen: setIsOpen, closeRef: closeRef, setPageKey: setPageKey, setShowFooterSpacer: setShowFooterSpacer })) : (_jsx(SkeletonContent, {}));
64
+ if (embedded) {
65
+ return (_jsx(EmbeddedContainer, { showFooterSpacer: showFooterSpacer, children: content }));
58
66
  }
59
- return (_jsx(DaimoModalInner, { ...props, session: session, isOpen: isOpen, setIsOpen: setIsOpen }));
67
+ return (_jsx(ModalContainer, { animate: animate, maxHeight: maxHeight, onClose: () => closeRef.current(), pageKey: pageKey, showFooterSpacer: showFooterSpacer, children: content }));
60
68
  }
61
69
  const CONNECTED_WALLET_NAV = [
62
70
  { type: "ConnectedWallet", id: "ConnectedWallet", title: "Connected Wallet" },
63
71
  ];
64
- function DaimoModalInner({ session: initialSession, isOpen, setIsOpen, connectedWalletOnly = false, embedded = false, animate = true, maxHeight, platform, returnUrl, returnLabel, onPaymentStarted, onPaymentCompleted, onOpen, onClose, }) {
65
- const client = useDaimoClient();
72
+ function DaimoModalInner({ session: initialSession, isOpen, setIsOpen, closeRef, setPageKey, setShowFooterSpacer, connectedWalletOnly = false, platform, returnUrl, returnLabel, onPaymentStarted, onPaymentCompleted, onOpen, onClose, }) {
66
73
  const effectiveInitial = connectedWalletOnly
67
74
  ? { ...initialSession, navTree: CONNECTED_WALLET_NAV }
68
75
  : initialSession;
69
- const { session, setSession } = useSessionPolling(effectiveInitial, isOpen);
70
- // Create EVM payment method on load to get the deposit address
71
- const [depositAddress, setDepositAddress] = useState(session.paymentMethod?.type === "evm"
72
- ? session.paymentMethod.receiverAddress ?? null
73
- : null);
74
- const initRef = useRef(false);
75
- useEffect(() => {
76
- if (initRef.current || depositAddress)
77
- return;
78
- initRef.current = true;
79
- client.sessions.paymentMethods
80
- .create(session.sessionId, {
81
- clientSecret: session.clientSecret,
82
- paymentMethod: { type: "evm" },
83
- })
84
- .then((result) => {
85
- const pm = result.session.paymentMethod;
86
- if (pm?.type === "evm") {
87
- setDepositAddress(pm.receiverAddress);
88
- }
89
- })
90
- .catch((err) => console.error("failed to init evm payment method:", err));
91
- }, [session.sessionId, session.clientSecret, depositAddress, client]);
92
- const nav = useSessionNav(session, setSession, platform);
76
+ const [pendingTxHash, setPendingTxHash] = useState();
77
+ const { session, setSession } = useSessionPolling(effectiveInitial, isOpen, pendingTxHash);
78
+ const depositAddress = useDepositAddress(session);
93
79
  const hasConnectedWallet = session.navTree.some((n) => n.type === "ConnectedWallet");
94
80
  const walletFlow = useWalletFlow(session.sessionId, depositAddress ?? "", hasConnectedWallet, session.clientSecret);
95
- const autoNavRef = useRef(null);
81
+ const nav = useSessionNav(session, setSession, isOpen, platform, walletFlow);
96
82
  useEffect(() => {
97
- if (!isOpen)
98
- return;
99
- if (nav.topEntry &&
100
- nav.topEntry.type !== "choose-option" &&
101
- nav.topEntry.type !== "deeplink") {
102
- return;
103
- }
104
- const currentNodeId = nav.topEntry?.nodeId;
105
- let node = currentNodeId
106
- ? findNode(currentNodeId, session.navTree)
107
- : (session.navTree[0] ?? null);
108
- let targetId = null;
109
- while (node?.type === "ChooseOption") {
110
- const chooseNode = node;
111
- if (chooseNode.options?.length !== 1)
112
- break;
113
- targetId = chooseNode.options[0].id;
114
- node = findNode(targetId, session.navTree);
115
- }
116
- if (!targetId && node && node.type !== "ChooseOption") {
117
- targetId = node.id;
118
- }
119
- if (targetId && autoNavRef.current !== targetId) {
120
- autoNavRef.current = targetId;
121
- nav.handleNavigate(targetId, { autoNav: true });
83
+ const top = nav.topEntry;
84
+ if (top?.type === "wallet-sending" && top.txHash) {
85
+ setPendingTxHash(top.txHash);
122
86
  }
123
- }, [isOpen, nav, session.navTree]);
124
- useEffect(() => {
125
- if (nav.topEntry?.type !== "wallet-connect")
126
- return;
127
- if (walletFlow.isConnecting || !walletFlow.wallet)
128
- return;
129
- nav.handleWalletConnected();
130
- }, [nav.topEntry, walletFlow.wallet, walletFlow.isConnecting, nav]);
131
- const sendingRef = useRef(null);
132
- useEffect(() => {
133
- if (nav.topEntry?.type !== "wallet-sending")
134
- return;
135
- if (nav.topEntry.txHash || nav.topEntry.error)
136
- return;
137
- const sendKey = `${nav.topEntry.nodeId}-${nav.topEntry.amountUsd}`;
138
- if (sendingRef.current === sendKey)
139
- return;
140
- sendingRef.current = sendKey;
141
- const { token, amountUsd } = nav.topEntry;
142
- walletFlow
143
- .sendTransaction(token, amountUsd)
144
- .then(({ txHash }) => {
145
- nav.handleWalletTxResult(txHash);
146
- sendingRef.current = null;
147
- })
148
- .catch((err) => {
149
- sendingRef.current = null;
150
- if (isUserRejection(err)) {
151
- nav.handleBack();
152
- return;
153
- }
154
- nav.handleWalletTxResult(undefined, formatUserError(err, t.transactionFailed));
155
- });
156
- }, [nav, walletFlow]);
87
+ }, [nav.topEntry]);
88
+ const injectedWallets = useInjectedWallets();
157
89
  const { handleClose } = useModalCloseHandler(session.sessionId, session.clientSecret, nav.getNodeCtx, isOpen, setIsOpen, onClose);
90
+ closeRef.current = handleClose;
158
91
  usePaymentCallbacks(session, isOpen, {
159
92
  onOpen,
160
93
  onPaymentStarted,
161
94
  onPaymentCompleted,
162
95
  });
163
- if (!isOpen)
164
- return null;
165
- const isTerminal = session.status === "expired" ||
166
- session.status === "succeeded" ||
167
- session.status === "bounced";
96
+ const isTerminal = isSessionTerminal(session.status);
168
97
  const pageKey = isTerminal
169
98
  ? session.status
170
99
  : `${nav.topEntry?.type ?? "root"}-${nav.topEntry?.nodeId ?? ""}`;
171
- const renderInContainer = (content, showFooterSpacer = true) => {
172
- const page = (_jsx("div", { className: "daimo-page-enter flex-1 min-h-0 flex flex-col", children: content }, pageKey));
173
- if (embedded) {
174
- return (_jsx(EmbeddedContainer, { showFooterSpacer: showFooterSpacer, children: page }));
175
- }
176
- return (_jsx(ModalContainer, { showFooterSpacer: showFooterSpacer, onClose: handleClose, animate: animate, pageKey: pageKey, maxHeight: maxHeight, children: page }));
177
- };
100
+ let content;
101
+ let showFooterSpacer = true;
178
102
  if (session.status === "expired") {
179
- return renderInContainer(_jsx(ExpiredPage, { onClose: handleClose }));
103
+ content = _jsx(ExpiredPage, { sessionId: session.sessionId, onClose: handleClose });
180
104
  }
181
- if (session.status === "processing" ||
105
+ else if (session.status === "processing" ||
182
106
  session.status === "succeeded" ||
183
107
  session.status === "bounced") {
184
- return renderInContainer(_jsx(ConfirmationPage, { sessionId: session.sessionId, sessionState: session.status, returnUrl: returnUrl, returnLabel: returnLabel }));
108
+ content = (_jsx(ConfirmationPage, { sessionId: session.sessionId, sessionState: session.status, returnUrl: returnUrl, returnLabel: returnLabel }));
185
109
  }
186
- const content = renderEntry(nav.topEntry, {
187
- session,
188
- canGoBack: nav.canGoBack,
189
- onNavigate: nav.handleNavigate,
190
- onBack: nav.handleBack,
191
- onAmountContinue: nav.handleAmountContinue,
192
- onRetry: nav.handleRetry,
193
- onRefresh: nav.handleRefresh,
194
- walletFlow,
195
- onWalletSelectToken: nav.handleWalletSelectToken,
196
- onWalletSending: nav.handleWalletSending,
197
- });
198
- const showFooterSpacer = !(!nav.topEntry ||
199
- (nav.topEntry.type === "choose-option" && !nav.canGoBack));
200
- return renderInContainer(content, showFooterSpacer);
110
+ else {
111
+ showFooterSpacer = !(!nav.topEntry ||
112
+ (nav.topEntry.type === "choose-option" && !nav.canGoBack));
113
+ content = renderEntry(nav.topEntry, {
114
+ session,
115
+ canGoBack: nav.canGoBack,
116
+ onNavigate: nav.handleNavigate,
117
+ onBack: nav.handleBack,
118
+ onAmountContinue: nav.handleAmountContinue,
119
+ onRetry: nav.handleRetry,
120
+ onRefresh: nav.handleRefresh,
121
+ injectedWallets,
122
+ onInjectedWalletSelect: nav.handleInjectedWalletSelect,
123
+ onChainSelect: nav.handleChainSelect,
124
+ walletFlow,
125
+ onWalletSelectToken: nav.handleWalletSelectToken,
126
+ onWalletSending: nav.handleWalletSending,
127
+ });
128
+ }
129
+ useLayoutEffect(() => setPageKey(pageKey), [pageKey, setPageKey]);
130
+ useLayoutEffect(() => setShowFooterSpacer(showFooterSpacer), [showFooterSpacer, setShowFooterSpacer]);
131
+ return (_jsx("div", { className: "daimo-page-enter flex-1 min-h-0 flex flex-col", children: content }, pageKey));
201
132
  }
202
133
  function renderEntry(entry, ctx) {
203
134
  if (!entry) {
@@ -214,6 +145,9 @@ function renderEntry(entry, ctx) {
214
145
  const node = findNode(entry.nodeId, ctx.session.navTree);
215
146
  if (!node)
216
147
  return null;
148
+ if (node.id === "SelectWallet") {
149
+ return (_jsx(ChooseWalletPage, { node: node, injectedWallets: ctx.injectedWallets, onInjectedWalletSelect: ctx.onInjectedWalletSelect, onNavigate: ctx.onNavigate, onBack: ctx.canGoBack ? ctx.onBack : null }));
150
+ }
217
151
  return (_jsx(ChooseOptionPage, { node: node, onNavigate: ctx.onNavigate, onBack: ctx.canGoBack ? ctx.onBack : null }));
218
152
  }
219
153
  case "deeplink": {
@@ -230,8 +164,10 @@ function renderEntry(entry, ctx) {
230
164
  return renderWaitingTron(entry, ctx);
231
165
  case "exchange-page":
232
166
  return renderExchangePage(entry, ctx);
167
+ case "wallet-choose-chain":
168
+ return (_jsx(ChooseChainPage, { walletName: entry.walletName, walletIcon: entry.walletIcon, onSelectChain: ctx.onChainSelect, onBack: ctx.canGoBack ? ctx.onBack : null }));
233
169
  case "wallet-connect":
234
- return renderWalletConnect(ctx);
170
+ return renderWalletConnect(entry, ctx);
235
171
  case "wallet-select-token":
236
172
  return renderWalletSelectToken(ctx);
237
173
  case "wallet-select-amount":
@@ -283,14 +219,13 @@ function renderExchangePage(entry, ctx) {
283
219
  return _jsx(FlowErrorMessage, { error: entry.error, onBack: ctx.onBack, onRetry: ctx.onRetry });
284
220
  return _jsx(ExchangePage, { node: node, exchangeUrl: entry.exchangeUrl, waitingMessage: entry.waitingMessage, isLoading: !entry.exchangeUrl, onBack: ctx.onBack });
285
221
  }
286
- function renderWalletConnect(ctx) {
222
+ function renderWalletConnect(entry, ctx) {
287
223
  const { walletFlow } = ctx;
288
- if (walletFlow.isConnecting)
289
- return _jsx(LoadingMessage, {});
290
- return (_jsxs("div", { className: "flex flex-col items-center justify-center flex-1 gap-6 p-6", children: [_jsx(PrimaryButton, { onClick: walletFlow.connect, children: t.connectWallet }), walletFlow.connectError && _jsx(SharedErrorMessage, { message: walletFlow.connectError }), _jsx(ContactSupportButton, { subject: "Wallet connection", info: { sessionId: ctx.session.sessionId, error: walletFlow.connectError ?? t.walletUnavailable } })] }));
224
+ const title = entry.walletName ? `${t.connect} ${entry.walletName}` : t.connectWallet;
225
+ return (_jsxs("div", { className: "flex flex-col flex-1 min-h-0", children: [_jsx(PageHeader, { title: title, onBack: ctx.canGoBack ? ctx.onBack : undefined }), _jsxs(CenteredContent, { children: [entry.walletIcon && (_jsx("img", { src: entry.walletIcon, alt: entry.walletName ?? "", className: "w-20 h-20 object-contain rounded-[25%]" })), walletFlow.isConnecting && (_jsx("span", { className: "text-[var(--daimo-text-muted)]", children: t.loading }))] }), _jsxs("div", { className: "px-6 pb-6 flex flex-col items-center gap-3 min-h-[100px]", children: [walletFlow.connectError && (_jsxs(_Fragment, { children: [_jsx(SharedErrorMessage, { message: walletFlow.connectError }), _jsx(PrimaryButton, { onClick: walletFlow.retryConnect, children: t.tryAgain })] })), !entry.walletName && !walletFlow.isConnecting && !walletFlow.connectError && (_jsx(PrimaryButton, { onClick: walletFlow.connect, children: t.connectWallet })), _jsx(ContactSupportButton, { subject: "Wallet connection", info: { sessionId: ctx.session.sessionId, error: walletFlow.connectError ?? t.walletUnavailable } })] })] }));
291
226
  }
292
227
  function renderWalletSelectToken(ctx) {
293
- return _jsx(SelectTokenPage, { options: ctx.walletFlow.balances, isLoading: ctx.walletFlow.isLoadingBalances, onSelect: ctx.onWalletSelectToken });
228
+ return _jsx(SelectTokenPage, { options: ctx.walletFlow.balances, isLoading: ctx.walletFlow.isLoadingBalances, onSelect: ctx.onWalletSelectToken, onBack: ctx.onBack });
294
229
  }
295
230
  function renderWalletSelectAmount(entry, ctx) {
296
231
  return _jsx(WalletAmountPage, { token: entry.token, onBack: ctx.onBack, onContinue: (amountUsd) => ctx.onWalletSending(entry.token, amountUsd) });
@@ -298,7 +233,7 @@ function renderWalletSelectAmount(entry, ctx) {
298
233
  function renderWalletSending(entry, ctx) {
299
234
  if (entry.error)
300
235
  return _jsx(FlowErrorMessage, { error: entry.error, onBack: ctx.onBack, onRetry: ctx.onBack });
301
- return (_jsx(ConfirmationPage, { sessionId: ctx.session.sessionId, sourceChainId: entry.token.balance.token.chainId, sourceTokenSymbol: entry.token.balance.token.symbol, sourceTokenLogoURI: entry.token.balance.token.logoURI, sourceAmountUsd: entry.amountUsd, pendingTxHash: entry.txHash, onBack: !entry.txHash ? ctx.onBack : undefined }));
236
+ return (_jsx(ConfirmationPage, { sessionId: ctx.session.sessionId, sourceChainId: entry.token.balance.token.chainId, sourceTokenSymbol: entry.token.balance.token.symbol, sourceTokenLogoURI: entry.token.balance.token.logoURI, sourceAmountUsd: entry.amountUsd, pendingTxHash: entry.txHash, onBack: !entry.txHash ? ctx.onBack : undefined, actionVerb: ctx.session.display.verb }));
302
237
  }
303
238
  function LoadingMessage() {
304
239
  return (_jsx("div", { className: "flex items-center justify-center h-full text-[var(--daimo-text-muted)]", children: t.loading }));
@@ -1 +1 @@
1
- {"version":3,"file":"DaimoModal.js","sourceRoot":"","sources":["../../../src/web/components/DaimoModal.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DaimoModal.js","sourceRoot":"","sources":["../../../src/web/components/DaimoModal.tsx"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ type DeeplinkPageProps = {
3
3
  node: NavNodeDeeplink;
4
4
  onBack: (() => void) | null;
5
5
  };
6
+ /** Mobile wallet deeplink page. Opens directly on mobile; shows as QR code on desktop. */
6
7
  export declare function DeeplinkPage({ node, onBack }: DeeplinkPageProps): import("react/jsx-runtime").JSX.Element;
7
8
  export {};
8
9
  //# sourceMappingURL=DeeplinkPage.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DeeplinkPage.d.ts","sourceRoot":"","sources":["../../../src/web/components/DeeplinkPage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAMzD,KAAK,iBAAiB,GAAG;IACvB,IAAI,EAAE,eAAe,CAAC;IACtB,MAAM,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC;CAC7B,CAAC;AAEF,wBAAgB,YAAY,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,iBAAiB,2CAqB/D"}
1
+ {"version":3,"file":"DeeplinkPage.d.ts","sourceRoot":"","sources":["../../../src/web/components/DeeplinkPage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAOzD,KAAK,iBAAiB,GAAG;IACvB,IAAI,EAAE,eAAe,CAAC;IACtB,MAAM,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC;CAC7B,CAAC;AAOF,0FAA0F;AAC1F,wBAAgB,YAAY,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,iBAAiB,2CAkD/D"}
@@ -1,13 +1,24 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { ExternalLinkIcon, PrimaryButton } from "./buttons.js";
3
3
  import { t } from "../hooks/locale.js";
4
- import { PageContent, PageHeader, PageLogo } from "./shared.js";
4
+ import { CenteredContent, PageHeader, PageLogo, resolveIconUrl } from "./shared.js";
5
+ import { QRCode } from "./QRCode.js";
6
+ function isDesktop() {
7
+ if (typeof navigator === "undefined")
8
+ return false;
9
+ return navigator.maxTouchPoints === 0;
10
+ }
11
+ /** Mobile wallet deeplink page. Opens directly on mobile; shows as QR code on desktop. */
5
12
  export function DeeplinkPage({ node, onBack }) {
13
+ const desktop = isDesktop();
14
+ if (desktop) {
15
+ return (_jsxs("div", { className: "flex flex-col flex-1 min-h-0", children: [_jsx(PageHeader, { title: node.title, onBack: onBack ?? undefined }), _jsxs(CenteredContent, { children: [_jsx("div", { className: "w-full max-w-[200px] sm:max-w-[260px]", children: _jsx(QRCode, { value: node.url, image: node.icon ? (_jsx("img", { src: resolveIconUrl(node.icon), alt: node.title, className: "w-full h-full object-contain rounded-[25%]" })) : undefined }) }), _jsx("p", { className: "text-[var(--daimo-text-secondary)] text-center max-w-xs text-sm", children: t.scanWithPhone })] })] }));
16
+ }
6
17
  const openDeeplink = () => {
7
18
  if (node.url) {
8
19
  window.open(node.url, "_blank");
9
20
  }
10
21
  };
11
- return (_jsxs("div", { className: "flex flex-col flex-1 min-h-0", children: [_jsx(PageHeader, { title: node.title, onBack: onBack ?? undefined }), _jsxs(PageContent, { children: [node.icon && _jsx(PageLogo, { icon: node.icon, alt: node.title }), _jsxs("p", { className: "text-[var(--daimo-text-secondary)] text-center max-w-xs", children: [t.continueIn, " ", node.title, " ", t.toCompleteYourPayment] }), _jsxs(PrimaryButton, { onClick: openDeeplink, icon: _jsx(ExternalLinkIcon, {}), children: [t.openIn, " ", node.title] })] })] }));
22
+ return (_jsxs("div", { className: "flex flex-col flex-1 min-h-0", children: [_jsx(PageHeader, { title: node.title, onBack: onBack ?? undefined }), _jsxs(CenteredContent, { children: [node.icon && _jsx(PageLogo, { icon: node.icon, alt: node.title }), _jsxs("p", { className: "text-[var(--daimo-text-secondary)] text-center max-w-xs", children: [t.continueIn, " ", node.title, " ", t.toCompleteYourPayment] }), _jsxs(PrimaryButton, { onClick: openDeeplink, icon: _jsx(ExternalLinkIcon, {}), children: [t.openIn, " ", node.title] })] })] }));
12
23
  }
13
24
  //# sourceMappingURL=DeeplinkPage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DeeplinkPage.js","sourceRoot":"","sources":["../../../src/web/components/DeeplinkPage.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,CAAC,EAAE,MAAM,oBAAoB,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAOhE,MAAM,UAAU,YAAY,CAAC,EAAE,IAAI,EAAE,MAAM,EAAqB;IAC9D,MAAM,YAAY,GAAG,GAAG,EAAE;QACxB,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAClC,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,CACL,eAAK,SAAS,EAAC,8BAA8B,aAC3C,KAAC,UAAU,IAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,IAAI,SAAS,GAAI,EAC9D,MAAC,WAAW,eACT,IAAI,CAAC,IAAI,IAAI,KAAC,QAAQ,IAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,GAAI,EAC5D,aAAG,SAAS,EAAC,yDAAyD,aACnE,CAAC,CAAC,UAAU,OAAG,IAAI,CAAC,KAAK,OAAG,CAAC,CAAC,qBAAqB,IAClD,EACJ,MAAC,aAAa,IAAC,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,KAAC,gBAAgB,KAAG,aAC7D,CAAC,CAAC,MAAM,OAAG,IAAI,CAAC,KAAK,IACR,IACJ,IACV,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"DeeplinkPage.js","sourceRoot":"","sources":["../../../src/web/components/DeeplinkPage.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,CAAC,EAAE,MAAM,oBAAoB,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AACpF,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAOrC,SAAS,SAAS;IAChB,IAAI,OAAO,SAAS,KAAK,WAAW;QAAE,OAAO,KAAK,CAAC;IACnD,OAAO,SAAS,CAAC,cAAc,KAAK,CAAC,CAAC;AACxC,CAAC;AAED,0FAA0F;AAC1F,MAAM,UAAU,YAAY,CAAC,EAAE,IAAI,EAAE,MAAM,EAAqB;IAC9D,MAAM,OAAO,GAAG,SAAS,EAAE,CAAC;IAE5B,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,CACL,eAAK,SAAS,EAAC,8BAA8B,aAC3C,KAAC,UAAU,IAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,IAAI,SAAS,GAAI,EAC9D,MAAC,eAAe,eACd,cAAK,SAAS,EAAC,uCAAuC,YACpD,KAAC,MAAM,IACL,KAAK,EAAE,IAAI,CAAC,GAAG,EACf,KAAK,EACH,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CACV,cACE,GAAG,EAAE,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAC9B,GAAG,EAAE,IAAI,CAAC,KAAK,EACf,SAAS,EAAC,4CAA4C,GACtD,CACH,CAAC,CAAC,CAAC,SAAS,GAEf,GACE,EACN,YAAG,SAAS,EAAC,iEAAiE,YAC3E,CAAC,CAAC,aAAa,GACd,IACY,IACd,CACP,CAAC;IACJ,CAAC;IAED,MAAM,YAAY,GAAG,GAAG,EAAE;QACxB,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAClC,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,CACL,eAAK,SAAS,EAAC,8BAA8B,aAC3C,KAAC,UAAU,IAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,IAAI,SAAS,GAAI,EAC9D,MAAC,eAAe,eACb,IAAI,CAAC,IAAI,IAAI,KAAC,QAAQ,IAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,GAAI,EAC5D,aAAG,SAAS,EAAC,yDAAyD,aACnE,CAAC,CAAC,UAAU,OAAG,IAAI,CAAC,KAAK,OAAG,CAAC,CAAC,qBAAqB,IAClD,EACJ,MAAC,aAAa,IAAC,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,KAAC,gBAAgB,KAAG,aAC7D,CAAC,CAAC,MAAM,OAAG,IAAI,CAAC,KAAK,IACR,IACA,IACd,CACP,CAAC;AACJ,CAAC"}
@@ -1,13 +1,13 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { ExternalLinkIcon, PrimaryButton } from "./buttons.js";
3
3
  import { t } from "../hooks/locale.js";
4
- import { PageContent, PageHeader, PageLogo } from "./shared.js";
4
+ import { CenteredContent, PageHeader, PageLogo } from "./shared.js";
5
5
  export function ExchangePage({ node, exchangeUrl, waitingMessage, isLoading, onBack, }) {
6
6
  const openExchange = () => {
7
7
  if (exchangeUrl)
8
8
  window.open(exchangeUrl, "_blank");
9
9
  };
10
- return (_jsxs("div", { className: "flex flex-col flex-1 min-h-0", children: [_jsx(PageHeader, { title: node.title, onBack: onBack }), _jsxs(PageContent, { children: [node.icon && _jsx(PageLogo, { icon: node.icon, alt: node.title }), isLoading ? (_jsxs("div", { className: "flex flex-col items-center gap-2 max-w-xs w-full", children: [_jsx("div", { className: "h-4 w-4/5 rounded bg-[var(--daimo-surface-secondary)] animate-pulse" }), _jsx("div", { className: "h-4 w-3/5 rounded bg-[var(--daimo-surface-secondary)] animate-pulse" })] })) : (_jsx("p", { className: "text-[var(--daimo-text-secondary)] text-center max-w-xs", children: waitingMessage ||
10
+ return (_jsxs("div", { className: "flex flex-col flex-1 min-h-0", children: [_jsx(PageHeader, { title: node.title, onBack: onBack }), _jsxs(CenteredContent, { children: [node.icon && _jsx(PageLogo, { icon: node.icon, alt: node.title }), isLoading ? (_jsxs("div", { className: "flex flex-col items-center gap-2 max-w-xs w-full", children: [_jsx("div", { className: "h-4 w-4/5 rounded bg-[var(--daimo-surface-secondary)] animate-pulse" }), _jsx("div", { className: "h-4 w-3/5 rounded bg-[var(--daimo-surface-secondary)] animate-pulse" })] })) : (_jsx("p", { className: "text-[var(--daimo-text-secondary)] text-center max-w-xs", children: waitingMessage ||
11
11
  `${t.continueTo} ${node.title} ${t.toCompleteYourDeposit}` })), _jsxs(PrimaryButton, { onClick: openExchange, icon: _jsx(ExternalLinkIcon, {}), disabled: isLoading, children: [t.open, " ", node.title] })] })] }));
12
12
  }
13
13
  //# sourceMappingURL=ExchangePage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ExchangePage.js","sourceRoot":"","sources":["../../../src/web/components/ExchangePage.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,CAAC,EAAE,MAAM,oBAAoB,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAUhE,MAAM,UAAU,YAAY,CAAC,EAC3B,IAAI,EACJ,WAAW,EACX,cAAc,EACd,SAAS,EACT,MAAM,GACY;IAClB,MAAM,YAAY,GAAG,GAAG,EAAE;QACxB,IAAI,WAAW;YAAE,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IACtD,CAAC,CAAC;IAEF,OAAO,CACL,eAAK,SAAS,EAAC,8BAA8B,aAC3C,KAAC,UAAU,IAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,GAAI,EACjD,MAAC,WAAW,eACT,IAAI,CAAC,IAAI,IAAI,KAAC,QAAQ,IAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,GAAI,EAC3D,SAAS,CAAC,CAAC,CAAC,CACX,eAAK,SAAS,EAAC,kDAAkD,aAC/D,cAAK,SAAS,EAAC,qEAAqE,GAAG,EACvF,cAAK,SAAS,EAAC,qEAAqE,GAAG,IACnF,CACP,CAAC,CAAC,CAAC,CACF,YAAG,SAAS,EAAC,yDAAyD,YACnE,cAAc;4BACb,GAAG,CAAC,CAAC,UAAU,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,qBAAqB,EAAE,GAC1D,CACL,EACD,MAAC,aAAa,IACZ,OAAO,EAAE,YAAY,EACrB,IAAI,EAAE,KAAC,gBAAgB,KAAG,EAC1B,QAAQ,EAAE,SAAS,aAElB,CAAC,CAAC,IAAI,OAAG,IAAI,CAAC,KAAK,IACN,IACJ,IACV,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"ExchangePage.js","sourceRoot":"","sources":["../../../src/web/components/ExchangePage.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,CAAC,EAAE,MAAM,oBAAoB,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAUpE,MAAM,UAAU,YAAY,CAAC,EAC3B,IAAI,EACJ,WAAW,EACX,cAAc,EACd,SAAS,EACT,MAAM,GACY;IAClB,MAAM,YAAY,GAAG,GAAG,EAAE;QACxB,IAAI,WAAW;YAAE,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IACtD,CAAC,CAAC;IAEF,OAAO,CACL,eAAK,SAAS,EAAC,8BAA8B,aAC3C,KAAC,UAAU,IAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,GAAI,EACjD,MAAC,eAAe,eACb,IAAI,CAAC,IAAI,IAAI,KAAC,QAAQ,IAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,GAAI,EAC3D,SAAS,CAAC,CAAC,CAAC,CACX,eAAK,SAAS,EAAC,kDAAkD,aAC/D,cAAK,SAAS,EAAC,qEAAqE,GAAG,EACvF,cAAK,SAAS,EAAC,qEAAqE,GAAG,IACnF,CACP,CAAC,CAAC,CAAC,CACF,YAAG,SAAS,EAAC,yDAAyD,YACnE,cAAc;4BACb,GAAG,CAAC,CAAC,UAAU,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,qBAAqB,EAAE,GAC1D,CACL,EACD,MAAC,aAAa,IACZ,OAAO,EAAE,YAAY,EACrB,IAAI,EAAE,KAAC,gBAAgB,KAAG,EAC1B,QAAQ,EAAE,SAAS,aAElB,CAAC,CAAC,IAAI,OAAG,IAAI,CAAC,KAAK,IACN,IACA,IACd,CACP,CAAC;AACJ,CAAC"}
@@ -1,9 +1,10 @@
1
1
  type ExpiredPageProps = {
2
+ sessionId: string;
2
3
  onClose?: () => void;
3
4
  };
4
5
  /**
5
6
  * Expired page shown when a payment session times out.
6
7
  */
7
- export declare function ExpiredPage({ onClose }: ExpiredPageProps): import("react/jsx-runtime").JSX.Element;
8
+ export declare function ExpiredPage({ sessionId, onClose }: ExpiredPageProps): import("react/jsx-runtime").JSX.Element;
8
9
  export {};
9
10
  //# sourceMappingURL=ExpiredPage.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ExpiredPage.d.ts","sourceRoot":"","sources":["../../../src/web/components/ExpiredPage.tsx"],"names":[],"mappings":"AAKA,KAAK,gBAAgB,GAAG;IACtB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB,CAAC;AAEF;;GAEG;AACH,wBAAgB,WAAW,CAAC,EAAE,OAAO,EAAE,EAAE,gBAAgB,2CAoBxD"}
1
+ {"version":3,"file":"ExpiredPage.d.ts","sourceRoot":"","sources":["../../../src/web/components/ExpiredPage.tsx"],"names":[],"mappings":"AAKA,KAAK,gBAAgB,GAAG;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB,CAAC;AAEF;;GAEG;AACH,wBAAgB,WAAW,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,gBAAgB,2CAuBnE"}
@@ -2,11 +2,11 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { SecondaryButton } from "./buttons.js";
3
3
  import { ExpiredIcon } from "./icons.js";
4
4
  import { t } from "../hooks/locale.js";
5
- import { PageHeader } from "./shared.js";
5
+ import { ContactSupportButton, PageHeader } from "./shared.js";
6
6
  /**
7
7
  * Expired page shown when a payment session times out.
8
8
  */
9
- export function ExpiredPage({ onClose }) {
10
- return (_jsxs("div", { className: "flex flex-col flex-1 min-h-0", children: [_jsx(PageHeader, { title: t.expired }), _jsxs("div", { className: "flex-1 flex flex-col items-center justify-center p-6 gap-6", children: [_jsx("div", { className: "w-20 h-20 rounded-full flex items-center justify-center", style: { backgroundColor: "var(--daimo-error-light)" }, children: _jsx(ExpiredIcon, {}) }), _jsx("p", { className: "text-[var(--daimo-text-secondary)]", children: t.paymentSessionExpired }), onClose && (_jsx(SecondaryButton, { onClick: onClose, children: t.close }))] })] }));
9
+ export function ExpiredPage({ sessionId, onClose }) {
10
+ return (_jsxs("div", { className: "flex flex-col flex-1 min-h-0", children: [_jsx(PageHeader, { title: t.expired }), _jsxs("div", { className: "flex-1 flex flex-col items-center justify-center p-6 gap-6", children: [_jsx("div", { className: "w-20 h-20 rounded-full flex items-center justify-center", style: { backgroundColor: "var(--daimo-error-light)" }, children: _jsx(ExpiredIcon, {}) }), _jsx("p", { className: "text-[var(--daimo-text-secondary)]", children: t.paymentSessionExpired }), onClose && (_jsx(SecondaryButton, { onClick: onClose, children: t.close }))] }), _jsx("div", { className: "px-6 pb-6 flex flex-col items-center", children: _jsx(ContactSupportButton, { subject: "Expired session", info: { sessionId } }) })] }));
11
11
  }
12
12
  //# sourceMappingURL=ExpiredPage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ExpiredPage.js","sourceRoot":"","sources":["../../../src/web/components/ExpiredPage.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,CAAC,EAAE,MAAM,oBAAoB,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAMzC;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,EAAE,OAAO,EAAoB;IACvD,OAAO,CACL,eAAK,SAAS,EAAC,8BAA8B,aAC3C,KAAC,UAAU,IAAC,KAAK,EAAE,CAAC,CAAC,OAAO,GAAI,EAChC,eAAK,SAAS,EAAC,4DAA4D,aACzE,cACE,SAAS,EAAC,yDAAyD,EACnE,KAAK,EAAE,EAAE,eAAe,EAAE,0BAA0B,EAAE,YAEtD,KAAC,WAAW,KAAG,GACX,EACN,YAAG,SAAS,EAAC,oCAAoC,YAC9C,CAAC,CAAC,qBAAqB,GACtB,EACH,OAAO,IAAI,CACV,KAAC,eAAe,IAAC,OAAO,EAAE,OAAO,YAAG,CAAC,CAAC,KAAK,GAAmB,CAC/D,IACG,IACF,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"ExpiredPage.js","sourceRoot":"","sources":["../../../src/web/components/ExpiredPage.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,CAAC,EAAE,MAAM,oBAAoB,CAAC;AACvC,OAAO,EAAE,oBAAoB,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAO/D;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,EAAE,SAAS,EAAE,OAAO,EAAoB;IAClE,OAAO,CACL,eAAK,SAAS,EAAC,8BAA8B,aAC3C,KAAC,UAAU,IAAC,KAAK,EAAE,CAAC,CAAC,OAAO,GAAI,EAChC,eAAK,SAAS,EAAC,4DAA4D,aACzE,cACE,SAAS,EAAC,yDAAyD,EACnE,KAAK,EAAE,EAAE,eAAe,EAAE,0BAA0B,EAAE,YAEtD,KAAC,WAAW,KAAG,GACX,EACN,YAAG,SAAS,EAAC,oCAAoC,YAC9C,CAAC,CAAC,qBAAqB,GACtB,EACH,OAAO,IAAI,CACV,KAAC,eAAe,IAAC,OAAO,EAAE,OAAO,YAAG,CAAC,CAAC,KAAK,GAAmB,CAC/D,IACG,EACN,cAAK,SAAS,EAAC,sCAAsC,YACnD,KAAC,oBAAoB,IAAC,OAAO,EAAC,iBAAiB,EAAC,IAAI,EAAE,EAAE,SAAS,EAAE,GAAI,GACnE,IACF,CACP,CAAC;AACJ,CAAC"}
@@ -7,8 +7,9 @@ type SelectTokenPageProps = {
7
7
  /** Number of skeleton rows to show while loading */
8
8
  skeletonCount?: number;
9
9
  onSelect: (option: WalletPaymentOption) => void;
10
+ onBack?: (() => void) | null;
10
11
  };
11
12
  /** Token selection page for wallet payment flow */
12
- export declare function SelectTokenPage({ options, isLoading, skeletonCount, onSelect, }: SelectTokenPageProps): import("react/jsx-runtime").JSX.Element;
13
+ export declare function SelectTokenPage({ options, isLoading, skeletonCount, onSelect, onBack, }: SelectTokenPageProps): import("react/jsx-runtime").JSX.Element;
13
14
  export {};
14
15
  //# sourceMappingURL=SelectTokenPage.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SelectTokenPage.d.ts","sourceRoot":"","sources":["../../../src/web/components/SelectTokenPage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAiB,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAMhF,KAAK,oBAAoB,GAAG;IAC1B,+CAA+C;IAC/C,OAAO,EAAE,mBAAmB,EAAE,GAAG,IAAI,CAAC;IACtC,qCAAqC;IACrC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,oDAAoD;IACpD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,CAAC,MAAM,EAAE,mBAAmB,KAAK,IAAI,CAAC;CACjD,CAAC;AAEF,mDAAmD;AACnD,wBAAgB,eAAe,CAAC,EAC9B,OAAO,EACP,SAAiB,EACjB,aAAkB,EAClB,QAAQ,GACT,EAAE,oBAAoB,2CAyEtB"}
1
+ {"version":3,"file":"SelectTokenPage.d.ts","sourceRoot":"","sources":["../../../src/web/components/SelectTokenPage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAiB,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAMhF,KAAK,oBAAoB,GAAG;IAC1B,+CAA+C;IAC/C,OAAO,EAAE,mBAAmB,EAAE,GAAG,IAAI,CAAC;IACtC,qCAAqC;IACrC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,oDAAoD;IACpD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,CAAC,MAAM,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAChD,MAAM,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC;CAC9B,CAAC;AAEF,mDAAmD;AACnD,wBAAgB,eAAe,CAAC,EAC9B,OAAO,EACP,SAAiB,EACjB,aAAkB,EAClB,QAAQ,EACR,MAAM,GACP,EAAE,oBAAoB,2CA0DtB"}
@@ -1,21 +1,17 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { getChainName } from "../../common/chain.js";
3
3
  import { t } from "../hooks/locale.js";
4
- import { PageHeader, TokenIconWithChainBadge } from "./shared.js";
4
+ import { PageHeader, ScrollContent, TokenIconWithChainBadge } from "./shared.js";
5
5
  /** Token selection page for wallet payment flow */
6
- export function SelectTokenPage({ options, isLoading = false, skeletonCount = 11, onSelect, }) {
6
+ export function SelectTokenPage({ options, isLoading = false, skeletonCount = 11, onSelect, onBack, }) {
7
7
  // Show skeletons while loading
8
8
  if (isLoading || options === null) {
9
- return (_jsxs("div", { className: "flex flex-col h-full overflow-hidden", children: [_jsx("div", { className: "shrink-0", children: _jsx(PageHeader, { title: t.selectToken }) }), _jsx("div", { className: "flex-1 min-h-0 overflow-y-auto scroll-fade px-6 pb-4", children: _jsx("div", { className: "min-h-full flex flex-col justify-end gap-3", children: Array.from({ length: skeletonCount }).map((_, i) => (_jsx(SkeletonRow, {}, i))) }) })] }));
9
+ return (_jsxs("div", { className: "flex flex-col flex-1 min-h-0", children: [_jsx(PageHeader, { title: t.selectToken, onBack: onBack }), _jsx(ScrollContent, { children: _jsx("div", { className: "min-h-full flex flex-col justify-end gap-3", children: Array.from({ length: skeletonCount }).map((_, i) => (_jsx(SkeletonRow, {}, i))) }) })] }));
10
10
  }
11
- // Filter options: valid tokens first, then disabled (insufficient balance or liquidity)
12
11
  const validOptions = options.filter((opt) => opt.balance.usd >= opt.minimumRequired.usd && !opt.disabledReason);
13
12
  const disabledOptions = options.filter((opt) => opt.balance.usd < opt.minimumRequired.usd || opt.disabledReason);
14
- return (_jsxs("div", { className: "flex flex-col h-full overflow-hidden", children: [_jsx("div", { className: "shrink-0", children: _jsx(PageHeader, { title: t.selectToken }) }), _jsx("div", { className: "flex-1 min-h-0 overflow-y-auto scroll-fade px-6 pb-4", children: options.length === 0 ? (_jsx("div", { className: "flex flex-col items-center justify-center h-full gap-2", children: _jsx("p", { className: "text-[var(--daimo-text-secondary)]", children: t.noTokensFound }) })) : (
15
- /* Bottom-up layout: items align to bottom when few, scroll normally when full.
16
- - min-h-full ensures wrapper spans at least the full scroll area
17
- - justify-end pushes items to bottom for easier thumb reach on mobile
18
- - when items exceed container height, normal top-down scrolling kicks in */
13
+ return (_jsxs("div", { className: "flex flex-col flex-1 min-h-0", children: [_jsx(PageHeader, { title: t.selectToken, onBack: onBack }), _jsx(ScrollContent, { children: options.length === 0 ? (_jsx("div", { className: "flex flex-col items-center justify-center h-full gap-2", children: _jsx("p", { className: "text-[var(--daimo-text-secondary)]", children: t.noTokensFound }) })) : (
14
+ /* Bottom-up layout: items align to bottom when few, scroll normally when full. */
19
15
  _jsxs("div", { className: "min-h-full flex flex-col justify-end gap-3", children: [validOptions.map((option) => (_jsx(TokenRow, { option: option, onSelect: onSelect }, getTokenKey(option.balance.token)))), disabledOptions.map((option) => (_jsx(TokenRow, { option: option, onSelect: onSelect, disabled: true }, getTokenKey(option.balance.token))))] })) })] }));
20
16
  }
21
17
  /** Skeleton loading row - matches TokenRow dimensions with token + chain badge */
@@ -1 +1 @@
1
- {"version":3,"file":"SelectTokenPage.js","sourceRoot":"","sources":["../../../src/web/components/SelectTokenPage.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD,OAAO,EAAE,CAAC,EAAE,MAAM,oBAAoB,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAYlE,mDAAmD;AACnD,MAAM,UAAU,eAAe,CAAC,EAC9B,OAAO,EACP,SAAS,GAAG,KAAK,EACjB,aAAa,GAAG,EAAE,EAClB,QAAQ,GACa;IACrB,+BAA+B;IAC/B,IAAI,SAAS,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QAClC,OAAO,CACL,eAAK,SAAS,EAAC,sCAAsC,aACnD,cAAK,SAAS,EAAC,UAAU,YACvB,KAAC,UAAU,IAAC,KAAK,EAAE,CAAC,CAAC,WAAW,GAAI,GAChC,EAEN,cAAK,SAAS,EAAC,sDAAsD,YAKnE,cAAK,SAAS,EAAC,4CAA4C,YACxD,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CACnD,KAAC,WAAW,MAAM,CAAC,CAAI,CACxB,CAAC,GACE,GACF,IACF,CACP,CAAC;IACJ,CAAC;IAED,wFAAwF;IACxF,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CACjC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,CAC3E,CAAC;IACF,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,CACpC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,GAAG,GAAG,CAAC,eAAe,CAAC,GAAG,IAAI,GAAG,CAAC,cAAc,CACzE,CAAC;IAEF,OAAO,CACL,eAAK,SAAS,EAAC,sCAAsC,aACnD,cAAK,SAAS,EAAC,UAAU,YACvB,KAAC,UAAU,IAAC,KAAK,EAAE,CAAC,CAAC,WAAW,GAAI,GAChC,EAEN,cAAK,SAAS,EAAC,sDAAsD,YAClE,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CACtB,cAAK,SAAS,EAAC,wDAAwD,YACrE,YAAG,SAAS,EAAC,oCAAoC,YAC9C,CAAC,CAAC,aAAa,GACd,GACA,CACP,CAAC,CAAC,CAAC;gBACF;;;8FAG8E;gBAC9E,eAAK,SAAS,EAAC,4CAA4C,aAExD,YAAY,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAC5B,KAAC,QAAQ,IAEP,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,IAFb,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAGtC,CACH,CAAC,EAED,eAAe,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAC/B,KAAC,QAAQ,IAEP,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,EAClB,QAAQ,UAHH,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAItC,CACH,CAAC,IACE,CACP,GACG,IACF,CACP,CAAC;AACJ,CAAC;AAED,kFAAkF;AAClF,SAAS,WAAW;IAClB,OAAO,CACL,eAAK,SAAS,EAAC,gJAAgJ,aAC7J,eAAK,SAAS,EAAC,qBAAqB,aAClC,cACE,SAAS,EAAC,uBAAuB,EACjC,KAAK,EAAE,EAAE,eAAe,EAAE,uBAAuB,EAAE,GACnD,EACF,cACE,SAAS,EAAC,kBAAkB,EAC5B,KAAK,EAAE,EAAE,eAAe,EAAE,uBAAuB,EAAE,GACnD,IACE,EAEN,eAAK,SAAS,EAAC,2BAA2B,aACxC,cACE,SAAS,EAAC,sBAAsB,EAChC,KAAK,EAAE,EAAE,eAAe,EAAE,uBAAuB,EAAE,GACnD,EACF,cACE,SAAS,EAAC,gEAAgE,EAC1E,KAAK,EAAE;4BACL,eAAe,EAAE,uBAAuB;4BACxC,MAAM,EAAE,0CAA0C;yBACnD,GACD,IACE,IACF,CACP,CAAC;AACJ,CAAC;AAQD;;;GAGG;AACH,SAAS,QAAQ,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,KAAK,EAAiB;IACrE,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7D,MAAM,WAAW,GAAG,iBAAiB,CACnC,MAAM,CAAC,OAAO,CAAC,MAAM,EACrB,MAAM,CAAC,OAAO,CAAC,KAAK,CACrB,CAAC;IACF,MAAM,SAAS,GAAG,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACtD,MAAM,cAAc,GAClB,MAAM,CAAC,cAAc;QACrB,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,GAAG,MAAM,CAAC,eAAe,CAAC,GAAG;YAC9C,CAAC,CAAC,IAAI,MAAM,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE;YACxE,CAAC,CAAC,IAAI,CAAC,CAAC;IAEZ,MAAM,KAAK,GAAG,IAAI,SAAS,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC,OAAO,IAAI,SAAS,EAAE,CAAC;IACvF,MAAM,QAAQ,GACZ,QAAQ,IAAI,cAAc;QACxB,CAAC,CAAC,cAAc;QAChB,CAAC,CAAC,GAAG,WAAW,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;IAEtD,OAAO,CACL,kBACE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,CAAC,EAC5C,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,kMACT,QAAQ;YACN,CAAC,CAAC,mEAAmE;YACrE,CAAC,CAAC,qHACN,EAAE,aAEF,eAAK,SAAS,EAAC,qBAAqB,aAElC,cACE,SAAS,EAAE,uCACT,QAAQ;4BACN,CAAC,CAAC,gCAAgC;4BAClC,CAAC,CAAC,0BACN,EAAE,YAED,KAAK,GACF,EACN,cAAK,SAAS,EAAC,kEAAkE,YAC9E,QAAQ,GACL,IACF,EACN,KAAC,uBAAuB,IAAC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,EAAC,IAAI,GAAG,IAC3D,CACV,CAAC;AACJ,CAAC;AAED,kBAAkB;AAElB,6BAA6B;AAC7B,SAAS,WAAW,CAAC,KAAoB;IACvC,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;AAC3C,CAAC;AAED,6DAA6D;AAC7D,SAAS,iBAAiB,CAAC,MAAc,EAAE,KAAoB;IAC7D,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC9D,IAAI,GAAG,KAAK,CAAC;QAAE,OAAO,GAAG,CAAC;IAC1B,gEAAgE;IAChE,MAAM,QAAQ,GAAG,KAAK,CAAC,eAAe,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5D,OAAO,GAAG,CAAC,cAAc,CAAC,OAAO,EAAE;QACjC,qBAAqB,EAAE,CAAC;QACxB,qBAAqB,EAAE,QAAQ;KAChC,CAAC,CAAC;AACL,CAAC;AAED,oCAAoC;AACpC,SAAS,eAAe,CAAC,GAAW;IAClC,OAAO,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AACxB,CAAC"}
1
+ {"version":3,"file":"SelectTokenPage.js","sourceRoot":"","sources":["../../../src/web/components/SelectTokenPage.tsx"],"names":[],"mappings":"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"}
@@ -131,7 +131,7 @@ export function WalletAmountPage({ token, onBack, onContinue, }) {
131
131
  const secondaryAmount = isEditingUsd
132
132
  ? `${tokenStr || "0"} ${balanceToken.symbol}`
133
133
  : `$${usdStr || roundUsd(0)}`;
134
- return (_jsxs("div", { className: "flex flex-col flex-1", children: [_jsx(PageHeader, { title: t.enterAmount, onBack: onBack }), _jsxs("div", { className: "flex-1 flex flex-col items-center justify-center p-6 gap-6", children: [_jsx(TokenIconWithChainBadge, { token: balanceToken, size: "lg" }), _jsxs("div", { className: "flex items-center justify-center gap-2", children: [_jsx("button", { className: "invisible px-3 py-1 text-sm min-h-[44px]", children: t.max }), _jsxs("div", { className: "flex items-center justify-center gap-1", children: [isEditingUsd && (_jsx("span", { className: `text-3xl font-semibold tabular-nums ${usdStr ? "text-[var(--daimo-text)]" : "text-[var(--daimo-placeholder)]"}`, children: "$" })), _jsx("input", { type: "text", inputMode: "decimal", value: currentValue, onChange: handleInputChange, onKeyDown: handleKeyDown, placeholder: "0.00", className: "bg-transparent text-5xl font-semibold text-[var(--daimo-text)] placeholder-[var(--daimo-placeholder)] outline-none caret-[var(--daimo-text-muted)] tabular-nums", style: {
134
+ return (_jsxs("div", { className: "flex flex-col flex-1 min-h-0", children: [_jsx(PageHeader, { title: t.enterAmount, onBack: onBack }), _jsxs("div", { className: "flex-1 flex flex-col items-center justify-center p-6 gap-6", children: [_jsx(TokenIconWithChainBadge, { token: balanceToken, size: "lg" }), _jsxs("div", { className: "flex items-center justify-center gap-2", children: [_jsx("button", { className: "invisible px-3 py-1 text-sm min-h-[44px]", children: t.max }), _jsxs("div", { className: "flex items-center justify-center gap-1", children: [isEditingUsd && (_jsx("span", { className: `text-3xl font-semibold tabular-nums ${usdStr ? "text-[var(--daimo-text)]" : "text-[var(--daimo-placeholder)]"}`, children: "$" })), _jsx("input", { type: "text", inputMode: "decimal", value: currentValue, onChange: handleInputChange, onKeyDown: handleKeyDown, placeholder: "0.00", className: "bg-transparent text-5xl font-semibold text-[var(--daimo-text)] placeholder-[var(--daimo-placeholder)] outline-none border-none shadow-none caret-[var(--daimo-text-muted)] tabular-nums ring-0 focus:outline-none focus:ring-0 focus:border-none focus:shadow-none", style: {
135
135
  width: inputWidth,
136
136
  minWidth: "1ch",
137
137
  maxWidth: "10ch",