@stridge/kit 0.1.0-alpha.60 → 0.1.0-alpha.62

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 (295) hide show
  1. package/dist/KitProvider.d.ts +0 -21
  2. package/dist/KitProvider.js +1 -1
  3. package/dist/_internal/deposit/driver/index.d.ts +3 -3
  4. package/dist/_internal/drivers/stridge-mock/index.d.ts +3 -2
  5. package/dist/_internal/drivers/stridge-mock/index.js +1 -1
  6. package/dist/activity/compound/index.js +1 -1
  7. package/dist/deposit/compound/index.d.ts +21 -10
  8. package/dist/deposit/compound/index.js +1 -1
  9. package/dist/deposit/widgets/index.d.ts +6 -3
  10. package/dist/deposit/widgets/index.js +1 -1
  11. package/dist/drivers/stridge/createStridgeDepositDriver.js +1 -1
  12. package/dist/drivers/stridge-mock/checkoutChannel.d.ts +31 -0
  13. package/dist/drivers/stridge-mock/checkoutChannel.js +1 -0
  14. package/dist/drivers/stridge-mock/createStridgeMockDriver.d.ts +28 -0
  15. package/dist/drivers/stridge-mock/createStridgeMockDriver.js +1 -1
  16. package/dist/drivers/stridge-mock/fixtures.d.ts +6 -2
  17. package/dist/drivers/stridge-mock/fixtures.js +1 -1
  18. package/dist/drivers/stridge-mock/triggers.d.ts +12 -0
  19. package/dist/events/emit/useDepositEmissions.js +1 -1
  20. package/dist/flows/deposit/dialog/DepositDialog.js +1 -1
  21. package/dist/flows/deposit/driver/payloads.d.ts +206 -20
  22. package/dist/flows/deposit/driver/types.d.ts +106 -10
  23. package/dist/flows/deposit/orchestrator/controller.js +1 -1
  24. package/dist/flows/deposit/orchestrator/index.d.ts +1 -1
  25. package/dist/flows/deposit/orchestrator/reducer.js +1 -1
  26. package/dist/flows/deposit/orchestrator/types.d.ts +202 -66
  27. package/dist/flows/deposit/shared/checkoutPopup.js +1 -0
  28. package/dist/flows/deposit/shared/onramp.js +1 -0
  29. package/dist/flows/deposit/shared/onrampError.js +1 -0
  30. package/dist/flows/deposit/widgets/amount-entry/AmountEntry.js +1 -1
  31. package/dist/flows/deposit/widgets/deposit/Deposit.js +1 -1
  32. package/dist/flows/deposit/widgets/deposit/compound/Deposit.d.ts +5 -5
  33. package/dist/flows/deposit/widgets/deposit/compound/components/Guards.js +1 -1
  34. package/dist/flows/deposit/widgets/deposit/compound/components/Methods.d.ts +1 -2
  35. package/dist/flows/deposit/widgets/deposit/compound/components/RailPicker.js +1 -1
  36. package/dist/flows/deposit/widgets/deposit/compound/types.d.ts +9 -9
  37. package/dist/flows/deposit/widgets/error-state/ErrorState.js +1 -1
  38. package/dist/flows/deposit/widgets/onramp-amount-entry/OnrampAmountEntry.d.ts +68 -0
  39. package/dist/flows/deposit/widgets/onramp-amount-entry/OnrampAmountEntry.js +1 -0
  40. package/dist/flows/deposit/widgets/onramp-amount-entry/compound/OnrampAmountEntry.d.ts +66 -0
  41. package/dist/flows/deposit/widgets/onramp-amount-entry/compound/OnrampAmountEntry.js +1 -0
  42. package/dist/flows/deposit/widgets/onramp-amount-entry/compound/OnrampAmountEntry.slots.d.ts +21 -0
  43. package/dist/flows/deposit/widgets/onramp-amount-entry/compound/OnrampAmountEntry.slots.js +1 -0
  44. package/dist/flows/deposit/widgets/onramp-amount-entry/compound/OnrampAmountEntry.styles.js +1 -0
  45. package/dist/flows/deposit/widgets/onramp-amount-entry/compound/components/CurrencyChip.d.ts +12 -0
  46. package/dist/flows/deposit/widgets/onramp-amount-entry/compound/components/CurrencyChip.js +1 -0
  47. package/dist/flows/deposit/widgets/onramp-amount-entry/compound/components/HeroLabel.d.ts +13 -0
  48. package/dist/flows/deposit/widgets/onramp-amount-entry/compound/components/HeroLabel.js +1 -0
  49. package/dist/flows/deposit/widgets/onramp-amount-entry/compound/components/ProviderCard.d.ts +12 -0
  50. package/dist/flows/deposit/widgets/onramp-amount-entry/compound/components/ProviderCard.js +1 -0
  51. package/dist/flows/deposit/widgets/onramp-amount-entry/compound/components/ReceiveChip.d.ts +14 -0
  52. package/dist/flows/deposit/widgets/onramp-amount-entry/compound/components/ReceiveChip.js +1 -0
  53. package/dist/flows/deposit/widgets/onramp-amount-entry/compound/context.d.ts +14 -0
  54. package/dist/flows/deposit/widgets/{cash-amount-entry → onramp-amount-entry}/compound/context.js +1 -1
  55. package/dist/flows/deposit/widgets/onramp-amount-entry/compound/index.d.ts +4 -0
  56. package/dist/flows/deposit/widgets/onramp-amount-entry/compound/index.js +1 -0
  57. package/dist/flows/deposit/widgets/onramp-amount-entry/compound/types.d.ts +40 -0
  58. package/dist/flows/deposit/widgets/onramp-amount-entry/index.d.ts +1 -0
  59. package/dist/flows/deposit/widgets/onramp-amount-entry/index.js +1 -0
  60. package/dist/flows/deposit/widgets/onramp-confirm/OnrampConfirm.d.ts +52 -0
  61. package/dist/flows/deposit/widgets/onramp-confirm/OnrampConfirm.js +1 -0
  62. package/dist/flows/deposit/widgets/onramp-confirm/compound/OnrampConfirm.d.ts +44 -0
  63. package/dist/flows/deposit/widgets/onramp-confirm/compound/OnrampConfirm.js +1 -0
  64. package/dist/flows/deposit/widgets/onramp-confirm/compound/OnrampConfirm.slots.d.ts +31 -0
  65. package/dist/flows/deposit/widgets/onramp-confirm/compound/OnrampConfirm.slots.js +1 -0
  66. package/dist/flows/deposit/widgets/onramp-confirm/compound/OnrampConfirm.styles.js +1 -0
  67. package/dist/flows/deposit/widgets/onramp-confirm/compound/components/Body.d.ts +16 -0
  68. package/dist/flows/deposit/widgets/onramp-confirm/compound/components/Body.js +1 -0
  69. package/dist/flows/deposit/widgets/onramp-confirm/compound/components/Disclaimer.d.ts +21 -0
  70. package/dist/flows/deposit/widgets/onramp-confirm/compound/components/Disclaimer.js +1 -0
  71. package/dist/flows/deposit/widgets/onramp-confirm/compound/components/Header.d.ts +15 -0
  72. package/dist/flows/deposit/widgets/onramp-confirm/compound/components/Header.js +1 -0
  73. package/dist/flows/deposit/widgets/onramp-confirm/compound/components/Summary.d.ts +15 -0
  74. package/dist/flows/deposit/widgets/onramp-confirm/compound/components/Summary.js +1 -0
  75. package/dist/flows/deposit/widgets/onramp-confirm/compound/context.d.ts +46 -0
  76. package/dist/flows/deposit/widgets/{cash-confirm → onramp-confirm}/compound/context.js +1 -1
  77. package/dist/flows/deposit/widgets/onramp-confirm/compound/index.d.ts +4 -0
  78. package/dist/flows/deposit/widgets/onramp-confirm/compound/index.js +1 -0
  79. package/dist/flows/deposit/widgets/onramp-confirm/compound/types.d.ts +67 -0
  80. package/dist/flows/deposit/widgets/onramp-confirm/index.d.ts +1 -0
  81. package/dist/flows/deposit/widgets/onramp-confirm/index.js +1 -0
  82. package/dist/flows/deposit/widgets/onramp-currency-picker/OnrampCurrencyPicker.d.ts +39 -0
  83. package/dist/flows/deposit/widgets/onramp-currency-picker/OnrampCurrencyPicker.js +1 -0
  84. package/dist/flows/deposit/widgets/onramp-currency-picker/compound/OnrampCurrencyPicker.d.ts +37 -0
  85. package/dist/flows/deposit/widgets/onramp-currency-picker/compound/OnrampCurrencyPicker.js +1 -0
  86. package/dist/flows/deposit/widgets/onramp-currency-picker/compound/OnrampCurrencyPicker.slots.d.ts +17 -0
  87. package/dist/flows/deposit/widgets/onramp-currency-picker/compound/OnrampCurrencyPicker.slots.js +1 -0
  88. package/dist/flows/deposit/widgets/onramp-currency-picker/compound/OnrampCurrencyPicker.styles.js +1 -0
  89. package/dist/flows/deposit/widgets/onramp-currency-picker/compound/components/Body.d.ts +6 -0
  90. package/dist/flows/deposit/widgets/onramp-currency-picker/compound/components/Body.js +1 -0
  91. package/dist/flows/deposit/widgets/onramp-currency-picker/compound/components/CurrencyRow.d.ts +12 -0
  92. package/dist/flows/deposit/widgets/onramp-currency-picker/compound/components/CurrencyRow.js +1 -0
  93. package/dist/flows/deposit/widgets/onramp-currency-picker/compound/components/Empty.js +1 -0
  94. package/dist/flows/deposit/widgets/onramp-currency-picker/compound/components/Header.d.ts +10 -0
  95. package/dist/flows/deposit/widgets/onramp-currency-picker/compound/components/Header.js +1 -0
  96. package/dist/flows/deposit/widgets/onramp-currency-picker/compound/components/Search.d.ts +6 -0
  97. package/dist/flows/deposit/widgets/onramp-currency-picker/compound/components/Search.js +1 -0
  98. package/dist/flows/deposit/widgets/onramp-currency-picker/compound/context.js +1 -0
  99. package/dist/flows/deposit/widgets/onramp-currency-picker/compound/index.d.ts +3 -0
  100. package/dist/flows/deposit/widgets/onramp-currency-picker/compound/index.js +1 -0
  101. package/dist/flows/deposit/widgets/onramp-currency-picker/compound/types.d.ts +48 -0
  102. package/dist/flows/deposit/widgets/onramp-currency-picker/index.d.ts +1 -0
  103. package/dist/flows/deposit/widgets/onramp-currency-picker/index.js +1 -0
  104. package/dist/flows/deposit/widgets/onramp-payment-pending/OnrampPaymentPending.d.ts +50 -0
  105. package/dist/flows/deposit/widgets/onramp-payment-pending/OnrampPaymentPending.js +1 -0
  106. package/dist/flows/deposit/widgets/onramp-payment-pending/compound/OnrampPaymentPending.d.ts +68 -0
  107. package/dist/flows/deposit/widgets/onramp-payment-pending/compound/OnrampPaymentPending.js +1 -0
  108. package/dist/flows/deposit/widgets/onramp-payment-pending/compound/OnrampPaymentPending.slots.d.ts +17 -0
  109. package/dist/flows/deposit/widgets/onramp-payment-pending/compound/OnrampPaymentPending.slots.js +1 -0
  110. package/dist/flows/deposit/widgets/onramp-payment-pending/compound/components/Flow.d.ts +13 -0
  111. package/dist/flows/deposit/widgets/onramp-payment-pending/compound/components/Flow.js +1 -0
  112. package/dist/flows/deposit/widgets/onramp-payment-pending/compound/components/Flow.styles.js +1 -0
  113. package/dist/flows/deposit/widgets/onramp-payment-pending/compound/components/ReopenButton.d.ts +11 -0
  114. package/dist/flows/deposit/widgets/onramp-payment-pending/compound/components/ReopenButton.js +1 -0
  115. package/dist/flows/deposit/widgets/onramp-payment-pending/compound/context.d.ts +32 -0
  116. package/dist/flows/deposit/widgets/onramp-payment-pending/compound/context.js +1 -0
  117. package/dist/flows/deposit/widgets/onramp-payment-pending/compound/index.d.ts +3 -0
  118. package/dist/flows/deposit/widgets/onramp-payment-pending/compound/index.js +1 -0
  119. package/dist/flows/deposit/widgets/onramp-payment-pending/index.d.ts +1 -0
  120. package/dist/flows/deposit/widgets/onramp-payment-pending/index.js +1 -0
  121. package/dist/flows/deposit/widgets/onramp-provider-picker/OnrampProviderPicker.d.ts +38 -0
  122. package/dist/flows/deposit/widgets/onramp-provider-picker/OnrampProviderPicker.js +1 -0
  123. package/dist/flows/deposit/widgets/onramp-provider-picker/compound/OnrampProviderPicker.d.ts +35 -0
  124. package/dist/flows/deposit/widgets/onramp-provider-picker/compound/OnrampProviderPicker.js +1 -0
  125. package/dist/flows/deposit/widgets/onramp-provider-picker/compound/OnrampProviderPicker.slots.d.ts +19 -0
  126. package/dist/flows/deposit/widgets/onramp-provider-picker/compound/OnrampProviderPicker.slots.js +1 -0
  127. package/dist/flows/deposit/widgets/onramp-provider-picker/compound/OnrampProviderPicker.styles.js +1 -0
  128. package/dist/flows/deposit/widgets/onramp-provider-picker/compound/components/Body.d.ts +6 -0
  129. package/dist/flows/deposit/widgets/onramp-provider-picker/compound/components/Body.js +1 -0
  130. package/dist/flows/deposit/widgets/onramp-provider-picker/compound/components/Header.d.ts +10 -0
  131. package/dist/flows/deposit/widgets/onramp-provider-picker/compound/components/Header.js +1 -0
  132. package/dist/flows/deposit/widgets/onramp-provider-picker/compound/components/ProviderRow.d.ts +15 -0
  133. package/dist/flows/deposit/widgets/onramp-provider-picker/compound/components/ProviderRow.js +1 -0
  134. package/dist/flows/deposit/widgets/onramp-provider-picker/compound/context.js +1 -0
  135. package/dist/flows/deposit/widgets/onramp-provider-picker/compound/index.d.ts +3 -0
  136. package/dist/flows/deposit/widgets/onramp-provider-picker/compound/index.js +1 -0
  137. package/dist/flows/deposit/widgets/onramp-provider-picker/compound/types.d.ts +50 -0
  138. package/dist/flows/deposit/widgets/onramp-provider-picker/index.d.ts +1 -0
  139. package/dist/flows/deposit/widgets/onramp-provider-picker/index.js +1 -0
  140. package/dist/flows/deposit/widgets/success-state/SuccessState.js +1 -1
  141. package/dist/flows/deposit/widgets/transfer-crypto/compound/components/QrCode.js +1 -1
  142. package/dist/flows/withdraw/widgets/withdraw-form/compound/components/RecipientField.js +1 -1
  143. package/dist/format/index.d.ts +2 -1
  144. package/dist/format/index.js +1 -1
  145. package/dist/i18n/locales/ar.js +1 -1
  146. package/dist/i18n/locales/es.js +1 -1
  147. package/dist/i18n/locales/source-keys.d.ts +1 -1
  148. package/dist/icons/index.d.ts +4 -8
  149. package/dist/icons/index.js +1 -1
  150. package/dist/index.d.ts +3 -4
  151. package/dist/index.js +1 -1
  152. package/dist/package.js +1 -1
  153. package/dist/shared/attribution/Attribution.js +1 -1
  154. package/dist/shared/attribution/Attribution.styles.js +1 -1
  155. package/dist/shared/dialog/Frame.js +1 -1
  156. package/dist/shared/format/formatFiat.d.ts +31 -0
  157. package/dist/shared/format/formatFiat.js +1 -0
  158. package/dist/shared/icons/BellIcon.d.ts +7 -0
  159. package/dist/shared/icons/BellIcon.js +1 -0
  160. package/dist/shared/icons/BitcoinIcon.d.ts +5 -8
  161. package/dist/shared/icons/BitcoinIcon.js +1 -1
  162. package/dist/shared/icons/CardIcon.d.ts +3 -3
  163. package/dist/shared/icons/DirhamSignIcon.d.ts +16 -0
  164. package/dist/shared/icons/DirhamSignIcon.js +1 -0
  165. package/dist/shared/icons/SearchIcon.d.ts +7 -0
  166. package/dist/shared/icons/SearchIcon.js +1 -0
  167. package/dist/shared/orchestrator/index.js +1 -1
  168. package/dist/shared/orchestrator/useOnrampSessionWatcher.js +1 -0
  169. package/dist/shared/ui/AmountInput/useAutoShrinkFontSize.js +1 -1
  170. package/dist/shared/ui/Checkbox/Checkbox.d.ts +47 -0
  171. package/dist/shared/ui/Checkbox/Checkbox.js +1 -0
  172. package/dist/shared/ui/Checkbox/Checkbox.slots.d.ts +12 -0
  173. package/dist/shared/ui/Checkbox/Checkbox.slots.js +1 -0
  174. package/dist/shared/ui/Checkbox/Checkbox.styles.js +1 -0
  175. package/dist/shared/ui/Checkbox/index.d.ts +2 -0
  176. package/dist/shared/ui/Checkbox/index.js +1 -0
  177. package/dist/shared/ui/CurrencyGlyph/CurrencyGlyph.d.ts +36 -0
  178. package/dist/shared/ui/CurrencyGlyph/CurrencyGlyph.js +1 -0
  179. package/dist/shared/ui/CurrencyGlyph/CurrencyGlyph.slots.d.ts +12 -0
  180. package/dist/shared/ui/CurrencyGlyph/CurrencyGlyph.slots.js +1 -0
  181. package/dist/shared/ui/CurrencyGlyph/CurrencyGlyph.styles.js +1 -0
  182. package/dist/shared/ui/CurrencyGlyph/flags.js +1 -0
  183. package/dist/shared/ui/CurrencyGlyph/index.d.ts +2 -0
  184. package/dist/shared/ui/CurrencyGlyph/index.js +1 -0
  185. package/dist/shared/ui/DisclosureRow/DisclosureRow.d.ts +56 -0
  186. package/dist/shared/ui/DisclosureRow/DisclosureRow.js +1 -0
  187. package/dist/shared/ui/DisclosureRow/DisclosureRow.slots.d.ts +8 -0
  188. package/dist/shared/ui/DisclosureRow/DisclosureRow.slots.js +1 -0
  189. package/dist/shared/ui/DisclosureRow/DisclosureRow.styles.js +1 -0
  190. package/dist/shared/ui/DisclosureRow/index.d.ts +2 -0
  191. package/dist/shared/ui/DisclosureRow/index.js +1 -0
  192. package/dist/shared/ui/FiatSymbol/FiatAmount.d.ts +32 -0
  193. package/dist/shared/ui/FiatSymbol/FiatAmount.js +1 -0
  194. package/dist/shared/ui/FiatSymbol/FiatSymbol.d.ts +30 -0
  195. package/dist/shared/ui/FiatSymbol/FiatSymbol.js +1 -0
  196. package/dist/shared/ui/FiatSymbol/index.d.ts +2 -0
  197. package/dist/shared/ui/FiatSymbol/index.js +1 -0
  198. package/dist/shared/ui/Tabs/Tabs.d.ts +2 -2
  199. package/dist/shared/utils/logos/resolveLogoSrc.js +1 -1
  200. package/dist/shared/widgets/activity/compound/ActivityDetail.js +1 -1
  201. package/dist/shared/widgets/amount-entry/compound/AmountEntry.js +1 -1
  202. package/dist/shared/widgets/amount-entry/compound/AmountEntry.styles.js +1 -1
  203. package/dist/shared/widgets/amount-entry/compound/components/Footer.js +1 -1
  204. package/dist/shared/widgets/amount-entry/compound/components/Hero/Hero.d.ts +2 -1
  205. package/dist/shared/widgets/amount-entry/compound/components/Hero/Hero.js +1 -1
  206. package/dist/shared/widgets/amount-entry/compound/components/Hero/StaticBand.js +1 -1
  207. package/dist/shared/widgets/amount-entry/compound/types.d.ts +16 -0
  208. package/dist/shared/widgets/confirm-transfer/compound/components/Breakdown.js +1 -1
  209. package/dist/shared/widgets/error-state/compound/ErrorState.styles.js +1 -1
  210. package/dist/shared/widgets/error-state/compound/components/MoreDetails.d.ts +3 -3
  211. package/dist/shared/widgets/error-state/compound/components/MoreDetails.js +1 -1
  212. package/dist/shared/widgets/success-state/compound/SuccessState.styles.js +1 -1
  213. package/dist/shared/widgets/success-state/compound/components/MoreDetails.d.ts +2 -3
  214. package/dist/shared/widgets/success-state/compound/components/MoreDetails.js +1 -1
  215. package/dist/stridge/StridgeProvider.d.ts +0 -10
  216. package/dist/stridge/StridgeProvider.js +1 -1
  217. package/dist/stridge/stubs.js +1 -1
  218. package/dist/styles/index.css +118 -40
  219. package/dist/types.d.ts +3 -3
  220. package/dist/ui/index.d.ts +9 -1
  221. package/dist/ui/index.js +1 -1
  222. package/dist/version.js +1 -1
  223. package/dist/withdraw/compound/index.js +1 -1
  224. package/package.json +1 -1
  225. package/dist/flows/deposit/bindings/DepositBindings.d.ts +0 -87
  226. package/dist/flows/deposit/bindings/DepositBindings.js +0 -1
  227. package/dist/flows/deposit/bindings/index.d.ts +0 -1
  228. package/dist/flows/deposit/bindings/index.js +0 -1
  229. package/dist/flows/deposit/shared/cash.d.ts +0 -20
  230. package/dist/flows/deposit/shared/cash.js +0 -1
  231. package/dist/flows/deposit/widgets/cash-amount-entry/CashAmountEntry.d.ts +0 -71
  232. package/dist/flows/deposit/widgets/cash-amount-entry/CashAmountEntry.js +0 -1
  233. package/dist/flows/deposit/widgets/cash-amount-entry/compound/CashAmountEntry.d.ts +0 -69
  234. package/dist/flows/deposit/widgets/cash-amount-entry/compound/CashAmountEntry.js +0 -1
  235. package/dist/flows/deposit/widgets/cash-amount-entry/compound/CashAmountEntry.slots.d.ts +0 -16
  236. package/dist/flows/deposit/widgets/cash-amount-entry/compound/CashAmountEntry.slots.js +0 -1
  237. package/dist/flows/deposit/widgets/cash-amount-entry/compound/CashAmountEntry.styles.js +0 -1
  238. package/dist/flows/deposit/widgets/cash-amount-entry/compound/components/HeroLabel.d.ts +0 -13
  239. package/dist/flows/deposit/widgets/cash-amount-entry/compound/components/HeroLabel.js +0 -1
  240. package/dist/flows/deposit/widgets/cash-amount-entry/compound/components/MethodChip.d.ts +0 -18
  241. package/dist/flows/deposit/widgets/cash-amount-entry/compound/components/MethodChip.js +0 -1
  242. package/dist/flows/deposit/widgets/cash-amount-entry/compound/components/ReceiveChip.d.ts +0 -14
  243. package/dist/flows/deposit/widgets/cash-amount-entry/compound/components/ReceiveChip.js +0 -1
  244. package/dist/flows/deposit/widgets/cash-amount-entry/compound/index.d.ts +0 -3
  245. package/dist/flows/deposit/widgets/cash-amount-entry/compound/index.js +0 -1
  246. package/dist/flows/deposit/widgets/cash-amount-entry/compound/types.d.ts +0 -42
  247. package/dist/flows/deposit/widgets/cash-amount-entry/index.d.ts +0 -1
  248. package/dist/flows/deposit/widgets/cash-amount-entry/index.js +0 -1
  249. package/dist/flows/deposit/widgets/cash-confirm/CashConfirm.d.ts +0 -63
  250. package/dist/flows/deposit/widgets/cash-confirm/CashConfirm.js +0 -1
  251. package/dist/flows/deposit/widgets/cash-confirm/compound/CashConfirm.d.ts +0 -54
  252. package/dist/flows/deposit/widgets/cash-confirm/compound/CashConfirm.js +0 -1
  253. package/dist/flows/deposit/widgets/cash-confirm/compound/CashConfirm.slots.d.ts +0 -33
  254. package/dist/flows/deposit/widgets/cash-confirm/compound/CashConfirm.slots.js +0 -1
  255. package/dist/flows/deposit/widgets/cash-confirm/compound/CashConfirm.styles.js +0 -1
  256. package/dist/flows/deposit/widgets/cash-confirm/compound/cashConfirmDimensions.js +0 -1
  257. package/dist/flows/deposit/widgets/cash-confirm/compound/components/ApplePayBody.d.ts +0 -15
  258. package/dist/flows/deposit/widgets/cash-confirm/compound/components/ApplePayBody.js +0 -1
  259. package/dist/flows/deposit/widgets/cash-confirm/compound/components/Body.d.ts +0 -22
  260. package/dist/flows/deposit/widgets/cash-confirm/compound/components/Body.js +0 -1
  261. package/dist/flows/deposit/widgets/cash-confirm/compound/components/BodyLabel.js +0 -1
  262. package/dist/flows/deposit/widgets/cash-confirm/compound/components/CardBody.d.ts +0 -16
  263. package/dist/flows/deposit/widgets/cash-confirm/compound/components/CardBody.js +0 -1
  264. package/dist/flows/deposit/widgets/cash-confirm/compound/components/CardInputRow.icons.js +0 -1
  265. package/dist/flows/deposit/widgets/cash-confirm/compound/components/CardInputRow.js +0 -1
  266. package/dist/flows/deposit/widgets/cash-confirm/compound/components/CardInputRow.keys.js +0 -1
  267. package/dist/flows/deposit/widgets/cash-confirm/compound/components/CardInputRow.state.js +0 -1
  268. package/dist/flows/deposit/widgets/cash-confirm/compound/components/CardInputRow.styles.js +0 -1
  269. package/dist/flows/deposit/widgets/cash-confirm/compound/components/GooglePayBody.d.ts +0 -16
  270. package/dist/flows/deposit/widgets/cash-confirm/compound/components/GooglePayBody.js +0 -1
  271. package/dist/flows/deposit/widgets/cash-confirm/compound/components/Header.d.ts +0 -21
  272. package/dist/flows/deposit/widgets/cash-confirm/compound/components/Header.js +0 -1
  273. package/dist/flows/deposit/widgets/cash-confirm/compound/components/Summary.d.ts +0 -17
  274. package/dist/flows/deposit/widgets/cash-confirm/compound/components/Summary.js +0 -1
  275. package/dist/flows/deposit/widgets/cash-confirm/compound/components/cardFormat.js +0 -1
  276. package/dist/flows/deposit/widgets/cash-confirm/compound/index.d.ts +0 -3
  277. package/dist/flows/deposit/widgets/cash-confirm/compound/index.js +0 -1
  278. package/dist/flows/deposit/widgets/cash-confirm/compound/types.d.ts +0 -66
  279. package/dist/flows/deposit/widgets/cash-confirm/index.d.ts +0 -1
  280. package/dist/flows/deposit/widgets/cash-confirm/index.js +0 -1
  281. package/dist/flows/deposit/widgets/cash-confirm/mocks.js +0 -1
  282. package/dist/shared/icons/AmexIcon.d.ts +0 -14
  283. package/dist/shared/icons/AmexIcon.js +0 -1
  284. package/dist/shared/icons/ApplePayIcon.d.ts +0 -15
  285. package/dist/shared/icons/ApplePayIcon.js +0 -1
  286. package/dist/shared/icons/CashIcon.d.ts +0 -16
  287. package/dist/shared/icons/CashIcon.js +0 -1
  288. package/dist/shared/icons/DiscoverIcon.d.ts +0 -14
  289. package/dist/shared/icons/DiscoverIcon.js +0 -1
  290. package/dist/shared/icons/GooglePayIcon.d.ts +0 -15
  291. package/dist/shared/icons/GooglePayIcon.js +0 -1
  292. package/dist/shared/icons/MastercardIcon.d.ts +0 -16
  293. package/dist/shared/icons/MastercardIcon.js +0 -1
  294. package/dist/shared/icons/VisaIcon.d.ts +0 -15
  295. package/dist/shared/icons/VisaIcon.js +0 -1
@@ -0,0 +1,31 @@
1
+ //#region src/flows/deposit/widgets/onramp-confirm/compound/OnrampConfirm.slots.d.ts
2
+ /**
3
+ * `data-stridge-slot` constants for the onramp-confirm compound widget. Hosts target these via CSS
4
+ * selectors like `[data-stridge-slot="onramp-confirm-header"]` without forking the kit.
5
+ */
6
+ declare const ONRAMP_CONFIRM_SLOTS: {
7
+ readonly root: "onramp-confirm";
8
+ readonly header: "onramp-confirm-header";
9
+ readonly body: "onramp-confirm-body";
10
+ readonly summary: "onramp-confirm-summary";
11
+ readonly summaryStaticRow: "onramp-confirm-summary-static-row";
12
+ readonly summaryRowLabel: "onramp-confirm-summary-row-label";
13
+ readonly summaryRowValue: "onramp-confirm-summary-row-value";
14
+ readonly summaryBreakdown: "onramp-confirm-summary-breakdown";
15
+ readonly breakdownTrigger: "onramp-confirm-breakdown-trigger";
16
+ readonly breakdownChevron: "onramp-confirm-breakdown-chevron";
17
+ readonly breakdownRow: "onramp-confirm-breakdown-row";
18
+ readonly breakdownRowLabel: "onramp-confirm-breakdown-row-label";
19
+ readonly breakdownRowValue: "onramp-confirm-breakdown-row-value";
20
+ readonly cta: "onramp-confirm-cta";
21
+ readonly disclaimer: "onramp-confirm-disclaimer";
22
+ readonly disclaimerProvider: "onramp-confirm-disclaimer-provider";
23
+ readonly disclaimerReceive: "onramp-confirm-disclaimer-receive";
24
+ readonly disclaimerBody: "onramp-confirm-disclaimer-body";
25
+ readonly disclaimerLink: "onramp-confirm-disclaimer-link";
26
+ readonly disclaimerCheckbox: "onramp-confirm-disclaimer-checkbox";
27
+ readonly disclaimerCheckboxLabel: "onramp-confirm-disclaimer-checkbox-label";
28
+ };
29
+ type OnrampConfirmSlot = (typeof ONRAMP_CONFIRM_SLOTS)[keyof typeof ONRAMP_CONFIRM_SLOTS];
30
+ //#endregion
31
+ export { ONRAMP_CONFIRM_SLOTS, OnrampConfirmSlot };
@@ -0,0 +1 @@
1
+ const e={root:`onramp-confirm`,header:`onramp-confirm-header`,body:`onramp-confirm-body`,summary:`onramp-confirm-summary`,summaryStaticRow:`onramp-confirm-summary-static-row`,summaryRowLabel:`onramp-confirm-summary-row-label`,summaryRowValue:`onramp-confirm-summary-row-value`,summaryBreakdown:`onramp-confirm-summary-breakdown`,breakdownTrigger:`onramp-confirm-breakdown-trigger`,breakdownChevron:`onramp-confirm-breakdown-chevron`,breakdownRow:`onramp-confirm-breakdown-row`,breakdownRowLabel:`onramp-confirm-breakdown-row-label`,breakdownRowValue:`onramp-confirm-breakdown-row-value`,cta:`onramp-confirm-cta`,disclaimer:`onramp-confirm-disclaimer`,disclaimerProvider:`onramp-confirm-disclaimer-provider`,disclaimerReceive:`onramp-confirm-disclaimer-receive`,disclaimerBody:`onramp-confirm-disclaimer-body`,disclaimerLink:`onramp-confirm-disclaimer-link`,disclaimerCheckbox:`onramp-confirm-disclaimer-checkbox`,disclaimerCheckboxLabel:`onramp-confirm-disclaimer-checkbox-label`};export{e as ONRAMP_CONFIRM_SLOTS};
@@ -0,0 +1 @@
1
+ const e={root:{"OnrampConfirm__styles.root":`OnrampConfirm__styles.root`,"position-kVAEAm":`x1n2onr6`,"width-kzqmXN":`xh8yej3`,"maxWidth-ks0D6T":`x17fpy1y`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-confirm/compound/OnrampConfirm.styles.ts:11`},body:{"OnrampConfirm__styles.body":`OnrampConfirm__styles.body`,"display-k1xSpc":`x78zum5`,"flexDirection-kXwgrk":`xdt5ytf`,"gap-kOIVth":`xsfdumc`,"paddingTop-kLKAdn":`xtgch2x`,"paddingBottom-kGO01o":`xpnfv0q`,"paddingInlineEnd-kwRFfy":`x1hvdk87`,"paddingInlineStart-kZCmMZ":`xmg6hw8`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-confirm/compound/OnrampConfirm.styles.ts:18`},summary:{"OnrampConfirm__styles.summary":`OnrampConfirm__styles.summary`,"display-k1xSpc":`x78zum5`,"flexDirection-kXwgrk":`xdt5ytf`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-confirm/compound/OnrampConfirm.styles.ts:28`},summaryStaticRow:{"OnrampConfirm__styles.summaryStaticRow":`OnrampConfirm__styles.summaryStaticRow`,"display-k1xSpc":`x78zum5`,"flexDirection-kXwgrk":`x1q0g3np`,"alignItems-kGNEyG":`x1pha0wt`,"justifyContent-kjj79g":`x1qughib`,"gap-kOIVth":`x2blr79`,"paddingBlock-k8WAf4":`x1yowcxs`,"paddingInline-kg3NbH":`xqsvw4s`,"borderBottomColor-kL6WhQ":`x2kdqbz`,"borderBottomStyle-kfdmCh":`x1q0q8m5`,"borderBottomWidth-kt9PQ7":`xso031l`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-confirm/compound/OnrampConfirm.styles.ts:32`},summaryLabel:{"OnrampConfirm__styles.summaryLabel":`OnrampConfirm__styles.summaryLabel`,"color-kMwMTN":`x18cw6k6`,"fontWeight-k63SB2":`xi0sa8g`,"margin-kogj98":`x1ghz6dp`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-confirm/compound/OnrampConfirm.styles.ts:44`},summaryValue:{"OnrampConfirm__styles.summaryValue":`OnrampConfirm__styles.summaryValue`,"color-kMwMTN":`x1i40r7x`,"fontWeight-k63SB2":`x1qvi77d`,"margin-kogj98":`x1ghz6dp`,"textAlign-k9WMMc":`xp4054r`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-confirm/compound/OnrampConfirm.styles.ts:49`},breakdownPanel:{"OnrampConfirm__styles.breakdownPanel":`OnrampConfirm__styles.breakdownPanel`,"display-k1xSpc":`x78zum5`,"flexDirection-kXwgrk":`xdt5ytf`,"backgroundColor-kWkggS":`x407w7c`,"borderTopColor-kLZC3w":`x19bq4ie`,"borderTopStyle-kPef9Z":`x13fuv20`,"borderTopWidth-kEafiO":`x178xt8z`,"paddingBlock-k8WAf4":`xpuy6co`,"paddingInline-kg3NbH":`xqsvw4s`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-confirm/compound/OnrampConfirm.styles.ts:55`},breakdownRow:{"OnrampConfirm__styles.breakdownRow":`OnrampConfirm__styles.breakdownRow`,"display-k1xSpc":`x78zum5`,"flexDirection-kXwgrk":`x1q0g3np`,"alignItems-kGNEyG":`x6s0dn4`,"justifyContent-kjj79g":`x1qughib`,"gap-kOIVth":`x2blr79`,"paddingBlock-k8WAf4":`xpuy6co`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-confirm/compound/OnrampConfirm.styles.ts:65`},breakdownLabel:{"OnrampConfirm__styles.breakdownLabel":`OnrampConfirm__styles.breakdownLabel`,"color-kMwMTN":`x18cw6k6`,"fontWeight-k63SB2":`xi0sa8g`,"margin-kogj98":`x1ghz6dp`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-confirm/compound/OnrampConfirm.styles.ts:73`},breakdownValue:{"OnrampConfirm__styles.breakdownValue":`OnrampConfirm__styles.breakdownValue`,"color-kMwMTN":`x1i40r7x`,"fontWeight-k63SB2":`x1qvi77d`,"margin-kogj98":`x1ghz6dp`,"textAlign-k9WMMc":`xp4054r`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-confirm/compound/OnrampConfirm.styles.ts:78`},cta:{"OnrampConfirm__styles.cta":`OnrampConfirm__styles.cta`,"alignSelf-kSGwAc":`xkh2ocl`,"borderWidth-kMzoRj":`xc342km`,"cursor-kkrTdU":`x1ypdohk`,"borderRadius-kaIpWk":`x1s7mj9v`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-confirm/compound/OnrampConfirm.styles.ts:85`},failureNotice:{"OnrampConfirm__styles.failureNotice":`OnrampConfirm__styles.failureNotice`,"color-kMwMTN":`xreodjm`,"margin-kogj98":`x1ghz6dp`,"textAlign-k9WMMc":`x2b8uid`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-confirm/compound/OnrampConfirm.styles.ts:91`},header:{"OnrampConfirm__styles.header":`OnrampConfirm__styles.header`,"justifyContent-kjj79g":`x1qughib`,"gap-kOIVth":`x2blr79`,"paddingTop-kLKAdn":`x1h03h88`,"paddingInlineEnd-kwRFfy":`x1hvdk87`,"paddingBottom-kGO01o":`xfvigk`,"paddingInlineStart-kZCmMZ":`xiplbrm`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-confirm/compound/OnrampConfirm.styles.ts:97`},headerLeft:{"OnrampConfirm__styles.headerLeft":`OnrampConfirm__styles.headerLeft`,"display-k1xSpc":`x78zum5`,"alignItems-kGNEyG":`x6s0dn4`,"gap-kOIVth":`x2blr79`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-confirm/compound/OnrampConfirm.styles.ts:105`},headerTitle:{"OnrampConfirm__styles.headerTitle":`OnrampConfirm__styles.headerTitle`,"margin-kogj98":`x1ghz6dp`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-confirm/compound/OnrampConfirm.styles.ts:110`},backIcon:{"OnrampConfirm__styles.backIcon":`OnrampConfirm__styles.backIcon`,"color-kMwMTN":`x15rks2t`,"strokeWidth-kfJifR":`xhxwl1`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-confirm/compound/OnrampConfirm.styles.ts:113`},disclaimer:{"OnrampConfirm__styles.disclaimer":`OnrampConfirm__styles.disclaimer`,"display-k1xSpc":`x78zum5`,"flexDirection-kXwgrk":`xdt5ytf`,"gap-kOIVth":`x2blr79`,"padding-kmVPX3":`x163h9xw`,"borderRadius-kaIpWk":`x5bw3pk`,"borderWidth-kMzoRj":`xmkeg23`,"borderStyle-ksu8eU":`x1y0btm7`,"borderColor-kVAM5u":`x12c9lpl`,"backgroundColor-kWkggS":`x407w7c`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-confirm/compound/OnrampConfirm.styles.ts:118`},disclaimerProvider:{"OnrampConfirm__styles.disclaimerProvider":`OnrampConfirm__styles.disclaimerProvider`,"display-k1xSpc":`x78zum5`,"alignItems-kGNEyG":`x6s0dn4`,"gap-kOIVth":`x1a6yh9e`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-confirm/compound/OnrampConfirm.styles.ts:129`},disclaimerProviderText:{"OnrampConfirm__styles.disclaimerProviderText":`OnrampConfirm__styles.disclaimerProviderText`,"display-k1xSpc":`x78zum5`,"flexDirection-kXwgrk":`xdt5ytf`,"gap-kOIVth":`x12mrbbr`,"minWidth-k7Eaqz":`xeuugli`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-confirm/compound/OnrampConfirm.styles.ts:134`},disclaimerReceive:{"OnrampConfirm__styles.disclaimerReceive":`OnrampConfirm__styles.disclaimerReceive`,"margin-kogj98":`x1ghz6dp`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-confirm/compound/OnrampConfirm.styles.ts:140`},disclaimerBody:{"OnrampConfirm__styles.disclaimerBody":`OnrampConfirm__styles.disclaimerBody`,"margin-kogj98":`x1ghz6dp`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-confirm/compound/OnrampConfirm.styles.ts:143`},disclaimerLink:{"OnrampConfirm__styles.disclaimerLink":`OnrampConfirm__styles.disclaimerLink`,"color-kMwMTN":`x1me39qh`,"textDecorationLine-kMnn75":`xujl8zx`,"textUnderlineOffset-kcSHmL":`xrys4gj`,"borderRadius-kaIpWk":`x1cum3z5`,"outline-kI3sdo":`x1a2a7pz`,"boxShadow-kGVxlE":`x159teg`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-confirm/compound/OnrampConfirm.styles.ts:146`},disclaimerLinks:{"OnrampConfirm__styles.disclaimerLinks":`OnrampConfirm__styles.disclaimerLinks`,"display-k1xSpc":`x78zum5`,"flexWrap-kwnvtZ":`x1a02dak`,"alignItems-kGNEyG":`x6s0dn4`,"gap-kOIVth":`x2blr79`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-confirm/compound/OnrampConfirm.styles.ts:157`},disclaimerCheckboxRow:{"OnrampConfirm__styles.disclaimerCheckboxRow":`OnrampConfirm__styles.disclaimerCheckboxRow`,"display-k1xSpc":`x78zum5`,"alignItems-kGNEyG":`x1cy8zhl`,"gap-kOIVth":`x1a6yh9e`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-confirm/compound/OnrampConfirm.styles.ts:163`},disclaimerCheckboxLabel:{"OnrampConfirm__styles.disclaimerCheckboxLabel":`OnrampConfirm__styles.disclaimerCheckboxLabel`,"margin-kogj98":`x1ghz6dp`,"flexBasis-kCS8Yb":`x1r8uery`,"flexGrow-kzQI83":`x1iyjqo2`,"minWidth-k7Eaqz":`xeuugli`,"fontSize-kGuDYH":`x1oae1zf`,"lineHeight-kLWn49":`x14vj8e1`,"cursor-kkrTdU":`x1ypdohk`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-confirm/compound/OnrampConfirm.styles.ts:174`}};export{e as styles};
@@ -0,0 +1,16 @@
1
+ import { OnrampConfirmBodyProps } from "../types.js";
2
+ import * as _$react_jsx_runtime0 from "react/jsx-runtime";
3
+
4
+ //#region src/flows/deposit/widgets/onramp-confirm/compound/components/Body.d.ts
5
+ /**
6
+ * Card.Body wrapper for the onramp-confirm widget. When `children` is omitted, auto-renders
7
+ * `<Summary />` + the primary CTA so the canonical composition just works. Pass children to
8
+ * override. Wraps children in a slot div so the body's `gap` + `padding` apply where the children
9
+ * actually live (Card.Body's scroll viewport otherwise redirects them).
10
+ */
11
+ declare function OnrampConfirmBody({
12
+ children,
13
+ ...props
14
+ }?: OnrampConfirmBodyProps): _$react_jsx_runtime0.JSX.Element;
15
+ //#endregion
16
+ export { OnrampConfirmBody };
@@ -0,0 +1 @@
1
+ "use client";import{Trans as e}from"../../../../../../shared/i18n/Trans.js";import"../../../../../../i18n/index.js";import{Button as t}from"../../../../../../shared/ui/Button/Button.js";import{Card as n}from"../../../../../../shared/ui/Card/Card.js";import{text as r}from"../../../../../../shared/ui/Text/Text.js";import"../../../../../../ui/index.js";import{useOnrampConfirmContext as i}from"../context.js";import{ONRAMP_CONFIRM_SLOTS as a}from"../OnrampConfirm.slots.js";import{styles as o}from"../OnrampConfirm.styles.js";import{OnrampConfirmDisclaimer as s}from"./Disclaimer.js";import{OnrampConfirmSummary as c}from"./Summary.js";import{useState as l}from"react";import{Fragment as u,jsx as d,jsxs as f}from"react/jsx-runtime";import*as p from"@stylexjs/stylex";function m({children:e,...t}={}){return d(n.Body,{...t,children:d(`div`,{"data-stridge-slot":a.body,...p.props(o.body),children:e??d(h,{})})})}function h(){let{phase:n,failureReason:m,onConfirm:h,disclaimer:g}=i(`OnrampConfirm.Body`),_=n.kind===`creating`,v=n.kind===`loading`,[y,b]=l(!1),x=g!==void 0&&!y;return f(u,{children:[d(c,{}),g?d(s,{checked:y,onCheckedChange:b}):null,n.kind===`failed`&&m?d(r.span,{size:`sm`,leading:`normal`,...p.props(o.failureNotice),children:m}):null,d(t,{variant:`default`,size:`cta`,isLoading:_,disabled:v||_||!h||x,"aria-disabled":x?!0:void 0,onClick:h,"data-stridge-slot":a.cta,...p.props(o.cta),children:_?d(e,{id:`9k9fRZ`,message:`Opening checkout…`}):d(e,{id:`hMqszB`,message:`Continue to payment`})})]})}export{m as OnrampConfirmBody};
@@ -0,0 +1,21 @@
1
+ import * as _$react_jsx_runtime0 from "react/jsx-runtime";
2
+
3
+ //#region src/flows/deposit/widgets/onramp-confirm/compound/components/Disclaimer.d.ts
4
+ interface OnrampConfirmDisclaimerProps {
5
+ /** Controlled acknowledgement state (owned by the Body so it can gate the CTA). */
6
+ checked: boolean;
7
+ /** Fires with the next acknowledgement state on toggle. */
8
+ onCheckedChange: (checked: boolean) => void;
9
+ }
10
+ /**
11
+ * Pre-redirect third-party-consent block. Renders the active provider's identity, the receive
12
+ * estimate + delivery time, a translated acknowledgement body interpolating the driver-supplied
13
+ * provider name + legal links (or a verbatim `bodyOverride`), and a required acknowledgement
14
+ * checkbox the Body gates the CTA on. Renders nothing when no disclaimer is wired.
15
+ */
16
+ declare function OnrampConfirmDisclaimer({
17
+ checked,
18
+ onCheckedChange
19
+ }: OnrampConfirmDisclaimerProps): _$react_jsx_runtime0.JSX.Element | null;
20
+ //#endregion
21
+ export { OnrampConfirmDisclaimer };
@@ -0,0 +1 @@
1
+ "use client";import{Trans as e}from"../../../../../../shared/i18n/Trans.js";import{useLingui as t}from"../../../../../../shared/i18n/useLingui.js";import"../../../../../../i18n/index.js";import{Checkbox as n}from"../../../../../../shared/ui/Checkbox/Checkbox.js";import"../../../../../../shared/ui/Checkbox/index.js";import{Image as r}from"../../../../../../shared/ui/Image/Image.js";import"../../../../../../shared/ui/Image/index.js";import{Skeleton as i}from"../../../../../../shared/ui/Skeleton/Skeleton.js";import{text as a}from"../../../../../../shared/ui/Text/Text.js";import"../../../../../../ui/index.js";import{useOnrampConfirmContext as o}from"../context.js";import{ONRAMP_CONFIRM_SLOTS as s}from"../OnrampConfirm.slots.js";import{styles as c}from"../OnrampConfirm.styles.js";import{useId as l}from"react";import{jsx as u,jsxs as d}from"react/jsx-runtime";import*as f from"@stylexjs/stylex";const p={target:`_blank`,rel:`noopener noreferrer`};function m({checked:m,onCheckedChange:h}){let g=o(`OnrampConfirm.Disclaimer`),{_}=t(),v=l(),y=g.disclaimer;if(!y)return null;let b=y.providerName,x=e=>y.links.find(t=>t.kind===e)?.url,S=x(`terms`)??`#`,C=x(`privacy`)??`#`,w=g.summary?`${g.summary.receive} ${g.summary.receiveSymbol}`:void 0,T=!w&&g.phase.kind===`loading`;return d(`div`,{"data-stridge-slot":s.disclaimer,...f.props(c.disclaimer),children:[d(`div`,{"data-stridge-slot":s.disclaimerProvider,...f.props(c.disclaimerProvider),children:[u(r,{...y.logoUrl?{src:y.logoUrl}:{},alt:b,size:28,shape:`rounded`}),d(`span`,{...f.props(c.disclaimerProviderText),children:[u(a.span,{size:`sm`,fontWeight:`semibold`,leading:`tight`,tracking:`tight`,truncate:!0,children:b}),y.deliveryTime?u(a.span,{size:`xs`,fontWeight:`medium`,leading:`tight`,color:`subdued`,children:u(e,{id:`6A8Mts`,message:`Up to {0}`,values:{0:y.deliveryTime}})}):null]})]}),w?u(a.span,{size:`sm`,fontWeight:`semibold`,leading:`normal`,"data-stridge-slot":s.disclaimerReceive,...f.props(c.disclaimerReceive),children:u(e,{id:`EqcUuN`,message:`You will receive ≈ {receive}`,values:{receive:w}})}):T?u(i,{width:172,height:16,"data-stridge-slot":s.disclaimerReceive}):null,u(a.span,{size:`xs`,leading:`normal`,color:`subdued`,"data-stridge-slot":s.disclaimerBody,...f.props(c.disclaimerBody),children:y.bodyOverride?y.bodyOverride:u(e,{id:`ReCJDz`,message:`You are now leaving for {provider}, a separate third-party platform. By proceeding, you acknowledge that you have read and agree to {provider}'s <0>Terms of Use</0> and <1>Privacy Policy</1>.`,values:{provider:b},components:{0:u(`a`,{href:S,...p,"data-stridge-slot":s.disclaimerLink,...f.props(c.disclaimerLink)}),1:u(`a`,{href:C,...p,"data-stridge-slot":s.disclaimerLink,...f.props(c.disclaimerLink)})}})}),y.bodyOverride?d(`div`,{...f.props(c.disclaimerLinks),children:[u(`a`,{href:S,...p,...f.props(c.disclaimerLink),children:u(a.span,{size:`xs`,fontWeight:`medium`,children:_({id:`PSGjEt`,message:`Terms of Use`})})}),u(`a`,{href:C,...p,...f.props(c.disclaimerLink),children:u(a.span,{size:`xs`,fontWeight:`medium`,children:_({id:`LcET2C`,message:`Privacy Policy`})})})]}):null,d(`div`,{...f.props(c.disclaimerCheckboxRow),children:[u(n,{id:v,checked:m,onCheckedChange:h,"data-stridge-slot":s.disclaimerCheckbox}),u(`label`,{htmlFor:v,"data-stridge-slot":s.disclaimerCheckboxLabel,...f.props(c.disclaimerCheckboxLabel),children:u(a.span,{size:`xs`,leading:`normal`,color:`subdued`,children:u(e,{id:`pJ3YlV`,message:`I understand that I'm purchasing crypto directly through a third-party provider and agree to the disclaimer.`})})})]})]})}export{m as OnrampConfirmDisclaimer};
@@ -0,0 +1,15 @@
1
+ import { OnrampConfirmHeaderProps } from "../types.js";
2
+ import * as _$react_jsx_runtime0 from "react/jsx-runtime";
3
+
4
+ //#region src/flows/deposit/widgets/onramp-confirm/compound/components/Header.d.ts
5
+ /**
6
+ * Header row for the onramp confirm screen. Renders a back affordance + "Cash" title in a
7
+ * start-aligned cluster, with the dialog close button as the trailing element. Mirrors the other
8
+ * back-bearing flow headers so they share the same chrome rhythm.
9
+ */
10
+ declare function OnrampConfirmHeader({
11
+ title,
12
+ onBack
13
+ }?: OnrampConfirmHeaderProps): _$react_jsx_runtime0.JSX.Element;
14
+ //#endregion
15
+ export { OnrampConfirmHeader };
@@ -0,0 +1 @@
1
+ "use client";import{Trans as e}from"../../../../../../shared/i18n/Trans.js";import{useLingui as t}from"../../../../../../shared/i18n/useLingui.js";import"../../../../../../i18n/index.js";import{ChevronLeftIcon as n}from"../../../../../../shared/icons/ChevronLeftIcon.js";import"../../../../../../icons/index.js";import{IconButton as r}from"../../../../../../shared/ui/IconButton/IconButton.js";import{Dialog as i}from"../../../../../../shared/ui/Dialog/Dialog.js";import"../../../../../../shared/ui/Dialog/index.js";import{Card as a}from"../../../../../../shared/ui/Card/Card.js";import{text as o}from"../../../../../../shared/ui/Text/Text.js";import"../../../../../../ui/index.js";import{useOnrampConfirmContext as s}from"../context.js";import{ONRAMP_CONFIRM_SLOTS as c}from"../OnrampConfirm.slots.js";import{styles as l}from"../OnrampConfirm.styles.js";import{jsx as u,jsxs as d}from"react/jsx-runtime";import*as f from"@stylexjs/stylex";function p({title:p,onBack:m}={}){let h=s(`OnrampConfirm.Header`),{_:g}=t(),_=m===null?void 0:m??h.onBack,v=p??u(e,{id:`_rHUhS`,message:`Cash`});return d(a.Header,{"data-stridge-slot":c.header,...f.props(l.header),children:[d(`div`,{...f.props(l.headerLeft),children:[typeof _==`function`?u(r,{"aria-label":g({id:`iH8pgl`,message:`Back`}),onClick:_,children:u(n,{"aria-hidden":!0,...f.props(l.backIcon)})}):null,u(o.span,{size:`base`,fontWeight:`semibold`,leading:`tight`,tracking:`tight`,...f.props(l.headerTitle),children:v})]}),u(i.CloseButton,{})]})}export{p as OnrampConfirmHeader};
@@ -0,0 +1,15 @@
1
+ import { OnrampConfirmSummaryProps } from "../types.js";
2
+ import * as _$react_jsx_runtime0 from "react/jsx-runtime";
3
+
4
+ //#region src/flows/deposit/widgets/onramp-confirm/compound/components/Summary.d.ts
5
+ /**
6
+ * Read-only summary card sitting above the CTA. Renders three static rows (Top up on / You receive
7
+ * / Total) followed by a shared {@link DisclosureRow} "More details" disclosure whose panel reveals
8
+ * the quote breakdown rows. Reads the pre-formatted summary from context so the part stays
9
+ * render-only.
10
+ */
11
+ declare function OnrampConfirmSummary({
12
+ brandName: brandNameOverride
13
+ }?: OnrampConfirmSummaryProps): _$react_jsx_runtime0.JSX.Element;
14
+ //#endregion
15
+ export { OnrampConfirmSummary };
@@ -0,0 +1 @@
1
+ "use client";import{Trans as e}from"../../../../../../shared/i18n/Trans.js";import"../../../../../../i18n/index.js";import{Card as t}from"../../../../../../shared/ui/Card/Card.js";import{DisclosureRow as n}from"../../../../../../shared/ui/DisclosureRow/DisclosureRow.js";import{Skeleton as r}from"../../../../../../shared/ui/Skeleton/Skeleton.js";import{text as i}from"../../../../../../shared/ui/Text/Text.js";import"../../../../../../ui/index.js";import{useOnrampConfirmContext as a}from"../context.js";import{ONRAMP_CONFIRM_SLOTS as o}from"../OnrampConfirm.slots.js";import{styles as s}from"../OnrampConfirm.styles.js";import{Fragment as c,jsx as l,jsxs as u}from"react/jsx-runtime";import*as d from"@stylexjs/stylex";function f({brandName:i}={}){let{summary:f,brandName:h,phase:g}=a(`OnrampConfirm.Summary`),_=i??h,v=g.kind===`loading`;return u(t,{variant:`default`,"data-stridge-slot":o.summary,...d.props(s.summary),children:[l(p,{label:l(e,{id:`HalPBQ`,message:`Top up on`}),value:_??(v?l(r,{width:104,height:14}):``)}),l(p,{label:l(e,{id:`88cUW-`,message:`You receive`}),value:f?`${f.receive} ${f.receiveSymbol}`:v?l(r,{width:84,height:14}):``}),l(p,{label:l(e,{id:`72c5Qo`,message:`Total`}),value:f?.totalUsd??(v?l(r,{width:68,height:14}):``)}),l(n,{label:l(e,{id:`LEbOpR`,message:`More details`}),triggerProps:{"data-stridge-slot":o.breakdownTrigger},children:u(`div`,{"data-stridge-slot":o.summaryBreakdown,...d.props(s.breakdownPanel),children:[l(m,{label:l(e,{id:`hehnjM`,message:`Amount`}),value:f?.amountUsd??(v?l(r,{width:64,height:12}):``)}),l(m,{label:l(e,{id:`vepIdX`,message:`Crypto price`}),value:f?l(e,{id:`eUbBqz`,message:`1 {0} = {1}`,values:{0:f.receiveSymbol,1:f.rate}}):v?l(r,{width:96,height:12}):``}),f?.processingFee?l(m,{label:l(e,{id:`QFwptY`,message:`Processing fee`}),value:u(c,{children:[`− `,f.processingFee]})}):null,f?.networkFee?l(m,{label:l(e,{id:`y62Dys`,message:`Network fee`}),value:u(c,{children:[`− `,f.networkFee]})}):null]})})]})}function p({label:e,value:t}){return u(`div`,{"data-stridge-slot":o.summaryStaticRow,...d.props(s.summaryStaticRow),children:[l(i.span,{size:`sm`,leading:`tight`,"data-stridge-slot":o.summaryRowLabel,...d.props(s.summaryLabel),children:e}),l(i.span,{size:`sm`,leading:`tight`,"data-stridge-slot":o.summaryRowValue,...d.props(s.summaryValue),children:t})]})}function m({label:e,value:t}){return u(`div`,{"data-stridge-slot":o.breakdownRow,...d.props(s.breakdownRow),children:[l(i.span,{size:`xs`,leading:`tight`,"data-stridge-slot":o.breakdownRowLabel,...d.props(s.breakdownLabel),children:e}),l(i.span,{size:`xs`,leading:`tight`,"data-stridge-slot":o.breakdownRowValue,...d.props(s.breakdownValue),children:t})]})}export{f as OnrampConfirmSummary};
@@ -0,0 +1,46 @@
1
+ import { ReactNode } from "react";
2
+
3
+ //#region src/flows/deposit/widgets/onramp-confirm/compound/context.d.ts
4
+ /**
5
+ * Pre-formatted summary rows projected from the driver's `onrampQuote` entity. The orchestrated
6
+ * wrapper formats once and hands the strings to the compound so the Summary part stays render-only.
7
+ */
8
+ interface OnrampConfirmSummary {
9
+ /** What the user pays end-to-end (the FSM `amount`). Renders in the static "Total" row. */
10
+ totalUsd: ReactNode;
11
+ /** Crypto the user receives after fees. Renders in the static "You receive" row + breakdown. */
12
+ receive: string;
13
+ /** Receive asset symbol (e.g. `"USDC"`). */
14
+ receiveSymbol: string;
15
+ /** Principal that converts to crypto. Renders in the breakdown "Amount" row. */
16
+ amountUsd: ReactNode;
17
+ /** Crypto-per-fiat rate string. Renders in the breakdown "Crypto price" row. */
18
+ rate: string;
19
+ /** Processing fee value (unprefixed — the row prepends the `−`). */
20
+ processingFee?: ReactNode;
21
+ /** Network fee value (unprefixed — the row prepends the `−`). */
22
+ networkFee?: ReactNode;
23
+ }
24
+ /**
25
+ * Third-party-consent content for the pre-redirect disclaimer gate. `providerName` + `links` are
26
+ * driver-supplied (the single sanctioned surface that names the integrated provider); the kit
27
+ * renders its own translated acknowledgement copy around them. `bodyOverride` substitutes exact
28
+ * mandated legal wording.
29
+ */
30
+ interface OnrampConfirmDisclaimer {
31
+ /** Driver-supplied provider name interpolated into the kit's acknowledgement copy. */
32
+ providerName: string;
33
+ /** Legal links rendered as inline anchors (new tab, `rel="noopener noreferrer"`). */
34
+ links: ReadonlyArray<{
35
+ kind: "terms" | "privacy" | "support";
36
+ url: string;
37
+ }>;
38
+ /** Optional driver-supplied provider logo — rendered through `Image`; else a neutral monogram. */
39
+ logoUrl?: string;
40
+ /** When set, rendered verbatim instead of the kit's translated body template (still with checkbox + links). */
41
+ bodyOverride?: string;
42
+ /** Pre-formatted estimated delivery time (`onrampMethods.processingTime.formatted`), shown as "Up to …". */
43
+ deliveryTime?: string;
44
+ }
45
+ //#endregion
46
+ export { OnrampConfirmDisclaimer, OnrampConfirmSummary };
@@ -1 +1 @@
1
- "use client";import{createContext as e,use as t}from"react";const n=e(null);function r(e){let r=t(n);if(!r)throw Error(`${e} must be rendered inside <CashConfirm>.`);return r}export{n as CashConfirmContext,r as useCashConfirmContext};
1
+ "use client";import{createContext as e,use as t}from"react";const n=e(null);function r(e){let r=t(n);if(!r)throw Error(`${e} must be rendered inside <OnrampConfirm>.`);return r}export{n as OnrampConfirmContext,r as useOnrampConfirmContext};
@@ -0,0 +1,4 @@
1
+ import { OnrampConfirmDisclaimer, OnrampConfirmSummary } from "./context.js";
2
+ import { OnrampConfirmBodyProps, OnrampConfirmDialogProps, OnrampConfirmHeaderProps, OnrampConfirmProps, OnrampConfirmSummaryProps } from "./types.js";
3
+ import { OnrampConfirm } from "./OnrampConfirm.js";
4
+ import { ONRAMP_CONFIRM_SLOTS, OnrampConfirmSlot } from "./OnrampConfirm.slots.js";
@@ -0,0 +1 @@
1
+ import"./OnrampConfirm.slots.js";import"./OnrampConfirm.js";
@@ -0,0 +1,67 @@
1
+ import { OnrampConfirmPhase } from "../../../orchestrator/types.js";
2
+ import { DialogShellControls } from "../../../../../shared/dialog/DialogShell.js";
3
+ import { OnrampConfirmDisclaimer, OnrampConfirmSummary } from "./context.js";
4
+ import { ComponentProps, ReactNode } from "react";
5
+
6
+ //#region src/flows/deposit/widgets/onramp-confirm/compound/types.d.ts
7
+ /**
8
+ * Public props accepted by the {@link OnrampConfirm} compound root. Required FSM-derived data on
9
+ * the root + optional callbacks the orchestrated wrapper supplies. Standalone compositions feed
10
+ * these directly.
11
+ */
12
+ interface OnrampConfirmProps extends ComponentProps<"div"> {
13
+ /** Onramp-confirm phase. Drives the CTA's loading / creating / failed chrome. */
14
+ phase: OnrampConfirmPhase;
15
+ /** USD amount the user is paying. */
16
+ amount: number;
17
+ /** Pre-formatted summary rows from the resolved quote. Absent while the quote is loading. */
18
+ summary?: OnrampConfirmSummary;
19
+ /** Brand name for the summary card's "Top up on" row. */
20
+ brandName?: string;
21
+ /** Inline failure reason shown above the CTA when `phase.kind === "failed"`. */
22
+ failureReason?: ReactNode;
23
+ /** Back-affordance handler. When omitted, the header renders without the back button. */
24
+ onBack?: () => void;
25
+ /** CTA handler — promotes the FSM into `creating` (open checkout). */
26
+ onConfirm?: () => void;
27
+ /**
28
+ * Pre-redirect third-party-consent content. When present, the disclaimer block renders above the
29
+ * CTA and the CTA is gated on an acknowledgement checkbox.
30
+ */
31
+ disclaimer?: OnrampConfirmDisclaimer;
32
+ /**
33
+ * Optional custom composition. When omitted, the canonical default composition renders —
34
+ * `<Header />` + `<Body>` (Summary + Disclaimer + CTA). Pass children to interleave your own elements.
35
+ */
36
+ children?: ReactNode;
37
+ }
38
+ /** Props for {@link OnrampConfirm.Header}. */
39
+ interface OnrampConfirmHeaderProps {
40
+ /** Override the default "Cash" title. */
41
+ title?: ReactNode;
42
+ /**
43
+ * Override the context's `onBack`. Pass `null` explicitly to suppress the back affordance even
44
+ * when the context provides one.
45
+ */
46
+ onBack?: (() => void) | null;
47
+ }
48
+ /** Props for {@link OnrampConfirm.Body}. */
49
+ interface OnrampConfirmBodyProps extends ComponentProps<"div"> {
50
+ /**
51
+ * Optional custom composition. When omitted, Body auto-renders `<Summary />` + the CTA. Pass
52
+ * children to override.
53
+ */
54
+ children?: ReactNode;
55
+ }
56
+ /** Props for {@link OnrampConfirm.Summary}. */
57
+ interface OnrampConfirmSummaryProps {
58
+ /** Override the context's `brandName` for the "Top up on" row value. */
59
+ brandName?: string;
60
+ }
61
+ /**
62
+ * Props for `<OnrampConfirm.Dialog>` — the dialog form of the OnrampConfirm widget. Combines the
63
+ * widget root props with the shared dialog shell controls.
64
+ */
65
+ type OnrampConfirmDialogProps = OnrampConfirmProps & DialogShellControls;
66
+ //#endregion
67
+ export { OnrampConfirmBodyProps, OnrampConfirmDialogProps, OnrampConfirmHeaderProps, OnrampConfirmProps, OnrampConfirmSummaryProps };
@@ -0,0 +1 @@
1
+ import { OnrampConfirm } from "./OnrampConfirm.js";
@@ -0,0 +1 @@
1
+ import"./OnrampConfirm.js";
@@ -0,0 +1,39 @@
1
+ import { DialogShellControls } from "../../../../shared/dialog/DialogShell.js";
2
+ import { OnrampCurrencyPickerBody } from "./compound/components/Body.js";
3
+ import { OnrampCurrencyPickerRow } from "./compound/components/CurrencyRow.js";
4
+ import { OnrampCurrencyPickerHeader } from "./compound/components/Header.js";
5
+ import { OnrampCurrencyPickerSearch } from "./compound/components/Search.js";
6
+ import { ComponentProps, ReactNode } from "react";
7
+ import * as _$react_jsx_runtime0 from "react/jsx-runtime";
8
+
9
+ //#region src/flows/deposit/widgets/onramp-currency-picker/OnrampCurrencyPicker.d.ts
10
+ interface OnrampCurrencyPickerOwnProps {
11
+ children?: ReactNode;
12
+ }
13
+ type OnrampCurrencyPickerProps = ComponentProps<"div"> & OnrampCurrencyPickerOwnProps;
14
+ /**
15
+ * Orchestrated fiat-currency picker — wires the `onrampCurrencies` entity + the deposit FSM into the
16
+ * `OnrampCurrencyPicker` compound. Renders only on the `onrampCurrencyPicker` state. Selecting a
17
+ * currency persists it to kit storage, dispatches `selectOnrampCurrency` (returns to amount entry +
18
+ * re-quotes), and the back chevron returns without changing the currency.
19
+ */
20
+ declare function OnrampCurrencyPicker(props: OnrampCurrencyPickerProps): _$react_jsx_runtime0.JSX.Element | null;
21
+ declare function OnrampCurrencyPickerDialog({
22
+ open,
23
+ defaultOpen,
24
+ onOpenChange,
25
+ trigger,
26
+ children,
27
+ ...rest
28
+ }: OnrampCurrencyPickerProps & DialogShellControls): _$react_jsx_runtime0.JSX.Element;
29
+ declare namespace OnrampCurrencyPicker {
30
+ type Props = OnrampCurrencyPickerProps;
31
+ type DialogProps = OnrampCurrencyPickerProps & DialogShellControls;
32
+ const Dialog: typeof OnrampCurrencyPickerDialog;
33
+ const Header: typeof OnrampCurrencyPickerHeader;
34
+ const Search: typeof OnrampCurrencyPickerSearch;
35
+ const Body: typeof OnrampCurrencyPickerBody;
36
+ const Row: typeof OnrampCurrencyPickerRow;
37
+ }
38
+ //#endregion
39
+ export { OnrampCurrencyPicker };
@@ -0,0 +1 @@
1
+ "use client";import{useOptionalKitStorage as e}from"../../../../storage/context.js";import"../../../../storage/index.js";import{useDepositSnapshot as t}from"../../driver/context.js";import{useDepositActions as n,useDepositEffectiveState as r}from"../../orchestrator/controller.js";import{LAST_DEPOSIT_CURRENCY_KEY as i}from"../../shared/onramp.js";import{DialogShell as a}from"../../../../shared/dialog/DialogShell.js";import{OnrampCurrencyPicker as o}from"./compound/OnrampCurrencyPicker.js";import"./compound/index.js";import{useCallback as s,useMemo as c}from"react";import{jsx as l}from"react/jsx-runtime";const u=[];function d(a){let{children:d,...f}=a,p=t(),m=r(),{back:h,selectOnrampCurrency:g}=n(),_=e(),v=p.onrampCurrencies,y=v?.status===`ready`||v?.status===`stale`,b=!v||v.status===`idle`||v.status===`loading`,x=c(()=>y?v.payload.currencies.map(e=>({code:e.code,name:e.name,symbol:e.symbol,...e.popular===void 0?{}:{popular:e.popular},...e.iconUrl===void 0?{}:{iconUrl:e.iconUrl}})):u,[y,v]),S=s(e=>{_?.set(i,e),g(e)},[_,g]);if(m.name!==`onrampCurrencyPicker`)return null;let C=m.ctx.currency;return l(o,{...f,currencies:x,selectedCode:C,onSelect:S,onBack:h,loading:b,children:d})}function f({open:e,defaultOpen:t,onOpenChange:n,trigger:r,children:i,...o}){return l(a,{...e===void 0?{}:{open:e},...t===void 0?{}:{defaultOpen:t},...n?{onOpenChange:n}:{},...r===void 0?{}:{trigger:r},children:l(d,{...o,children:i})})}(function(e){e.Dialog=f,e.Header=o.Header,e.Search=o.Search,e.Body=o.Body,e.Row=o.Row})(d||={});export{d as OnrampCurrencyPicker};
@@ -0,0 +1,37 @@
1
+ import { OnrampCurrencyPickerBody } from "./components/Body.js";
2
+ import { OnrampCurrencyPickerBodyProps, OnrampCurrencyPickerDialogProps, OnrampCurrencyPickerHeaderProps, OnrampCurrencyPickerProps, OnrampCurrencyPickerRowProps } from "./types.js";
3
+ import { OnrampCurrencyPickerRow } from "./components/CurrencyRow.js";
4
+ import { OnrampCurrencyPickerHeader } from "./components/Header.js";
5
+ import { OnrampCurrencyPickerSearch } from "./components/Search.js";
6
+ import * as _$react_jsx_runtime0 from "react/jsx-runtime";
7
+
8
+ //#region src/flows/deposit/widgets/onramp-currency-picker/compound/OnrampCurrencyPicker.d.ts
9
+ /**
10
+ * Searchable fiat-currency picker — the buy-with-card currency sub-screen. Mirrors the asset-picker
11
+ * compound: a `Frame`-wrapped, slotted surface (`Header` → `Search` → `Body`) driven by a single
12
+ * context. The Root owns the live search `query`; the Body derives its Popular / All sections and
13
+ * filtering from it. Vendor-neutral by construction — rows render the kit-owned `CurrencyGlyph`.
14
+ */
15
+ declare function OnrampCurrencyPicker(props: OnrampCurrencyPickerProps): _$react_jsx_runtime0.JSX.Element;
16
+ declare function OnrampCurrencyPickerDialog({
17
+ open,
18
+ defaultOpen,
19
+ onOpenChange,
20
+ trigger,
21
+ children,
22
+ ...rootProps
23
+ }: OnrampCurrencyPickerDialogProps): _$react_jsx_runtime0.JSX.Element;
24
+ declare namespace OnrampCurrencyPicker {
25
+ type Props = OnrampCurrencyPickerProps;
26
+ type HeaderProps = OnrampCurrencyPickerHeaderProps;
27
+ type BodyProps = OnrampCurrencyPickerBodyProps;
28
+ type RowProps = OnrampCurrencyPickerRowProps;
29
+ type DialogProps = OnrampCurrencyPickerDialogProps;
30
+ const Header: typeof OnrampCurrencyPickerHeader;
31
+ const Search: typeof OnrampCurrencyPickerSearch;
32
+ const Body: typeof OnrampCurrencyPickerBody;
33
+ const Row: typeof OnrampCurrencyPickerRow;
34
+ const Dialog: typeof OnrampCurrencyPickerDialog;
35
+ }
36
+ //#endregion
37
+ export { OnrampCurrencyPicker };
@@ -0,0 +1 @@
1
+ "use client";import{DialogShell as e}from"../../../../../shared/dialog/DialogShell.js";import{Tooltip as t}from"../../../../../shared/ui/Tooltip/Tooltip.js";import"../../../../../shared/ui/Tooltip/index.js";import{Frame as n}from"../../../../../shared/dialog/Frame.js";import{OnrampCurrencyPickerContext as r}from"./context.js";import{ONRAMP_CURRENCY_PICKER_SLOTS as i}from"./OnrampCurrencyPicker.slots.js";import{styles as a}from"./OnrampCurrencyPicker.styles.js";import{OnrampCurrencyPickerRow as o}from"./components/CurrencyRow.js";import{OnrampCurrencyPickerBody as s}from"./components/Body.js";import{OnrampCurrencyPickerHeader as c}from"./components/Header.js";import{OnrampCurrencyPickerSearch as l}from"./components/Search.js";import{useMemo as u,useState as d}from"react";import{Fragment as f,jsx as p,jsxs as m}from"react/jsx-runtime";import*as h from"@stylexjs/stylex";const g=[],_=m(f,{children:[p(c,{}),p(l,{}),p(s,{})]});function v(e){let{currencies:o=g,selectedCode:s,onSelect:c,onBack:l,headerTitle:f,loading:m=!1,children:v}=e,[y,b]=d(``);return p(r,{value:u(()=>({currencies:o,loading:m,query:y,setQuery:b,...s===void 0?{}:{selectedCode:s},...c?{onSelect:c}:{},...l?{onBack:l}:{},...f===void 0?{}:{headerTitle:f}}),[o,m,y,s,c,l,f]),children:p(t.Provider,{children:p(n,{"data-stridge-slot":i.root,...h.props(a.root),children:v??_})})})}function y({open:t,defaultOpen:n,onOpenChange:r,trigger:i,children:a,...o}){return p(e,{...t===void 0?{}:{open:t},...n===void 0?{}:{defaultOpen:n},...r?{onOpenChange:r}:{},...i===void 0?{}:{trigger:i},children:p(v,{...o,children:a})})}(function(e){e.Header=c,e.Search=l,e.Body=s,e.Row=o,e.Dialog=y})(v||={});export{v as OnrampCurrencyPicker};
@@ -0,0 +1,17 @@
1
+ //#region src/flows/deposit/widgets/onramp-currency-picker/compound/OnrampCurrencyPicker.slots.d.ts
2
+ declare const ONRAMP_CURRENCY_PICKER_SLOTS: {
3
+ readonly root: "onramp-currency-picker";
4
+ readonly header: "onramp-currency-picker-header";
5
+ readonly search: "onramp-currency-picker-search";
6
+ readonly body: "onramp-currency-picker-body";
7
+ readonly list: "onramp-currency-picker-list";
8
+ readonly row: "onramp-currency-picker-row";
9
+ readonly rowGlyph: "onramp-currency-picker-row-glyph";
10
+ readonly rowLabel: "onramp-currency-picker-row-label";
11
+ readonly rowCode: "onramp-currency-picker-row-code";
12
+ readonly rowCheck: "onramp-currency-picker-row-check";
13
+ readonly empty: "onramp-currency-picker-empty";
14
+ };
15
+ type OnrampCurrencyPickerSlot = (typeof ONRAMP_CURRENCY_PICKER_SLOTS)[keyof typeof ONRAMP_CURRENCY_PICKER_SLOTS];
16
+ //#endregion
17
+ export { ONRAMP_CURRENCY_PICKER_SLOTS, OnrampCurrencyPickerSlot };
@@ -0,0 +1 @@
1
+ const e={root:`onramp-currency-picker`,header:`onramp-currency-picker-header`,search:`onramp-currency-picker-search`,body:`onramp-currency-picker-body`,list:`onramp-currency-picker-list`,row:`onramp-currency-picker-row`,rowGlyph:`onramp-currency-picker-row-glyph`,rowLabel:`onramp-currency-picker-row-label`,rowCode:`onramp-currency-picker-row-code`,rowCheck:`onramp-currency-picker-row-check`,empty:`onramp-currency-picker-empty`};export{e as ONRAMP_CURRENCY_PICKER_SLOTS};
@@ -0,0 +1 @@
1
+ const e={root:{"OnrampCurrencyPicker__styles.root":`OnrampCurrencyPicker__styles.root`,"position-kVAEAm":`x1n2onr6`,"width-kzqmXN":`xh8yej3`,"maxWidth-ks0D6T":`x17fpy1y`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-currency-picker/compound/OnrampCurrencyPicker.styles.ts:4`},header:{"OnrampCurrencyPicker__styles.header":`OnrampCurrencyPicker__styles.header`,"gap-kOIVth":`x1v2ro7d`,"paddingTop-kLKAdn":`xyamay9`,"paddingInlineEnd-kwRFfy":`x1x5flf6`,"paddingBottom-kGO01o":`x1l90r2v`,"paddingInlineStart-kZCmMZ":`xf7dkkf`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-currency-picker/compound/OnrampCurrencyPicker.styles.ts:9`},headerTitle:{"OnrampCurrencyPicker__styles.headerTitle":`OnrampCurrencyPicker__styles.headerTitle`,"flexGrow-kzQI83":`x1iyjqo2`,"margin-kogj98":`x1ghz6dp`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-currency-picker/compound/OnrampCurrencyPicker.styles.ts:16`},headerTrailing:{"OnrampCurrencyPicker__styles.headerTrailing":`OnrampCurrencyPicker__styles.headerTrailing`,"display-k1xSpc":`x78zum5`,"alignItems-kGNEyG":`x6s0dn4`,"gap-kOIVth":`x1a6yh9e`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-currency-picker/compound/OnrampCurrencyPicker.styles.ts:20`},backIcon:{"OnrampCurrencyPicker__styles.backIcon":`OnrampCurrencyPicker__styles.backIcon`,"width-kzqmXN":`x6jxa94`,"height-kZKoxP":`x1v9usgg`,"flexShrink-kmuXW":`x2lah0s`,"color-kMwMTN":`xzn0pkc`,"strokeWidth-kfJifR":`xhxwl1`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-currency-picker/compound/OnrampCurrencyPicker.styles.ts:25`},search:{"OnrampCurrencyPicker__styles.search":`OnrampCurrencyPicker__styles.search`,"paddingTop-kLKAdn":`xyinxu5`,"paddingInlineEnd-kwRFfy":`x1x5flf6`,"paddingInlineStart-kZCmMZ":`xwn43p0`,"paddingBottom-kGO01o":`x1a8lsjc`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-currency-picker/compound/OnrampCurrencyPicker.styles.ts:32`},searchIcon:{"OnrampCurrencyPicker__styles.searchIcon":`OnrampCurrencyPicker__styles.searchIcon`,"width-kzqmXN":`x1kky2od`,"height-kZKoxP":`xlup9mm`,"color-kMwMTN":`xi96bwj`,"strokeWidth-kfJifR":`xhxwl1`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-currency-picker/compound/OnrampCurrencyPicker.styles.ts:38`},searchInput:{"OnrampCurrencyPicker__styles.searchInput":`OnrampCurrencyPicker__styles.searchInput`,"::-webkit-search-cancel-button_display-k9l4BL":`x1hcrkkg`,"::-webkit-search-cancel-button_appearance-kONv6d":`x1ad04t7`,"::-webkit-search-decoration_display-kIPbS0":`xzwh6sb`,"::-webkit-search-decoration_appearance-kWSwxL":`x1glnyev`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-currency-picker/compound/OnrampCurrencyPicker.styles.ts:45`},clearIcon:{"OnrampCurrencyPicker__styles.clearIcon":`OnrampCurrencyPicker__styles.clearIcon`,"width-kzqmXN":`x6jxa94`,"height-kZKoxP":`x1v9usgg`,"color-kMwMTN":`xi96bwj`,"strokeWidth-kfJifR":`xhxwl1`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-currency-picker/compound/OnrampCurrencyPicker.styles.ts:55`},body:{"OnrampCurrencyPicker__styles.body":`OnrampCurrencyPicker__styles.body`,"display-k1xSpc":`x78zum5`,"flexDirection-kXwgrk":`xdt5ytf`,"paddingTop-kLKAdn":`x1y1aw1k`,"paddingInlineEnd-kwRFfy":`x1x5flf6`,"paddingBottom-kGO01o":`x1hhzuzn`,"paddingInlineStart-kZCmMZ":`xwn43p0`,"maxHeight-kskxy":`x2z3yb8`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-currency-picker/compound/OnrampCurrencyPicker.styles.ts:61`},list:{"OnrampCurrencyPicker__styles.list":`OnrampCurrencyPicker__styles.list`,"display-k1xSpc":`x78zum5`,"flexDirection-kXwgrk":`xdt5ytf`,"gap-kOIVth":`x167g77z`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-currency-picker/compound/OnrampCurrencyPicker.styles.ts:71`},row:{"OnrampCurrencyPicker__styles.row":`OnrampCurrencyPicker__styles.row`,"gap-kOIVth":`x1v2ro7d`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-currency-picker/compound/OnrampCurrencyPicker.styles.ts:76`},rowText:{"OnrampCurrencyPicker__styles.rowText":`OnrampCurrencyPicker__styles.rowText`,"display-k1xSpc":`x78zum5`,"flexDirection-kXwgrk":`xdt5ytf`,"flexBasis-kCS8Yb":`x1r8uery`,"flexGrow-kzQI83":`x1iyjqo2`,"flexShrink-kmuXW":`xs83m0k`,"minWidth-k7Eaqz":`xeuugli`,"gap-kOIVth":`x195vfkc`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-currency-picker/compound/OnrampCurrencyPicker.styles.ts:79`},rowCheck:{"OnrampCurrencyPicker__styles.rowCheck":`OnrampCurrencyPicker__styles.rowCheck`,"width-kzqmXN":`x1xp8n7a`,"height-kZKoxP":`xmix8c7`,"flexShrink-kmuXW":`x2lah0s`,"color-kMwMTN":`x1me39qh`,"strokeWidth-kfJifR":`xvlca1e`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-currency-picker/compound/OnrampCurrencyPicker.styles.ts:88`},empty:{"OnrampCurrencyPicker__styles.empty":`OnrampCurrencyPicker__styles.empty`,"display-k1xSpc":`x78zum5`,"flexDirection-kXwgrk":`xdt5ytf`,"alignItems-kGNEyG":`x6s0dn4`,"justifyContent-kjj79g":`xl56j7k`,"gap-kOIVth":`x1a6yh9e`,"paddingTop-kLKAdn":`x5gat22`,"paddingBottom-kGO01o":`x1vc98yp`,"paddingInlineStart-kZCmMZ":`xmg6hw8`,"paddingInlineEnd-kwRFfy":`x1hvdk87`,"textAlign-k9WMMc":`x2b8uid`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-currency-picker/compound/OnrampCurrencyPicker.styles.ts:95`},skeletonRow:{"OnrampCurrencyPicker__styles.skeletonRow":`OnrampCurrencyPicker__styles.skeletonRow`,"height-kZKoxP":`xdd8jsf`,"borderRadius-kaIpWk":`x4pepcl`,$$css:`@stridge/kit:src/flows/deposit/widgets/onramp-currency-picker/compound/OnrampCurrencyPicker.styles.ts:107`}};export{e as styles};
@@ -0,0 +1,6 @@
1
+ import * as _$react_jsx_runtime0 from "react/jsx-runtime";
2
+
3
+ //#region src/flows/deposit/widgets/onramp-currency-picker/compound/components/Body.d.ts
4
+ declare function OnrampCurrencyPickerBody(): _$react_jsx_runtime0.JSX.Element;
5
+ //#endregion
6
+ export { OnrampCurrencyPickerBody };
@@ -0,0 +1 @@
1
+ "use client";import{useLingui as e}from"../../../../../../shared/i18n/useLingui.js";import"../../../../../../i18n/index.js";import{Card as t}from"../../../../../../shared/ui/Card/Card.js";import{SelectableTileGroup as n}from"../../../../../../shared/ui/SelectableTile/SelectableTileGroup.js";import"../../../../../../shared/ui/SelectableTile/index.js";import{Skeleton as r}from"../../../../../../shared/ui/Skeleton/Skeleton.js";import"../../../../../../shared/ui/Skeleton/index.js";import"../../../../../../ui/index.js";import{currencyMatchesQuery as i,useOnrampCurrencyPickerContext as a}from"../context.js";import{ONRAMP_CURRENCY_PICKER_SLOTS as o}from"../OnrampCurrencyPicker.slots.js";import{styles as s}from"../OnrampCurrencyPicker.styles.js";import{OnrampCurrencyPickerRow as c}from"./CurrencyRow.js";import{OnrampCurrencyPickerEmpty as l}from"./Empty.js";import{useMemo as u}from"react";import{jsx as d}from"react/jsx-runtime";import*as f from"@stylexjs/stylex";const p=[0,1,2,3,4,5];function m(){let m=a(`OnrampCurrencyPicker.Body`),{_:h}=e(),g=u(()=>{let e=m.currencies.filter(e=>i(e,m.query)),t=e.filter(e=>e.popular),n=e.filter(e=>!e.popular).sort((e,t)=>e.name.localeCompare(t.name));return[...t,...n]},[m.currencies,m.query]);return m.loading?d(t.Body,{"data-stridge-slot":o.body,...f.props(s.body),children:p.map(e=>d(r,{...f.props(s.skeletonRow)},e))}):d(t.Body,{"data-stridge-slot":o.body,...f.props(s.body),children:g.length===0?d(l,{}):d(n,{"aria-label":h({id:`W9narx`,message:`Currencies`}),value:m.selectedCode?[m.selectedCode]:[],onValueChange:e=>{let t=e[0]??m.selectedCode;t&&m.onSelect&&m.onSelect(t)},"data-stridge-slot":o.list,...f.props(s.list),children:g.map(e=>d(c,{...e},e.code))})})}export{m as OnrampCurrencyPickerBody};
@@ -0,0 +1,12 @@
1
+ import { OnrampCurrencyPickerRowProps } from "../types.js";
2
+ import * as _$react_jsx_runtime0 from "react/jsx-runtime";
3
+
4
+ //#region src/flows/deposit/widgets/onramp-currency-picker/compound/components/CurrencyRow.d.ts
5
+ declare function OnrampCurrencyPickerRow({
6
+ code,
7
+ name,
8
+ symbol,
9
+ iconUrl
10
+ }: OnrampCurrencyPickerRowProps): _$react_jsx_runtime0.JSX.Element;
11
+ //#endregion
12
+ export { OnrampCurrencyPickerRow };
@@ -0,0 +1 @@
1
+ "use client";import{CheckIcon as e}from"../../../../../../shared/icons/CheckIcon.js";import"../../../../../../icons/index.js";import{CurrencyGlyph as t}from"../../../../../../shared/ui/CurrencyGlyph/CurrencyGlyph.js";import"../../../../../../shared/ui/CurrencyGlyph/index.js";import{SelectableTile as n}from"../../../../../../shared/ui/SelectableTile/SelectableTile.js";import"../../../../../../shared/ui/SelectableTile/index.js";import{text as r}from"../../../../../../shared/ui/Text/Text.js";import"../../../../../../ui/index.js";import{useOnrampCurrencyPickerContext as i}from"../context.js";import{ONRAMP_CURRENCY_PICKER_SLOTS as a}from"../OnrampCurrencyPicker.slots.js";import{styles as o}from"../OnrampCurrencyPicker.styles.js";import{jsx as s,jsxs as c}from"react/jsx-runtime";import*as l from"@stylexjs/stylex";function u({code:u,name:d,symbol:f,iconUrl:p}){let m=i(`OnrampCurrencyPicker.Row`).selectedCode===u;return c(n,{shape:`card`,value:u,selected:m,"aria-label":`${d} (${u})`,"data-currency-code":u,"data-stridge-slot":a.row,...l.props(o.row),children:[s(t,{code:u,symbol:f,size:36,...p===void 0?{}:{iconUrl:p},"data-stridge-slot":a.rowGlyph}),c(`span`,{...l.props(o.rowText),children:[s(r.span,{size:`callout`,fontWeight:`semibold`,leading:`tight`,tracking:`tight`,truncate:!0,"data-stridge-slot":a.rowLabel,children:d}),s(r.span,{size:`xs`,fontWeight:`medium`,leading:`tight`,color:`subdued`,truncate:!0,"data-stridge-slot":a.rowCode,children:u})]}),m?s(e,{"aria-hidden":!0,"data-stridge-slot":a.rowCheck,...l.props(o.rowCheck)}):null]})}export{u as OnrampCurrencyPickerRow};
@@ -0,0 +1 @@
1
+ "use client";import{Trans as e}from"../../../../../../shared/i18n/Trans.js";import"../../../../../../i18n/index.js";import{SearchIcon as t}from"../../../../../../shared/icons/SearchIcon.js";import"../../../../../../icons/index.js";import{text as n}from"../../../../../../shared/ui/Text/Text.js";import"../../../../../../ui/index.js";import{useOnrampCurrencyPickerContext as r}from"../context.js";import{ONRAMP_CURRENCY_PICKER_SLOTS as i}from"../OnrampCurrencyPicker.slots.js";import{styles as a}from"../OnrampCurrencyPicker.styles.js";import{jsx as o,jsxs as s}from"react/jsx-runtime";import*as c from"@stylexjs/stylex";function l(){let l=r(`OnrampCurrencyPicker.Empty`);return s(`div`,{"data-stridge-slot":i.empty,...c.props(a.empty),children:[o(t,{"aria-hidden":!0,...c.props(a.searchIcon)}),o(n.span,{size:`sm`,fontWeight:`medium`,color:`subdued`,children:o(e,{id:`RO6we5`,message:`No currencies match “{0}”`,values:{0:l.query}})})]})}export{l as OnrampCurrencyPickerEmpty};
@@ -0,0 +1,10 @@
1
+ import { OnrampCurrencyPickerHeaderProps } from "../types.js";
2
+ import * as _$react_jsx_runtime0 from "react/jsx-runtime";
3
+
4
+ //#region src/flows/deposit/widgets/onramp-currency-picker/compound/components/Header.d.ts
5
+ declare function OnrampCurrencyPickerHeader({
6
+ title,
7
+ onBack
8
+ }?: OnrampCurrencyPickerHeaderProps): _$react_jsx_runtime0.JSX.Element;
9
+ //#endregion
10
+ export { OnrampCurrencyPickerHeader };
@@ -0,0 +1 @@
1
+ "use client";import{useLingui as e}from"../../../../../../shared/i18n/useLingui.js";import"../../../../../../i18n/index.js";import{ChevronLeftIcon as t}from"../../../../../../shared/icons/ChevronLeftIcon.js";import"../../../../../../icons/index.js";import{IconButton as n}from"../../../../../../shared/ui/IconButton/IconButton.js";import{Dialog as r}from"../../../../../../shared/ui/Dialog/Dialog.js";import"../../../../../../shared/ui/Dialog/index.js";import{Card as i}from"../../../../../../shared/ui/Card/Card.js";import{text as a}from"../../../../../../shared/ui/Text/Text.js";import"../../../../../../ui/index.js";import{useOnrampCurrencyPickerContext as o}from"../context.js";import{ONRAMP_CURRENCY_PICKER_SLOTS as s}from"../OnrampCurrencyPicker.slots.js";import{styles as c}from"../OnrampCurrencyPicker.styles.js";import{jsx as l,jsxs as u}from"react/jsx-runtime";import*as d from"@stylexjs/stylex";function f({title:f,onBack:p}={}){let m=o(`OnrampCurrencyPicker.Header`),{_:h}=e(),g=f??m.headerTitle??h({id:`Q2lUR2`,message:`Currency`}),_=p===null?void 0:p??m.onBack;return u(i.Header,{"data-stridge-slot":s.header,...d.props(c.header),children:[typeof _==`function`?l(n,{"aria-label":h({id:`iH8pgl`,message:`Back`}),onClick:_,children:l(t,{"aria-hidden":!0,...d.props(c.backIcon)})}):null,l(a.span,{size:`base`,fontWeight:`semibold`,leading:`tight`,tracking:`tight`,truncate:!0,...d.props(c.headerTitle),children:g}),l(`div`,{...d.props(c.headerTrailing),children:l(r.CloseButton,{})})]})}export{f as OnrampCurrencyPickerHeader};
@@ -0,0 +1,6 @@
1
+ import * as _$react_jsx_runtime0 from "react/jsx-runtime";
2
+
3
+ //#region src/flows/deposit/widgets/onramp-currency-picker/compound/components/Search.d.ts
4
+ declare function OnrampCurrencyPickerSearch(): _$react_jsx_runtime0.JSX.Element;
5
+ //#endregion
6
+ export { OnrampCurrencyPickerSearch };
@@ -0,0 +1 @@
1
+ "use client";import{useLingui as e}from"../../../../../../shared/i18n/useLingui.js";import"../../../../../../i18n/index.js";import{SearchIcon as t}from"../../../../../../shared/icons/SearchIcon.js";import{XIcon as n}from"../../../../../../shared/icons/XIcon.js";import"../../../../../../icons/index.js";import{InputGroup as r}from"../../../../../../shared/ui/InputGroup/InputGroup.js";import"../../../../../../shared/ui/InputGroup/index.js";import{useOnrampCurrencyPickerContext as i}from"../context.js";import{ONRAMP_CURRENCY_PICKER_SLOTS as a}from"../OnrampCurrencyPicker.slots.js";import{styles as o}from"../OnrampCurrencyPicker.styles.js";import{jsx as s,jsxs as c}from"react/jsx-runtime";import*as l from"@stylexjs/stylex";function u(){let u=i(`OnrampCurrencyPicker.Search`),{_:d}=e();return s(`div`,{"data-stridge-slot":a.search,...l.props(o.search),children:c(r,{children:[s(r.Addon,{align:`inline-start`,children:s(t,{"aria-hidden":!0,...l.props(o.searchIcon)})}),s(r.Input,{type:`search`,inputMode:`search`,autoComplete:`off`,"aria-label":d({id:`L3PYgw`,message:`Search currencies`}),placeholder:d({id:`L3PYgw`,message:`Search currencies`}),value:u.query,onChange:e=>u.setQuery(e.currentTarget.value),...l.props(o.searchInput)}),u.query?s(r.Addon,{align:`inline-end`,children:s(r.Button,{size:`icon-sm`,"aria-label":d({id:`V8yTm6`,message:`Clear search`}),onClick:()=>u.setQuery(``),children:s(n,{"aria-hidden":!0,...l.props(o.clearIcon)})})}):null]})})}export{u as OnrampCurrencyPickerSearch};
@@ -0,0 +1 @@
1
+ import{createContext as e,use as t}from"react";const n=e(null);function r(e){let r=t(n);if(!r)throw Error(`${e} must be rendered inside <OnrampCurrencyPicker>.`);return r}function i(e,t){let n=t.trim().toLowerCase();return n?e.code.toLowerCase().includes(n)||e.name.toLowerCase().includes(n)||e.symbol.toLowerCase().includes(n):!0}export{n as OnrampCurrencyPickerContext,i as currencyMatchesQuery,r as useOnrampCurrencyPickerContext};
@@ -0,0 +1,3 @@
1
+ import { CurrencyOption, OnrampCurrencyPickerBodyProps, OnrampCurrencyPickerDialogProps, OnrampCurrencyPickerHeaderProps, OnrampCurrencyPickerProps, OnrampCurrencyPickerRowProps } from "./types.js";
2
+ import { OnrampCurrencyPicker } from "./OnrampCurrencyPicker.js";
3
+ import { ONRAMP_CURRENCY_PICKER_SLOTS, OnrampCurrencyPickerSlot } from "./OnrampCurrencyPicker.slots.js";
@@ -0,0 +1 @@
1
+ import"./OnrampCurrencyPicker.slots.js";import"./OnrampCurrencyPicker.js";
@@ -0,0 +1,48 @@
1
+ import { DialogShellControls } from "../../../../../shared/dialog/DialogShell.js";
2
+ import { ComponentProps, ReactNode } from "react";
3
+
4
+ //#region src/flows/deposit/widgets/onramp-currency-picker/compound/types.d.ts
5
+ /**
6
+ * One selectable currency row. Mirrors `OnrampCurrencyPayload` plus a UI-only `popular` flag the
7
+ * picker uses to split the Popular / All sections.
8
+ */
9
+ interface CurrencyOption {
10
+ /** ISO-4217 code (e.g. `"USD"`) — the stable row id + selection value. */
11
+ code: string;
12
+ /** Display name (e.g. `"US Dollar"`) — the primary row label + a search target. */
13
+ name: string;
14
+ /** Narrow currency symbol (e.g. `"$"`) — drives the row glyph. */
15
+ symbol: string;
16
+ /** When true, the row sorts to the top of the list ahead of the alphabetical rest. */
17
+ popular?: boolean;
18
+ /** Optional driver-supplied emblem URL — rendered through the glyph's `Image` fallback. */
19
+ iconUrl?: string;
20
+ }
21
+ /**
22
+ * Root props for the `OnrampCurrencyPicker` compound. Each per-part prop is an optional override of
23
+ * the corresponding context value.
24
+ */
25
+ interface OnrampCurrencyPickerProps {
26
+ /** Full selectable currency list (popular-first split is derived from each option's `popular`). */
27
+ currencies?: readonly CurrencyOption[];
28
+ /** Currently-selected currency code — drives the selected row's check + ring. */
29
+ selectedCode?: string;
30
+ /** Selection handler — fires with the chosen code. */
31
+ onSelect?: (code: string) => void;
32
+ /** Back-chevron handler. Omit to hide the chevron. */
33
+ onBack?: () => void;
34
+ /** Header title override (defaults to the translated "Currency"). */
35
+ headerTitle?: string;
36
+ /** When true, the body renders skeleton rows instead of the list. */
37
+ loading?: boolean;
38
+ children?: ReactNode;
39
+ }
40
+ type OnrampCurrencyPickerDialogProps = OnrampCurrencyPickerProps & DialogShellControls;
41
+ type OnrampCurrencyPickerBodyProps = ComponentProps<"div">;
42
+ interface OnrampCurrencyPickerHeaderProps {
43
+ title?: string;
44
+ onBack?: (() => void) | null;
45
+ }
46
+ type OnrampCurrencyPickerRowProps = CurrencyOption;
47
+ //#endregion
48
+ export { CurrencyOption, OnrampCurrencyPickerBodyProps, OnrampCurrencyPickerDialogProps, OnrampCurrencyPickerHeaderProps, OnrampCurrencyPickerProps, OnrampCurrencyPickerRowProps };
@@ -0,0 +1 @@
1
+ import { OnrampCurrencyPicker } from "./OnrampCurrencyPicker.js";
@@ -0,0 +1 @@
1
+ import"./OnrampCurrencyPicker.js";