@daimo/sdk 1.0.0-rc.3 → 1.0.1

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 (189) hide show
  1. package/dist/web/components/ChooseOptionPage.d.ts +3 -1
  2. package/dist/web/components/ChooseOptionPage.d.ts.map +1 -1
  3. package/dist/web/components/ChooseOptionPage.js +4 -2
  4. package/dist/web/components/ChooseOptionPage.js.map +1 -1
  5. package/dist/web/components/ChooseWalletPage.d.ts.map +1 -1
  6. package/dist/web/components/ChooseWalletPage.js +3 -1
  7. package/dist/web/components/ChooseWalletPage.js.map +1 -1
  8. package/dist/web/components/DaimoModal.js +4 -4
  9. package/dist/web/components/DaimoModal.js.map +1 -1
  10. package/dist/web/hooks/useInjectedWallets.d.ts.map +1 -1
  11. package/dist/web/hooks/useInjectedWallets.js +41 -5
  12. package/dist/web/hooks/useInjectedWallets.js.map +1 -1
  13. package/dist/web/hooks/useSessionNav.d.ts.map +1 -1
  14. package/dist/web/hooks/useSessionNav.js +29 -8
  15. package/dist/web/hooks/useSessionNav.js.map +1 -1
  16. package/dist/web/hooks/useWalletFlow.d.ts +4 -3
  17. package/dist/web/hooks/useWalletFlow.d.ts.map +1 -1
  18. package/dist/web/hooks/useWalletFlow.js +30 -34
  19. package/dist/web/hooks/useWalletFlow.js.map +1 -1
  20. package/dist/web/index.d.ts +0 -1
  21. package/dist/web/index.d.ts.map +1 -1
  22. package/dist/web/index.js +0 -1
  23. package/dist/web/index.js.map +1 -1
  24. package/dist/web/styles.css +1 -0
  25. package/package.json +4 -2
  26. package/dist/common/legacy/assert.d.ts +0 -6
  27. package/dist/common/legacy/assert.d.ts.map +0 -1
  28. package/dist/common/legacy/assert.js +0 -25
  29. package/dist/common/legacy/assert.js.map +0 -1
  30. package/dist/common/legacy/client.d.ts +0 -67
  31. package/dist/common/legacy/client.d.ts.map +0 -1
  32. package/dist/common/legacy/client.js +0 -55
  33. package/dist/common/legacy/client.js.map +0 -1
  34. package/dist/common/legacy/debug.d.ts +0 -5
  35. package/dist/common/legacy/debug.d.ts.map +0 -1
  36. package/dist/common/legacy/debug.js +0 -21
  37. package/dist/common/legacy/debug.js.map +0 -1
  38. package/dist/common/legacy/format.d.ts +0 -16
  39. package/dist/common/legacy/format.d.ts.map +0 -1
  40. package/dist/common/legacy/format.js +0 -34
  41. package/dist/common/legacy/format.js.map +0 -1
  42. package/dist/common/legacy/index.d.ts +0 -11
  43. package/dist/common/legacy/index.d.ts.map +0 -1
  44. package/dist/common/legacy/index.js +0 -11
  45. package/dist/common/legacy/index.js.map +0 -1
  46. package/dist/common/legacy/primitiveTypes.d.ts +0 -11
  47. package/dist/common/legacy/primitiveTypes.d.ts.map +0 -1
  48. package/dist/common/legacy/primitiveTypes.js +0 -14
  49. package/dist/common/legacy/primitiveTypes.js.map +0 -1
  50. package/dist/common/legacy/session.d.ts +0 -246
  51. package/dist/common/legacy/session.d.ts.map +0 -1
  52. package/dist/common/legacy/session.js +0 -124
  53. package/dist/common/legacy/session.js.map +0 -1
  54. package/dist/common/legacy/try.d.ts +0 -4
  55. package/dist/common/legacy/try.d.ts.map +0 -1
  56. package/dist/common/legacy/try.js +0 -26
  57. package/dist/common/legacy/try.js.map +0 -1
  58. package/dist/hooks/DaimoClientContext.d.ts +0 -7
  59. package/dist/hooks/DaimoClientContext.d.ts.map +0 -1
  60. package/dist/hooks/DaimoClientContext.js +0 -15
  61. package/dist/hooks/DaimoClientContext.js.map +0 -1
  62. package/dist/hooks/formatUserError.d.ts +0 -3
  63. package/dist/hooks/formatUserError.d.ts.map +0 -1
  64. package/dist/hooks/formatUserError.js +0 -30
  65. package/dist/hooks/formatUserError.js.map +0 -1
  66. package/dist/hooks/index.d.ts +0 -12
  67. package/dist/hooks/index.d.ts.map +0 -1
  68. package/dist/hooks/index.js +0 -9
  69. package/dist/hooks/index.js.map +0 -1
  70. package/dist/hooks/locale.d.ts +0 -7
  71. package/dist/hooks/locale.d.ts.map +0 -1
  72. package/dist/hooks/locale.js +0 -15
  73. package/dist/hooks/locale.js.map +0 -1
  74. package/dist/hooks/locales/en.d.ts +0 -60
  75. package/dist/hooks/locales/en.d.ts.map +0 -1
  76. package/dist/hooks/locales/en.js +0 -76
  77. package/dist/hooks/locales/en.js.map +0 -1
  78. package/dist/hooks/locales/es.d.ts +0 -4
  79. package/dist/hooks/locales/es.d.ts.map +0 -1
  80. package/dist/hooks/locales/es.js +0 -60
  81. package/dist/hooks/locales/es.js.map +0 -1
  82. package/dist/hooks/navEvent.d.ts +0 -60
  83. package/dist/hooks/navEvent.d.ts.map +0 -1
  84. package/dist/hooks/navEvent.js +0 -16
  85. package/dist/hooks/navEvent.js.map +0 -1
  86. package/dist/hooks/types.d.ts +0 -71
  87. package/dist/hooks/types.d.ts.map +0 -1
  88. package/dist/hooks/types.js +0 -14
  89. package/dist/hooks/types.js.map +0 -1
  90. package/dist/hooks/usePaymentCallbacks.d.ts +0 -15
  91. package/dist/hooks/usePaymentCallbacks.d.ts.map +0 -1
  92. package/dist/hooks/usePaymentCallbacks.js +0 -27
  93. package/dist/hooks/usePaymentCallbacks.js.map +0 -1
  94. package/dist/hooks/useSessionNav.d.ts +0 -31
  95. package/dist/hooks/useSessionNav.d.ts.map +0 -1
  96. package/dist/hooks/useSessionNav.js +0 -439
  97. package/dist/hooks/useSessionNav.js.map +0 -1
  98. package/dist/hooks/useSessionPolling.d.ts +0 -10
  99. package/dist/hooks/useSessionPolling.d.ts.map +0 -1
  100. package/dist/hooks/useSessionPolling.js +0 -61
  101. package/dist/hooks/useSessionPolling.js.map +0 -1
  102. package/dist/web/ChooseOptionPage.d.ts +0 -9
  103. package/dist/web/ChooseOptionPage.d.ts.map +0 -1
  104. package/dist/web/ChooseOptionPage.js +0 -51
  105. package/dist/web/ChooseOptionPage.js.map +0 -1
  106. package/dist/web/ConfirmationPage.d.ts +0 -32
  107. package/dist/web/ConfirmationPage.d.ts.map +0 -1
  108. package/dist/web/ConfirmationPage.js +0 -72
  109. package/dist/web/ConfirmationPage.js.map +0 -1
  110. package/dist/web/ConfirmationSpinner.d.ts +0 -7
  111. package/dist/web/ConfirmationSpinner.d.ts.map +0 -1
  112. package/dist/web/ConfirmationSpinner.js +0 -20
  113. package/dist/web/ConfirmationSpinner.js.map +0 -1
  114. package/dist/web/DaimoModal.d.ts +0 -15
  115. package/dist/web/DaimoModal.d.ts.map +0 -1
  116. package/dist/web/DaimoModal.js +0 -283
  117. package/dist/web/DaimoModal.js.map +0 -1
  118. package/dist/web/DeeplinkPage.d.ts +0 -8
  119. package/dist/web/DeeplinkPage.d.ts.map +0 -1
  120. package/dist/web/DeeplinkPage.js +0 -13
  121. package/dist/web/DeeplinkPage.js.map +0 -1
  122. package/dist/web/ErrorPage.d.ts +0 -28
  123. package/dist/web/ErrorPage.d.ts.map +0 -1
  124. package/dist/web/ErrorPage.js +0 -47
  125. package/dist/web/ErrorPage.js.map +0 -1
  126. package/dist/web/ExchangePage.d.ts +0 -11
  127. package/dist/web/ExchangePage.d.ts.map +0 -1
  128. package/dist/web/ExchangePage.js +0 -13
  129. package/dist/web/ExchangePage.js.map +0 -1
  130. package/dist/web/ExpiredPage.d.ts +0 -9
  131. package/dist/web/ExpiredPage.d.ts.map +0 -1
  132. package/dist/web/ExpiredPage.js +0 -12
  133. package/dist/web/ExpiredPage.js.map +0 -1
  134. package/dist/web/ModalSkeleton.d.ts +0 -7
  135. package/dist/web/ModalSkeleton.d.ts.map +0 -1
  136. package/dist/web/ModalSkeleton.js +0 -13
  137. package/dist/web/ModalSkeleton.js.map +0 -1
  138. package/dist/web/ProgressDots.d.ts +0 -16
  139. package/dist/web/ProgressDots.d.ts.map +0 -1
  140. package/dist/web/ProgressDots.js +0 -55
  141. package/dist/web/ProgressDots.js.map +0 -1
  142. package/dist/web/QRCode.d.ts +0 -7
  143. package/dist/web/QRCode.d.ts.map +0 -1
  144. package/dist/web/QRCode.js +0 -69
  145. package/dist/web/QRCode.js.map +0 -1
  146. package/dist/web/SelectAmountPage.d.ts +0 -21
  147. package/dist/web/SelectAmountPage.d.ts.map +0 -1
  148. package/dist/web/SelectAmountPage.js +0 -27
  149. package/dist/web/SelectAmountPage.js.map +0 -1
  150. package/dist/web/SelectTokenPage.d.ts +0 -14
  151. package/dist/web/SelectTokenPage.d.ts.map +0 -1
  152. package/dist/web/SelectTokenPage.js +0 -71
  153. package/dist/web/SelectTokenPage.js.map +0 -1
  154. package/dist/web/WaitingDepositAddressPage.d.ts +0 -14
  155. package/dist/web/WaitingDepositAddressPage.d.ts.map +0 -1
  156. package/dist/web/WaitingDepositAddressPage.js +0 -126
  157. package/dist/web/WaitingDepositAddressPage.js.map +0 -1
  158. package/dist/web/WalletAmountPage.d.ts +0 -10
  159. package/dist/web/WalletAmountPage.d.ts.map +0 -1
  160. package/dist/web/WalletAmountPage.js +0 -158
  161. package/dist/web/WalletAmountPage.js.map +0 -1
  162. package/dist/web/buttons.d.ts +0 -15
  163. package/dist/web/buttons.d.ts.map +0 -1
  164. package/dist/web/buttons.js +0 -24
  165. package/dist/web/buttons.js.map +0 -1
  166. package/dist/web/containers.d.ts +0 -19
  167. package/dist/web/containers.d.ts.map +0 -1
  168. package/dist/web/containers.js +0 -77
  169. package/dist/web/containers.js.map +0 -1
  170. package/dist/web/icons.d.ts +0 -22
  171. package/dist/web/icons.d.ts.map +0 -1
  172. package/dist/web/icons.js +0 -33
  173. package/dist/web/icons.js.map +0 -1
  174. package/dist/web/shared.d.ts +0 -93
  175. package/dist/web/shared.d.ts.map +0 -1
  176. package/dist/web/shared.js +0 -202
  177. package/dist/web/shared.js.map +0 -1
  178. package/dist/web/useCopyToClipboard.d.ts +0 -6
  179. package/dist/web/useCopyToClipboard.d.ts.map +0 -1
  180. package/dist/web/useCopyToClipboard.js +0 -20
  181. package/dist/web/useCopyToClipboard.js.map +0 -1
  182. package/dist/web/useWalletFlow.d.ts +0 -23
  183. package/dist/web/useWalletFlow.d.ts.map +0 -1
  184. package/dist/web/useWalletFlow.js +0 -334
  185. package/dist/web/useWalletFlow.js.map +0 -1
  186. package/dist/web/walletProvider.d.ts +0 -34
  187. package/dist/web/walletProvider.d.ts.map +0 -1
  188. package/dist/web/walletProvider.js +0 -14
  189. package/dist/web/walletProvider.js.map +0 -1
@@ -1,9 +0,0 @@
1
- type ExpiredPageProps = {
2
- onClose?: () => void;
3
- };
4
- /**
5
- * Expired page shown when a payment session times out.
6
- */
7
- export declare function ExpiredPage({ onClose }: ExpiredPageProps): import("react/jsx-runtime").JSX.Element;
8
- export {};
9
- //# sourceMappingURL=ExpiredPage.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ExpiredPage.d.ts","sourceRoot":"","sources":["../../src/web/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,12 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { SecondaryButton } from "./buttons.js";
3
- import { ExpiredIcon } from "./icons.js";
4
- import { t } from "../hooks/locale.js";
5
- import { PageHeader } from "./shared.js";
6
- /**
7
- * Expired page shown when a payment session times out.
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 }))] })] }));
11
- }
12
- //# sourceMappingURL=ExpiredPage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ExpiredPage.js","sourceRoot":"","sources":["../../src/web/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,7 +0,0 @@
1
- /**
2
- * Loading skeleton for the session modal.
3
- * Shows header + scrollable token rows layout (matches SelectTokenPage).
4
- * Respects prefers-reduced-motion for accessibility.
5
- */
6
- export declare function ModalSkeleton(): import("react/jsx-runtime").JSX.Element;
7
- //# sourceMappingURL=ModalSkeleton.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ModalSkeleton.d.ts","sourceRoot":"","sources":["../../src/web/ModalSkeleton.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,wBAAgB,aAAa,4CA0B5B"}
@@ -1,13 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- /**
3
- * Loading skeleton for the session modal.
4
- * Shows header + scrollable token rows layout (matches SelectTokenPage).
5
- * Respects prefers-reduced-motion for accessibility.
6
- */
7
- export function ModalSkeleton() {
8
- return (_jsxs("div", { className: "flex flex-col flex-1 min-h-0", children: [_jsx("div", { className: "flex items-center justify-center h-14 px-6", children: _jsx("div", { className: "h-5 w-32 rounded motion-safe:animate-pulse", style: { backgroundColor: "var(--daimo-skeleton)" } }) }), _jsx("div", { className: "flex-1 px-6 pb-4 flex flex-col gap-3", children: [...Array(11)].map((_, i) => (_jsx("div", { className: "h-16 rounded-[var(--daimo-radius-lg)] motion-safe:animate-pulse", style: {
9
- backgroundColor: "var(--daimo-skeleton)",
10
- animationDelay: `${i * 100}ms`,
11
- } }, i))) })] }));
12
- }
13
- //# sourceMappingURL=ModalSkeleton.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ModalSkeleton.js","sourceRoot":"","sources":["../../src/web/ModalSkeleton.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AACH,MAAM,UAAU,aAAa;IAC3B,OAAO,CACL,eAAK,SAAS,EAAC,8BAA8B,aAE3C,cAAK,SAAS,EAAC,4CAA4C,YACzD,cACE,SAAS,EAAC,4CAA4C,EACtD,KAAK,EAAE,EAAE,eAAe,EAAE,uBAAuB,EAAE,GACnD,GACE,EAGN,cAAK,SAAS,EAAC,sCAAsC,YAClD,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAC5B,cAEE,SAAS,EAAC,iEAAiE,EAC3E,KAAK,EAAE;wBACL,eAAe,EAAE,uBAAuB;wBACxC,cAAc,EAAE,GAAG,CAAC,GAAG,GAAG,IAAI;qBAC/B,IALI,CAAC,CAMN,CACH,CAAC,GACE,IACF,CACP,CAAC;AACJ,CAAC"}
@@ -1,16 +0,0 @@
1
- type ProgressDotsStatus = "confirming" | "processing" | "done" | "refunding";
2
- type ProgressDotsProps = {
3
- status: ProgressDotsStatus;
4
- label: string;
5
- };
6
- /**
7
- * Two-dot progress indicator with connecting line.
8
- *
9
- * Confirming: both dots grey (unfilled), line grey
10
- * Processing: first dot blue, second gray, line gray
11
- * Done: both dots green, line green
12
- * Refunding: both dots red, line red
13
- */
14
- export declare function ProgressDots({ status, label }: ProgressDotsProps): import("react/jsx-runtime").JSX.Element;
15
- export {};
16
- //# sourceMappingURL=ProgressDots.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ProgressDots.d.ts","sourceRoot":"","sources":["../../src/web/ProgressDots.tsx"],"names":[],"mappings":"AAAA,KAAK,kBAAkB,GAAG,YAAY,GAAG,YAAY,GAAG,MAAM,GAAG,WAAW,CAAC;AAE7E,KAAK,iBAAiB,GAAG;IACvB,MAAM,EAAE,kBAAkB,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,iBAAiB,2CAqBhE"}
@@ -1,55 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- /**
3
- * Two-dot progress indicator with connecting line.
4
- *
5
- * Confirming: both dots grey (unfilled), line grey
6
- * Processing: first dot blue, second gray, line gray
7
- * Done: both dots green, line green
8
- * Refunding: both dots red, line red
9
- */
10
- export function ProgressDots({ status, label }) {
11
- const colors = getColors(status);
12
- return (_jsxs("div", { className: "flex flex-col items-center gap-3", children: [_jsxs("div", { className: "flex items-center gap-0", children: [_jsx(Dot, { filled: status !== "confirming", color: colors.first }), _jsx(Line, { color: colors.line }), _jsx(Dot, { filled: status === "done" || status === "refunding", color: colors.second })] }), _jsx("span", { className: "text-sm font-medium", style: { color: colors.text }, children: label })] }));
13
- }
14
- function Dot({ filled, color }) {
15
- return (_jsx("div", { className: "w-3 h-3 rounded-full border-2", style: {
16
- borderColor: color,
17
- backgroundColor: filled ? color : "transparent",
18
- } }));
19
- }
20
- function Line({ color }) {
21
- return _jsx("div", { className: "w-12 h-0.5", style: { backgroundColor: color } });
22
- }
23
- function getColors(status) {
24
- switch (status) {
25
- case "confirming":
26
- return {
27
- first: "var(--daimo-placeholder)",
28
- second: "var(--daimo-placeholder)",
29
- line: "var(--daimo-placeholder)",
30
- text: "var(--daimo-text-secondary)",
31
- };
32
- case "processing":
33
- return {
34
- first: "var(--daimo-accent)",
35
- second: "var(--daimo-placeholder)",
36
- line: "var(--daimo-placeholder)",
37
- text: "var(--daimo-text-secondary)",
38
- };
39
- case "done":
40
- return {
41
- first: "var(--daimo-success)",
42
- second: "var(--daimo-success)",
43
- line: "var(--daimo-success)",
44
- text: "var(--daimo-success)",
45
- };
46
- case "refunding":
47
- return {
48
- first: "var(--daimo-error)",
49
- second: "var(--daimo-error)",
50
- line: "var(--daimo-error)",
51
- text: "var(--daimo-error)",
52
- };
53
- }
54
- }
55
- //# sourceMappingURL=ProgressDots.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ProgressDots.js","sourceRoot":"","sources":["../../src/web/ProgressDots.tsx"],"names":[],"mappings":";AAOA;;;;;;;GAOG;AACH,MAAM,UAAU,YAAY,CAAC,EAAE,MAAM,EAAE,KAAK,EAAqB;IAC/D,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;IAEjC,OAAO,CACL,eAAK,SAAS,EAAC,kCAAkC,aAE/C,eAAK,SAAS,EAAC,yBAAyB,aACtC,KAAC,GAAG,IAAC,MAAM,EAAE,MAAM,KAAK,YAAY,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,GAAI,EAC7D,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,IAAI,GAAI,EAC5B,KAAC,GAAG,IACF,MAAM,EAAE,MAAM,KAAK,MAAM,IAAI,MAAM,KAAK,WAAW,EACnD,KAAK,EAAE,MAAM,CAAC,MAAM,GACpB,IACE,EAGN,eAAM,SAAS,EAAC,qBAAqB,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,YAChE,KAAK,GACD,IACH,CACP,CAAC;AACJ,CAAC;AAOD,SAAS,GAAG,CAAC,EAAE,MAAM,EAAE,KAAK,EAAY;IACtC,OAAO,CACL,cACE,SAAS,EAAC,+BAA+B,EACzC,KAAK,EAAE;YACL,WAAW,EAAE,KAAK;YAClB,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,aAAa;SAChD,GACD,CACH,CAAC;AACJ,CAAC;AAED,SAAS,IAAI,CAAC,EAAE,KAAK,EAAqB;IACxC,OAAO,cAAK,SAAS,EAAC,YAAY,EAAC,KAAK,EAAE,EAAE,eAAe,EAAE,KAAK,EAAE,GAAI,CAAC;AAC3E,CAAC;AASD,SAAS,SAAS,CAAC,MAA0B;IAC3C,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,YAAY;YACf,OAAO;gBACL,KAAK,EAAE,0BAA0B;gBACjC,MAAM,EAAE,0BAA0B;gBAClC,IAAI,EAAE,0BAA0B;gBAChC,IAAI,EAAE,6BAA6B;aACpC,CAAC;QACJ,KAAK,YAAY;YACf,OAAO;gBACL,KAAK,EAAE,qBAAqB;gBAC5B,MAAM,EAAE,0BAA0B;gBAClC,IAAI,EAAE,0BAA0B;gBAChC,IAAI,EAAE,6BAA6B;aACpC,CAAC;QACJ,KAAK,MAAM;YACT,OAAO;gBACL,KAAK,EAAE,sBAAsB;gBAC7B,MAAM,EAAE,sBAAsB;gBAC9B,IAAI,EAAE,sBAAsB;gBAC5B,IAAI,EAAE,sBAAsB;aAC7B,CAAC;QACJ,KAAK,WAAW;YACd,OAAO;gBACL,KAAK,EAAE,oBAAoB;gBAC3B,MAAM,EAAE,oBAAoB;gBAC5B,IAAI,EAAE,oBAAoB;gBAC1B,IAAI,EAAE,oBAAoB;aAC3B,CAAC;IACN,CAAC;AACH,CAAC"}
@@ -1,7 +0,0 @@
1
- type QRCodeProps = {
2
- value: string;
3
- image?: React.ReactNode;
4
- };
5
- export declare function QRCode({ value, image }: QRCodeProps): import("react/jsx-runtime").JSX.Element;
6
- export {};
7
- //# sourceMappingURL=QRCode.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"QRCode.d.ts","sourceRoot":"","sources":["../../src/web/QRCode.tsx"],"names":[],"mappings":"AAGA,KAAK,WAAW,GAAG;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CACzB,CAAC;AAKF,wBAAgB,MAAM,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,WAAW,2CAqHnD"}
@@ -1,69 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import QRCodeLib from "qrcode";
3
- import { useMemo } from "react";
4
- /** SVG viewBox size for quality (actual display size is controlled by CSS) */
5
- const VIEW_SIZE = 288;
6
- export function QRCode({ value, image }) {
7
- const dots = useMemo(() => {
8
- const dots = [];
9
- let matrix;
10
- try {
11
- const qr = QRCodeLib.create(value, { errorCorrectionLevel: "M" });
12
- const arr = Array.prototype.slice.call(qr.modules.data, 0);
13
- const sqrt = Math.sqrt(arr.length);
14
- matrix = arr.reduce((rows, key, index) => (index % sqrt === 0
15
- ? rows.push([key])
16
- : rows[rows.length - 1].push(key)) && rows, []);
17
- }
18
- catch {
19
- return dots;
20
- }
21
- const cellSize = VIEW_SIZE / matrix.length;
22
- // Draw position finder patterns (3 corners) as nested rounded rectangles
23
- const finderPositions = [
24
- { x: 0, y: 0 },
25
- { x: 1, y: 0 },
26
- { x: 0, y: 1 },
27
- ];
28
- finderPositions.forEach(({ x, y }) => {
29
- const x1 = (matrix.length - 7) * cellSize * x;
30
- const y1 = (matrix.length - 7) * cellSize * y;
31
- // Draw 3 nested rectangles: outer (black), middle (white), inner (black)
32
- for (let i = 0; i < 3; i++) {
33
- dots.push(_jsx("rect", { fill: i % 2 !== 0
34
- ? "var(--daimo-qr-bg, white)"
35
- : "var(--daimo-qr-dot, black)", rx: (i - 2) * -5 + (i === 0 ? 2 : 3), ry: (i - 2) * -5 + (i === 0 ? 2 : 3), width: cellSize * (7 - i * 2), height: cellSize * (7 - i * 2), x: x1 + cellSize * i, y: y1 + cellSize * i }, `finder-${i}-${x}-${y}`));
36
- }
37
- });
38
- // Calculate center clear area for logo (28% of QR)
39
- const logoAreaSize = Math.floor((VIEW_SIZE * 0.28) / cellSize);
40
- const matrixMiddleStart = matrix.length / 2 - logoAreaSize / 2;
41
- const matrixMiddleEnd = matrix.length / 2 + logoAreaSize / 2 - 1;
42
- // Draw data dots (circles)
43
- matrix.forEach((row, i) => {
44
- row.forEach((cell, j) => {
45
- if (!cell)
46
- return;
47
- // Skip position finder patterns
48
- const inTopLeft = i < 7 && j < 7;
49
- const inTopRight = i > matrix.length - 8 && j < 7;
50
- const inBottomLeft = i < 7 && j > matrix.length - 8;
51
- if (inTopLeft || inTopRight || inBottomLeft)
52
- return;
53
- // Skip center area if image is provided
54
- if (image) {
55
- const inCenter = i > matrixMiddleStart &&
56
- i < matrixMiddleEnd &&
57
- j > matrixMiddleStart &&
58
- j < matrixMiddleEnd;
59
- if (inCenter)
60
- return;
61
- }
62
- dots.push(_jsx("circle", { cx: i * cellSize + cellSize / 2, cy: j * cellSize + cellSize / 2, fill: "var(--daimo-qr-dot, black)", r: cellSize / 3 }, `dot-${i}-${j}`));
63
- });
64
- });
65
- return dots;
66
- }, [value, image]);
67
- return (_jsx("div", { className: "qr-container relative w-full overflow-hidden rounded-2xl border border-[var(--daimo-border)] bg-[var(--daimo-qr-bg,white)]", children: _jsx("div", { className: "relative w-full pb-[100%]", children: _jsxs("div", { className: "absolute inset-[13px]", children: [_jsx("svg", { viewBox: `0 0 ${VIEW_SIZE} ${VIEW_SIZE}`, className: "block h-auto w-full", children: dots }), image && (_jsx("div", { className: "absolute left-1/2 top-1/2 flex h-[28%] w-[28%] -translate-x-1/2 -translate-y-1/2 items-center justify-center", children: image }))] }) }) }));
68
- }
69
- //# sourceMappingURL=QRCode.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"QRCode.js","sourceRoot":"","sources":["../../src/web/QRCode.tsx"],"names":[],"mappings":"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"}
@@ -1,21 +0,0 @@
1
- import { NavNodeDepositAddress } from "../common/legacy/session.js";
2
- type SelectAmountPageProps = {
3
- node: NavNodeDepositAddress | {
4
- icon?: string;
5
- title: string;
6
- };
7
- minimumUsd: number;
8
- maximumUsd: number;
9
- /** Token suffix for display (e.g., "USDC", "USDT") */
10
- tokenSuffix?: string;
11
- /** Chain ID for token badge display */
12
- chainId?: number;
13
- /** Optional back handler. If undefined, back button is hidden. */
14
- onBack?: () => void;
15
- onContinue: (amountUsd: number) => void;
16
- isLoading?: boolean;
17
- error?: string | null;
18
- };
19
- export declare function SelectAmountPage({ node, minimumUsd, maximumUsd, tokenSuffix, chainId, onBack, onContinue, isLoading, error, }: SelectAmountPageProps): import("react/jsx-runtime").JSX.Element;
20
- export {};
21
- //# sourceMappingURL=SelectAmountPage.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SelectAmountPage.d.ts","sourceRoot":"","sources":["../../src/web/SelectAmountPage.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,qBAAqB,EACtB,MAAM,6BAA6B,CAAC;AAarC,KAAK,qBAAqB,GAAG;IAC3B,IAAI,EAAE,qBAAqB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/D,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,sDAAsD;IACtD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uCAAuC;IACvC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kEAAkE;IAClE,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,UAAU,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,EAC/B,IAAI,EACJ,UAAU,EACV,UAAU,EACV,WAAW,EACX,OAAO,EACP,MAAM,EACN,UAAU,EACV,SAAS,EACT,KAAK,GACN,EAAE,qBAAqB,2CAyEvB"}
@@ -1,27 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { TokenLogo } from "../common/token.js";
3
- import { PrimaryButton } from "./buttons.js";
4
- import { t } from "../hooks/locale.js";
5
- import { AmountInput, PageHeader, TokenIconWithChainBadge, resolveIconUrl, useAmountInput, } from "./shared.js";
6
- export function SelectAmountPage({ node, minimumUsd, maximumUsd, tokenSuffix, chainId, onBack, onContinue, isLoading, error, }) {
7
- const { amountUsd, isValid, handleChange } = useAmountInput(minimumUsd, maximumUsd);
8
- // Create pseudo-token for display if tokenSuffix is USDC or USDT and chainId is provided
9
- const selectedToken = tokenSuffix === "USDC" || tokenSuffix === "USDT" ? tokenSuffix : null;
10
- const displayToken = selectedToken && chainId != null
11
- ? {
12
- chainId,
13
- token: "0x0",
14
- symbol: selectedToken,
15
- decimals: 6,
16
- logoURI: selectedToken === "USDC" ? TokenLogo.USDC : TokenLogo.USDT,
17
- logoSourceURI: "",
18
- usd: 1,
19
- priceFromUsd: 1,
20
- maxAcceptUsd: 1000000,
21
- maxSendUsd: 1000000,
22
- displayDecimals: 2,
23
- }
24
- : null;
25
- return (_jsxs("div", { className: "flex flex-col flex-1 min-h-0", children: [_jsx(PageHeader, { title: t.selectAmount, onBack: onBack }), _jsxs("div", { className: "flex-1 flex flex-col items-center p-6 gap-6", children: [_jsx("div", { className: "h-24 flex items-center justify-center", children: displayToken ? (_jsx(TokenIconWithChainBadge, { token: displayToken, size: "lg", badgeBorderClass: "border-2 bg-[var(--daimo-surface)] border-[var(--daimo-surface)]" })) : (node.icon && (_jsx("img", { src: resolveIconUrl(node.icon), alt: node.title, className: "w-20 h-20 rounded-full" }))) }), _jsx(AmountInput, { minimumUsd: minimumUsd, maximumUsd: maximumUsd, onSubmit: onContinue, onChange: handleChange }), error && (_jsx("div", { className: "text-red-500 text-sm text-center", children: error })), _jsx(PrimaryButton, { onClick: () => isValid && !isLoading && onContinue(amountUsd), disabled: !isValid || isLoading, children: isLoading ? t.loading : t.continue })] })] }));
26
- }
27
- //# sourceMappingURL=SelectAmountPage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SelectAmountPage.js","sourceRoot":"","sources":["../../src/web/SelectAmountPage.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,CAAC,EAAE,MAAM,oBAAoB,CAAC;AACvC,OAAO,EACL,WAAW,EACX,UAAU,EACV,uBAAuB,EACvB,cAAc,EACd,cAAc,GACf,MAAM,aAAa,CAAC;AAiBrB,MAAM,UAAU,gBAAgB,CAAC,EAC/B,IAAI,EACJ,UAAU,EACV,UAAU,EACV,WAAW,EACX,OAAO,EACP,MAAM,EACN,UAAU,EACV,SAAS,EACT,KAAK,GACiB;IACtB,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,cAAc,CACzD,UAAU,EACV,UAAU,CACX,CAAC;IAEF,yFAAyF;IACzF,MAAM,aAAa,GACjB,WAAW,KAAK,MAAM,IAAI,WAAW,KAAK,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC;IAExE,MAAM,YAAY,GAChB,aAAa,IAAI,OAAO,IAAI,IAAI;QAC9B,CAAC,CAAE;YACC,OAAO;YACP,KAAK,EAAE,KAAsB;YAC7B,MAAM,EAAE,aAAa;YACrB,QAAQ,EAAE,CAAC;YACX,OAAO,EAAE,aAAa,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI;YACnE,aAAa,EAAE,EAAE;YACjB,GAAG,EAAE,CAAC;YACN,YAAY,EAAE,CAAC;YACf,YAAY,EAAE,OAAO;YACrB,UAAU,EAAE,OAAO;YACnB,eAAe,EAAE,CAAC;SACD;QACrB,CAAC,CAAC,IAAI,CAAC;IAEX,OAAO,CACL,eAAK,SAAS,EAAC,8BAA8B,aAC3C,KAAC,UAAU,IAAC,KAAK,EAAE,CAAC,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,GAAI,EAErD,eAAK,SAAS,EAAC,6CAA6C,aAE1D,cAAK,SAAS,EAAC,uCAAuC,YACnD,YAAY,CAAC,CAAC,CAAC,CACd,KAAC,uBAAuB,IACtB,KAAK,EAAE,YAAY,EACnB,IAAI,EAAC,IAAI,EACT,gBAAgB,EAAC,kEAAkE,GACnF,CACH,CAAC,CAAC,CAAC,CACF,IAAI,CAAC,IAAI,IAAI,CACX,cACE,GAAG,EAAE,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAC9B,GAAG,EAAE,IAAI,CAAC,KAAK,EACf,SAAS,EAAC,wBAAwB,GAClC,CACH,CACF,GACG,EAGN,KAAC,WAAW,IACV,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,UAAU,EACpB,QAAQ,EAAE,YAAY,GACtB,EAGD,KAAK,IAAI,CACR,cAAK,SAAS,EAAC,kCAAkC,YAAE,KAAK,GAAO,CAChE,EAED,KAAC,aAAa,IACZ,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,IAAI,CAAC,SAAS,IAAI,UAAU,CAAC,SAAS,CAAC,EAC7D,QAAQ,EAAE,CAAC,OAAO,IAAI,SAAS,YAE9B,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,GACrB,IACZ,IACF,CACP,CAAC;AACJ,CAAC"}
@@ -1,14 +0,0 @@
1
- import { WalletPaymentOption } from "../common/legacy/session.js";
2
- type SelectTokenPageProps = {
3
- /** Token options, or null if not yet loaded */
4
- options: WalletPaymentOption[] | null;
5
- /** Loading state - show skeletons */
6
- isLoading?: boolean;
7
- /** Number of skeleton rows to show while loading */
8
- skeletonCount?: number;
9
- onSelect: (option: WalletPaymentOption) => void;
10
- };
11
- /** 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 {};
14
- //# sourceMappingURL=SelectTokenPage.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SelectTokenPage.d.ts","sourceRoot":"","sources":["../../src/web/SelectTokenPage.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAiB,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAMjF,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,71 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { getChainName } from "../common/chain.js";
3
- import { t } from "../hooks/locale.js";
4
- import { PageHeader, TokenIconWithChainBadge } from "./shared.js";
5
- /** Token selection page for wallet payment flow */
6
- export function SelectTokenPage({ options, isLoading = false, skeletonCount = 11, onSelect, }) {
7
- // Show skeletons while loading
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))) }) })] }));
10
- }
11
- // Filter options: valid tokens first, then disabled (insufficient balance or liquidity)
12
- const validOptions = options.filter((opt) => opt.balance.usd >= opt.minimumRequired.usd && !opt.disabledReason);
13
- 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 */
19
- _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
- }
21
- /** Skeleton loading row - matches TokenRow dimensions with token + chain badge */
22
- function SkeletonRow() {
23
- return (_jsxs("div", { className: "w-full h-16 shrink-0 flex items-center justify-between px-5 rounded-[var(--daimo-radius-lg)] bg-[var(--daimo-surface-secondary)] animate-pulse", children: [_jsxs("div", { className: "flex-1 min-w-0 mr-3", children: [_jsx("div", { className: "h-5 w-48 rounded mb-2", style: { backgroundColor: "var(--daimo-skeleton)" } }), _jsx("div", { className: "h-4 w-32 rounded", style: { backgroundColor: "var(--daimo-skeleton)" } })] }), _jsxs("div", { className: "relative w-8 h-8 shrink-0", children: [_jsx("div", { className: "w-8 h-8 rounded-full", style: { backgroundColor: "var(--daimo-skeleton)" } }), _jsx("div", { className: "absolute -bottom-0.5 -right-0.5 w-[15px] h-[15px] rounded-full", style: {
24
- backgroundColor: "var(--daimo-skeleton)",
25
- border: "1px solid var(--daimo-surface-secondary)",
26
- } })] })] }));
27
- }
28
- /**
29
- * Token option row - 64px height, matching ChooseOptionPage row style.
30
- * Shows "$X TOKEN on Chain" with "Y TOKEN" subtitle.
31
- */
32
- function TokenRow({ option, onSelect, disabled = false }) {
33
- const chainName = getChainName(option.balance.token.chainId);
34
- const tokenAmount = formatTokenAmount(option.balance.amount, option.balance.token);
35
- const usdAmount = formatUsdAmount(option.balance.usd);
36
- const disabledReason = option.disabledReason ??
37
- (option.balance.usd < option.minimumRequired.usd
38
- ? `$${option.minimumRequired.usd.toFixed(2)} ${t.minimum.toLowerCase()}`
39
- : null);
40
- const title = `$${usdAmount} ${option.balance.token.symbol} ${t.onChain} ${chainName}`;
41
- const subtitle = disabled && disabledReason
42
- ? disabledReason
43
- : `${tokenAmount} ${option.balance.token.symbol}`;
44
- return (_jsxs("button", { onClick: () => !disabled && onSelect(option), disabled: disabled, className: `w-full h-16 shrink-0 flex items-center justify-between px-5 rounded-[var(--daimo-radius-lg)] text-left touch-action-manipulation transition-[background-color,transform] duration-150 ease-out ${disabled
45
- ? "opacity-50 cursor-not-allowed bg-[var(--daimo-surface-secondary)]"
46
- : "bg-[var(--daimo-surface-secondary)] hover:[@media(hover:hover)]:bg-[var(--daimo-surface-hover)] active:scale-[0.98]"}`, children: [_jsxs("div", { className: "flex-1 min-w-0 mr-3", children: [_jsx("div", { className: `font-semibold truncate tabular-nums ${disabled
47
- ? "text-[var(--daimo-text-muted)]"
48
- : "text-[var(--daimo-text)]"}`, children: title }), _jsx("div", { className: "text-sm text-[var(--daimo-text-secondary)] truncate tabular-nums", children: subtitle })] }), _jsx(TokenIconWithChainBadge, { token: option.balance.token, size: "sm" })] }));
49
- }
50
- // --- Helpers ---
51
- /** Unique key for a token */
52
- function getTokenKey(token) {
53
- return `${token.chainId}-${token.token}`;
54
- }
55
- /** Format token amount for display - shows full precision */
56
- function formatTokenAmount(amount, token) {
57
- const num = parseFloat(amount) / Math.pow(10, token.decimals);
58
- if (num === 0)
59
- return "0";
60
- // Use displayDecimals from token, fallback to sensible defaults
61
- const decimals = token.displayDecimals ?? (num < 1 ? 6 : 2);
62
- return num.toLocaleString("en-US", {
63
- minimumFractionDigits: 0,
64
- maximumFractionDigits: decimals,
65
- });
66
- }
67
- /** Format USD amount for display */
68
- function formatUsdAmount(usd) {
69
- return usd.toFixed(2);
70
- }
71
- //# sourceMappingURL=SelectTokenPage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SelectTokenPage.js","sourceRoot":"","sources":["../../src/web/SelectTokenPage.tsx"],"names":[],"mappings":"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"}
@@ -1,14 +0,0 @@
1
- import { NavNodeDepositAddress } from "../common/legacy/session.js";
2
- type DepositToken = "USDC" | "USDT";
3
- type WaitingDepositAddressPageProps = {
4
- node: NavNodeDepositAddress;
5
- amountUsd: number;
6
- selectedToken?: DepositToken;
7
- sessionId: string;
8
- loading?: boolean;
9
- onBack: () => void;
10
- onRefresh: () => void;
11
- };
12
- export declare function WaitingDepositAddressPage({ node, amountUsd, selectedToken, sessionId, loading, onBack, onRefresh, }: WaitingDepositAddressPageProps): import("react/jsx-runtime").JSX.Element;
13
- export {};
14
- //# sourceMappingURL=WaitingDepositAddressPage.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"WaitingDepositAddressPage.d.ts","sourceRoot":"","sources":["../../src/web/WaitingDepositAddressPage.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAkBpE,KAAK,YAAY,GAAG,MAAM,GAAG,MAAM,CAAC;AAUpC,KAAK,8BAA8B,GAAG;IACpC,IAAI,EAAE,qBAAqB,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,YAAY,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,SAAS,EAAE,MAAM,IAAI,CAAC;CACvB,CAAC;AAEF,wBAAgB,yBAAyB,CAAC,EACxC,IAAI,EACJ,SAAS,EACT,aAAa,EACb,SAAS,EACT,OAAe,EACf,MAAM,EACN,SAAS,GACV,EAAE,8BAA8B,2CAqFhC"}
@@ -1,126 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { TokenLogo } from "../common/token.js";
3
- import { tron } from "../common/chain.js";
4
- import { useEffect, useMemo, useState } from "react";
5
- import { getAddress } from "viem";
6
- import { SecondaryButton } from "./buttons.js";
7
- import { useDaimoClient } from "../hooks/DaimoClientContext.js";
8
- import { t } from "../hooks/locale.js";
9
- import { createNavLogger } from "../hooks/navEvent.js";
10
- import { QRCode } from "./QRCode.js";
11
- import { CopyableInfoCard, PageHeader, resolveIconUrl, TokenIconWithChainBadge, } from "./shared.js";
12
- const depositTokenLogos = {
13
- USDC: TokenLogo.USDC,
14
- USDT: TokenLogo.USDT,
15
- };
16
- /** 1 hour in seconds — standard DA address lifetime */
17
- const DA_LIFETIME_S = 3600;
18
- export function WaitingDepositAddressPage({ node, amountUsd, selectedToken, sessionId, loading = false, onBack, onRefresh, }) {
19
- const client = useDaimoClient();
20
- const logNavEvent = useMemo(() => createNavLogger(client), [client]);
21
- const hasAddress = !loading && !!node.address;
22
- const address = hasAddress
23
- ? normalizeAddress(node.address, node.chainId)
24
- : "";
25
- const shortAddress = hasAddress
26
- ? `${address.slice(0, 6)}...${address.slice(-4)}`
27
- : "";
28
- const [showQR, setShowQR] = useState(false);
29
- const tokenSuffix = selectedToken ?? node.tokenSuffix ?? "USDT or USDC";
30
- const nodeCtx = { nodeId: node.id, nodeType: node.type };
31
- const { remainingS, isExpired } = useCountdown(node.expiresAt);
32
- const handleQRToggle = () => {
33
- if (!hasAddress)
34
- return;
35
- setShowQR((v) => {
36
- logNavEvent(sessionId, { ...nodeCtx, action: "qr_toggle", visible: !v });
37
- return !v;
38
- });
39
- };
40
- const handleCopyAddress = (value) => {
41
- logNavEvent(sessionId, {
42
- ...nodeCtx,
43
- action: "copy_address",
44
- address: value,
45
- });
46
- };
47
- const pageTitle = selectedToken
48
- ? `${t.deposit} ${selectedToken}`
49
- : `${t.depositOn} ${node.title}`;
50
- return (_jsxs("div", { className: "flex flex-col flex-1 min-h-0", children: [_jsx(PageHeader, { title: pageTitle, onBack: onBack }), _jsxs("div", { className: "flex-1 flex flex-col items-center p-6 gap-6", children: [isExpired ? (_jsx("div", { className: "h-24 flex items-center justify-center", children: _jsx(SecondaryButton, { onClick: onRefresh, children: t.generateNewAddress }) })) : (_jsx(LogoOrQR, { showQR: showQR, address: address, node: node, selectedToken: selectedToken })), !isExpired && hasAddress && (_jsx(QRToggleButton, { showQR: showQR, onToggle: handleQRToggle })), _jsxs("div", { className: "w-full max-w-sm space-y-3", children: [hasAddress ? (_jsx(CopyableInfoCard, { label: t.oneTimeAddress, value: address, displayValue: shortAddress, disabled: isExpired, onCopy: handleCopyAddress })) : (_jsx(AddressSkeleton, {})), _jsx(CopyableInfoCard, { label: t.amount, value: amountUsd.toFixed(2), suffix: tokenSuffix, disabled: isExpired })] }), _jsx(Countdown, { remainingS: remainingS, isExpired: isExpired })] })] }));
51
- }
52
- // --- Sub-components ---
53
- /** Token icon (large) or QR code with token icon in center. Animated crossfade. */
54
- function LogoOrQR({ showQR, address, node, selectedToken, }) {
55
- return (_jsxs("div", { className: "relative w-full flex items-center justify-center", children: [_jsx("div", { className: "w-full max-w-[200px] sm:max-w-[260px] transition-qr-spacer", style: { height: showQR ? "226px" : "96px" } }), _jsx("div", { className: "absolute inset-0 flex items-center justify-center transition-qr", style: {
56
- opacity: showQR ? 1 : 0,
57
- transform: showQR ? "scale(1)" : "scale(0.96)",
58
- pointerEvents: showQR ? "auto" : "none",
59
- }, children: _jsx("div", { className: "w-full max-w-[200px] sm:max-w-[260px]", children: _jsx(QRCode, { value: address, image: _jsx(TokenIcon, { node: node, selectedToken: selectedToken, size: "qr" }) }) }) }), _jsx("div", { className: "absolute inset-0 flex items-center justify-center pointer-events-none", children: _jsx("div", { className: "transition-qr-icon", style: {
60
- transform: showQR ? "scale(0.6)" : "scale(1)",
61
- opacity: showQR ? 0 : 1,
62
- }, children: _jsx(TokenIcon, { node: node, selectedToken: selectedToken, size: "lg" }) }) })] }));
63
- }
64
- /** Token icon at the given size, with chain badge. */
65
- function TokenIcon({ node, selectedToken, size, }) {
66
- if (selectedToken) {
67
- return (_jsx(TokenIconWithChainBadge, { chainId: node.chainId, symbol: selectedToken, logoURI: depositTokenLogos[selectedToken], size: size, badgeBorderClass: size === "qr"
68
- ? "border-[1.5px] bg-[var(--daimo-qr-bg,white)] border-[var(--daimo-qr-bg,white)]"
69
- : "border-2 bg-[var(--daimo-surface)] border-[var(--daimo-surface)]" }));
70
- }
71
- if (node.icon) {
72
- const iconSize = size === "qr" ? "w-12 h-12" : "w-20 h-20";
73
- return (_jsx("img", { src: resolveIconUrl(node.icon), alt: node.title, className: `${iconSize} rounded-full` }));
74
- }
75
- return null;
76
- }
77
- function QRToggleButton({ showQR, onToggle, }) {
78
- return (_jsxs("button", { onClick: onToggle, className: "flex items-center gap-2 text-[var(--daimo-text-secondary)] min-h-[44px] touch-action-manipulation", "aria-label": showQR ? t.hideQR : t.showQR, children: [_jsx("span", { className: "text-sm", children: showQR ? t.hideQR : t.showQR }), _jsx(QRIcon, {})] }));
79
- }
80
- function AddressSkeleton() {
81
- return (_jsxs("div", { className: "w-full min-h-[56px] p-4 bg-[var(--daimo-surface-secondary)] rounded-[var(--daimo-radius-lg)] flex flex-col gap-2", children: [_jsx("div", { className: "h-3 w-24 rounded animate-pulse", style: { backgroundColor: "var(--daimo-skeleton)" } }), _jsx("div", { className: "h-5 w-40 rounded animate-pulse", style: {
82
- backgroundColor: "var(--daimo-skeleton)",
83
- animationDelay: "100ms",
84
- } })] }));
85
- }
86
- function Countdown({ remainingS, isExpired, }) {
87
- const m = `${Math.floor(remainingS / 60)}`.padStart(2, "0");
88
- const s = `${remainingS % 60}`.padStart(2, "0");
89
- return (_jsxs("div", { className: "flex flex-col items-center gap-1", children: [_jsx("span", { className: "text-sm text-[var(--daimo-text)]", children: isExpired ? t.expired : t.expiresIn }), _jsxs("div", { className: "flex items-center gap-2", children: [_jsx(CircleTimer, { remainingS: remainingS, totalS: DA_LIFETIME_S }), _jsx("span", { className: "font-semibold tabular-nums", style: {
90
- color: isExpired ? "var(--daimo-error)" : "var(--daimo-text)",
91
- }, children: isExpired ? t.expired : `${m}:${s}` })] })] }));
92
- }
93
- function CircleTimer({ remainingS, totalS, }) {
94
- const size = 18;
95
- const strokeWidth = 3;
96
- const radius = (size - strokeWidth) / 2;
97
- const circumference = 2 * Math.PI * radius;
98
- const offset = circumference * (1 - (totalS > 0 ? remainingS / totalS : 0));
99
- return (_jsxs("svg", { width: size, height: size, className: "transform -rotate-90", children: [_jsx("circle", { cx: size / 2, cy: size / 2, r: radius, fill: "none", stroke: "var(--daimo-placeholder)", strokeWidth: strokeWidth }), _jsx("circle", { cx: size / 2, cy: size / 2, r: radius, fill: "none", stroke: remainingS > 0 ? "var(--daimo-success)" : "var(--daimo-error)", strokeWidth: strokeWidth, strokeDasharray: circumference, strokeDashoffset: offset, strokeLinecap: "round" })] }));
100
- }
101
- function QRIcon() {
102
- return (_jsxs("svg", { width: "20", height: "20", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round", children: [_jsx("path", { d: "M3.75 4.875c0-.621.504-1.125 1.125-1.125h4.5c.621 0 1.125.504 1.125 1.125v4.5c0 .621-.504 1.125-1.125 1.125h-4.5A1.125 1.125 0 0 1 3.75 9.375v-4.5Z" }), _jsx("path", { d: "M3.75 14.625c0-.621.504-1.125 1.125-1.125h4.5c.621 0 1.125.504 1.125 1.125v4.5c0 .621-.504 1.125-1.125 1.125h-4.5a1.125 1.125 0 0 1-1.125-1.125v-4.5Z" }), _jsx("path", { d: "M13.5 4.875c0-.621.504-1.125 1.125-1.125h4.5c.621 0 1.125.504 1.125 1.125v4.5c0 .621-.504 1.125-1.125 1.125h-4.5A1.125 1.125 0 0 1 13.5 9.375v-4.5Z" }), _jsx("path", { d: "M6.75 6.75h.75v.75h-.75v-.75Z" }), _jsx("path", { d: "M6.75 16.5h.75v.75h-.75v-.75Z" }), _jsx("path", { d: "M16.5 6.75h.75v.75h-.75v-.75Z" }), _jsx("path", { d: "M13.5 13.5h.75v.75h-.75v-.75Z" }), _jsx("path", { d: "M13.5 19.5h.75v.75h-.75v-.75Z" }), _jsx("path", { d: "M19.5 13.5h.75v.75h-.75v-.75Z" }), _jsx("path", { d: "M19.5 19.5h.75v.75h-.75v-.75Z" }), _jsx("path", { d: "M16.5 16.5h.75v.75h-.75v-.75Z" })] }));
103
- }
104
- // --- Helpers ---
105
- function normalizeAddress(addr, chainId) {
106
- if (chainId === tron.chainId)
107
- return addr;
108
- return getAddress(addr);
109
- }
110
- /** Countdown hook — ticks every second once expiresAt is set. */
111
- function useCountdown(expiresAt) {
112
- const hasExpiry = expiresAt > 0;
113
- const [remainingS, setRemainingS] = useState(() => hasExpiry
114
- ? Math.max(0, Math.floor(expiresAt - Date.now() / 1000))
115
- : DA_LIFETIME_S);
116
- useEffect(() => {
117
- if (!hasExpiry)
118
- return;
119
- const interval = setInterval(() => {
120
- setRemainingS(Math.max(0, Math.floor(expiresAt - Date.now() / 1000)));
121
- }, 1000);
122
- return () => clearInterval(interval);
123
- }, [expiresAt, hasExpiry]);
124
- return { remainingS, isExpired: hasExpiry && remainingS === 0 };
125
- }
126
- //# sourceMappingURL=WaitingDepositAddressPage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"WaitingDepositAddressPage.js","sourceRoot":"","sources":["../../src/web/WaitingDepositAddressPage.tsx"],"names":[],"mappings":"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"}
@@ -1,10 +0,0 @@
1
- import { WalletPaymentOption } from "../common/legacy/session.js";
2
- type WalletAmountPageProps = {
3
- token: WalletPaymentOption;
4
- onBack: () => void;
5
- onContinue: (amountUsd: number) => void;
6
- };
7
- /** Amount entry page for wallet payment flow */
8
- export declare function WalletAmountPage({ token, onBack, onContinue, }: WalletAmountPageProps): import("react/jsx-runtime").JSX.Element;
9
- export {};
10
- //# sourceMappingURL=WalletAmountPage.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"WalletAmountPage.d.ts","sourceRoot":"","sources":["../../src/web/WalletAmountPage.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAiB,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAcjF,KAAK,qBAAqB,GAAG;IAC3B,KAAK,EAAE,mBAAmB,CAAC;IAC3B,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,UAAU,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;CACzC,CAAC;AAEF,gDAAgD;AAChD,wBAAgB,gBAAgB,CAAC,EAC/B,KAAK,EACL,MAAM,EACN,UAAU,GACX,EAAE,qBAAqB,2CAuOvB"}