@daimo/sdk 1.6.0 → 1.8.0-beta.0

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 (190) hide show
  1. package/README.md +1 -0
  2. package/dist/client/createDaimoClient.d.ts +7 -3
  3. package/dist/client/createDaimoClient.d.ts.map +1 -1
  4. package/dist/client/createDaimoClient.js +8 -3
  5. package/dist/client/createDaimoClient.js.map +1 -1
  6. package/dist/common/api.d.ts +7 -5
  7. package/dist/common/api.d.ts.map +1 -1
  8. package/dist/common/api.js +13 -12
  9. package/dist/common/api.js.map +1 -1
  10. package/dist/common/api.test.d.ts +2 -0
  11. package/dist/common/api.test.d.ts.map +1 -0
  12. package/dist/common/api.test.js +21 -0
  13. package/dist/common/api.test.js.map +1 -0
  14. package/dist/common/constants.d.ts +5 -0
  15. package/dist/common/constants.d.ts.map +1 -0
  16. package/dist/common/constants.js +5 -0
  17. package/dist/common/constants.js.map +1 -0
  18. package/dist/common/frameMessages.d.ts +26 -0
  19. package/dist/common/frameMessages.d.ts.map +1 -0
  20. package/dist/common/frameMessages.js +54 -0
  21. package/dist/common/frameMessages.js.map +1 -0
  22. package/dist/common/frameMessages.test.d.ts +2 -0
  23. package/dist/common/frameMessages.test.d.ts.map +1 -0
  24. package/dist/common/frameMessages.test.js +42 -0
  25. package/dist/common/frameMessages.test.js.map +1 -0
  26. package/dist/native/DaimoFrameRN.d.ts +71 -0
  27. package/dist/native/DaimoFrameRN.d.ts.map +1 -0
  28. package/dist/native/DaimoFrameRN.js +238 -0
  29. package/dist/native/DaimoFrameRN.js.map +1 -0
  30. package/dist/native/index.d.ts +5 -0
  31. package/dist/native/index.d.ts.map +1 -0
  32. package/dist/native/index.js +10 -0
  33. package/dist/native/index.js.map +1 -0
  34. package/dist/version.d.ts +1 -1
  35. package/dist/version.d.ts.map +1 -1
  36. package/dist/version.js +1 -1
  37. package/dist/version.js.map +1 -1
  38. package/dist/web/api/index.d.ts +24 -0
  39. package/dist/web/api/index.d.ts.map +1 -1
  40. package/dist/web/api/index.js +6 -1
  41. package/dist/web/api/index.js.map +1 -1
  42. package/dist/web/api/navTree.d.ts +2 -1
  43. package/dist/web/api/navTree.d.ts.map +1 -1
  44. package/dist/web/components/BankLogo.d.ts +8 -0
  45. package/dist/web/components/BankLogo.d.ts.map +1 -0
  46. package/dist/web/components/BankLogo.js +9 -0
  47. package/dist/web/components/BankLogo.js.map +1 -0
  48. package/dist/web/components/ChooseOptionPage.d.ts.map +1 -1
  49. package/dist/web/components/ChooseOptionPage.js +4 -0
  50. package/dist/web/components/ChooseOptionPage.js.map +1 -1
  51. package/dist/web/components/DaimoFrame.d.ts +30 -18
  52. package/dist/web/components/DaimoFrame.d.ts.map +1 -1
  53. package/dist/web/components/DaimoFrame.js +55 -56
  54. package/dist/web/components/DaimoFrame.js.map +1 -1
  55. package/dist/web/components/DaimoModal.d.ts +16 -1
  56. package/dist/web/components/DaimoModal.d.ts.map +1 -1
  57. package/dist/web/components/DaimoModal.js +109 -34
  58. package/dist/web/components/DaimoModal.js.map +1 -1
  59. package/dist/web/components/DaimoRampPreview.d.ts +12 -0
  60. package/dist/web/components/DaimoRampPreview.d.ts.map +1 -0
  61. package/dist/web/components/DaimoRampPreview.js +21 -0
  62. package/dist/web/components/DaimoRampPreview.js.map +1 -0
  63. package/dist/web/components/ExchangePage.d.ts.map +1 -1
  64. package/dist/web/components/ExchangePage.js +6 -1
  65. package/dist/web/components/ExchangePage.js.map +1 -1
  66. package/dist/web/components/ExternalPaymentPage.d.ts.map +1 -1
  67. package/dist/web/components/ExternalPaymentPage.js +3 -2
  68. package/dist/web/components/ExternalPaymentPage.js.map +1 -1
  69. package/dist/web/components/ModalChrome.d.ts +9 -12
  70. package/dist/web/components/ModalChrome.d.ts.map +1 -1
  71. package/dist/web/components/ModalChrome.js +40 -41
  72. package/dist/web/components/ModalChrome.js.map +1 -1
  73. package/dist/web/components/account/AccountApplePayPage.d.ts.map +1 -1
  74. package/dist/web/components/account/AccountApplePayPage.js +16 -23
  75. package/dist/web/components/account/AccountApplePayPage.js.map +1 -1
  76. package/dist/web/components/account/AccountBankPickerPage.d.ts +1 -3
  77. package/dist/web/components/account/AccountBankPickerPage.d.ts.map +1 -1
  78. package/dist/web/components/account/AccountBankPickerPage.js +1 -5
  79. package/dist/web/components/account/AccountBankPickerPage.js.map +1 -1
  80. package/dist/web/components/account/AccountDeeplinkPage.d.ts.map +1 -1
  81. package/dist/web/components/account/AccountDeeplinkPage.js +7 -1
  82. package/dist/web/components/account/AccountDeeplinkPage.js.map +1 -1
  83. package/dist/web/components/account/AccountEmailPage.d.ts +2 -1
  84. package/dist/web/components/account/AccountEmailPage.d.ts.map +1 -1
  85. package/dist/web/components/account/AccountEmailPage.js +2 -2
  86. package/dist/web/components/account/AccountEmailPage.js.map +1 -1
  87. package/dist/web/components/account/AccountEnrollmentUpdatePage.d.ts.map +1 -1
  88. package/dist/web/components/account/AccountEnrollmentUpdatePage.js +2 -1
  89. package/dist/web/components/account/AccountEnrollmentUpdatePage.js.map +1 -1
  90. package/dist/web/components/account/AccountFlowProvider.d.ts +8 -1
  91. package/dist/web/components/account/AccountFlowProvider.d.ts.map +1 -1
  92. package/dist/web/components/account/AccountFlowProvider.js +38 -3
  93. package/dist/web/components/account/AccountFlowProvider.js.map +1 -1
  94. package/dist/web/components/account/AccountInteracConfirmPage.d.ts +13 -0
  95. package/dist/web/components/account/AccountInteracConfirmPage.d.ts.map +1 -0
  96. package/dist/web/components/account/AccountInteracConfirmPage.js +55 -0
  97. package/dist/web/components/account/AccountInteracConfirmPage.js.map +1 -0
  98. package/dist/web/components/account/AccountInteracConfirmPage.test.d.ts +2 -0
  99. package/dist/web/components/account/AccountInteracConfirmPage.test.d.ts.map +1 -0
  100. package/dist/web/components/account/AccountInteracConfirmPage.test.js +20 -0
  101. package/dist/web/components/account/AccountInteracConfirmPage.test.js.map +1 -0
  102. package/dist/web/components/account/AccountOtpPage.d.ts +1 -1
  103. package/dist/web/components/account/AccountOtpPage.d.ts.map +1 -1
  104. package/dist/web/components/account/AccountOtpPage.js +4 -2
  105. package/dist/web/components/account/AccountOtpPage.js.map +1 -1
  106. package/dist/web/components/account/AccountPaymentPage.d.ts +1 -1
  107. package/dist/web/components/account/AccountPaymentPage.d.ts.map +1 -1
  108. package/dist/web/components/account/AccountPaymentPage.js +1 -13
  109. package/dist/web/components/account/AccountPaymentPage.js.map +1 -1
  110. package/dist/web/components/account/AccountStatusPage.d.ts +4 -1
  111. package/dist/web/components/account/AccountStatusPage.d.ts.map +1 -1
  112. package/dist/web/components/account/AccountStatusPage.js +2 -2
  113. package/dist/web/components/account/AccountStatusPage.js.map +1 -1
  114. package/dist/web/components/account/accountNav.d.ts +8 -2
  115. package/dist/web/components/account/accountNav.d.ts.map +1 -1
  116. package/dist/web/components/account/accountNav.js +20 -2
  117. package/dist/web/components/account/accountNav.js.map +1 -1
  118. package/dist/web/components/account/accountNav.test.js +37 -3
  119. package/dist/web/components/account/accountNav.test.js.map +1 -1
  120. package/dist/web/components/frameMessages.d.ts +2 -37
  121. package/dist/web/components/frameMessages.d.ts.map +1 -1
  122. package/dist/web/components/frameMessages.js +4 -86
  123. package/dist/web/components/frameMessages.js.map +1 -1
  124. package/dist/web/components/shared.d.ts.map +1 -1
  125. package/dist/web/components/shared.js +6 -1
  126. package/dist/web/components/shared.js.map +1 -1
  127. package/dist/web/hooks/formatUserError.d.ts.map +1 -1
  128. package/dist/web/hooks/formatUserError.js +10 -0
  129. package/dist/web/hooks/formatUserError.js.map +1 -1
  130. package/dist/web/hooks/formatUserError.test.d.ts +2 -0
  131. package/dist/web/hooks/formatUserError.test.d.ts.map +1 -0
  132. package/dist/web/hooks/formatUserError.test.js +36 -0
  133. package/dist/web/hooks/formatUserError.test.js.map +1 -0
  134. package/dist/web/hooks/locales/en.d.ts +13 -0
  135. package/dist/web/hooks/locales/en.d.ts.map +1 -1
  136. package/dist/web/hooks/locales/en.js +16 -3
  137. package/dist/web/hooks/locales/en.js.map +1 -1
  138. package/dist/web/hooks/locales/es.d.ts.map +1 -1
  139. package/dist/web/hooks/locales/es.js +16 -3
  140. package/dist/web/hooks/locales/es.js.map +1 -1
  141. package/dist/web/hooks/locales/ja.d.ts.map +1 -1
  142. package/dist/web/hooks/locales/ja.js +16 -3
  143. package/dist/web/hooks/locales/ja.js.map +1 -1
  144. package/dist/web/hooks/locales/ko.d.ts.map +1 -1
  145. package/dist/web/hooks/locales/ko.js +16 -3
  146. package/dist/web/hooks/locales/ko.js.map +1 -1
  147. package/dist/web/hooks/locales/pt.d.ts.map +1 -1
  148. package/dist/web/hooks/locales/pt.js +16 -3
  149. package/dist/web/hooks/locales/pt.js.map +1 -1
  150. package/dist/web/hooks/locales/zh.d.ts.map +1 -1
  151. package/dist/web/hooks/locales/zh.js +16 -3
  152. package/dist/web/hooks/locales/zh.js.map +1 -1
  153. package/dist/web/hooks/types.d.ts +4 -1
  154. package/dist/web/hooks/types.d.ts.map +1 -1
  155. package/dist/web/hooks/types.js.map +1 -1
  156. package/dist/web/hooks/useSessionNav.d.ts +6 -1
  157. package/dist/web/hooks/useSessionNav.d.ts.map +1 -1
  158. package/dist/web/hooks/useSessionNav.js +56 -22
  159. package/dist/web/hooks/useSessionNav.js.map +1 -1
  160. package/dist/web/index.d.ts +2 -0
  161. package/dist/web/index.d.ts.map +1 -1
  162. package/dist/web/index.js +1 -0
  163. package/dist/web/index.js.map +1 -1
  164. package/dist/web/styles.css +1 -1
  165. package/dist/web/theme.css +1 -1
  166. package/package.json +18 -4
  167. package/dist/web/components/ProgressPulse.d.ts +0 -14
  168. package/dist/web/components/ProgressPulse.d.ts.map +0 -1
  169. package/dist/web/components/ProgressPulse.js +0 -15
  170. package/dist/web/components/ProgressPulse.js.map +0 -1
  171. package/dist/web/components/account/AccountBankTransferSubmittedPage.d.ts +0 -15
  172. package/dist/web/components/account/AccountBankTransferSubmittedPage.d.ts.map +0 -1
  173. package/dist/web/components/account/AccountBankTransferSubmittedPage.js +0 -33
  174. package/dist/web/components/account/AccountBankTransferSubmittedPage.js.map +0 -1
  175. package/dist/web/components/account/AccountReadyPage.d.ts +0 -2
  176. package/dist/web/components/account/AccountReadyPage.d.ts.map +0 -1
  177. package/dist/web/components/account/AccountReadyPage.js +0 -7
  178. package/dist/web/components/account/AccountReadyPage.js.map +0 -1
  179. package/dist/web/components/account/AccountRipioOtpPage.d.ts +0 -7
  180. package/dist/web/components/account/AccountRipioOtpPage.d.ts.map +0 -1
  181. package/dist/web/components/account/AccountRipioOtpPage.js +0 -53
  182. package/dist/web/components/account/AccountRipioOtpPage.js.map +0 -1
  183. package/dist/web/hooks/useCreateDeposit.d.ts +0 -20
  184. package/dist/web/hooks/useCreateDeposit.d.ts.map +0 -1
  185. package/dist/web/hooks/useCreateDeposit.js +0 -54
  186. package/dist/web/hooks/useCreateDeposit.js.map +0 -1
  187. package/dist/web/isDesktopBrowser.d.ts +0 -2
  188. package/dist/web/isDesktopBrowser.d.ts.map +0 -1
  189. package/dist/web/isDesktopBrowser.js +0 -6
  190. package/dist/web/isDesktopBrowser.js.map +0 -1
@@ -1 +1 @@
1
- :root,[data-theme=light]{--daimo-bg:#00000008;--daimo-surface:#fff;--daimo-surface-secondary:#f6f7f9;--daimo-surface-hover:#f0f2f5;--daimo-skeleton:#f6f7f9;--daimo-title:#373737;--daimo-text:#373737;--daimo-text-secondary:#999;--daimo-text-muted:#9ca3af;--daimo-success:#22c55e;--daimo-success-light:#dcfce7;--daimo-checkmark:#22c55e;--daimo-brand-green:#009110;--daimo-brand-green-light:#e6f4e8;--daimo-error:#ef4444;--daimo-error-light:#fee2e2;--daimo-error-badge-bg:#fff1f1;--daimo-error-badge-ring:#ffd6d6;--daimo-error-badge-mark:#d62f2f;--daimo-warning:#f97316;--daimo-warning-light:#fff7ed;--daimo-accent:#3b82f6;--daimo-placeholder:#d1d5db;--daimo-border:#fbfafb;--daimo-qr-bg:#fff;--daimo-qr-dot:#373737;--daimo-scroll-max-height:20rem;--daimo-radius-sm:0.5rem;--daimo-radius-md:0.75rem;--daimo-radius-lg:1rem;--daimo-radius-xl:20px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--daimo-bg:#00000008;--daimo-surface:#2b2b2b;--daimo-surface-secondary:#383838;--daimo-surface-hover:#404040;--daimo-skeleton:#383838;--daimo-title:#fff;--daimo-text:#fff;--daimo-text-secondary:#7e7e7e;--daimo-text-muted:#858585;--daimo-success:#4ade80;--daimo-success-light:#14532d;--daimo-checkmark:#f3f4f6;--daimo-brand-green:#009110;--daimo-brand-green-light:#12351a;--daimo-error:#f87171;--daimo-error-light:#7f1d1d;--daimo-error-badge-bg:#3a2222;--daimo-error-badge-ring:#673232;--daimo-error-badge-mark:#ff8585;--daimo-warning:#fb923c;--daimo-warning-light:#431407;--daimo-accent:#0977d5;--daimo-placeholder:#9ca3af;--daimo-border:#3d3d3d;--daimo-qr-bg:#2b2b2b;--daimo-qr-dot:#fff}}.daimo-scroll-fade:after{content:"";pointer-events:none;z-index:10;position:sticky;bottom:0;left:0;right:0;display:block;height:32px;margin-top:-32px;background:linear-gradient(to bottom,transparent,var(--daimo-surface));transition:opacity .3s ease}.daimo-scroll-fade.daimo-scroll-end:after{opacity:0}.daimo-page-enter{animation:daimo-page-in .15s cubic-bezier(.23,1,.32,1) both}@keyframes daimo-page-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.daimo-page-enter{animation:none}}.daimo-account-banner{transition:transform .18s cubic-bezier(.23,1,.32,1),opacity .14s ease-out}.daimo-account-email-chip{max-width:2rem;transition:max-width .18s cubic-bezier(.23,1,.32,1),background-color .14s ease}.daimo-account-email-chip-copy,.daimo-account-email-chip-text{opacity:0;transform:translateX(-6px);transition:opacity .14s ease-out,transform .18s cubic-bezier(.23,1,.32,1)}@media (hover:hover){.daimo-account-email-chip:hover{max-width:min(260px,calc(100vw - 124px))}.daimo-account-email-chip:hover .daimo-account-email-chip-copy,.daimo-account-email-chip:hover .daimo-account-email-chip-text{opacity:1;transform:translateX(0)}}.daimo-account-email-chip:focus-visible{max-width:min(260px,calc(100vw - 124px))}.daimo-account-email-chip:focus-visible .daimo-account-email-chip-copy,.daimo-account-email-chip:focus-visible .daimo-account-email-chip-text{opacity:1;transform:translateX(0)}@media (prefers-reduced-motion:reduce){.daimo-account-banner,.daimo-account-email-chip,.daimo-account-email-chip-copy,.daimo-account-email-chip-text{transition:none}}.daimo-modal-backdrop{animation:daimo-backdrop-in .2s ease-out forwards}@keyframes daimo-backdrop-in{0%{opacity:0}to{opacity:1}}.daimo-modal-content{animation:daimo-modal-slide-up .2s ease-out forwards}@media (min-width:640px){.daimo-modal-content{animation:daimo-modal-fade-in .2s ease-out forwards}}@keyframes daimo-modal-fade-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes daimo-modal-slide-up{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes daimo-scale-in{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}@keyframes daimo-fade-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.daimo-qr-placeholder-qr{opacity:.1}.daimo-qr-shimmer{pointer-events:none;transform:scale(2) rotate(45deg);background:linear-gradient(90deg,hsla(0,0%,100%,0) 50%,hsla(0,0%,100%,.4),hsla(0,0%,100%,0));background-size:200% 100%;animation:daimo-qr-shimmer 1s linear infinite both}.daimo-qr-placeholder-logo{z-index:2;position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.daimo-qr-placeholder-logo-inner{display:flex;width:28%;height:28%;align-items:center;justify-content:center}@keyframes daimo-qr-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@keyframes daimo-fade-in{0%{opacity:0}to{opacity:1}}@keyframes daimo-qr-fade-in{0%{opacity:0}to{opacity:1}}@keyframes daimo-qr-fade-out{0%{opacity:1}to{opacity:0}}.daimo-qr-fade-in{animation:daimo-qr-fade-in .2s ease-out both}.daimo-qr-fade-out{animation:daimo-qr-fade-out .2s ease-out both}.daimo-transition-qr{transition:opacity .28s cubic-bezier(.215,.61,.355,1),transform .28s cubic-bezier(.215,.61,.355,1);will-change:opacity,transform}.daimo-transition-qr-icon{transition:transform .28s cubic-bezier(.645,.045,.355,1),opacity .28s cubic-bezier(.645,.045,.355,1);will-change:transform,opacity}.daimo-transition-qr-spacer{transition:height .28s cubic-bezier(.645,.045,.355,1)}.daimo-otp-shake{animation:daimo-otp-shake .36s cubic-bezier(.36,.07,.19,.97)}@keyframes daimo-otp-shake{10%,90%{transform:translateX(-2px)}20%,80%{transform:translateX(3px)}30%,50%,70%{transform:translateX(-5px)}40%,60%{transform:translateX(5px)}}@media (prefers-reduced-motion:reduce){.daimo-modal-backdrop,.daimo-modal-content,.daimo-qr-fade-in,.daimo-qr-fade-out,.daimo-qr-shimmer{animation:none}.daimo-transition-qr,.daimo-transition-qr-icon,.daimo-transition-qr-spacer{transition:none}.daimo-otp-shake{animation:none}}[data-theme=dark]{--daimo-bg:#00000008;--daimo-surface:#2b2b2b;--daimo-surface-secondary:#383838;--daimo-surface-hover:#404040;--daimo-skeleton:#383838;--daimo-title:#fff;--daimo-text:#fff;--daimo-text-secondary:#7e7e7e;--daimo-text-muted:#858585;--daimo-success:#4ade80;--daimo-success-light:#14532d;--daimo-checkmark:#f3f4f6;--daimo-brand-green:#009110;--daimo-brand-green-light:#12351a;--daimo-error:#f87171;--daimo-error-light:#7f1d1d;--daimo-error-badge-bg:#3a2222;--daimo-error-badge-ring:#673232;--daimo-error-badge-mark:#ff8585;--daimo-warning:#fb923c;--daimo-warning-light:#431407;--daimo-accent:#0977d5;--daimo-placeholder:#9ca3af;--daimo-border:#3d3d3d;--daimo-qr-bg:#2b2b2b;--daimo-qr-dot:#fff;--daimo-radius-sm:0.5rem;--daimo-radius-md:0.75rem;--daimo-radius-lg:1rem;--daimo-radius-xl:20px}.daimo-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.daimo-pointer-events-none{pointer-events:none}.daimo-pointer-events-auto{pointer-events:auto}.daimo-invisible{visibility:hidden}.daimo-fixed{position:fixed}.daimo-absolute{position:absolute}.daimo-relative{position:relative}.daimo-sticky{position:sticky}.daimo-inset-0{inset:0}.daimo-inset-\[13px\]{inset:13px}.daimo-inset-x-0{left:0;right:0}.-daimo-bottom-0\.5{bottom:-.125rem}.-daimo-bottom-1{bottom:-.25rem}.-daimo-right-0\.5{right:-.125rem}.-daimo-right-1{right:-.25rem}.daimo-left-5{left:1.25rem}.daimo-left-\[17px\]{left:17px}.daimo-right-\[17px\]{right:17px}.daimo-top-0{top:0}.daimo-top-\[22px\]{top:22px}.daimo-isolate{isolation:isolate}.daimo-z-10{z-index:10}.daimo-z-20{z-index:20}.daimo-z-30{z-index:30}.daimo-z-50{z-index:50}.daimo-z-\[70\]{z-index:70}.daimo-mx-6{margin-left:1.5rem;margin-right:1.5rem}.daimo-mx-auto{margin-left:auto;margin-right:auto}.daimo-mb-1{margin-bottom:.25rem}.daimo-mb-2{margin-bottom:.5rem}.daimo-mb-3{margin-bottom:.75rem}.daimo-mb-6{margin-bottom:1.5rem}.daimo-ml-2{margin-left:.5rem}.daimo-mr-3{margin-right:.75rem}.daimo-mt-0\.5{margin-top:.125rem}.daimo-mt-1{margin-top:.25rem}.daimo-mt-10{margin-top:2.5rem}.daimo-mt-2{margin-top:.5rem}.daimo-mt-3{margin-top:.75rem}.daimo-mt-5{margin-top:1.25rem}.daimo-mt-6{margin-top:1.5rem}.daimo-mt-8{margin-top:2rem}.daimo-mt-auto{margin-top:auto}.daimo-box-border{box-sizing:border-box}.daimo-block{display:block}.daimo-inline-block{display:inline-block}.daimo-flex{display:flex}.daimo-inline-flex{display:inline-flex}.daimo-grid{display:grid}.daimo-aspect-square{aspect-ratio:1/1}.daimo-h-0\.5{height:.125rem}.daimo-h-1{height:.25rem}.daimo-h-1\.5{height:.375rem}.daimo-h-10{height:2.5rem}.daimo-h-11{height:2.75rem}.daimo-h-12{height:3rem}.daimo-h-14{height:3.5rem}.daimo-h-16{height:4rem}.daimo-h-2{height:.5rem}.daimo-h-20{height:5rem}.daimo-h-24{height:6rem}.daimo-h-3{height:.75rem}.daimo-h-36{height:9rem}.daimo-h-4{height:1rem}.daimo-h-5{height:1.25rem}.daimo-h-7{height:1.75rem}.daimo-h-8{height:2rem}.daimo-h-\[15px\]{height:15px}.daimo-h-\[21px\]{height:21px}.daimo-h-\[54px\]{height:54px}.daimo-h-\[56px\]{height:56px}.daimo-h-\[76px\]{height:76px}.daimo-h-auto{height:auto}.daimo-h-full{height:100%}.daimo-max-h-\[90vh\]{max-height:90vh}.daimo-min-h-0{min-height:0}.daimo-min-h-11{min-height:2.75rem}.daimo-min-h-20{min-height:5rem}.daimo-min-h-\[100px\]{min-height:100px}.daimo-min-h-\[21px\]{min-height:21px}.daimo-min-h-\[24px\]{min-height:24px}.daimo-min-h-\[320px\]{min-height:320px}.daimo-min-h-\[36px\]{min-height:36px}.daimo-min-h-\[420px\]{min-height:420px}.daimo-min-h-\[44px\]{min-height:44px}.daimo-min-h-\[48px\]{min-height:48px}.daimo-min-h-\[520px\]{min-height:520px}.daimo-min-h-\[56px\]{min-height:56px}.daimo-min-h-\[72px\]{min-height:72px}.daimo-w-1{width:.25rem}.daimo-w-1\.5{width:.375rem}.daimo-w-10{width:2.5rem}.daimo-w-11{width:2.75rem}.daimo-w-12{width:3rem}.daimo-w-14{width:3.5rem}.daimo-w-16{width:4rem}.daimo-w-2\/3{width:66.666667%}.daimo-w-20{width:5rem}.daimo-w-24{width:6rem}.daimo-w-28{width:7rem}.daimo-w-3{width:.75rem}.daimo-w-32{width:8rem}.daimo-w-4{width:1rem}.daimo-w-40{width:10rem}.daimo-w-44{width:11rem}.daimo-w-48{width:12rem}.daimo-w-5{width:1.25rem}.daimo-w-52{width:13rem}.daimo-w-7{width:1.75rem}.daimo-w-8{width:2rem}.daimo-w-\[15px\]{width:15px}.daimo-w-full{width:100%}.daimo-min-w-0{min-width:0}.daimo-max-w-16{max-width:4rem}.daimo-max-w-\[200px\]{max-width:200px}.daimo-max-w-\[210px\]{max-width:210px}.daimo-max-w-\[260px\]{max-width:260px}.daimo-max-w-\[300px\]{max-width:300px}.daimo-max-w-\[320px\]{max-width:320px}.daimo-max-w-\[420px\]{max-width:420px}.daimo-max-w-\[512px\]{max-width:512px}.daimo-max-w-\[88px\]{max-width:88px}.daimo-max-w-full{max-width:100%}.daimo-max-w-none{max-width:none}.daimo-max-w-sm{max-width:24rem}.daimo-max-w-xs{max-width:20rem}.daimo-flex-1{flex:1 1 0%}.daimo-shrink-0{flex-shrink:0}.-daimo-translate-y-full{--tw-translate-y:-100%}.-daimo-translate-y-full,.daimo-translate-y-0{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.daimo-translate-y-0{--tw-translate-y:0px}.-daimo-rotate-90{--tw-rotate:-90deg}.-daimo-rotate-90,.daimo-scale-100{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.daimo-scale-100{--tw-scale-x:1;--tw-scale-y:1}.daimo-scale-50{--tw-scale-x:.5;--tw-scale-y:.5}.daimo-scale-50,.daimo-transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes daimo-spin{to{transform:rotate(1turn)}}.daimo-animate-spin{animation:daimo-spin 1s linear infinite}.daimo-cursor-not-allowed{cursor:not-allowed}.daimo-cursor-text{cursor:text}.daimo-select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.daimo-grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.daimo-grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.daimo-grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.daimo-flex-col{flex-direction:column}.daimo-items-start{align-items:flex-start}.daimo-items-end{align-items:flex-end}.daimo-items-center{align-items:center}.daimo-justify-end{justify-content:flex-end}.daimo-justify-center{justify-content:center}.daimo-justify-between{justify-content:space-between}.daimo-gap-0{gap:0}.daimo-gap-0\.5{gap:.125rem}.daimo-gap-1{gap:.25rem}.daimo-gap-1\.5{gap:.375rem}.daimo-gap-2{gap:.5rem}.daimo-gap-3{gap:.75rem}.daimo-gap-4{gap:1rem}.daimo-gap-5{gap:1.25rem}.daimo-gap-6{gap:1.5rem}.daimo-space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem*var(--tw-space-y-reverse))}.daimo-overflow-hidden{overflow:hidden}.daimo-overflow-y-auto{overflow-y:auto}.daimo-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.daimo-whitespace-pre-line{white-space:pre-line}.daimo-text-balance{text-wrap:balance}.daimo-break-all{word-break:break-all}.daimo-rounded{border-radius:.25rem}.daimo-rounded-2xl{border-radius:1rem}.daimo-rounded-\[25\%\]{border-radius:25%}.daimo-rounded-\[5px\]{border-radius:5px}.daimo-rounded-\[var\(--daimo-radius-lg\)\]{border-radius:var(--daimo-radius-lg)}.daimo-rounded-\[var\(--daimo-radius-md\)\]{border-radius:var(--daimo-radius-md)}.daimo-rounded-\[var\(--daimo-radius-sm\)\]{border-radius:var(--daimo-radius-sm)}.daimo-rounded-full{border-radius:9999px}.daimo-rounded-lg{border-radius:.5rem}.daimo-rounded-t-\[var\(--daimo-radius-xl\)\]{border-top-left-radius:var(--daimo-radius-xl);border-top-right-radius:var(--daimo-radius-xl)}.daimo-border{border-width:1px}.daimo-border-0{border-width:0}.daimo-border-2{border-width:2px}.daimo-border-\[1\.5px\]{border-width:1.5px}.daimo-border-b{border-bottom-width:1px}.daimo-border-none{border-style:none}.daimo-border-\[var\(--daimo-accent\)\]{border-color:var(--daimo-accent)}.daimo-border-\[var\(--daimo-border\)\]{border-color:var(--daimo-border)}.daimo-border-\[var\(--daimo-qr-bg\,white\)\]{border-color:var(--daimo-qr-bg,#fff)}.daimo-border-\[var\(--daimo-surface\)\]{border-color:var(--daimo-surface)}.daimo-bg-\[var\(--daimo-accent\)\]{background-color:var(--daimo-accent)}.daimo-bg-\[var\(--daimo-bg\)\]{background-color:var(--daimo-bg)}.daimo-bg-\[var\(--daimo-border\)\]{background-color:var(--daimo-border)}.daimo-bg-\[var\(--daimo-brand-green-light\)\]{background-color:var(--daimo-brand-green-light)}.daimo-bg-\[var\(--daimo-error-light\)\]{background-color:var(--daimo-error-light)}.daimo-bg-\[var\(--daimo-placeholder\)\]{background-color:var(--daimo-placeholder)}.daimo-bg-\[var\(--daimo-qr-bg\,white\)\]{background-color:var(--daimo-qr-bg,#fff)}.daimo-bg-\[var\(--daimo-surface\)\]{background-color:var(--daimo-surface)}.daimo-bg-\[var\(--daimo-surface-secondary\)\]{background-color:var(--daimo-surface-secondary)}.daimo-bg-\[var\(--daimo-text\)\]{background-color:var(--daimo-text)}.daimo-bg-black\/50{background-color:rgba(0,0,0,.5)}.daimo-bg-transparent{background-color:transparent}.daimo-bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.daimo-object-contain{-o-object-fit:contain;object-fit:contain}.daimo-p-1{padding:.25rem}.daimo-p-1\.5{padding:.375rem}.daimo-p-3{padding:.75rem}.daimo-p-4{padding:1rem}.daimo-p-6{padding:1.5rem}.daimo-px-0{padding-left:0;padding-right:0}.daimo-px-2{padding-left:.5rem;padding-right:.5rem}.daimo-px-3{padding-left:.75rem;padding-right:.75rem}.daimo-px-4{padding-left:1rem;padding-right:1rem}.daimo-px-5{padding-left:1.25rem;padding-right:1.25rem}.daimo-px-6{padding-left:1.5rem;padding-right:1.5rem}.daimo-px-8{padding-left:2rem;padding-right:2rem}.daimo-py-2{padding-top:.5rem;padding-bottom:.5rem}.daimo-py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.daimo-py-3{padding-top:.75rem;padding-bottom:.75rem}.daimo-py-4{padding-top:1rem;padding-bottom:1rem}.daimo-py-5{padding-top:1.25rem;padding-bottom:1.25rem}.daimo-py-\[3px\]{padding-top:3px;padding-bottom:3px}.daimo-pb-0{padding-bottom:0}.daimo-pb-12{padding-bottom:3rem}.daimo-pb-2{padding-bottom:.5rem}.daimo-pb-3{padding-bottom:.75rem}.daimo-pb-4{padding-bottom:1rem}.daimo-pb-6{padding-bottom:1.5rem}.daimo-pb-\[100\%\]{padding-bottom:100%}.daimo-pr-2{padding-right:.5rem}.daimo-pr-3{padding-right:.75rem}.daimo-pt-2{padding-top:.5rem}.daimo-pt-3{padding-top:.75rem}.daimo-pt-4{padding-top:1rem}.daimo-text-left{text-align:left}.daimo-text-center{text-align:center}.daimo-text-3xl{font-size:1.875rem;line-height:2.25rem}.daimo-text-\[11px\]{font-size:11px}.daimo-text-\[15px\]{font-size:15px}.daimo-text-\[24px\]{font-size:24px}.daimo-text-base{font-size:1rem;line-height:1.5rem}.daimo-text-lg{font-size:1.125rem;line-height:1.75rem}.daimo-text-sm{font-size:.875rem;line-height:1.25rem}.daimo-text-xl{font-size:1.25rem;line-height:1.75rem}.daimo-text-xs{font-size:.75rem;line-height:1rem}.daimo-font-bold{font-weight:700}.daimo-font-medium{font-weight:500}.daimo-font-normal{font-weight:400}.daimo-font-semibold{font-weight:600}.daimo-tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.daimo-leading-\[21px\]{line-height:21px}.daimo-leading-relaxed{line-height:1.625}.daimo-leading-snug{line-height:1.375}.daimo-leading-tight{line-height:1.25}.daimo-text-\[var\(--daimo-accent\)\]{color:var(--daimo-accent)}.daimo-text-\[var\(--daimo-brand-green\)\]{color:var(--daimo-brand-green)}.daimo-text-\[var\(--daimo-checkmark\)\]{color:var(--daimo-checkmark)}.daimo-text-\[var\(--daimo-error\)\]{color:var(--daimo-error)}.daimo-text-\[var\(--daimo-error-badge-mark\)\]{color:var(--daimo-error-badge-mark)}.daimo-text-\[var\(--daimo-placeholder\)\]{color:var(--daimo-placeholder)}.daimo-text-\[var\(--daimo-qr-dot\)\]{color:var(--daimo-qr-dot)}.daimo-text-\[var\(--daimo-success\)\]{color:var(--daimo-success)}.daimo-text-\[var\(--daimo-text\)\]{color:var(--daimo-text)}.daimo-text-\[var\(--daimo-text-muted\)\]{color:var(--daimo-text-muted)}.daimo-text-\[var\(--daimo-text-secondary\)\]{color:var(--daimo-text-secondary)}.daimo-text-\[var\(--daimo-title\)\]{color:var(--daimo-title)}.daimo-text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.daimo-underline{text-decoration-line:underline}.daimo-no-underline{text-decoration-line:none}.daimo-placeholder-\[var\(--daimo-placeholder\)\]::-moz-placeholder{color:var(--daimo-placeholder)}.daimo-placeholder-\[var\(--daimo-placeholder\)\]::placeholder{color:var(--daimo-placeholder)}.daimo-caret-\[var\(--daimo-accent\)\]{caret-color:var(--daimo-accent)}.daimo-caret-\[var\(--daimo-text-muted\)\]{caret-color:var(--daimo-text-muted)}.daimo-opacity-0{opacity:0}.daimo-opacity-100{opacity:1}.daimo-opacity-50{opacity:.5}.daimo-opacity-60{opacity:.6}.daimo-shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.daimo-shadow-lg,.daimo-shadow-none{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.daimo-shadow-none{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000}.daimo-shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.daimo-outline-none{outline:2px solid transparent;outline-offset:2px}.daimo-ring-0{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color)}.daimo-ring-0,.daimo-ring-1{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.daimo-ring-1{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.daimo-ring-2{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.daimo-ring-\[var\(--daimo-brand-green\)\]{--tw-ring-color:var(--daimo-brand-green)}.daimo-ring-\[var\(--daimo-error\)\]{--tw-ring-color:var(--daimo-error)}.daimo-transition-\[background-color\,color\,box-shadow\]{transition-property:background-color,color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.daimo-transition-\[background-color\,opacity\]{transition-property:background-color,opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.daimo-transition-\[background-color\,transform\,opacity\]{transition-property:background-color,transform,opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.daimo-transition-\[background-color\,transform\]{transition-property:background-color,transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.daimo-transition-\[background-color\]{transition-property:background-color;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.daimo-transition-\[border-color\]{transition-property:border-color;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.daimo-transition-\[opacity\,transform\]{transition-property:opacity,transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.daimo-transition-\[width\,background-color\]{transition-property:width,background-color;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.daimo-transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.daimo-transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.daimo-transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.daimo-transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.daimo-duration-100{transition-duration:.1s}.daimo-duration-150{transition-duration:.15s}.daimo-duration-200{transition-duration:.2s}.daimo-duration-300{transition-duration:.3s}.daimo-ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.focus-within\:daimo-ring-2:focus-within{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-within\:daimo-ring-\[var\(--daimo-accent\)\]:focus-within{--tw-ring-color:var(--daimo-accent)}.hover\:daimo-bg-\[var\(--daimo-surface-hover\)\]:hover{background-color:var(--daimo-surface-hover)}.hover\:daimo-text-\[var\(--daimo-text\)\]:hover{color:var(--daimo-text)}.focus\:daimo-border-none:focus{border-style:none}.focus\:daimo-shadow-none:focus{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.focus\:daimo-outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:daimo-ring-0:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:daimo-ring-0:focus,.focus\:daimo-ring-2:focus{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:daimo-ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:daimo-ring-\[var\(--daimo-accent\)\]:focus{--tw-ring-color:var(--daimo-accent)}.focus-visible\:daimo-bg-\[var\(--daimo-surface-secondary\)\]:focus-visible{background-color:var(--daimo-surface-secondary)}.focus-visible\:daimo-ring-2:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\:daimo-ring-\[var\(--daimo-accent\)\]:focus-visible{--tw-ring-color:var(--daimo-accent)}.focus-visible\:daimo-ring-offset-2:focus-visible{--tw-ring-offset-width:2px}.focus-visible\:daimo-ring-offset-\[var\(--daimo-surface\)\]:focus-visible{--tw-ring-offset-color:var(--daimo-surface)}.active\:daimo-scale-\[0\.99\]:active{--tw-scale-x:0.99;--tw-scale-y:0.99}.active\:daimo-scale-\[0\.99\]:active,.active\:daimo-scale-\[0\.9\]:active{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.active\:daimo-scale-\[0\.9\]:active{--tw-scale-x:0.9;--tw-scale-y:0.9}.active\:daimo-opacity-50:active{opacity:.5}.disabled\:daimo-cursor-default:disabled{cursor:default}.disabled\:daimo-cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:daimo-opacity-40:disabled{opacity:.4}.disabled\:daimo-opacity-50:disabled{opacity:.5}@media (prefers-reduced-motion:no-preference){@keyframes daimo-daimo-pulse{50%{opacity:.5}}.motion-safe\:daimo-animate-daimo-pulse{animation:daimo-daimo-pulse 2s cubic-bezier(.4,0,.6,1) infinite}}@media (min-width:640px){.sm\:daimo-max-w-\[260px\]{max-width:260px}.sm\:daimo-items-center{align-items:center}.sm\:daimo-rounded-\[var\(--daimo-radius-xl\)\]{border-radius:var(--daimo-radius-xl)}.sm\:daimo-px-4{padding-left:1rem;padding-right:1rem}}@media(hover:hover){.hover\:\[\@media\(hover\:hover\)\]\:\!daimo-bg-\[var\(--daimo-surface-secondary\)\]:hover{background-color:var(--daimo-surface-secondary)!important}.hover\:\[\@media\(hover\:hover\)\]\:\!daimo-bg-transparent:hover{background-color:transparent!important}.hover\:\[\@media\(hover\:hover\)\]\:daimo-bg-\[var\(--daimo-surface-hover\)\]:hover{background-color:var(--daimo-surface-hover)}.hover\:\[\@media\(hover\:hover\)\]\:daimo-bg-\[var\(--daimo-surface-secondary\)\]:hover{background-color:var(--daimo-surface-secondary)}.hover\:\[\@media\(hover\:hover\)\]\:daimo-opacity-70:hover{opacity:.7}.hover\:\[\@media\(hover\:hover\)\]\:daimo-opacity-90:hover{opacity:.9}}
1
+ :root,[data-theme=light]{--daimo-bg:#00000008;--daimo-surface:#fff;--daimo-surface-secondary:#f6f7f9;--daimo-surface-hover:#f0f2f5;--daimo-skeleton:#f6f7f9;--daimo-title:#373737;--daimo-text:#373737;--daimo-text-secondary:#999;--daimo-text-muted:#9ca3af;--daimo-success:#22c55e;--daimo-success-light:#dcfce7;--daimo-checkmark:#22c55e;--daimo-brand-green:#009110;--daimo-brand-green-light:#e6f4e8;--daimo-error:#ef4444;--daimo-error-light:#fee2e2;--daimo-error-badge-bg:#fff1f1;--daimo-error-badge-ring:#ffd6d6;--daimo-error-badge-mark:#d62f2f;--daimo-warning:#f97316;--daimo-warning-light:#fff7ed;--daimo-accent:#3b82f6;--daimo-placeholder:#d1d5db;--daimo-border:#fbfafb;--daimo-qr-bg:#fff;--daimo-qr-dot:#373737;--daimo-scroll-max-height:20rem;--daimo-radius-sm:0.5rem;--daimo-radius-md:0.75rem;--daimo-radius-lg:1rem;--daimo-radius-xl:20px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--daimo-bg:#00000008;--daimo-surface:#2b2b2b;--daimo-surface-secondary:#383838;--daimo-surface-hover:#404040;--daimo-skeleton:#383838;--daimo-title:#fff;--daimo-text:#fff;--daimo-text-secondary:#7e7e7e;--daimo-text-muted:#858585;--daimo-success:#4ade80;--daimo-success-light:#14532d;--daimo-checkmark:#f3f4f6;--daimo-brand-green:#009110;--daimo-brand-green-light:#12351a;--daimo-error:#f87171;--daimo-error-light:#7f1d1d;--daimo-error-badge-bg:#3a2222;--daimo-error-badge-ring:#673232;--daimo-error-badge-mark:#ff8585;--daimo-warning:#fb923c;--daimo-warning-light:#431407;--daimo-accent:#0977d5;--daimo-placeholder:#9ca3af;--daimo-border:#3d3d3d;--daimo-qr-bg:#2b2b2b;--daimo-qr-dot:#fff}}.daimo-scroll-fade:after{content:"";pointer-events:none;z-index:10;position:sticky;bottom:0;left:0;right:0;display:block;height:32px;margin-top:-32px;background:linear-gradient(to bottom,transparent,var(--daimo-surface));transition:opacity .3s ease}.daimo-scroll-fade.daimo-scroll-end:after{opacity:0}.daimo-page-enter{animation:daimo-page-in .15s cubic-bezier(.23,1,.32,1) both}@keyframes daimo-page-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.daimo-page-enter{animation:none}}.daimo-modal-backdrop{animation:daimo-backdrop-in .2s ease-out forwards}@keyframes daimo-backdrop-in{0%{opacity:0}to{opacity:1}}.daimo-modal-content{animation:daimo-modal-slide-up .2s ease-out forwards}@media (min-width:640px){.daimo-modal-content{animation:daimo-modal-fade-in .2s ease-out forwards}}@keyframes daimo-modal-fade-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes daimo-modal-slide-up{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes daimo-scale-in{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}@keyframes daimo-fade-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.daimo-qr-placeholder-qr{opacity:.1}.daimo-qr-shimmer{pointer-events:none;transform:scale(2) rotate(45deg);background:linear-gradient(90deg,hsla(0,0%,100%,0) 50%,hsla(0,0%,100%,.4),hsla(0,0%,100%,0));background-size:200% 100%;animation:daimo-qr-shimmer 1s linear infinite both}.daimo-qr-placeholder-logo{z-index:2;position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.daimo-qr-placeholder-logo-inner{display:flex;width:28%;height:28%;align-items:center;justify-content:center}@keyframes daimo-qr-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@keyframes daimo-fade-in{0%{opacity:0}to{opacity:1}}@keyframes daimo-qr-fade-in{0%{opacity:0}to{opacity:1}}@keyframes daimo-qr-fade-out{0%{opacity:1}to{opacity:0}}.daimo-qr-fade-in{animation:daimo-qr-fade-in .2s ease-out both}.daimo-qr-fade-out{animation:daimo-qr-fade-out .2s ease-out both}.daimo-transition-qr{transition:opacity .28s cubic-bezier(.215,.61,.355,1),transform .28s cubic-bezier(.215,.61,.355,1);will-change:opacity,transform}.daimo-transition-qr-icon{transition:transform .28s cubic-bezier(.645,.045,.355,1),opacity .28s cubic-bezier(.645,.045,.355,1);will-change:transform,opacity}.daimo-transition-qr-spacer{transition:height .28s cubic-bezier(.645,.045,.355,1)}.daimo-otp-shake{animation:daimo-otp-shake .36s cubic-bezier(.36,.07,.19,.97)}@keyframes daimo-otp-shake{10%,90%{transform:translateX(-2px)}20%,80%{transform:translateX(3px)}30%,50%,70%{transform:translateX(-5px)}40%,60%{transform:translateX(5px)}}@media (prefers-reduced-motion:reduce){.daimo-modal-backdrop,.daimo-modal-content,.daimo-qr-fade-in,.daimo-qr-fade-out,.daimo-qr-shimmer{animation:none}.daimo-transition-qr,.daimo-transition-qr-icon,.daimo-transition-qr-spacer{transition:none}.daimo-otp-shake{animation:none}}[data-theme=dark]{--daimo-bg:#00000008;--daimo-surface:#2b2b2b;--daimo-surface-secondary:#383838;--daimo-surface-hover:#404040;--daimo-skeleton:#383838;--daimo-title:#fff;--daimo-text:#fff;--daimo-text-secondary:#7e7e7e;--daimo-text-muted:#858585;--daimo-success:#4ade80;--daimo-success-light:#14532d;--daimo-checkmark:#f3f4f6;--daimo-brand-green:#009110;--daimo-brand-green-light:#12351a;--daimo-error:#f87171;--daimo-error-light:#7f1d1d;--daimo-error-badge-bg:#3a2222;--daimo-error-badge-ring:#673232;--daimo-error-badge-mark:#ff8585;--daimo-warning:#fb923c;--daimo-warning-light:#431407;--daimo-accent:#0977d5;--daimo-placeholder:#9ca3af;--daimo-border:#3d3d3d;--daimo-qr-bg:#2b2b2b;--daimo-qr-dot:#fff;--daimo-radius-sm:0.5rem;--daimo-radius-md:0.75rem;--daimo-radius-lg:1rem;--daimo-radius-xl:20px}.daimo-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.daimo-pointer-events-none{pointer-events:none}.daimo-pointer-events-auto{pointer-events:auto}.daimo-invisible{visibility:hidden}.daimo-fixed{position:fixed}.daimo-absolute{position:absolute}.daimo-relative{position:relative}.daimo-sticky{position:sticky}.daimo-inset-0{inset:0}.daimo-inset-\[13px\]{inset:13px}.daimo-inset-x-0{left:0;right:0}.daimo-inset-x-6{left:1.5rem;right:1.5rem}.-daimo-bottom-0\.5{bottom:-.125rem}.-daimo-bottom-1{bottom:-.25rem}.-daimo-right-0\.5{right:-.125rem}.-daimo-right-1{right:-.25rem}.daimo-left-5{left:1.25rem}.daimo-right-\[17px\]{right:17px}.daimo-right-\[24px\]{right:24px}.daimo-top-0{top:0}.daimo-top-10{top:2.5rem}.daimo-top-\[22px\]{top:22px}.daimo-isolate{isolation:isolate}.daimo-z-10{z-index:10}.daimo-z-20{z-index:20}.daimo-z-30{z-index:30}.daimo-z-50{z-index:50}.daimo-z-\[70\]{z-index:70}.daimo-mx-6{margin-left:1.5rem;margin-right:1.5rem}.daimo-mx-auto{margin-left:auto;margin-right:auto}.daimo-mb-1{margin-bottom:.25rem}.daimo-mb-2{margin-bottom:.5rem}.daimo-mb-3{margin-bottom:.75rem}.daimo-mb-6{margin-bottom:1.5rem}.daimo-ml-2{margin-left:.5rem}.daimo-mr-3{margin-right:.75rem}.daimo-mt-0\.5{margin-top:.125rem}.daimo-mt-1{margin-top:.25rem}.daimo-mt-10{margin-top:2.5rem}.daimo-mt-2{margin-top:.5rem}.daimo-mt-3{margin-top:.75rem}.daimo-mt-5{margin-top:1.25rem}.daimo-mt-6{margin-top:1.5rem}.daimo-mt-8{margin-top:2rem}.daimo-mt-auto{margin-top:auto}.daimo-box-border{box-sizing:border-box}.daimo-block{display:block}.daimo-inline-block{display:inline-block}.daimo-flex{display:flex}.daimo-inline-flex{display:inline-flex}.daimo-grid{display:grid}.daimo-aspect-square{aspect-ratio:1/1}.daimo-h-0\.5{height:.125rem}.daimo-h-1{height:.25rem}.daimo-h-1\.5{height:.375rem}.daimo-h-10{height:2.5rem}.daimo-h-11{height:2.75rem}.daimo-h-12{height:3rem}.daimo-h-14{height:3.5rem}.daimo-h-16{height:4rem}.daimo-h-2{height:.5rem}.daimo-h-20{height:5rem}.daimo-h-24{height:6rem}.daimo-h-3{height:.75rem}.daimo-h-36{height:9rem}.daimo-h-4{height:1rem}.daimo-h-5{height:1.25rem}.daimo-h-7{height:1.75rem}.daimo-h-8{height:2rem}.daimo-h-\[15px\]{height:15px}.daimo-h-\[21px\]{height:21px}.daimo-h-\[54px\]{height:54px}.daimo-h-\[56px\]{height:56px}.daimo-h-auto{height:auto}.daimo-h-full{height:100%}.daimo-max-h-\[90vh\]{max-height:90vh}.daimo-min-h-0{min-height:0}.daimo-min-h-11{min-height:2.75rem}.daimo-min-h-20{min-height:5rem}.daimo-min-h-\[100px\]{min-height:100px}.daimo-min-h-\[21px\]{min-height:21px}.daimo-min-h-\[24px\]{min-height:24px}.daimo-min-h-\[320px\]{min-height:320px}.daimo-min-h-\[36px\]{min-height:36px}.daimo-min-h-\[420px\]{min-height:420px}.daimo-min-h-\[44px\]{min-height:44px}.daimo-min-h-\[48px\]{min-height:48px}.daimo-min-h-\[520px\]{min-height:520px}.daimo-min-h-\[56px\]{min-height:56px}.daimo-min-h-\[72px\]{min-height:72px}.daimo-w-1{width:.25rem}.daimo-w-1\.5{width:.375rem}.daimo-w-10{width:2.5rem}.daimo-w-11{width:2.75rem}.daimo-w-12{width:3rem}.daimo-w-14{width:3.5rem}.daimo-w-16{width:4rem}.daimo-w-2\/3{width:66.666667%}.daimo-w-20{width:5rem}.daimo-w-24{width:6rem}.daimo-w-28{width:7rem}.daimo-w-3{width:.75rem}.daimo-w-32{width:8rem}.daimo-w-4{width:1rem}.daimo-w-40{width:10rem}.daimo-w-44{width:11rem}.daimo-w-48{width:12rem}.daimo-w-5{width:1.25rem}.daimo-w-52{width:13rem}.daimo-w-7{width:1.75rem}.daimo-w-8{width:2rem}.daimo-w-\[15px\]{width:15px}.daimo-w-full{width:100%}.daimo-min-w-0{min-width:0}.daimo-max-w-16{max-width:4rem}.daimo-max-w-\[180px\]{max-width:180px}.daimo-max-w-\[200px\]{max-width:200px}.daimo-max-w-\[210px\]{max-width:210px}.daimo-max-w-\[260px\]{max-width:260px}.daimo-max-w-\[300px\]{max-width:300px}.daimo-max-w-\[320px\]{max-width:320px}.daimo-max-w-\[420px\]{max-width:420px}.daimo-max-w-\[512px\]{max-width:512px}.daimo-max-w-\[88px\]{max-width:88px}.daimo-max-w-full{max-width:100%}.daimo-max-w-none{max-width:none}.daimo-max-w-sm{max-width:24rem}.daimo-max-w-xs{max-width:20rem}.daimo-flex-1{flex:1 1 0%}.daimo-shrink-0{flex-shrink:0}.-daimo-rotate-90{--tw-rotate:-90deg}.-daimo-rotate-90,.daimo-scale-100{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.daimo-scale-100{--tw-scale-x:1;--tw-scale-y:1}.daimo-scale-50{--tw-scale-x:.5;--tw-scale-y:.5}.daimo-scale-50,.daimo-scale-95{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.daimo-scale-95{--tw-scale-x:.95;--tw-scale-y:.95}.daimo-transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes daimo-spin{to{transform:rotate(1turn)}}.daimo-animate-spin{animation:daimo-spin 1s linear infinite}.daimo-cursor-not-allowed{cursor:not-allowed}.daimo-cursor-text{cursor:text}.daimo-select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.daimo-grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.daimo-grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.daimo-grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.daimo-grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.daimo-flex-col{flex-direction:column}.daimo-items-start{align-items:flex-start}.daimo-items-end{align-items:flex-end}.daimo-items-center{align-items:center}.daimo-justify-end{justify-content:flex-end}.daimo-justify-center{justify-content:center}.daimo-justify-between{justify-content:space-between}.daimo-gap-0{gap:0}.daimo-gap-0\.5{gap:.125rem}.daimo-gap-1{gap:.25rem}.daimo-gap-1\.5{gap:.375rem}.daimo-gap-2{gap:.5rem}.daimo-gap-3{gap:.75rem}.daimo-gap-4{gap:1rem}.daimo-gap-5{gap:1.25rem}.daimo-gap-6{gap:1.5rem}.daimo-space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem*var(--tw-space-y-reverse))}.daimo-overflow-hidden{overflow:hidden}.daimo-overflow-y-auto{overflow-y:auto}.daimo-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.daimo-whitespace-pre-line{white-space:pre-line}.daimo-text-balance{text-wrap:balance}.daimo-break-words{overflow-wrap:break-word}.daimo-break-all{word-break:break-all}.daimo-rounded{border-radius:.25rem}.daimo-rounded-2xl{border-radius:1rem}.daimo-rounded-\[25\%\]{border-radius:25%}.daimo-rounded-\[5px\]{border-radius:5px}.daimo-rounded-\[var\(--daimo-radius-lg\)\]{border-radius:var(--daimo-radius-lg)}.daimo-rounded-\[var\(--daimo-radius-md\)\]{border-radius:var(--daimo-radius-md)}.daimo-rounded-\[var\(--daimo-radius-sm\)\]{border-radius:var(--daimo-radius-sm)}.daimo-rounded-full{border-radius:9999px}.daimo-rounded-lg{border-radius:.5rem}.daimo-rounded-t-\[var\(--daimo-radius-xl\)\]{border-top-left-radius:var(--daimo-radius-xl);border-top-right-radius:var(--daimo-radius-xl)}.daimo-border{border-width:1px}.daimo-border-0{border-width:0}.daimo-border-2{border-width:2px}.daimo-border-\[1\.5px\]{border-width:1.5px}.daimo-border-b{border-bottom-width:1px}.daimo-border-none{border-style:none}.daimo-border-\[var\(--daimo-accent\)\]{border-color:var(--daimo-accent)}.daimo-border-\[var\(--daimo-border\)\]{border-color:var(--daimo-border)}.daimo-border-\[var\(--daimo-qr-bg\,white\)\]{border-color:var(--daimo-qr-bg,#fff)}.daimo-border-\[var\(--daimo-surface\)\]{border-color:var(--daimo-surface)}.daimo-bg-\[var\(--daimo-accent\)\]{background-color:var(--daimo-accent)}.daimo-bg-\[var\(--daimo-bg\)\]{background-color:var(--daimo-bg)}.daimo-bg-\[var\(--daimo-border\)\]{background-color:var(--daimo-border)}.daimo-bg-\[var\(--daimo-brand-green-light\)\]{background-color:var(--daimo-brand-green-light)}.daimo-bg-\[var\(--daimo-error-light\)\]{background-color:var(--daimo-error-light)}.daimo-bg-\[var\(--daimo-placeholder\)\]{background-color:var(--daimo-placeholder)}.daimo-bg-\[var\(--daimo-qr-bg\,white\)\]{background-color:var(--daimo-qr-bg,#fff)}.daimo-bg-\[var\(--daimo-surface\)\]{background-color:var(--daimo-surface)}.daimo-bg-\[var\(--daimo-surface-secondary\)\]{background-color:var(--daimo-surface-secondary)}.daimo-bg-\[var\(--daimo-text\)\]{background-color:var(--daimo-text)}.daimo-bg-black\/50{background-color:rgba(0,0,0,.5)}.daimo-bg-transparent{background-color:transparent}.daimo-bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.daimo-object-contain{-o-object-fit:contain;object-fit:contain}.daimo-p-1{padding:.25rem}.daimo-p-1\.5{padding:.375rem}.daimo-p-3{padding:.75rem}.daimo-p-4{padding:1rem}.daimo-p-6{padding:1.5rem}.daimo-px-0{padding-left:0;padding-right:0}.daimo-px-2{padding-left:.5rem;padding-right:.5rem}.daimo-px-3{padding-left:.75rem;padding-right:.75rem}.daimo-px-4{padding-left:1rem;padding-right:1rem}.daimo-px-5{padding-left:1.25rem;padding-right:1.25rem}.daimo-px-6{padding-left:1.5rem;padding-right:1.5rem}.daimo-px-8{padding-left:2rem;padding-right:2rem}.daimo-py-2{padding-top:.5rem;padding-bottom:.5rem}.daimo-py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.daimo-py-3{padding-top:.75rem;padding-bottom:.75rem}.daimo-py-4{padding-top:1rem;padding-bottom:1rem}.daimo-py-5{padding-top:1.25rem;padding-bottom:1.25rem}.daimo-py-\[3px\]{padding-top:3px;padding-bottom:3px}.daimo-pb-0{padding-bottom:0}.daimo-pb-12{padding-bottom:3rem}.daimo-pb-2{padding-bottom:.5rem}.daimo-pb-3{padding-bottom:.75rem}.daimo-pb-4{padding-bottom:1rem}.daimo-pb-6{padding-bottom:1.5rem}.daimo-pb-\[100\%\]{padding-bottom:100%}.daimo-pt-2{padding-top:.5rem}.daimo-pt-3{padding-top:.75rem}.daimo-pt-4{padding-top:1rem}.daimo-text-left{text-align:left}.daimo-text-center{text-align:center}.daimo-text-right{text-align:right}.daimo-text-3xl{font-size:1.875rem;line-height:2.25rem}.daimo-text-\[11px\]{font-size:11px}.daimo-text-\[15px\]{font-size:15px}.daimo-text-\[22px\]{font-size:22px}.daimo-text-\[24px\]{font-size:24px}.daimo-text-base{font-size:1rem;line-height:1.5rem}.daimo-text-lg{font-size:1.125rem;line-height:1.75rem}.daimo-text-sm{font-size:.875rem;line-height:1.25rem}.daimo-text-xl{font-size:1.25rem;line-height:1.75rem}.daimo-text-xs{font-size:.75rem;line-height:1rem}.daimo-font-bold{font-weight:700}.daimo-font-medium{font-weight:500}.daimo-font-normal{font-weight:400}.daimo-font-semibold{font-weight:600}.daimo-tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.daimo-leading-5{line-height:1.25rem}.daimo-leading-\[21px\]{line-height:21px}.daimo-leading-none{line-height:1}.daimo-leading-relaxed{line-height:1.625}.daimo-leading-snug{line-height:1.375}.daimo-leading-tight{line-height:1.25}.daimo-text-\[var\(--daimo-accent\)\]{color:var(--daimo-accent)}.daimo-text-\[var\(--daimo-brand-green\)\]{color:var(--daimo-brand-green)}.daimo-text-\[var\(--daimo-checkmark\)\]{color:var(--daimo-checkmark)}.daimo-text-\[var\(--daimo-error\)\]{color:var(--daimo-error)}.daimo-text-\[var\(--daimo-error-badge-mark\)\]{color:var(--daimo-error-badge-mark)}.daimo-text-\[var\(--daimo-placeholder\)\]{color:var(--daimo-placeholder)}.daimo-text-\[var\(--daimo-qr-dot\)\]{color:var(--daimo-qr-dot)}.daimo-text-\[var\(--daimo-success\)\]{color:var(--daimo-success)}.daimo-text-\[var\(--daimo-text\)\]{color:var(--daimo-text)}.daimo-text-\[var\(--daimo-text-muted\)\]{color:var(--daimo-text-muted)}.daimo-text-\[var\(--daimo-text-secondary\)\]{color:var(--daimo-text-secondary)}.daimo-text-\[var\(--daimo-title\)\]{color:var(--daimo-title)}.daimo-text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.daimo-underline{text-decoration-line:underline}.daimo-no-underline{text-decoration-line:none}.daimo-placeholder-\[var\(--daimo-placeholder\)\]::-moz-placeholder{color:var(--daimo-placeholder)}.daimo-placeholder-\[var\(--daimo-placeholder\)\]::placeholder{color:var(--daimo-placeholder)}.daimo-caret-\[var\(--daimo-accent\)\]{caret-color:var(--daimo-accent)}.daimo-caret-\[var\(--daimo-text-muted\)\]{caret-color:var(--daimo-text-muted)}.daimo-opacity-0{opacity:0}.daimo-opacity-100{opacity:1}.daimo-opacity-50{opacity:.5}.daimo-opacity-60{opacity:.6}.daimo-shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.daimo-shadow-lg,.daimo-shadow-none{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.daimo-shadow-none{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000}.daimo-shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.daimo-outline-none{outline:2px solid transparent;outline-offset:2px}.daimo-ring-0{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color)}.daimo-ring-0,.daimo-ring-1{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.daimo-ring-1{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.daimo-ring-2{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.daimo-ring-\[var\(--daimo-brand-green\)\]{--tw-ring-color:var(--daimo-brand-green)}.daimo-ring-\[var\(--daimo-error\)\]{--tw-ring-color:var(--daimo-error)}.daimo-ring-black\/10{--tw-ring-color:rgba(0,0,0,.1)}.daimo-transition-\[background-color\,color\,box-shadow\]{transition-property:background-color,color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.daimo-transition-\[background-color\,opacity\,transform\]{transition-property:background-color,opacity,transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.daimo-transition-\[background-color\,opacity\]{transition-property:background-color,opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.daimo-transition-\[background-color\,transform\,opacity\]{transition-property:background-color,transform,opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.daimo-transition-\[background-color\,transform\]{transition-property:background-color,transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.daimo-transition-\[background-color\]{transition-property:background-color;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.daimo-transition-\[border-color\]{transition-property:border-color;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.daimo-transition-\[opacity\,transform\]{transition-property:opacity,transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.daimo-transition-\[width\,background-color\]{transition-property:width,background-color;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.daimo-transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.daimo-transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.daimo-transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.daimo-transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.daimo-duration-100{transition-duration:.1s}.daimo-duration-150{transition-duration:.15s}.daimo-duration-200{transition-duration:.2s}.daimo-duration-300{transition-duration:.3s}.daimo-ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.focus-within\:daimo-ring-2:focus-within{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-within\:daimo-ring-\[var\(--daimo-accent\)\]:focus-within{--tw-ring-color:var(--daimo-accent)}.hover\:daimo-bg-\[var\(--daimo-surface-hover\)\]:hover{background-color:var(--daimo-surface-hover)}.hover\:daimo-text-\[var\(--daimo-text\)\]:hover{color:var(--daimo-text)}.focus\:daimo-border-none:focus{border-style:none}.focus\:daimo-shadow-none:focus{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.focus\:daimo-outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:daimo-ring-0:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:daimo-ring-0:focus,.focus\:daimo-ring-2:focus{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:daimo-ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:daimo-ring-\[var\(--daimo-accent\)\]:focus{--tw-ring-color:var(--daimo-accent)}.focus-visible\:daimo-outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:daimo-ring-2:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\:daimo-ring-\[var\(--daimo-accent\)\]:focus-visible{--tw-ring-color:var(--daimo-accent)}.active\:daimo-scale-\[0\.99\]:active{--tw-scale-x:0.99;--tw-scale-y:0.99}.active\:daimo-scale-\[0\.99\]:active,.active\:daimo-scale-\[0\.9\]:active{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.active\:daimo-scale-\[0\.9\]:active{--tw-scale-x:0.9;--tw-scale-y:0.9}.active\:daimo-opacity-50:active{opacity:.5}.disabled\:daimo-cursor-default:disabled{cursor:default}.disabled\:daimo-cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:daimo-cursor-wait:disabled{cursor:wait}.disabled\:daimo-opacity-40:disabled{opacity:.4}.disabled\:daimo-opacity-50:disabled{opacity:.5}.disabled\:daimo-opacity-60:disabled{opacity:.6}@media (prefers-reduced-motion:no-preference){@keyframes daimo-daimo-pulse{50%{opacity:.5}}.motion-safe\:daimo-animate-daimo-pulse{animation:daimo-daimo-pulse 2s cubic-bezier(.4,0,.6,1) infinite}}@media (min-width:640px){.sm\:daimo-max-w-\[260px\]{max-width:260px}.sm\:daimo-grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.sm\:daimo-items-center{align-items:center}.sm\:daimo-rounded-\[var\(--daimo-radius-xl\)\]{border-radius:var(--daimo-radius-xl)}.sm\:daimo-px-4{padding-left:1rem;padding-right:1rem}}@media(hover:hover){.hover\:\[\@media\(hover\:hover\)\]\:\!daimo-bg-\[var\(--daimo-surface-secondary\)\]:hover{background-color:var(--daimo-surface-secondary)!important}.hover\:\[\@media\(hover\:hover\)\]\:\!daimo-bg-transparent:hover{background-color:transparent!important}.hover\:\[\@media\(hover\:hover\)\]\:daimo-bg-\[var\(--daimo-surface-hover\)\]:hover{background-color:var(--daimo-surface-hover)}.hover\:\[\@media\(hover\:hover\)\]\:daimo-bg-\[var\(--daimo-surface-secondary\)\]:hover{background-color:var(--daimo-surface-secondary)}.hover\:\[\@media\(hover\:hover\)\]\:daimo-opacity-70:hover{opacity:.7}.hover\:\[\@media\(hover\:hover\)\]\:daimo-opacity-90:hover{opacity:.9}}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@daimo/sdk",
3
- "version": "1.6.0",
3
+ "version": "1.8.0-beta.0",
4
4
  "description": "Daimo SDK - universal ramp for stablecoin apps",
5
5
  "author": "Daimo",
6
6
  "license": "BSD-2-Clause",
@@ -23,7 +23,11 @@
23
23
  "types": "./dist/web/api/index.d.ts"
24
24
  },
25
25
  "./web/styles.css": "./dist/web/styles.css",
26
- "./web/theme.css": "./dist/web/theme.css"
26
+ "./web/theme.css": "./dist/web/theme.css",
27
+ "./native": {
28
+ "import": "./dist/native/index.js",
29
+ "types": "./dist/native/index.d.ts"
30
+ }
27
31
  },
28
32
  "files": [
29
33
  "dist",
@@ -31,7 +35,7 @@
31
35
  ],
32
36
  "scripts": {
33
37
  "dev": "node scripts/genVersion.mjs && tsc --watch --preserveWatchOutput & pnpm exec tailwindcss -i src/web/theme.css -o dist/web/theme.css --watch & wait",
34
- "build": "node scripts/genVersion.mjs && tsc && pnpm exec tailwindcss -i src/web/theme.css -o dist/web/theme.css --minify && cp dist/web/theme.css dist/web/styles.css && pnpm run verify:styles",
38
+ "build": "node scripts/genVersion.mjs && tsc && tsc -p tsconfig.native.json && pnpm exec tailwindcss -i src/web/theme.css -o dist/web/theme.css --minify && cp dist/web/theme.css dist/web/styles.css && pnpm run verify:styles",
35
39
  "test": "pnpm run lint && vitest run && pnpm run build",
36
40
  "lint": "eslint --max-warnings=0",
37
41
  "verify:styles": "node ./scripts/verifyStyles.mjs"
@@ -52,7 +56,9 @@
52
56
  "@solana/web3.js": "^1.95.4",
53
57
  "qrcode": "^1.5.0",
54
58
  "react": "18.x || 19.x",
55
- "react-dom": "18.x || 19.x"
59
+ "react-dom": "18.x || 19.x",
60
+ "react-native": ">=0.72",
61
+ "react-native-webview": ">=13.0.0"
56
62
  },
57
63
  "peerDependenciesMeta": {
58
64
  "react-dom": {
@@ -63,6 +69,12 @@
63
69
  },
64
70
  "@solana/web3.js": {
65
71
  "optional": true
72
+ },
73
+ "react-native": {
74
+ "optional": true
75
+ },
76
+ "react-native-webview": {
77
+ "optional": true
66
78
  }
67
79
  },
68
80
  "devDependencies": {
@@ -72,6 +84,8 @@
72
84
  "@types/react-dom": "^19.0.0",
73
85
  "postcss": "^8.5.6",
74
86
  "postcss-selector-parser": "^6.1.2",
87
+ "react-native": "^0.86.0",
88
+ "react-native-webview": "^14.0.1",
75
89
  "tailwindcss": "^3.4.12",
76
90
  "typescript": "5.9.2",
77
91
  "vitest": "^4.1.0"
@@ -1,14 +0,0 @@
1
- type ProgressPulseProps = {
2
- /** Label shown below the icon, e.g. "Deposit received" */
3
- label?: string;
4
- };
5
- /**
6
- * Pulsing progress indicator for intermediate loading states.
7
- * Use instead of ConfirmationSpinner for non-terminal progress like
8
- * "deposit received, routing funds" or "enrolling with provider".
9
- *
10
- * Three dots pulse in sequence to convey forward momentum.
11
- */
12
- export declare function ProgressPulse({ label }: ProgressPulseProps): import("react/jsx-runtime").JSX.Element;
13
- export {};
14
- //# sourceMappingURL=ProgressPulse.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ProgressPulse.d.ts","sourceRoot":"","sources":["../../../src/web/components/ProgressPulse.tsx"],"names":[],"mappings":"AAAA,KAAK,kBAAkB,GAAG;IACxB,0DAA0D;IAC1D,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,EAAE,KAAK,EAAE,EAAE,kBAAkB,2CAsB1D"}
@@ -1,15 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- /**
3
- * Pulsing progress indicator for intermediate loading states.
4
- * Use instead of ConfirmationSpinner for non-terminal progress like
5
- * "deposit received, routing funds" or "enrolling with provider".
6
- *
7
- * Three dots pulse in sequence to convey forward momentum.
8
- */
9
- export function ProgressPulse({ label }) {
10
- return (_jsxs("div", { className: "daimo-flex daimo-flex-col daimo-items-center daimo-gap-4", children: [_jsx("div", { className: "daimo-flex daimo-items-center daimo-gap-3", children: [0, 1, 2].map((i) => (_jsx("div", { className: "daimo-w-3 daimo-h-3 daimo-rounded-full", style: {
11
- backgroundColor: "var(--daimo-success)",
12
- animation: `daimo-pulse-dot 1.2s ease-in-out ${i * 0.2}s infinite`,
13
- } }, i))) }), label && (_jsx("p", { className: "daimo-text-sm daimo-font-medium daimo-text-[var(--daimo-text-secondary)] daimo-text-center", children: label }))] }));
14
- }
15
- //# sourceMappingURL=ProgressPulse.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ProgressPulse.js","sourceRoot":"","sources":["../../../src/web/components/ProgressPulse.tsx"],"names":[],"mappings":";AAKA;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,EAAE,KAAK,EAAsB;IACzD,OAAO,CACL,eAAK,SAAS,EAAC,0DAA0D,aACvE,cAAK,SAAS,EAAC,2CAA2C,YACvD,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACpB,cAEE,SAAS,EAAC,wCAAwC,EAClD,KAAK,EAAE;wBACL,eAAe,EAAE,sBAAsB;wBACvC,SAAS,EAAE,oCAAoC,CAAC,GAAG,GAAG,YAAY;qBACnE,IALI,CAAC,CAMN,CACH,CAAC,GACE,EACL,KAAK,IAAI,CACR,YAAG,SAAS,EAAC,4FAA4F,YACtG,KAAK,GACJ,CACL,IACG,CACP,CAAC;AACJ,CAAC"}
@@ -1,15 +0,0 @@
1
- import type { AccountRail } from "../../../common/account.js";
2
- type AccountBankTransferSubmittedPageProps = {
3
- rail: AccountRail;
4
- sessionId: string;
5
- clientSecret: string;
6
- baseUrl: string;
7
- onAdvance: () => void;
8
- };
9
- /**
10
- * Async handoff page after the user says they sent the bank transfer. We keep
11
- * polling in case the provider webhook arrives while the modal is still open.
12
- */
13
- export declare function AccountBankTransferSubmittedPage({ rail, sessionId, clientSecret, baseUrl, onAdvance, }: AccountBankTransferSubmittedPageProps): import("react/jsx-runtime").JSX.Element;
14
- export {};
15
- //# sourceMappingURL=AccountBankTransferSubmittedPage.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AccountBankTransferSubmittedPage.d.ts","sourceRoot":"","sources":["../../../../src/web/components/account/AccountBankTransferSubmittedPage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAO9D,KAAK,qCAAqC,GAAG;IAC3C,IAAI,EAAE,WAAW,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,IAAI,CAAC;CACvB,CAAC;AAEF;;;GAGG;AACH,wBAAgB,gCAAgC,CAAC,EAC/C,IAAI,EACJ,SAAS,EACT,YAAY,EACZ,OAAO,EACP,SAAS,GACV,EAAE,qCAAqC,2CA6CvC"}
@@ -1,33 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useDaimoClient } from "../../hooks/DaimoClientContext.js";
3
- import { t } from "../../hooks/locale.js";
4
- import { useDepositPoller } from "../../hooks/useDepositPoller.js";
5
- import { ConfirmationSpinner } from "../ConfirmationSpinner.js";
6
- import { CenteredContent, PageHeader } from "../shared.js";
7
- /**
8
- * Async handoff page after the user says they sent the bank transfer. We keep
9
- * polling in case the provider webhook arrives while the modal is still open.
10
- */
11
- export function AccountBankTransferSubmittedPage({ rail, sessionId, clientSecret, baseUrl, onAdvance, }) {
12
- const client = useDaimoClient();
13
- const accountUrl = `${baseUrl}/account/activity?session=${encodeURIComponent(sessionId)}`;
14
- const title = rail === "jpyc"
15
- ? t.accountDirectionsSubmittedTitle
16
- : t.accountBankTransferSubmittedTitle;
17
- const description = rail === "jpyc"
18
- ? t.accountDirectionsSubmittedDesc
19
- : t.accountBankTransferSubmittedDesc;
20
- useDepositPoller({
21
- client,
22
- sessionId,
23
- clientSecret,
24
- onUpdate(deposit) {
25
- if (deposit.status !== "initiated"
26
- && deposit.status !== "awaiting_payment") {
27
- onAdvance();
28
- }
29
- },
30
- });
31
- return (_jsxs("div", { className: "daimo-flex daimo-flex-col daimo-flex-1 daimo-min-h-0", children: [_jsx(PageHeader, { title: title }), _jsx(CenteredContent, { children: _jsxs("div", { className: "daimo-flex daimo-flex-col daimo-items-center daimo-gap-5", children: [_jsx(ConfirmationSpinner, { done: true }), _jsx("p", { className: "daimo-max-w-xs daimo-text-center daimo-text-sm daimo-leading-relaxed daimo-text-[var(--daimo-text-secondary)]", children: description }), _jsx("a", { href: accountUrl, target: "_blank", rel: "noopener noreferrer", className: "daimo-w-full daimo-max-w-xs daimo-min-h-[44px] daimo-py-4 daimo-px-6 daimo-rounded-[var(--daimo-radius-lg)] daimo-font-medium daimo-bg-[var(--daimo-surface-secondary)] daimo-text-[var(--daimo-text)] hover:[@media(hover:hover)]:daimo-bg-[var(--daimo-surface-hover)] daimo-touch-action-manipulation daimo-transition-[background-color] daimo-duration-100 daimo-ease daimo-text-center daimo-flex daimo-items-center daimo-justify-center", children: t.accountViewAccount })] }) })] }));
32
- }
33
- //# sourceMappingURL=AccountBankTransferSubmittedPage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AccountBankTransferSubmittedPage.js","sourceRoot":"","sources":["../../../../src/web/components/account/AccountBankTransferSubmittedPage.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,CAAC,EAAE,MAAM,uBAAuB,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAU3D;;;GAGG;AACH,MAAM,UAAU,gCAAgC,CAAC,EAC/C,IAAI,EACJ,SAAS,EACT,YAAY,EACZ,OAAO,EACP,SAAS,GAC6B;IACtC,MAAM,MAAM,GAAG,cAAc,EAAE,CAAC;IAChC,MAAM,UAAU,GAAG,GAAG,OAAO,6BAA6B,kBAAkB,CAAC,SAAS,CAAC,EAAE,CAAC;IAC1F,MAAM,KAAK,GAAG,IAAI,KAAK,MAAM;QAC3B,CAAC,CAAC,CAAC,CAAC,+BAA+B;QACnC,CAAC,CAAC,CAAC,CAAC,iCAAiC,CAAC;IACxC,MAAM,WAAW,GAAG,IAAI,KAAK,MAAM;QACjC,CAAC,CAAC,CAAC,CAAC,8BAA8B;QAClC,CAAC,CAAC,CAAC,CAAC,gCAAgC,CAAC;IAEvC,gBAAgB,CAAC;QACf,MAAM;QACN,SAAS;QACT,YAAY;QACZ,QAAQ,CAAC,OAAO;YACd,IACE,OAAO,CAAC,MAAM,KAAK,WAAW;mBAC3B,OAAO,CAAC,MAAM,KAAK,kBAAkB,EACxC,CAAC;gBACD,SAAS,EAAE,CAAC;YACd,CAAC;QACH,CAAC;KACF,CAAC,CAAC;IAEH,OAAO,CACL,eAAK,SAAS,EAAC,sDAAsD,aACnE,KAAC,UAAU,IAAC,KAAK,EAAE,KAAK,GAAI,EAC5B,KAAC,eAAe,cACd,eAAK,SAAS,EAAC,0DAA0D,aACvE,KAAC,mBAAmB,IAAC,IAAI,SAAG,EAC5B,YAAG,SAAS,EAAC,+GAA+G,YACzH,WAAW,GACV,EACJ,YACE,IAAI,EAAE,UAAU,EAChB,MAAM,EAAC,QAAQ,EACf,GAAG,EAAC,qBAAqB,EACzB,SAAS,EAAC,ibAAib,YAE1b,CAAC,CAAC,kBAAkB,GACnB,IACA,GACU,IACd,CACP,CAAC;AACJ,CAAC"}
@@ -1,2 +0,0 @@
1
- export declare function AccountReadyPage(): import("react/jsx-runtime").JSX.Element;
2
- //# sourceMappingURL=AccountReadyPage.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AccountReadyPage.d.ts","sourceRoot":"","sources":["../../../../src/web/components/account/AccountReadyPage.tsx"],"names":[],"mappings":"AAGA,wBAAgB,gBAAgB,4CAqB/B"}
@@ -1,7 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { t } from "../../hooks/locale.js";
3
- import { CenteredContent, PageHeader } from "../shared.js";
4
- export function AccountReadyPage() {
5
- return (_jsxs("div", { className: "daimo-flex daimo-flex-col daimo-flex-1 daimo-min-h-0", children: [_jsx(PageHeader, { title: t.accountReadyTitle, onBack: null }), _jsx(CenteredContent, { children: _jsxs("div", { className: "daimo-flex daimo-flex-col daimo-items-center daimo-gap-4 daimo-px-6 daimo-text-center", children: [_jsx("div", { className: "daimo-flex daimo-h-16 daimo-w-16 daimo-items-center daimo-justify-center daimo-rounded-full daimo-bg-[var(--daimo-surface-secondary)]", children: _jsx("div", { className: "daimo-h-7 daimo-w-7 daimo-rounded-full daimo-bg-[var(--daimo-accent)]" }) }), _jsxs("div", { className: "daimo-flex daimo-flex-col daimo-gap-2", children: [_jsx("h2", { className: "daimo-text-xl daimo-font-semibold daimo-text-[var(--daimo-text)]", children: t.accountReadyHeading }), _jsx("p", { className: "daimo-text-sm daimo-leading-relaxed daimo-text-[var(--daimo-text-secondary)]", children: t.accountReadyDescription })] })] }) })] }));
6
- }
7
- //# sourceMappingURL=AccountReadyPage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AccountReadyPage.js","sourceRoot":"","sources":["../../../../src/web/components/account/AccountReadyPage.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,uBAAuB,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE3D,MAAM,UAAU,gBAAgB;IAC9B,OAAO,CACL,eAAK,SAAS,EAAC,sDAAsD,aACnE,KAAC,UAAU,IAAC,KAAK,EAAE,CAAC,CAAC,iBAAiB,EAAE,MAAM,EAAE,IAAI,GAAI,EACxD,KAAC,eAAe,cACd,eAAK,SAAS,EAAC,uFAAuF,aACpG,cAAK,SAAS,EAAC,uIAAuI,YACpJ,cAAK,SAAS,EAAC,uEAAuE,GAAG,GACrF,EACN,eAAK,SAAS,EAAC,uCAAuC,aACpD,aAAI,SAAS,EAAC,kEAAkE,YAC7E,CAAC,CAAC,mBAAmB,GACnB,EACL,YAAG,SAAS,EAAC,8EAA8E,YACxF,CAAC,CAAC,uBAAuB,GACxB,IACA,IACF,GACU,IACd,CACP,CAAC;AACJ,CAAC"}
@@ -1,7 +0,0 @@
1
- type AccountRipioOtpPageProps = {
2
- onBack: () => void;
3
- onVerified: () => void;
4
- };
5
- export declare function AccountRipioOtpPage({ onBack, onVerified, }: AccountRipioOtpPageProps): import("react/jsx-runtime").JSX.Element;
6
- export {};
7
- //# sourceMappingURL=AccountRipioOtpPage.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AccountRipioOtpPage.d.ts","sourceRoot":"","sources":["../../../../src/web/components/account/AccountRipioOtpPage.tsx"],"names":[],"mappings":"AASA,KAAK,wBAAwB,GAAG;IAC9B,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,UAAU,EAAE,MAAM,IAAI,CAAC;CACxB,CAAC;AAKF,wBAAgB,mBAAmB,CAAC,EAClC,MAAM,EACN,UAAU,GACX,EAAE,wBAAwB,2CA6D1B"}
@@ -1,53 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { useCallback } from "react";
3
- import { useDaimoClient } from "../../hooks/DaimoClientContext.js";
4
- import { useAccountFlow } from "../../hooks/useAccountFlow.js";
5
- import { AccountOtpCodeEntry, } from "./AccountOtpCodeEntry.js";
6
- const RIPIO_INVALID_CODE = "El código de Ripio no es válido. Revisalo e intentalo de nuevo.";
7
- export function AccountRipioOtpPage({ onBack, onVerified, }) {
8
- const account = useAccountFlow();
9
- const client = useDaimoClient();
10
- const handleVerify = useCallback(async (code) => {
11
- if (!account)
12
- return { ok: false, msg: RIPIO_INVALID_CODE };
13
- const token = await account.getAccessToken();
14
- if (!token)
15
- return { ok: false, msg: "No pudimos verificar tu sesión." };
16
- const result = await client.account.submitEnrollmentOtp({ rail: "ars", code }, { bearerToken: token });
17
- switch (result.action) {
18
- case "active":
19
- case "provider_pending":
20
- return { ok: true };
21
- case "provider_otp_required":
22
- return { ok: false, msg: RIPIO_INVALID_CODE };
23
- case "error":
24
- return { ok: false, msg: result.message };
25
- case "suspended":
26
- case "not_eligible":
27
- case "kyc_rejected_final":
28
- return { ok: false, msg: result.reason };
29
- case "kyc_required":
30
- case "kyc_retry":
31
- case "kyc_pending_review":
32
- case "hosted_agreement_required":
33
- case "hosted_kyc_required":
34
- case "phone_required":
35
- return { ok: true };
36
- default:
37
- return assertUnreachable(result);
38
- }
39
- }, [account, client]);
40
- const handleResend = useCallback(async () => {
41
- if (!account)
42
- return;
43
- const token = await account.getAccessToken();
44
- if (!token)
45
- return;
46
- await client.account.resendEnrollmentOtp({ rail: "ars" }, { bearerToken: token });
47
- }, [account, client]);
48
- return (_jsx(AccountOtpCodeEntry, { destination: "email", title: "Ya ten\u00E9s una cuenta de Ripio", message: "Vamos a conectar tu cuenta de Ripio para terminar el flujo. Ingres\u00E1 el c\u00F3digo que Ripio envi\u00F3 a tu email.", invalidMessage: RIPIO_INVALID_CODE, onBack: onBack, onVerified: onVerified, onVerify: handleVerify, onResend: handleResend }));
49
- }
50
- function assertUnreachable(value) {
51
- throw new Error(`unhandled enrollment response: ${JSON.stringify(value)}`);
52
- }
53
- //# sourceMappingURL=AccountRipioOtpPage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AccountRipioOtpPage.js","sourceRoot":"","sources":["../../../../src/web/components/account/AccountRipioOtpPage.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAEpC,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EACL,mBAAmB,GAEpB,MAAM,0BAA0B,CAAC;AAOlC,MAAM,kBAAkB,GACtB,iEAAiE,CAAC;AAEpE,MAAM,UAAU,mBAAmB,CAAC,EAClC,MAAM,EACN,UAAU,GACe;IACzB,MAAM,OAAO,GAAG,cAAc,EAAE,CAAC;IACjC,MAAM,MAAM,GAAG,cAAc,EAAE,CAAC;IAEhC,MAAM,YAAY,GAAG,WAAW,CAC9B,KAAK,EAAE,IAAY,EAA6B,EAAE;QAChD,IAAI,CAAC,OAAO;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,kBAAkB,EAAE,CAAC;QAC5D,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,cAAc,EAAE,CAAC;QAC7C,IAAI,CAAC,KAAK;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,iCAAiC,EAAE,CAAC;QACzE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,mBAAmB,CACrD,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EACrB,EAAE,WAAW,EAAE,KAAK,EAAE,CACvB,CAAC;QACF,QAAQ,MAAM,CAAC,MAAM,EAAE,CAAC;YACtB,KAAK,QAAQ,CAAC;YACd,KAAK,kBAAkB;gBACrB,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;YACtB,KAAK,uBAAuB;gBAC1B,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,kBAAkB,EAAE,CAAC;YAChD,KAAK,OAAO;gBACV,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;YAC5C,KAAK,WAAW,CAAC;YACjB,KAAK,cAAc,CAAC;YACpB,KAAK,oBAAoB;gBACvB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;YAC3C,KAAK,cAAc,CAAC;YACpB,KAAK,WAAW,CAAC;YACjB,KAAK,oBAAoB,CAAC;YAC1B,KAAK,2BAA2B,CAAC;YACjC,KAAK,qBAAqB,CAAC;YAC3B,KAAK,gBAAgB;gBACnB,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;YACtB;gBACE,OAAO,iBAAiB,CAAC,MAAM,CAAC,CAAC;QACrC,CAAC;IACH,CAAC,EACD,CAAC,OAAO,EAAE,MAAM,CAAC,CAClB,CAAC;IAEF,MAAM,YAAY,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QAC1C,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,cAAc,EAAE,CAAC;QAC7C,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,MAAM,MAAM,CAAC,OAAO,CAAC,mBAAmB,CACtC,EAAE,IAAI,EAAE,KAAK,EAAE,EACf,EAAE,WAAW,EAAE,KAAK,EAAE,CACvB,CAAC;IACJ,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;IAEtB,OAAO,CACL,KAAC,mBAAmB,IAClB,WAAW,EAAC,OAAO,EACnB,KAAK,EAAC,mCAA8B,EACpC,OAAO,EAAC,0HAA2G,EACnH,cAAc,EAAE,kBAAkB,EAClC,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,YAAY,EACtB,QAAQ,EAAE,YAAY,GACtB,CACH,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAY;IACrC,MAAM,IAAI,KAAK,CAAC,kCAAkC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;AAC7E,CAAC"}
@@ -1,20 +0,0 @@
1
- import type { DaimoClient } from "../../client/createDaimoClient.js";
2
- import type { AccountRegion, DepositPaymentInfo } from "../../common/account.js";
3
- import type { AccountFlowState } from "./useAccountFlow.js";
4
- export type CreateDepositResult = {
5
- isCreating: boolean;
6
- error: string | null;
7
- payment: DepositPaymentInfo | null;
8
- };
9
- /**
10
- * Signs EIP-712 typed data and creates a deposit in the background.
11
- * Returns loading state, error, and payment info when ready.
12
- */
13
- export declare function useCreateDeposit(opts: {
14
- client: DaimoClient;
15
- accountFlow: AccountFlowState | null;
16
- sessionId: string;
17
- depositAmount: string;
18
- region: AccountRegion;
19
- }): CreateDepositResult;
20
- //# sourceMappingURL=useCreateDeposit.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useCreateDeposit.d.ts","sourceRoot":"","sources":["../../../src/web/hooks/useCreateDeposit.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AACjF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAE5D,MAAM,MAAM,mBAAmB,GAAG;IAChC,UAAU,EAAE,OAAO,CAAC;IACpB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,kBAAkB,GAAG,IAAI,CAAC;CACpC,CAAC;AAEF;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE;IACrC,MAAM,EAAE,WAAW,CAAC;IACpB,WAAW,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,aAAa,CAAC;CACvB,GAAG,mBAAmB,CA4DtB"}
@@ -1,54 +0,0 @@
1
- import { useEffect, useRef, useState } from "react";
2
- /**
3
- * Signs EIP-712 typed data and creates a deposit in the background.
4
- * Returns loading state, error, and payment info when ready.
5
- */
6
- export function useCreateDeposit(opts) {
7
- const { client, accountFlow, sessionId, depositAmount, region } = opts;
8
- const [isCreating, setIsCreating] = useState(true);
9
- const [error, setError] = useState(null);
10
- const started = useRef(false);
11
- useEffect(() => {
12
- if (started.current || !accountFlow || !depositAmount)
13
- return;
14
- started.current = true;
15
- (async () => {
16
- try {
17
- const token = await accountFlow.getAccessToken();
18
- if (!token)
19
- throw new Error("not authenticated");
20
- const auth = { bearerToken: token };
21
- // 1. Get EIP-712 typed data for routing + delivery signatures
22
- const { routingSignData, deliverySignData } = await client.account.prepareDeposit({ sessionId, depositAmount, region }, auth);
23
- // 2. Sign both (sequential — Privy can't handle concurrent signing)
24
- const routingSig = await accountFlow.signTypedData({ ...routingSignData });
25
- const deliverySig = await accountFlow.signTypedData({ ...deliverySignData });
26
- // 3. Create deposit with provider
27
- const { deposit, payment } = await client.account.createDeposit({
28
- sessionId,
29
- region,
30
- depositAmount,
31
- deliverySig,
32
- deliverySigData: deliverySignData,
33
- routingSig,
34
- routingSigData: routingSignData,
35
- }, auth);
36
- // 4. Update deposit state
37
- accountFlow.setDepositState({
38
- depositAmount,
39
- depositId: deposit.id,
40
- payment,
41
- });
42
- setIsCreating(false);
43
- }
44
- catch (err) {
45
- console.error("[create-deposit] failed:", err);
46
- setError(err instanceof Error ? err.message : "failed to create deposit");
47
- setIsCreating(false);
48
- }
49
- })();
50
- }, [accountFlow, client, sessionId, depositAmount, region]);
51
- const payment = accountFlow?.depositState?.payment ?? null;
52
- return { isCreating, error, payment };
53
- }
54
- //# sourceMappingURL=useCreateDeposit.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useCreateDeposit.js","sourceRoot":"","sources":["../../../src/web/hooks/useCreateDeposit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAYpD;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAMhC;IACC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IACvE,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IACnD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IACxD,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAE9B,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,OAAO,CAAC,OAAO,IAAI,CAAC,WAAW,IAAI,CAAC,aAAa;YAAE,OAAO;QAC9D,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;QAEvB,CAAC,KAAK,IAAI,EAAE;YACV,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,cAAc,EAAE,CAAC;gBACjD,IAAI,CAAC,KAAK;oBAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;gBACjD,MAAM,IAAI,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;gBAEpC,8DAA8D;gBAC9D,MAAM,EAAE,eAAe,EAAE,gBAAgB,EAAE,GACzC,MAAM,MAAM,CAAC,OAAO,CAAC,cAAc,CACjC,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,EACpC,IAAI,CACL,CAAC;gBAEJ,oEAAoE;gBACpE,MAAM,UAAU,GAAG,MAAM,WAAW,CAAC,aAAa,CAAC,EAAE,GAAG,eAAe,EAAE,CAAC,CAAC;gBAC3E,MAAM,WAAW,GAAG,MAAM,WAAW,CAAC,aAAa,CAAC,EAAE,GAAG,gBAAgB,EAAE,CAAC,CAAC;gBAE7E,kCAAkC;gBAClC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,aAAa,CAC7D;oBACE,SAAS;oBACT,MAAM;oBACN,aAAa;oBACb,WAAW;oBACX,eAAe,EAAE,gBAAgB;oBACjC,UAAU;oBACV,cAAc,EAAE,eAAe;iBAChC,EACD,IAAI,CACL,CAAC;gBAEF,0BAA0B;gBAC1B,WAAW,CAAC,eAAe,CAAC;oBAC1B,aAAa;oBACb,SAAS,EAAE,OAAO,CAAC,EAAE;oBACrB,OAAO;iBACR,CAAC,CAAC;gBACH,aAAa,CAAC,KAAK,CAAC,CAAC;YACvB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,GAAG,CAAC,CAAC;gBAC/C,QAAQ,CACN,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,0BAA0B,CAChE,CAAC;gBACF,aAAa,CAAC,KAAK,CAAC,CAAC;YACvB,CAAC;QACH,CAAC,CAAC,EAAE,CAAC;IACP,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC;IAE5D,MAAM,OAAO,GAAG,WAAW,EAAE,YAAY,EAAE,OAAO,IAAI,IAAI,CAAC;IAC3D,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;AACxC,CAAC"}
@@ -1,2 +0,0 @@
1
- export declare function isDesktopBrowser(): boolean;
2
- //# sourceMappingURL=isDesktopBrowser.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"isDesktopBrowser.d.ts","sourceRoot":"","sources":["../../src/web/isDesktopBrowser.ts"],"names":[],"mappings":"AAAA,wBAAgB,gBAAgB,IAAI,OAAO,CAG1C"}
@@ -1,6 +0,0 @@
1
- export function isDesktopBrowser() {
2
- if (typeof navigator === "undefined")
3
- return false;
4
- return navigator.maxTouchPoints === 0;
5
- }
6
- //# sourceMappingURL=isDesktopBrowser.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"isDesktopBrowser.js","sourceRoot":"","sources":["../../src/web/isDesktopBrowser.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,gBAAgB;IAC9B,IAAI,OAAO,SAAS,KAAK,WAAW;QAAE,OAAO,KAAK,CAAC;IACnD,OAAO,SAAS,CAAC,cAAc,KAAK,CAAC,CAAC;AACxC,CAAC"}