@stridge/kit 0.1.0-alpha.3 → 0.1.0-alpha.31

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 (192) hide show
  1. package/README.md +22 -6
  2. package/dist/KitProvider.d.ts +29 -0
  3. package/dist/KitProvider.js +1 -1
  4. package/dist/_internal/drivers/stridge/index.d.ts +2 -2
  5. package/dist/_internal/drivers/stridge/index.js +1 -1
  6. package/dist/_internal/withdraw/driver/index.d.ts +2 -2
  7. package/dist/deposit/compound/index.d.ts +2 -2
  8. package/dist/drivers/stridge/createStridgeDepositDriver.js +1 -1
  9. package/dist/drivers/stridge/createStridgeWithdrawDriver.d.ts +26 -13
  10. package/dist/drivers/stridge/createStridgeWithdrawDriver.js +1 -1
  11. package/dist/drivers/stridge/internal/metadata.js +1 -1
  12. package/dist/drivers/stridge/types.d.ts +20 -14
  13. package/dist/drivers/stridge/types.js +1 -1
  14. package/dist/drivers/stridge-mock/createStridgeMockDriver.d.ts +2 -2
  15. package/dist/drivers/stridge-mock/createStridgeMockDriver.js +1 -1
  16. package/dist/drivers/stridge-mock/createStridgeMockWithdrawDriver.d.ts +15 -3
  17. package/dist/drivers/stridge-mock/createStridgeMockWithdrawDriver.js +1 -1
  18. package/dist/drivers/stridge-mock/fixtures.d.ts +13 -11
  19. package/dist/drivers/stridge-mock/fixtures.js +1 -1
  20. package/dist/flows/deposit/dialog/DepositDialog.js +1 -1
  21. package/dist/flows/deposit/driver/payloads.d.ts +10 -4
  22. package/dist/flows/deposit/driver/transformers/balanceToBalancesPayload.js +1 -1
  23. package/dist/flows/deposit/driver/transformers/startToAddressesPayload.js +1 -1
  24. package/dist/flows/deposit/driver/transformers/startToTargetPayload.js +1 -1
  25. package/dist/flows/deposit/orchestrator/controller.js +1 -1
  26. package/dist/flows/deposit/orchestrator/types.d.ts +30 -1
  27. package/dist/flows/deposit/orchestrator/useDeposit.d.ts +18 -1
  28. package/dist/flows/deposit/orchestrator/useDeposit.js +1 -1
  29. package/dist/flows/deposit/widgets/amount-entry/AmountEntry.d.ts +1 -1
  30. package/dist/flows/deposit/widgets/amount-entry/AmountEntry.js +1 -1
  31. package/dist/flows/deposit/widgets/amount-entry/footerIntent.js +1 -0
  32. package/dist/flows/deposit/widgets/deposit/Deposit.js +1 -1
  33. package/dist/flows/deposit/widgets/deposit/compound/components/Method.d.ts +6 -0
  34. package/dist/flows/deposit/widgets/deposit/compound/components/Method.js +1 -1
  35. package/dist/flows/deposit/widgets/deposit/compound/types.d.ts +6 -3
  36. package/dist/flows/deposit/widgets/deposit-status-banner/DepositStatusBanner.d.ts +7 -0
  37. package/dist/flows/deposit/widgets/deposit-status-banner/DepositStatusBanner.js +1 -1
  38. package/dist/flows/deposit/widgets/deposit-status-banner/compound/DepositStatusBanner.js +1 -1
  39. package/dist/flows/deposit/widgets/deposit-status-banner/compound/components/Hero.js +1 -1
  40. package/dist/flows/deposit/widgets/deposit-status-banner/compound/components/PrimaryAction.js +1 -1
  41. package/dist/flows/deposit/widgets/processing-state/ProcessingState.js +1 -1
  42. package/dist/flows/deposit/widgets/transfer-crypto/TransferCrypto.js +1 -1
  43. package/dist/flows/deposit/widgets/transfer-crypto/compound/components/Address.js +1 -1
  44. package/dist/flows/deposit/widgets/transfer-crypto/compound/components/Disclosure.d.ts +2 -1
  45. package/dist/flows/deposit/widgets/transfer-crypto/compound/components/Disclosure.js +1 -1
  46. package/dist/flows/deposit/widgets/transfer-crypto/compound/components/QrCode.d.ts +4 -10
  47. package/dist/flows/deposit/widgets/transfer-crypto/compound/components/QrCode.js +1 -1
  48. package/dist/flows/shared/transformers/pickRelevantSettlement.js +1 -1
  49. package/dist/flows/withdraw/bindings/WithdrawBindings.d.ts +92 -0
  50. package/dist/flows/withdraw/bindings/WithdrawBindings.js +1 -0
  51. package/dist/flows/withdraw/bindings/index.d.ts +1 -0
  52. package/dist/flows/withdraw/bindings/index.js +1 -0
  53. package/dist/flows/withdraw/dialog/WithdrawDialog.d.ts +58 -12
  54. package/dist/flows/withdraw/dialog/WithdrawDialog.js +1 -1
  55. package/dist/flows/withdraw/driver/payloads.d.ts +16 -1
  56. package/dist/flows/withdraw/driver/transformers/settlementToWithdrawalPayload.js +1 -1
  57. package/dist/flows/withdraw/driver/transformers/supportedAssetsToReceiveOptionsPayload.js +1 -1
  58. package/dist/flows/withdraw/driver/types.d.ts +69 -13
  59. package/dist/flows/withdraw/orchestrator/controller.js +1 -1
  60. package/dist/flows/withdraw/orchestrator/index.d.ts +1 -1
  61. package/dist/flows/withdraw/orchestrator/reducer.js +1 -1
  62. package/dist/flows/withdraw/orchestrator/types.d.ts +106 -32
  63. package/dist/flows/withdraw/orchestrator/useWithdraw.d.ts +18 -1
  64. package/dist/flows/withdraw/orchestrator/useWithdraw.js +1 -1
  65. package/dist/flows/withdraw/widgets/withdraw-form/WithdrawForm.js +1 -1
  66. package/dist/flows/withdraw/widgets/withdraw-form/compound/WithdrawForm.js +1 -1
  67. package/dist/flows/withdraw/widgets/withdraw-form/compound/components/RecipientField.d.ts +7 -5
  68. package/dist/flows/withdraw/widgets/withdraw-form/compound/components/RecipientField.js +1 -1
  69. package/dist/flows/withdraw/widgets/withdraw-form/compound/types.d.ts +15 -5
  70. package/dist/flows/withdraw/widgets/withdraw-form/validation.js +1 -1
  71. package/dist/flows/withdraw/widgets/withdraw-in-progress/WithdrawInProgress.d.ts +2 -1
  72. package/dist/flows/withdraw/widgets/withdraw-in-progress/WithdrawInProgress.js +1 -1
  73. package/dist/i18n/index.d.ts +5 -4
  74. package/dist/i18n/index.js +1 -1
  75. package/dist/i18n/locales/ar.js +1 -1
  76. package/dist/i18n/locales/es.js +1 -1
  77. package/dist/i18n/locales/source-keys.d.ts +12 -0
  78. package/dist/i18n/locales/source-keys.js +0 -0
  79. package/dist/icons/index.d.ts +2 -1
  80. package/dist/icons/index.js +1 -1
  81. package/dist/index.d.ts +12 -8
  82. package/dist/index.js +1 -1
  83. package/dist/package.js +1 -0
  84. package/dist/scope/KitPortalScope.js +1 -1
  85. package/dist/scope/KitScope.d.ts +18 -1
  86. package/dist/scope/KitScope.js +1 -1
  87. package/dist/scope/context.d.ts +17 -1
  88. package/dist/scope/index.d.ts +1 -1
  89. package/dist/shared/attribution/Attribution.js +1 -0
  90. package/dist/shared/attribution/Attribution.slots.js +1 -0
  91. package/dist/shared/attribution/Attribution.styles.js +1 -0
  92. package/dist/shared/attribution/index.js +1 -0
  93. package/dist/shared/chains/index.d.ts +48 -29
  94. package/dist/shared/chains/index.js +1 -1
  95. package/dist/shared/constants/brand-intercom.js +1 -0
  96. package/dist/shared/cuer/Cuer.js +1 -0
  97. package/dist/shared/cuer/QrCode.js +1 -0
  98. package/dist/shared/cuer/index.js +1 -0
  99. package/dist/shared/dialog/Frame.js +1 -1
  100. package/dist/shared/dialog/StepTransition.js +1 -1
  101. package/dist/shared/driver/types.d.ts +4 -3
  102. package/dist/shared/i18n/KitI18nProvider.d.ts +11 -8
  103. package/dist/shared/i18n/KitI18nProvider.js +1 -1
  104. package/dist/shared/i18n/createKitI18n.d.ts +79 -16
  105. package/dist/shared/i18n/createKitI18n.js +1 -1
  106. package/dist/shared/i18n/useLingui.d.ts +11 -3
  107. package/dist/shared/icons/LogoIcon.d.ts +13 -0
  108. package/dist/shared/icons/LogoIcon.js +1 -0
  109. package/dist/shared/orchestrator/useSettlementWatcher.js +1 -1
  110. package/dist/shared/primitives/TxHashValue/TxHashValue.js +1 -1
  111. package/dist/shared/support/SupportButton.d.ts +1 -0
  112. package/dist/shared/support/SupportButton.js +1 -0
  113. package/dist/shared/support/SupportConfigContext.d.ts +1 -0
  114. package/dist/shared/support/SupportConfigContext.js +1 -0
  115. package/dist/shared/support/SupportLink.d.ts +1 -0
  116. package/dist/shared/support/SupportLink.js +1 -0
  117. package/dist/shared/support/SupportSpinner.d.ts +1 -0
  118. package/dist/shared/support/SupportSpinner.js +1 -0
  119. package/dist/shared/support/index.d.ts +2 -0
  120. package/dist/shared/support/index.js +1 -0
  121. package/dist/shared/support/intercom-loader.d.ts +17 -0
  122. package/dist/shared/support/intercom-loader.js +1 -0
  123. package/dist/shared/support/resolveSupport.d.ts +1 -0
  124. package/dist/shared/support/resolveSupport.js +1 -0
  125. package/dist/shared/support/types.d.ts +43 -0
  126. package/dist/shared/support/useIntercomMerchantContext.d.ts +27 -0
  127. package/dist/shared/support/useIntercomMerchantContext.js +1 -0
  128. package/dist/shared/support/useIntercomShutdownOnUnmount.js +1 -0
  129. package/dist/shared/support/useMerchantContext.d.ts +1 -0
  130. package/dist/shared/support/useMerchantContext.js +1 -0
  131. package/dist/shared/support/useSupportTrigger.js +1 -0
  132. package/dist/shared/terms/TermsButton.d.ts +1 -0
  133. package/dist/shared/terms/TermsButton.js +1 -0
  134. package/dist/shared/terms/TermsConfigContext.d.ts +1 -0
  135. package/dist/shared/terms/TermsConfigContext.js +1 -0
  136. package/dist/shared/terms/TermsLink.d.ts +1 -0
  137. package/dist/shared/terms/TermsLink.js +1 -0
  138. package/dist/shared/terms/index.d.ts +1 -0
  139. package/dist/shared/terms/index.js +1 -0
  140. package/dist/shared/terms/resolveTerms.d.ts +1 -0
  141. package/dist/shared/terms/resolveTerms.js +1 -0
  142. package/dist/shared/terms/types.d.ts +43 -0
  143. package/dist/shared/ui/Card/Card.styles.js +1 -1
  144. package/dist/shared/ui/Details/Details.d.ts +9 -1
  145. package/dist/shared/ui/Details/Details.styles.js +1 -1
  146. package/dist/shared/ui/Dialog/Dialog.js +1 -1
  147. package/dist/shared/ui/Dialog/Dialog.styles.js +1 -1
  148. package/dist/shared/ui/ExternalLink/ExternalLink.js +1 -1
  149. package/dist/shared/ui/Select/Select.js +1 -1
  150. package/dist/shared/ui/WalletRow/WalletRow.d.ts +1 -1
  151. package/dist/shared/ui/WalletRow/WalletRow.js +1 -1
  152. package/dist/shared/widgets/amount-entry/compound/components/Hero/Hero.js +1 -1
  153. package/dist/shared/widgets/amount-entry/compound/components/Hero/SwapBackdrop.js +1 -1
  154. package/dist/shared/widgets/confirm-transfer/compound/components/Disclaimer.d.ts +4 -3
  155. package/dist/shared/widgets/confirm-transfer/compound/components/Disclaimer.js +1 -1
  156. package/dist/shared/widgets/error-state/compound/components/AssetValue.js +1 -1
  157. package/dist/shared/widgets/error-state/compound/components/HelpInfo.js +1 -1
  158. package/dist/shared/widgets/error-state/compound/components/StatusValue.js +1 -1
  159. package/dist/shared/widgets/processing-state/compound/ProcessingState.d.ts +1 -5
  160. package/dist/shared/widgets/processing-state/compound/ProcessingState.js +1 -1
  161. package/dist/shared/widgets/processing-state/compound/ProcessingState.slots.d.ts +0 -1
  162. package/dist/shared/widgets/processing-state/compound/ProcessingState.slots.js +1 -1
  163. package/dist/shared/widgets/processing-state/compound/ProcessingState.styles.js +1 -1
  164. package/dist/shared/widgets/processing-state/compound/components/Details.d.ts +6 -1
  165. package/dist/shared/widgets/processing-state/compound/components/Details.js +1 -1
  166. package/dist/shared/widgets/processing-state/compound/components/Header.d.ts +4 -3
  167. package/dist/shared/widgets/processing-state/compound/components/Header.js +1 -1
  168. package/dist/shared/widgets/processing-state/compound/components/Hero.d.ts +11 -7
  169. package/dist/shared/widgets/processing-state/compound/components/Hero.js +1 -1
  170. package/dist/shared/widgets/processing-state/compound/components/Rows.js +1 -1
  171. package/dist/shared/widgets/processing-state/compound/components/StatusPill.js +1 -1
  172. package/dist/shared/widgets/processing-state/compound/components/splitAmount.js +1 -0
  173. package/dist/shared/widgets/processing-state/compound/index.d.ts +1 -1
  174. package/dist/shared/widgets/processing-state/compound/types.d.ts +7 -26
  175. package/dist/shared/widgets/success-state/compound/components/Actions.js +1 -1
  176. package/dist/shared/widgets/success-state/compound/components/AssetValue.js +1 -1
  177. package/dist/shared/widgets/success-state/compound/components/RouteValue.js +1 -1
  178. package/dist/shared/widgets/success-state/compound/components/StatusPill.js +1 -1
  179. package/dist/stridge/StridgeProvider.d.ts +172 -18
  180. package/dist/stridge/StridgeProvider.js +1 -1
  181. package/dist/stridge/optionalWagmi.js +1 -0
  182. package/dist/stridge/stubs.js +1 -1
  183. package/dist/styles/index.css +58 -12
  184. package/dist/types.d.ts +5 -4
  185. package/dist/ui/index.js +1 -1
  186. package/dist/withdraw/compound/index.d.ts +2 -2
  187. package/dist/withdraw/dialog/index.d.ts +3 -1
  188. package/package.json +10 -11
  189. package/dist/kit/package.js +0 -1
  190. package/dist/shared/widgets/processing-state/compound/components/Actions.d.ts +0 -17
  191. package/dist/shared/widgets/processing-state/compound/components/Actions.js +0 -1
  192. /package/dist/{utils/src/use-copy-to-clipboard.js → shared/utils/useCopyToClipboard.js} +0 -0
@@ -1 +1 @@
1
- const e={root:{"ProcessingState__styles.root":`ProcessingState__styles.root`,"position-kVAEAm":`x1n2onr6`,"width-kzqmXN":`xh8yej3`,"maxWidth-ks0D6T":`x17fpy1y`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:26`},header:{"ProcessingState__styles.header":`ProcessingState__styles.header`,"justifyContent-kjj79g":`x1qughib`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:34`},headerLeft:{"ProcessingState__styles.headerLeft":`ProcessingState__styles.headerLeft`,"display-k1xSpc":`x78zum5`,"flexDirection-kXwgrk":`x1q0g3np`,"alignItems-kGNEyG":`x6s0dn4`,"gap-kOIVth":`x1v2ro7d`,"minWidth-k7Eaqz":`xeuugli`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:37`},closeIcon:{"ProcessingState__styles.closeIcon":`ProcessingState__styles.closeIcon`,"width-kzqmXN":`xsmyaan`,"height-kZKoxP":`x1kpxq89`,"flexShrink-kmuXW":`x2lah0s`,"color-kMwMTN":`xdksllq`,"strokeWidth-kfJifR":`x1k315e8`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:44`},backIcon:{"ProcessingState__styles.backIcon":`ProcessingState__styles.backIcon`,"width-kzqmXN":`x6jxa94`,"height-kZKoxP":`x1v9usgg`,"flexShrink-kmuXW":`x2lah0s`,"color-kMwMTN":`xdksllq`,"strokeWidth-kfJifR":`xhxwl1`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:51`},hero:{"ProcessingState__styles.hero":`ProcessingState__styles.hero`,"display-k1xSpc":`x78zum5`,"flexDirection-kXwgrk":`xdt5ytf`,"alignItems-kGNEyG":`x6s0dn4`,"gap-kOIVth":`x1v2ro7d`,"paddingTop-kLKAdn":`x1miatn0`,"paddingInlineEnd-kwRFfy":`x1o5r3ls`,"paddingBottom-kGO01o":`xwib8y2`,"paddingInlineStart-kZCmMZ":`xz7312c`,"animationName-kKVMdj":`xv305lp`,"animationDuration-k44tkh":`xmprevt x1s1fvk8`,"animationTimingFunction-kyAemX":`xa3vuyk`,"animationFillMode-kWV6AL":`x1u6ievf`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:59`},heroAmountRow:{"ProcessingState__styles.heroAmountRow":`ProcessingState__styles.heroAmountRow`,"display-k1xSpc":`x3nfvp2`,"alignItems-kGNEyG":`x1pha0wt`,"justifyContent-kjj79g":`xl56j7k`,"gap-kOIVth":`x883omv`,"marginTop-keoZOQ":`xdj266r`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:76`},heroAmountIcon:{"ProcessingState__styles.heroAmountIcon":`ProcessingState__styles.heroAmountIcon`,"alignSelf-kSGwAc":`xamitd3`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:83`},statusPillWrap:{"ProcessingState__styles.statusPillWrap":`ProcessingState__styles.statusPillWrap`,"display-k1xSpc":`x78zum5`,"justifyContent-kjj79g":`xl56j7k`,"paddingTop-kLKAdn":`xyinxu5`,"paddingInlineEnd-kwRFfy":`x1o5r3ls`,"paddingBottom-kGO01o":`x1t4gjm`,"paddingInlineStart-kZCmMZ":`xz7312c`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:87`},statusPill:{"ProcessingState__styles.statusPill":`ProcessingState__styles.statusPill`,"display-k1xSpc":`x3nfvp2`,"flexDirection-kXwgrk":`x1q0g3np`,"alignItems-kGNEyG":`x6s0dn4`,"gap-kOIVth":`x883omv`,"paddingBlock-k8WAf4":`x1vvogim`,"paddingInlineStart-kZCmMZ":`x1g0dm76`,"paddingInlineEnd-kwRFfy":`x1pic42t`,"borderRadius-kaIpWk":`x1npxkrn`,"backgroundColor-kWkggS":`x407w7c`,"borderWidth-kMzoRj":`xmkeg23`,"borderStyle-ksu8eU":`x1y0btm7`,"borderColor-kVAM5u":`x1bue7yx`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:95`},statusPillIcon:{"ProcessingState__styles.statusPillIcon":`ProcessingState__styles.statusPillIcon`,"display-k1xSpc":`x1lliihq`,"width-kzqmXN":`x6jxa94`,"height-kZKoxP":`xmix8c7`,"flexShrink-kmuXW":`x2lah0s`,"color-kMwMTN":`x1me39qh`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:109`},statusPillDot:{"ProcessingState__styles.statusPillDot":`ProcessingState__styles.statusPillDot`,"animationName-kKVMdj":`x194e4vk x1aquc0h`,"animationDuration-k44tkh":`x1m9vv7p`,"animationIterationCount-ko0y90":`xa4qsjk`,"animationTimingFunction-kyAemX":`x4hg4is`,"opacity-kSiTet":`x197sbye`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:116`},statusPillDotDelay0:{"ProcessingState__styles.statusPillDotDelay0":`ProcessingState__styles.statusPillDotDelay0`,"animationDelay-kKxzle":`x1uzojwf`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:126`},statusPillDotDelay1:{"ProcessingState__styles.statusPillDotDelay1":`ProcessingState__styles.statusPillDotDelay1`,"animationDelay-kKxzle":`x1k0bccz`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:129`},statusPillDotDelay2:{"ProcessingState__styles.statusPillDotDelay2":`ProcessingState__styles.statusPillDotDelay2`,"animationDelay-kKxzle":`x1t83zlg`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:132`},statusPillDotDelay3:{"ProcessingState__styles.statusPillDotDelay3":`ProcessingState__styles.statusPillDotDelay3`,"animationDelay-kKxzle":`x1x1c4bx`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:135`},statusPillDotDelay4:{"ProcessingState__styles.statusPillDotDelay4":`ProcessingState__styles.statusPillDotDelay4`,"animationDelay-kKxzle":`x1xwhvez`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:138`},statusPillDotDelay5:{"ProcessingState__styles.statusPillDotDelay5":`ProcessingState__styles.statusPillDotDelay5`,"animationDelay-kKxzle":`xfjzax6`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:141`},detailsSection:{"ProcessingState__styles.detailsSection":`ProcessingState__styles.detailsSection`,"marginInlineStart-keTefX":`xnzr9dm`,"marginInlineEnd-k71WvV":`xnqxrjt`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:151`},actions:{"ProcessingState__styles.actions":`ProcessingState__styles.actions`,"display-k1xSpc":`x78zum5`,"flexDirection-kXwgrk":`xdt5ytf`,"alignItems-kGNEyG":`x1qjc9v5`,"gap-kOIVth":`x1v2ro7d`,"paddingTop-kLKAdn":`x1xy6bms`,"paddingInlineEnd-kwRFfy":`x1o5r3ls`,"paddingBottom-kGO01o":`x1t4gjm`,"paddingInlineStart-kZCmMZ":`xz7312c`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:156`},closeCta:{"ProcessingState__styles.closeCta":`ProcessingState__styles.closeCta`,"width-kzqmXN":`xh8yej3`,":focus-visible_boxShadow-kEtg5x":`xhatipn`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:174`},closeCtaInteractive:{"ProcessingState__styles.closeCtaInteractive":`ProcessingState__styles.closeCtaInteractive`,"cursor-kkrTdU":`x1ypdohk`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:180`},closeCtaInert:{"ProcessingState__styles.closeCtaInert":`ProcessingState__styles.closeCtaInert`,"cursor-kkrTdU":`xt0e3qv`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:183`}};export{e as styles};
1
+ const e={root:{"ProcessingState__styles.root":`ProcessingState__styles.root`,"position-kVAEAm":`x1n2onr6`,"width-kzqmXN":`xh8yej3`,"maxWidth-ks0D6T":`x17fpy1y`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:26`},header:{"ProcessingState__styles.header":`ProcessingState__styles.header`,"justifyContent-kjj79g":`x1qughib`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:34`},headerLeft:{"ProcessingState__styles.headerLeft":`ProcessingState__styles.headerLeft`,"display-k1xSpc":`x78zum5`,"flexDirection-kXwgrk":`x1q0g3np`,"alignItems-kGNEyG":`x6s0dn4`,"gap-kOIVth":`x1v2ro7d`,"minWidth-k7Eaqz":`xeuugli`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:37`},backIcon:{"ProcessingState__styles.backIcon":`ProcessingState__styles.backIcon`,"width-kzqmXN":`x6jxa94`,"height-kZKoxP":`x1v9usgg`,"flexShrink-kmuXW":`x2lah0s`,"color-kMwMTN":`xdksllq`,"strokeWidth-kfJifR":`xhxwl1`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:44`},hero:{"ProcessingState__styles.hero":`ProcessingState__styles.hero`,"display-k1xSpc":`x78zum5`,"flexDirection-kXwgrk":`xdt5ytf`,"alignItems-kGNEyG":`x6s0dn4`,"gap-kOIVth":`x1v2ro7d`,"paddingTop-kLKAdn":`x1miatn0`,"paddingInlineEnd-kwRFfy":`x1o5r3ls`,"paddingBottom-kGO01o":`xwib8y2`,"paddingInlineStart-kZCmMZ":`xz7312c`,"animationName-kKVMdj":`xv305lp`,"animationDuration-k44tkh":`xmprevt x1s1fvk8`,"animationTimingFunction-kyAemX":`xa3vuyk`,"animationFillMode-kWV6AL":`x1u6ievf`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:52`},heroAmountRow:{"ProcessingState__styles.heroAmountRow":`ProcessingState__styles.heroAmountRow`,"display-k1xSpc":`x3nfvp2`,"alignItems-kGNEyG":`x1pha0wt`,"justifyContent-kjj79g":`xl56j7k`,"gap-kOIVth":`x883omv`,"marginTop-keoZOQ":`xdj266r`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:69`},heroAmountIcon:{"ProcessingState__styles.heroAmountIcon":`ProcessingState__styles.heroAmountIcon`,"alignSelf-kSGwAc":`xamitd3`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:76`},heroSubLine:{"ProcessingState__styles.heroSubLine":`ProcessingState__styles.heroSubLine`,"display-k1xSpc":`x3nfvp2`,"flexDirection-kXwgrk":`x1q0g3np`,"alignItems-kGNEyG":`x6s0dn4`,"justifyContent-kjj79g":`xl56j7k`,"gap-kOIVth":`x17d4w8g`,"marginTop-keoZOQ":`xr9ek0c`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:80`},heroSubLineIcon:{"ProcessingState__styles.heroSubLineIcon":`ProcessingState__styles.heroSubLineIcon`,"flexShrink-kmuXW":`x2lah0s`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:88`},statusPillWrap:{"ProcessingState__styles.statusPillWrap":`ProcessingState__styles.statusPillWrap`,"display-k1xSpc":`x78zum5`,"justifyContent-kjj79g":`xl56j7k`,"paddingTop-kLKAdn":`xyinxu5`,"paddingInlineEnd-kwRFfy":`x1o5r3ls`,"paddingBottom-kGO01o":`x1t4gjm`,"paddingInlineStart-kZCmMZ":`xz7312c`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:92`},statusPill:{"ProcessingState__styles.statusPill":`ProcessingState__styles.statusPill`,"display-k1xSpc":`x3nfvp2`,"flexDirection-kXwgrk":`x1q0g3np`,"alignItems-kGNEyG":`x6s0dn4`,"gap-kOIVth":`x883omv`,"paddingBlock-k8WAf4":`x1vvogim`,"paddingInlineStart-kZCmMZ":`x1g0dm76`,"paddingInlineEnd-kwRFfy":`x1pic42t`,"borderRadius-kaIpWk":`x1npxkrn`,"backgroundColor-kWkggS":`x407w7c`,"borderWidth-kMzoRj":`xmkeg23`,"borderStyle-ksu8eU":`x1y0btm7`,"borderColor-kVAM5u":`x1bue7yx`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:100`},statusPillIcon:{"ProcessingState__styles.statusPillIcon":`ProcessingState__styles.statusPillIcon`,"display-k1xSpc":`x1lliihq`,"width-kzqmXN":`x6jxa94`,"height-kZKoxP":`xmix8c7`,"flexShrink-kmuXW":`x2lah0s`,"color-kMwMTN":`x1me39qh`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:114`},statusPillDot:{"ProcessingState__styles.statusPillDot":`ProcessingState__styles.statusPillDot`,"animationName-kKVMdj":`x194e4vk x1aquc0h`,"animationDuration-k44tkh":`x1m9vv7p`,"animationIterationCount-ko0y90":`xa4qsjk`,"animationTimingFunction-kyAemX":`x4hg4is`,"opacity-kSiTet":`x197sbye`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:121`},statusPillDotDelay0:{"ProcessingState__styles.statusPillDotDelay0":`ProcessingState__styles.statusPillDotDelay0`,"animationDelay-kKxzle":`x1uzojwf`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:131`},statusPillDotDelay1:{"ProcessingState__styles.statusPillDotDelay1":`ProcessingState__styles.statusPillDotDelay1`,"animationDelay-kKxzle":`x1k0bccz`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:134`},statusPillDotDelay2:{"ProcessingState__styles.statusPillDotDelay2":`ProcessingState__styles.statusPillDotDelay2`,"animationDelay-kKxzle":`x1t83zlg`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:137`},statusPillDotDelay3:{"ProcessingState__styles.statusPillDotDelay3":`ProcessingState__styles.statusPillDotDelay3`,"animationDelay-kKxzle":`x1x1c4bx`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:140`},statusPillDotDelay4:{"ProcessingState__styles.statusPillDotDelay4":`ProcessingState__styles.statusPillDotDelay4`,"animationDelay-kKxzle":`x1xwhvez`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:143`},statusPillDotDelay5:{"ProcessingState__styles.statusPillDotDelay5":`ProcessingState__styles.statusPillDotDelay5`,"animationDelay-kKxzle":`xfjzax6`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:146`},detailsSection:{"ProcessingState__styles.detailsSection":`ProcessingState__styles.detailsSection`,"marginInlineStart-keTefX":`xnzr9dm`,"marginInlineEnd-k71WvV":`xnqxrjt`,"marginBottom-k1K539":`x91k8ka`,$$css:`@stridge/kit:src/shared/widgets/processing-state/compound/ProcessingState.styles.ts:158`}};export{e as styles};
@@ -4,9 +4,14 @@ import * as _$react_jsx_runtime0 from "react/jsx-runtime";
4
4
  //#region src/shared/widgets/processing-state/compound/components/Details.d.ts
5
5
  /**
6
6
  * Bordered card containing `ProcessingState.Detail` children.
7
+ *
8
+ * Every predefined row ({@link ProcessingState.SourceRow} etc.) gates itself out when its
9
+ * backing payload is absent, so a frame with no detail data would otherwise paint an empty
10
+ * bordered card. The container mirrors those gating conditions and renders nothing when none
11
+ * of the predefined rows can produce content.
7
12
  */
8
13
  declare function ProcessingStateDetails({
9
14
  children
10
- }: ProcessingStateDetailsProps): _$react_jsx_runtime0.JSX.Element;
15
+ }: ProcessingStateDetailsProps): _$react_jsx_runtime0.JSX.Element | null;
11
16
  //#endregion
12
17
  export { ProcessingStateDetails };
@@ -1 +1 @@
1
- "use client";import{Details as e}from"../../../../ui/Details/Details.js";import"../../../../ui/Details/index.js";import{PROCESSING_STATE_SLOTS as t}from"../ProcessingState.slots.js";import{styles as n}from"../ProcessingState.styles.js";import{jsx as r}from"react/jsx-runtime";import*as i from"@stylexjs/stylex";function a({children:a}){let o=i.props(n.detailsSection);return r(e,{"data-stridge-slot":t.details,className:o.className,style:o.style,children:a})}export{a as ProcessingStateDetails};
1
+ "use client";import{Details as e}from"../../../../ui/Details/Details.js";import"../../../../ui/Details/index.js";import{PROCESSING_STATE_SLOTS as t}from"../ProcessingState.slots.js";import{useProcessingStateContext as n}from"../context.js";import{styles as r}from"../ProcessingState.styles.js";import{jsx as i}from"react/jsx-runtime";import*as a from"@stylexjs/stylex";function o({children:o}){let s=n(`ProcessingState.Details`),c=a.props(r.detailsSection);return s.sourceWallet||s.sourceTx?.hash||s.submittedAt!==void 0||s.detectedAt!==void 0?i(e,{"data-stridge-slot":t.details,className:c.className,style:c.style,children:o}):null}export{o as ProcessingStateDetails};
@@ -3,9 +3,10 @@ import * as _$react_jsx_runtime0 from "react/jsx-runtime";
3
3
 
4
4
  //#region src/shared/widgets/processing-state/compound/components/Header.d.ts
5
5
  /**
6
- * Header row with optional back button and title. The back button
7
- * renders only when `onBack` is provided. Dismiss is the dialog frame's
8
- * concern; the widget does not paint a close affordance.
6
+ * Header row with optional back button, title, and dialog close affordance.
7
+ * The back button renders only when `onBack` is provided. `Dialog.CloseButton`
8
+ * renders as the trailing flex child only when the widget is mounted inside
9
+ * `Dialog.Content`; card-mode renders no close affordance.
9
10
  */
10
11
  declare function ProcessingStateHeader({
11
12
  title,
@@ -1 +1 @@
1
- "use client";import{useLingui as e}from"../../../../i18n/useLingui.js";import"../../../../../i18n/index.js";import{ChevronLeftIcon as t}from"../../../../icons/ChevronLeftIcon.js";import"../../../../../icons/index.js";import{IconButton as n}from"../../../../ui/IconButton/IconButton.js";import{Card as r}from"../../../../ui/Card/Card.js";import{text as i}from"../../../../ui/Text/Text.js";import"../../../../../ui/index.js";import{useProcessingStateContext as a}from"../context.js";import{PROCESSING_STATE_SLOTS as o}from"../ProcessingState.slots.js";import{styles as s}from"../ProcessingState.styles.js";import{jsx as c,jsxs as l}from"react/jsx-runtime";import*as u from"@stylexjs/stylex";function d({title:d,onBack:f}={}){let p=a(`ProcessingState.Header`),{_:m}=e(),h=d??p.headerTitle??m({id:`vrnnn9`,message:`Processing`}),g=f===null?void 0:f??p.onBack;return c(r.Header,{"data-stridge-slot":o.header,...u.props(s.header),children:l(`div`,{...u.props(s.headerLeft),children:[typeof g==`function`?c(n,{"aria-label":m({id:`iH8pgl`,message:`Back`}),onClick:g,children:c(t,{"aria-hidden":!0,...u.props(s.backIcon)})}):null,c(i.span,{size:`base`,fontWeight:`semibold`,leading:`tight`,tracking:`tight`,style:{margin:0},children:h})]})})}export{d as ProcessingStateHeader};
1
+ "use client";import{useLingui as e}from"../../../../i18n/useLingui.js";import"../../../../../i18n/index.js";import{ChevronLeftIcon as t}from"../../../../icons/ChevronLeftIcon.js";import"../../../../../icons/index.js";import{IconButton as n}from"../../../../ui/IconButton/IconButton.js";import{Dialog as r}from"../../../../ui/Dialog/Dialog.js";import"../../../../ui/Dialog/index.js";import{Card as i}from"../../../../ui/Card/Card.js";import{text as a}from"../../../../ui/Text/Text.js";import"../../../../../ui/index.js";import{PROCESSING_STATE_SLOTS as o}from"../ProcessingState.slots.js";import{useProcessingStateContext as s}from"../context.js";import{styles as c}from"../ProcessingState.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=s(`ProcessingState.Header`),{_:h}=e(),g=f??m.headerTitle??h({id:`vrnnn9`,message:`Processing`}),_=p===null?void 0:p??m.onBack;return u(i.Header,{"data-stridge-slot":o.header,...d.props(c.header),children:[u(`div`,{...d.props(c.headerLeft),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`,style:{margin:0},children:g})]}),l(r.CloseButton,{})]})}export{f as ProcessingStateHeader};
@@ -2,14 +2,18 @@ import * as _$react_jsx_runtime0 from "react/jsx-runtime";
2
2
 
3
3
  //#region src/shared/widgets/processing-state/compound/components/Hero.d.ts
4
4
  /**
5
- * Hero block: uppercase "CREDITING" caption, the token amount row, and a destination subcaption. Reads its data
6
- * from the `ProcessingState` root context.
5
+ * Hero block: uppercase "CREDITING" caption, the amount row, and a destination subcaption. Reads
6
+ * its data from the `ProcessingState` root context.
7
7
  *
8
- * When `loading=true`, the amount span is omitted entirely so the row reads `[icon] USDC` instead
9
- * of `[icon] 0 USDC` or a shimmer placeholder. Used by the transfer-crypto path where the
10
- * credited amount isn't known until the indexer settles showing a literal `0` reads as
11
- * "credited zero", and a shimmer over a number we never had reads as a fake placeholder.
12
- * Surfacing only the symbol is the truthful UX.
8
+ * Two amount layouts:
9
+ *
10
+ * - **Token hero** (default) `[icon] <amount> <symbol>`. When `loading=true` the amount span is
11
+ * omitted entirely so the row reads `[icon] USDC` instead of `[icon] 0 USDC` or a shimmer
12
+ * placeholder (the transfer-crypto path waits on the indexer for the credited figure; a literal
13
+ * `0` reads as "credited zero" and a shimmer over a number we never had reads as fake).
14
+ * - **USD hero** — when `amountUsd` is set, the fiat figure becomes the primary line and
15
+ * `[icon] <amount> <symbol>` is demoted to a subline beneath it. Mirrors the deposit confirm
16
+ * screen's hero treatment.
13
17
  */
14
18
  declare function ProcessingStateHero(): _$react_jsx_runtime0.JSX.Element;
15
19
  //#endregion
@@ -1 +1 @@
1
- "use client";import{useLingui as e}from"../../../../i18n/useLingui.js";import"../../../../../i18n/index.js";import{text as t}from"../../../../ui/Text/Text.js";import{TokenLogo as n}from"../../../../ui/TokenLogo/TokenLogo.js";import"../../../../ui/TokenLogo/index.js";import"../../../../../ui/index.js";import{useProcessingStateContext as r}from"../context.js";import{PROCESSING_STATE_SLOTS as i}from"../ProcessingState.slots.js";import{styles as a}from"../ProcessingState.styles.js";import{jsx as o,jsxs as s}from"react/jsx-runtime";import*as c from"@stylexjs/stylex";function l(){let l=r(`ProcessingState.Hero`),{_:u}=e(),d=l.creditedTo??l.creditedAsset.symbol;return s(`div`,{"data-stridge-slot":i.hero,...c.props(a.hero),children:[o(t.span,{size:`caption`,fontWeight:`semibold`,leading:`tight`,tracking:`widest`,transform:`uppercase`,align:`center`,color:`tertiary`,children:u({id:`zYD5xm`,message:`Crediting`})}),s(`div`,{dir:`ltr`,...c.props(a.heroAmountRow),children:[o(n,{size:30,symbol:l.creditedAsset.symbol,...l.creditedAsset.chainId===void 0?{}:{chainId:l.creditedAsset.chainId},...l.creditedAsset.address===void 0?{}:{address:l.creditedAsset.address},...l.creditedAsset.isNative===void 0?{}:{isNative:l.creditedAsset.isNative},...l.creditedAsset.logoUrl===void 0?{}:{logoUrl:l.creditedAsset.logoUrl},hideChainBadge:!0,...c.props(a.heroAmountIcon)}),l.loading?null:o(t.span,{size:`4xl`,fontWeight:`semibold`,leading:`none`,tracking:`tight`,children:l.amount}),o(t.span,{size:l.loading?`4xl`:`xl`,fontWeight:`semibold`,leading:`none`,tracking:`tight`,children:l.creditedAsset.symbol})]}),o(t.span,{size:`meta`,fontWeight:`medium`,leading:`tight`,align:`center`,color:`subdued`,children:d})]})}export{l as ProcessingStateHero};
1
+ "use client";import{useLingui as e}from"../../../../i18n/useLingui.js";import"../../../../../i18n/index.js";import{text as t}from"../../../../ui/Text/Text.js";import{TokenLogo as n}from"../../../../ui/TokenLogo/TokenLogo.js";import"../../../../ui/TokenLogo/index.js";import"../../../../../ui/index.js";import{PROCESSING_STATE_SLOTS as r}from"../ProcessingState.slots.js";import{useProcessingStateContext as i}from"../context.js";import{styles as a}from"../ProcessingState.styles.js";import{splitAmount as o}from"./splitAmount.js";import{Fragment as s,jsx as c,jsxs as l}from"react/jsx-runtime";import*as u from"@stylexjs/stylex";function d(){let d=i(`ProcessingState.Hero`),{_:f}=e(),p=d.creditedTo??d.creditedAsset.symbol,m={symbol:d.creditedAsset.symbol,...d.creditedAsset.chainId===void 0?{}:{chainId:d.creditedAsset.chainId},...d.creditedAsset.address===void 0?{}:{address:d.creditedAsset.address},...d.creditedAsset.isNative===void 0?{}:{isNative:d.creditedAsset.isNative},...d.creditedAsset.logoUrl===void 0?{}:{logoUrl:d.creditedAsset.logoUrl}},h=d.amountUsd?o(d.amountUsd):void 0;return l(`div`,{"data-stridge-slot":r.hero,...u.props(a.hero),children:[c(t.span,{size:`caption`,fontWeight:`semibold`,leading:`tight`,tracking:`widest`,transform:`uppercase`,align:`center`,color:`tertiary`,children:f({id:`zYD5xm`,message:`Crediting`})}),h?l(s,{children:[l(`div`,{dir:`ltr`,...u.props(a.heroAmountRow),children:[h.glyph?c(t.span,{size:`2xl`,fontWeight:`semibold`,leading:`none`,tracking:`tight`,children:h.glyph}):null,c(t.span,{size:`4xl`,fontWeight:`semibold`,leading:`none`,tracking:`tight`,children:h.digits})]}),l(`div`,{dir:`ltr`,...u.props(a.heroSubLine),children:[c(n,{size:18,...m,hideChainBadge:!0,...u.props(a.heroSubLineIcon)}),l(t.span,{size:`sm`,fontWeight:`medium`,leading:`tight`,tracking:`tight`,color:`subdued`,children:[d.amount,` `,d.creditedAsset.symbol]})]})]}):l(`div`,{dir:`ltr`,...u.props(a.heroAmountRow),children:[c(n,{size:30,...m,hideChainBadge:!0,...u.props(a.heroAmountIcon)}),d.loading?null:c(t.span,{size:`4xl`,fontWeight:`semibold`,leading:`none`,tracking:`tight`,children:d.amount}),c(t.span,{size:d.loading?`4xl`:`xl`,fontWeight:`semibold`,leading:`none`,tracking:`tight`,children:d.creditedAsset.symbol})]}),c(t.span,{size:`meta`,fontWeight:`medium`,leading:`tight`,align:`center`,color:`subdued`,children:p})]})}export{d as ProcessingStateHero};
@@ -1 +1 @@
1
- "use client";import{useLingui as e}from"../../../../i18n/useLingui.js";import"../../../../../i18n/index.js";import{TxHashValue as t}from"../../../../primitives/TxHashValue/TxHashValue.js";import"../../../../primitives/TxHashValue/index.js";import{WalletValue as n}from"../../../../primitives/WalletValue/WalletValue.js";import"../../../../primitives/WalletValue/index.js";import{useProcessingStateContext as r}from"../context.js";import{ProcessingStateDetail as i}from"./Detail.js";import{jsx as a}from"react/jsx-runtime";function o({label:t}={}){let o=r(`ProcessingState.SourceRow`),{_:s}=e();if(!o.sourceWallet)return null;let{name:c,address:l,explorerUrl:u}=o.sourceWallet;return a(i,{label:t??s({id:`wdxz7K`,message:`Source`}),value:a(n,{name:c??s({id:`sb9Y58`,message:`Wallet`}),address:l,...u?{explorerUrl:u}:{}})})}function s({label:n}={}){let o=r(`ProcessingState.SourceTxRow`),{_:s}=e();return o.sourceTx?.hash?a(i,{label:n??s({id:`yrvWai`,message:`Source tx`}),value:a(t,{hash:o.sourceTx.hash,...o.sourceTx.explorerUrl?{explorerUrl:o.sourceTx.explorerUrl}:{}})}):null}function c({label:t}={}){let n=r(`ProcessingState.SubmittedAtRow`),{_:o}=e();return n.submittedAt===void 0?null:a(i,{label:t??o({id:`TT0aVH`,message:`Order submitted`}),value:n.submittedAt})}function l({label:t}={}){let n=r(`ProcessingState.DetectedAtRow`),{_:o}=e();return n.detectedAt===void 0?null:a(i,{label:t??o({id:`mvYQx_`,message:`Detected`}),value:n.detectedAt})}export{l as ProcessingStateDetectedAtRow,o as ProcessingStateSourceRow,s as ProcessingStateSourceTxRow,c as ProcessingStateSubmittedAtRow};
1
+ "use client";import{useLingui as e}from"../../../../i18n/useLingui.js";import"../../../../../i18n/index.js";import{TxHashValue as t}from"../../../../primitives/TxHashValue/TxHashValue.js";import"../../../../primitives/TxHashValue/index.js";import{WalletValue as n}from"../../../../primitives/WalletValue/WalletValue.js";import"../../../../primitives/WalletValue/index.js";import{ProcessingStateDetail as r}from"./Detail.js";import{useProcessingStateContext as i}from"../context.js";import{jsx as a}from"react/jsx-runtime";function o({label:t}={}){let o=i(`ProcessingState.SourceRow`),{_:s}=e();if(!o.sourceWallet)return null;let{name:c,address:l,explorerUrl:u}=o.sourceWallet;return a(r,{label:t??s({id:`wdxz7K`,message:`Source`}),value:a(n,{name:c??s({id:`sb9Y58`,message:`Wallet`}),address:l,...u?{explorerUrl:u}:{},density:`compact`,hideIcon:!0})})}function s({label:n}={}){let o=i(`ProcessingState.SourceTxRow`),{_:s}=e();return o.sourceTx?.hash?a(r,{label:n??s({id:`yrvWai`,message:`Source tx`}),value:a(t,{hash:o.sourceTx.hash,...o.sourceTx.explorerUrl?{explorerUrl:o.sourceTx.explorerUrl}:{}})}):null}function c({label:t}={}){let n=i(`ProcessingState.SubmittedAtRow`),{_:o}=e();return n.submittedAt===void 0?null:a(r,{label:t??o({id:`TT0aVH`,message:`Order submitted`}),value:n.submittedAt})}function l({label:t}={}){let n=i(`ProcessingState.DetectedAtRow`),{_:o}=e();return n.detectedAt===void 0?null:a(r,{label:t??o({id:`mvYQx_`,message:`Detected`}),value:n.detectedAt})}export{l as ProcessingStateDetectedAtRow,o as ProcessingStateSourceRow,s as ProcessingStateSourceTxRow,c as ProcessingStateSubmittedAtRow};
@@ -1 +1 @@
1
- "use client";import{useLingui as e}from"../../../../i18n/useLingui.js";import"../../../../../i18n/index.js";import{text as t}from"../../../../ui/Text/Text.js";import"../../../../../ui/index.js";import{useProcessingStateContext as n}from"../context.js";import{PROCESSING_STATE_SLOTS as r}from"../ProcessingState.slots.js";import{styles as i}from"../ProcessingState.styles.js";import{jsx as a,jsxs as o}from"react/jsx-runtime";import*as s from"@stylexjs/stylex";const c=[i.statusPillDotDelay0,i.statusPillDotDelay1,i.statusPillDotDelay2,i.statusPillDotDelay3,i.statusPillDotDelay4,i.statusPillDotDelay5],l=[{cx:3,cy:3},{cx:11,cy:3},{cx:3,cy:9},{cx:11,cy:9},{cx:3,cy:15},{cx:11,cy:15}];function u({label:u}={}){let d=n(`ProcessingState.StatusPill`),{_:f}=e(),p=u??d.statusPillLabel??f({id:`0lHlRj`,message:`In transit`});return a(`div`,{"data-stridge-slot":r.statusPillWrap,...s.props(i.statusPillWrap),children:o(`div`,{"data-stridge-slot":r.statusPill,...s.props(i.statusPill),children:[a(`svg`,{"aria-hidden":!0,viewBox:`0 0 14 18`,xmlns:`http://www.w3.org/2000/svg`,fill:`currentColor`,...s.props(i.statusPillIcon),children:l.map((e,t)=>a(`circle`,{cx:e.cx,cy:e.cy,r:`1.6`,...s.props(i.statusPillDot,c[t])},`dot-${e.cx}-${e.cy}`))}),a(t.span,{size:`sm`,fontWeight:`medium`,leading:`tight`,children:p})]})})}export{u as ProcessingStateStatusPill};
1
+ "use client";import{useLingui as e}from"../../../../i18n/useLingui.js";import"../../../../../i18n/index.js";import{text as t}from"../../../../ui/Text/Text.js";import"../../../../../ui/index.js";import{PROCESSING_STATE_SLOTS as n}from"../ProcessingState.slots.js";import{useProcessingStateContext as r}from"../context.js";import{styles as i}from"../ProcessingState.styles.js";import{jsx as a,jsxs as o}from"react/jsx-runtime";import*as s from"@stylexjs/stylex";const c=[i.statusPillDotDelay0,i.statusPillDotDelay1,i.statusPillDotDelay2,i.statusPillDotDelay3,i.statusPillDotDelay4,i.statusPillDotDelay5],l=[{cx:3,cy:3},{cx:11,cy:3},{cx:3,cy:9},{cx:11,cy:9},{cx:3,cy:15},{cx:11,cy:15}];function u({label:u}={}){let d=r(`ProcessingState.StatusPill`),{_:f}=e(),p=u??d.statusPillLabel??f({id:`0lHlRj`,message:`In transit`});return a(`div`,{"data-stridge-slot":n.statusPillWrap,...s.props(i.statusPillWrap),children:o(`div`,{"data-stridge-slot":n.statusPill,...s.props(i.statusPill),children:[a(`svg`,{"aria-hidden":!0,viewBox:`0 0 14 18`,xmlns:`http://www.w3.org/2000/svg`,fill:`currentColor`,...s.props(i.statusPillIcon),children:l.map((e,t)=>a(`circle`,{cx:e.cx,cy:e.cy,r:`1.6`,...s.props(i.statusPillDot,c[t])},`dot-${e.cx}-${e.cy}`))}),a(t.span,{size:`sm`,fontWeight:`medium`,leading:`tight`,children:p})]})})}export{u as ProcessingStateStatusPill};
@@ -0,0 +1 @@
1
+ function e(e){let t=e.charAt(0);return!t||/[0-9<]/.test(t)?{glyph:``,digits:e}:{glyph:t,digits:e.slice(1)}}export{e as splitAmount};
@@ -1,3 +1,3 @@
1
- import { ProcessingStateActionsProps, ProcessingStateAsset, ProcessingStateBodyProps, ProcessingStateDetailProps, ProcessingStateDetailsProps, ProcessingStateDialogProps, ProcessingStateHeaderProps, ProcessingStateHeroProps, ProcessingStateProps, ProcessingStateRowProps, ProcessingStateSourceWallet, ProcessingStateStatusPillProps, ProcessingStateTxRef } from "./types.js";
1
+ import { ProcessingStateAsset, ProcessingStateBodyProps, ProcessingStateDetailProps, ProcessingStateDetailsProps, ProcessingStateDialogProps, ProcessingStateHeaderProps, ProcessingStateHeroProps, ProcessingStateProps, ProcessingStateRowProps, ProcessingStateSourceWallet, ProcessingStateStatusPillProps, ProcessingStateTxRef } from "./types.js";
2
2
  import { ProcessingState } from "./ProcessingState.js";
3
3
  import { PROCESSING_STATE_SLOTS, ProcessingStateSlot } from "./ProcessingState.slots.js";
@@ -58,6 +58,12 @@ type ProcessingStateDialogProps = ProcessingStateProps & DialogShellControls;
58
58
  interface ProcessingStateProps {
59
59
  /** Pre-formatted hero amount string (e.g. `"1.99580"`). Pure layout — no widget-side format. */
60
60
  amount: string;
61
+ /**
62
+ * Optional pre-formatted USD hero figure (e.g. `"$4.01"`, `"< $0.01"`). When set, the Hero
63
+ * promotes it to the primary line and demotes `amount` + `creditedAsset.symbol` to a subline.
64
+ * When omitted, the Hero renders the token amount as the primary line (default).
65
+ */
66
+ amountUsd?: string;
61
67
  /**
62
68
  * The asset that's crediting. Drives the Hero icon, the Hero amount-line symbol, and the default destination
63
69
  * caption.
@@ -107,15 +113,6 @@ interface ProcessingStateProps {
107
113
  * inside `<ProcessingState.DetectedAtRow />`.
108
114
  */
109
115
  detectedAt?: string;
110
- /**
111
- * Click handler routed to {@link ProcessingState.Actions}.
112
- */
113
- onClose?: () => void;
114
- /**
115
- * Optional override for the Actions CTA label. Defaults to
116
- * `"Close — we'll notify you"`.
117
- */
118
- closeLabel?: string;
119
116
  /**
120
117
  * Compound parts; see `ProcessingState.Header`, `ProcessingState.Hero`, etc.
121
118
  */
@@ -196,21 +193,5 @@ interface ProcessingStateRowProps {
196
193
  /** Override the row label. */
197
194
  label?: string;
198
195
  }
199
- /**
200
- * Props for `ProcessingState.Actions`.
201
- */
202
- interface ProcessingStateActionsProps {
203
- /**
204
- * Optional override for the CTA click handler. Defaults to the
205
- * `onClose` set on the {@link ProcessingState} root.
206
- */
207
- onClose?: () => void;
208
- /**
209
- * Optional override for the CTA label. Defaults to the `closeLabel`
210
- * set on the {@link ProcessingState} root, falling back to
211
- * `"Close — we'll notify you"`.
212
- */
213
- closeLabel?: string;
214
- }
215
196
  //#endregion
216
- export { ProcessingStateActionsProps, ProcessingStateAsset, ProcessingStateBodyProps, ProcessingStateDetailProps, ProcessingStateDetailsProps, ProcessingStateDialogProps, ProcessingStateHeaderProps, ProcessingStateHeroProps, ProcessingStateProps, ProcessingStateRowProps, ProcessingStateSourceWallet, ProcessingStateStatusPillProps, ProcessingStateTxRef };
197
+ export { ProcessingStateAsset, ProcessingStateBodyProps, ProcessingStateDetailProps, ProcessingStateDetailsProps, ProcessingStateDialogProps, ProcessingStateHeaderProps, ProcessingStateHeroProps, ProcessingStateProps, ProcessingStateRowProps, ProcessingStateSourceWallet, ProcessingStateStatusPillProps, ProcessingStateTxRef };
@@ -1 +1 @@
1
- "use client";import{useLingui as e}from"../../../../i18n/useLingui.js";import"../../../../../i18n/index.js";import{ExternalLinkIcon as t}from"../../../../icons/ExternalLinkIcon.js";import"../../../../../icons/index.js";import{Button as n}from"../../../../ui/Button/Button.js";import"../../../../ui/Button/index.js";import{ExternalLink as r}from"../../../../ui/ExternalLink/ExternalLink.js";import"../../../../ui/ExternalLink/index.js";import{text as i}from"../../../../ui/Text/Text.js";import"../../../../../ui/index.js";import{useSuccessStateContext as a}from"../context.js";import{SUCCESS_STATE_SLOTS as o}from"../SuccessState.slots.js";import{styles as s}from"../SuccessState.styles.js";import{jsx as c,jsxs as l}from"react/jsx-runtime";import*as u from"@stylexjs/stylex";function d({onDone:d,onClose:f,doneLabel:p,closeLabel:m}={}){let h=a(`SuccessState.Actions`),{_:g}=e(),_=d??h.onDone,v=f??h.onClose,y=typeof _==`function`,b=typeof v==`function`,x=p??h.doneLabel??g({id:`DPfwMq`,message:`Done`}),S=m??h.closeLabel??g({id:`yz7wBu`,message:`Close`});return l(`div`,{"data-stridge-slot":o.actions,...u.props(s.actions),children:[l(`div`,{...u.props(s.actionRow,b&&s.actionRowPair),children:[b?c(n,{size:`cta`,variant:`secondary`,onClick:v,...u.props(s.closeButton,s.doneButtonInteractive),children:c(i.span,{size:`callout`,fontWeight:`semibold`,leading:`tight`,tracking:`tight`,color:`inherit`,children:S})}):null,c(n,{size:`cta`,onClick:y?_:void 0,...u.props(s.doneButton,y?s.doneButtonInteractive:s.doneButtonInert),children:c(i.span,{size:`callout`,fontWeight:`semibold`,leading:`tight`,tracking:`tight`,color:`inherit`,children:x})})]}),h.explorer?c(r,{href:h.explorer.url,suffix:c(t,{"aria-hidden":!0}),...u.props(s.explorerLink),children:c(i.span,{size:`meta`,fontWeight:`medium`,leading:`tight`,color:`inherit`,children:h.explorer.label??g({id:`Sjplg3`,message:`View on Explorer`})})}):null]})}export{d as SuccessStateActions};
1
+ "use client";import{useLingui as e}from"../../../../i18n/useLingui.js";import"../../../../../i18n/index.js";import{ExternalLink as t}from"../../../../ui/ExternalLink/ExternalLink.js";import"../../../../ui/ExternalLink/index.js";import{ExternalLinkIcon as n}from"../../../../icons/ExternalLinkIcon.js";import"../../../../../icons/index.js";import{Button as r}from"../../../../ui/Button/Button.js";import"../../../../ui/Button/index.js";import{text as i}from"../../../../ui/Text/Text.js";import"../../../../../ui/index.js";import{useSuccessStateContext as a}from"../context.js";import{SUCCESS_STATE_SLOTS as o}from"../SuccessState.slots.js";import{styles as s}from"../SuccessState.styles.js";import{jsx as c,jsxs as l}from"react/jsx-runtime";import*as u from"@stylexjs/stylex";function d({onDone:d,onClose:f,doneLabel:p,closeLabel:m}={}){let h=a(`SuccessState.Actions`),{_:g}=e(),_=d??h.onDone,v=f??h.onClose,y=typeof _==`function`,b=typeof v==`function`,x=p??h.doneLabel??g({id:`DPfwMq`,message:`Done`}),S=m??h.closeLabel??g({id:`yz7wBu`,message:`Close`});return l(`div`,{"data-stridge-slot":o.actions,...u.props(s.actions),children:[l(`div`,{...u.props(s.actionRow,b&&s.actionRowPair),children:[b?c(r,{size:`cta`,variant:`secondary`,onClick:v,...u.props(s.closeButton,s.doneButtonInteractive),children:c(i.span,{size:`callout`,fontWeight:`semibold`,leading:`tight`,tracking:`tight`,color:`inherit`,children:S})}):null,c(r,{size:`cta`,onClick:y?_:void 0,...u.props(s.doneButton,y?s.doneButtonInteractive:s.doneButtonInert),children:c(i.span,{size:`callout`,fontWeight:`semibold`,leading:`tight`,tracking:`tight`,color:`inherit`,children:x})})]}),h.explorer?c(t,{href:h.explorer.url,suffix:c(n,{"aria-hidden":!0}),...u.props(s.explorerLink),children:c(i.span,{size:`meta`,fontWeight:`medium`,leading:`tight`,color:`inherit`,children:h.explorer.label??g({id:`Sjplg3`,message:`View on Explorer`})})}):null]})}export{d as SuccessStateActions};
@@ -1 +1 @@
1
- "use client";import{text as e}from"../../../../ui/Text/Text.js";import{TokenLogo as t}from"../../../../ui/TokenLogo/TokenLogo.js";import"../../../../ui/TokenLogo/index.js";import"../../../../../ui/index.js";import{SUCCESS_STATE_SLOTS as n}from"../SuccessState.slots.js";import{styles as r}from"../SuccessState.styles.js";import{jsx as i,jsxs as a}from"react/jsx-runtime";import*as o from"@stylexjs/stylex";function s({amount:s,symbol:c,chainId:l,address:u,isNative:d,logoUrl:f}){return a(`span`,{"data-stridge-slot":n.assetValue,...o.props(r.assetValue),children:[i(t,{size:`md`,symbol:c,...l===void 0?{}:{chainId:l},...u===void 0?{}:{address:u},...d===void 0?{}:{isNative:d},...f===void 0?{}:{logoUrl:f},hideChainBadge:!0}),i(e.span,{size:`sm`,fontWeight:`medium`,leading:`tight`,children:s}),i(e.span,{size:`sm`,fontWeight:`medium`,leading:`tight`,color:`subdued`,children:c})]})}export{s as SuccessStateAssetValue};
1
+ "use client";import{text as e}from"../../../../ui/Text/Text.js";import{TokenLogo as t}from"../../../../ui/TokenLogo/TokenLogo.js";import"../../../../ui/TokenLogo/index.js";import"../../../../../ui/index.js";import{SUCCESS_STATE_SLOTS as n}from"../SuccessState.slots.js";import{styles as r}from"../SuccessState.styles.js";import{jsx as i,jsxs as a}from"react/jsx-runtime";import*as o from"@stylexjs/stylex";function s({amount:s,symbol:c,chainId:l,address:u,isNative:d,logoUrl:f}){return a(`span`,{"data-stridge-slot":n.assetValue,...o.props(r.assetValue),children:[i(t,{size:`md`,symbol:c,...l===void 0?{}:{chainId:l},...u===void 0?{}:{address:u},...d===void 0?{}:{isNative:d},...f===void 0?{}:{logoUrl:f},hideChainBadge:!0}),i(e.span,{size:`xs`,fontWeight:`semibold`,leading:`tight`,children:s}),i(e.span,{size:`xs`,fontWeight:`medium`,leading:`tight`,color:`subdued`,children:c})]})}export{s as SuccessStateAssetValue};
@@ -1 +1 @@
1
- "use client";import{ArrowRightIcon as e}from"../../../../icons/ArrowRightIcon.js";import"../../../../../icons/index.js";import{text as t}from"../../../../ui/Text/Text.js";import"../../../../../ui/index.js";import{SUCCESS_STATE_SLOTS as n}from"../SuccessState.slots.js";import{styles as r}from"../SuccessState.styles.js";import{Fragment as i}from"react";import{jsx as a,jsxs as o}from"react/jsx-runtime";import*as s from"@stylexjs/stylex";function c({hops:c}){return a(`span`,{"data-stridge-slot":n.routeValue,...s.props(r.routeValue),children:c.map((n,c)=>o(i,{children:[c>0?a(e,{"aria-hidden":!0,...s.props(r.routeArrow)}):null,a(t.span,{size:`sm`,fontWeight:`medium`,leading:`tight`,children:n})]},`${n}-${c}`))})}export{c as SuccessStateRouteValue};
1
+ "use client";import{ArrowRightIcon as e}from"../../../../icons/ArrowRightIcon.js";import"../../../../../icons/index.js";import{text as t}from"../../../../ui/Text/Text.js";import"../../../../../ui/index.js";import{SUCCESS_STATE_SLOTS as n}from"../SuccessState.slots.js";import{styles as r}from"../SuccessState.styles.js";import{Fragment as i}from"react";import{jsx as a,jsxs as o}from"react/jsx-runtime";import*as s from"@stylexjs/stylex";function c({hops:c}){return a(`span`,{"data-stridge-slot":n.routeValue,...s.props(r.routeValue),children:c.map((n,c)=>o(i,{children:[c>0?a(e,{"aria-hidden":!0,...s.props(r.routeArrow)}):null,a(t.span,{size:`xs`,fontWeight:`semibold`,leading:`tight`,children:n})]},`${n}-${c}`))})}export{c as SuccessStateRouteValue};
@@ -1 +1 @@
1
- "use client";import{useLingui as e}from"../../../../i18n/useLingui.js";import"../../../../../i18n/index.js";import{text as t}from"../../../../ui/Text/Text.js";import"../../../../../ui/index.js";import{SUCCESS_STATE_SLOTS as n}from"../SuccessState.slots.js";import{jsx as r}from"react/jsx-runtime";function i({children:i}){let{_:a}=e(),o=i??a({id:`olEUh2`,message:`Successful`});return r(t.span,{"data-stridge-slot":n.statusPill,size:`sm`,fontWeight:`semibold`,leading:`tight`,tracking:`tight`,color:`success`,children:o})}export{i as SuccessStateStatusPill};
1
+ "use client";import{useLingui as e}from"../../../../i18n/useLingui.js";import"../../../../../i18n/index.js";import{text as t}from"../../../../ui/Text/Text.js";import"../../../../../ui/index.js";import{SUCCESS_STATE_SLOTS as n}from"../SuccessState.slots.js";import{jsx as r}from"react/jsx-runtime";function i({children:i}){let{_:a}=e(),o=i??a({id:`olEUh2`,message:`Successful`});return r(t.span,{"data-stridge-slot":n.statusPill,size:`xs`,fontWeight:`semibold`,leading:`tight`,tracking:`tight`,color:`success`,children:o})}export{i as SuccessStateStatusPill};
@@ -1,44 +1,148 @@
1
+ import { DepositMethodConfig, DepositMethodsConfig } from "../flows/deposit/orchestrator/types.js";
1
2
  import { KitI18nConfig } from "../shared/i18n/createKitI18n.js";
3
+ import { SupportConfig } from "../shared/support/types.js";
4
+ import { TermsConfig } from "../shared/terms/types.js";
2
5
  import { StridgeEnvironment } from "../drivers/stridge/types.js";
3
- import { ChainInput } from "../shared/chains/index.js";
6
+ import { Address } from "viem";
4
7
  import { ReactNode } from "react";
5
8
  import * as _$react_jsx_runtime0 from "react/jsx-runtime";
6
9
 
7
10
  //#region src/stridge/StridgeProvider.d.ts
8
11
  /**
9
- * Settlement-asset tuple. `chain` accepts any of: an EIP-155 chain id (`56`), a slug from the
10
- * `chains` namespace (`chains.bsc`), or a Stridge `network_id` string (`"9006"`). `symbol` is
11
- * the asset symbol on that chain (e.g. `"USDC"`). The kit normalizes `chain` internally the
12
- * gateway always receives the wire-shape `network_id`.
12
+ * Settlement-asset tuple. `networkId` is the Stridge network id the wire value the gateway
13
+ * routes against, read straight off `Uda.supportedAssets()` (`"9006"` for BSC, `"195"` for
14
+ * Tron, …). The kit forwards it to `gateway/start` verbatim; it does not ship a chain catalog,
15
+ * so any network the backend lists works without a kit release. `symbol` is the asset symbol
16
+ * on that network (e.g. `"USDC"`).
13
17
  *
14
18
  * The same `asset` drives both flows:
15
19
  *
16
- * - **Deposit** settles to this `(chain, symbol)` at the connected wallet (same-owner pattern).
17
- * - **Withdraw** sources from this `(chain, symbol)` of the user's on-chain balance.
20
+ * - **Deposit** settles to this `(networkId, symbol)` at the connected wallet (same-owner pattern).
21
+ * - **Withdraw** sources from this `(networkId, symbol)` of the user's on-chain balance.
18
22
  */
19
23
  interface StridgeAsset {
20
- chain: ChainInput;
24
+ networkId: string;
21
25
  symbol: string;
22
26
  }
23
27
  /**
24
- * Per-flow deposit tuning. Pass `deposit: {}` to enable the deposit flow with defaults.
28
+ * Settlement destination for the deposit flow. The kit does not infer a destination from any
29
+ * connected wagmi wallet — businesses pass the treasury / settlement address where deposited
30
+ * funds should land.
31
+ *
32
+ * @remarks
33
+ * If the gateway-kit admin config has "Same-owner only" enabled (default), `address` must
34
+ * equal {@link StridgeDepositFlowConfig.owner | the deposit owner}. Turn the toggle off — and
35
+ * optionally pair it with a destination whitelist — to route funds to an address that differs
36
+ * from the owner.
37
+ */
38
+ interface StridgeDepositDestination {
39
+ address: Address;
40
+ }
41
+ /**
42
+ * Stridge `gateway/start.owner` identifier for a single flow. Scopes UDA provisioning and the
43
+ * proactive `gateway/{owner}` settlement poll. The kit treats the address as opaque — businesses
44
+ * pick whatever per-customer (real EOA, derived per-user EOA) or shared (treasury) granularity
45
+ * fits their model.
46
+ */
47
+ interface StridgeFlowOwner {
48
+ address: Address;
49
+ }
50
+ /**
51
+ * Per-flow deposit tuning.
25
52
  */
26
53
  interface StridgeDepositFlowConfig {
27
54
  /**
28
- * Low-balance / amount-entry USD floor. Defaults to the kit's internal default
29
- * (`STRIDGE_DEFAULT_MIN_DEPOSIT_USD`) when omitted.
55
+ * Settlement destination address where settled brand-currency funds land at completion.
56
+ * Required when the deposit flow is enabled.
30
57
  */
31
- minDepositUsd?: number;
58
+ destination: StridgeDepositDestination;
59
+ /**
60
+ * Owner used as `gateway/start.owner` for deposit UDAs. Optional — falls back to the
61
+ * connected wagmi wallet address, then to `dev.userAddressOverride`. Set explicitly when
62
+ * the customer is identified by something other than their wagmi address (e.g. a derived
63
+ * per-user identifier, or a shared business owner that is not the wagmi-connected EOA).
64
+ */
65
+ owner?: StridgeFlowOwner;
66
+ /**
67
+ * Lower USD bound on the deposit amount. Drives the asset-picker's "Low Balance" pill,
68
+ * prefills the amount-entry hero, and gates the confirm CTA — typing below the floor flips
69
+ * the footer to "Update order" and snaps the amount up on click. The kit ships no default:
70
+ * omit to leave the deposit without a host-configured floor (the picker still surfaces any
71
+ * per-chain `min_deposit_usd` the gateway publishes).
72
+ */
73
+ minAmountUsd?: number;
74
+ /**
75
+ * Upper USD bound on the deposit amount. When set, the effective ceiling is
76
+ * `min(walletBalanceUsd, maxAmountUsd)`. Typing above it surfaces an inline notice and the
77
+ * footer CTA snaps the amount down to the cap on click. Omit to let the wallet balance be
78
+ * the only ceiling.
79
+ */
80
+ maxAmountUsd?: number;
32
81
  /**
33
82
  * Metadata persisted on the UDA at `gateway/start` time. Echoed back on `gateway/{owner}`
34
83
  * and webhook payloads. Treat as untrusted display data.
35
84
  */
36
85
  metadata?: Record<string, unknown>;
86
+ /**
87
+ * Per-method host disable lever for the deposit-method picker. The kit ships no built-in
88
+ * inference (embedded-wallet detection, KYC tier, region, …) — the host decides eligibility
89
+ * and passes `{ disabled: true, disabledHint: "…" }` per method. Disabled tiles stay in the
90
+ * picker (preserves "I can see my options" UX), render natively disabled, and show
91
+ * `disabledHint` inline as the tile's meta line — replacing the address+balance reading on
92
+ * the wallet tile and the `"No limit · Instant"` reading on the transfer tile so the
93
+ * explanation is unmissable. Omitting the field keeps both methods enabled.
94
+ *
95
+ * @example
96
+ * ```tsx
97
+ * <StridgeProvider
98
+ * flows={{
99
+ * deposit: {
100
+ * destination: { address: treasuryAddress },
101
+ * methods: {
102
+ * wallet: isEmbeddedWallet
103
+ * ? { disabled: true, disabledHint: "Use Transfer Crypto, or connect an external wallet to pay from a wallet balance." }
104
+ * : undefined,
105
+ * },
106
+ * },
107
+ * }}
108
+ * >
109
+ * ```
110
+ */
111
+ methods?: StridgeDepositMethodsConfig;
37
112
  }
38
113
  /**
39
- * Per-flow withdraw tuning. Pass `withdraw: {}` to enable the withdraw flow with defaults.
114
+ * Host-supplied disable lever for a single payment method on the deposit-method picker. Identical
115
+ * shape to the kit-internal {@link DepositMethodConfig} — re-exported under a Stridge-prefixed
116
+ * name so all `flows.deposit.*` types live alongside the provider.
117
+ */
118
+ type StridgeDepositMethodConfig = DepositMethodConfig;
119
+ /**
120
+ * Per-method host configuration for the deposit picker. Omitting a method keeps default behavior.
121
+ * Re-export of {@link DepositMethodsConfig} under a Stridge-prefixed name.
122
+ */
123
+ type StridgeDepositMethodsConfig = DepositMethodsConfig;
124
+ /**
125
+ * Per-flow withdraw tuning.
40
126
  */
41
127
  interface StridgeWithdrawFlowConfig {
128
+ /**
129
+ * Owner used as `gateway/start.owner` for every withdraw UDA the flow provisions. Required —
130
+ * the withdraw flow has no wagmi fallback because the business (not the end-user) is the
131
+ * party broadcasting the source-chain tx to the UDA.
132
+ */
133
+ owner: StridgeFlowOwner;
134
+ /**
135
+ * Lower USD bound on the withdraw amount. When set, the form blocks submit with a localized
136
+ * "Min $X" CTA while the typed amount sits below the floor. Omit to leave the form without a
137
+ * lower bound (only the wallet balance / non-zero gate apply).
138
+ */
139
+ minAmountUsd?: number;
140
+ /**
141
+ * Upper USD bound on the withdraw amount. When set, the form blocks submit with a localized
142
+ * "Max $X" CTA while the typed amount sits above the cap. Omit to let the brand-currency
143
+ * balance be the only ceiling.
144
+ */
145
+ maxAmountUsd?: number;
42
146
  /**
43
147
  * Metadata persisted on every UDA the withdraw flow provisions. Merged under the kit-set
44
148
  * `kit_flow` / `kit_version` / `source` keys (kit keys win).
@@ -61,6 +165,32 @@ interface StridgeAppearance {
61
165
  * (`"rtl"` for Arabic, Hebrew, Persian, Urdu) when omitted.
62
166
  */
63
167
  direction?: "ltr" | "rtl";
168
+ /**
169
+ * Controls the "Powered by Stridge" attribution row inside every gateway widget frame.
170
+ * `"visible"` (default) auto-mounts the brand row at the bottom of every step; `"hidden"`
171
+ * suppresses the auto-mount for white-label installs.
172
+ */
173
+ attribution?: "visible" | "hidden";
174
+ }
175
+ /**
176
+ * Development / preview-only knobs. Grouped under a single `dev` prop so production integrations
177
+ * never reach for these accidentally and `Cmd-F dev` finds every preview-only escape hatch in one
178
+ * place. Read-only paths under `dev.userAddressOverride` (gateway/start, balances, addresses,
179
+ * brand) work end-to-end; signing still requires a real wagmi connector.
180
+ */
181
+ interface StridgeDevConfig {
182
+ /**
183
+ * Address-only override used when no wagmi account is connected. Lets demos, sample apps, and
184
+ * read-only previews bootstrap the kit (gateway/start, balances, deposit addresses, brand)
185
+ * against a pasted EOA without firing up a wallet. The wagmi-connected account always wins —
186
+ * the override only fills in when `useAccount()` returns no address.
187
+ *
188
+ * Signing still requires a real connector. The submit and broadcast paths call into
189
+ * `createWagmiSigner`, which surfaces a user-readable "Connect a wallet to sign and submit
190
+ * the deposit." error if it's invoked without an active connector. Read-only paths
191
+ * (balances, addresses, brand, quotes) work end-to-end under the override.
192
+ */
193
+ userAddressOverride?: Address;
64
194
  }
65
195
  /**
66
196
  * Persistence configuration for the kit's per-tab state (settlement banner acks, future
@@ -95,8 +225,8 @@ declare namespace StridgeProvider {
95
225
  */
96
226
  environment?: StridgeEnvironment;
97
227
  /**
98
- * Settlement asset — the single source of truth for which `(chain, symbol)` the gateway
99
- * operates in. Deposit settles to this asset; withdraw sources from this asset.
228
+ * Settlement asset — the single source of truth for which `(networkId, symbol)` the
229
+ * gateway operates in. Deposit settles to this asset; withdraw sources from this asset.
100
230
  */
101
231
  asset: StridgeAsset;
102
232
  /**
@@ -113,6 +243,27 @@ declare namespace StridgeProvider {
113
243
  i18n?: KitI18nConfig;
114
244
  /** Persistence configuration for kit-internal state. */
115
245
  storage?: StridgeStorageConfig;
246
+ /**
247
+ * Development / preview-only knobs. Grouped under `dev` so production integrations never
248
+ * reach for them accidentally — every preview escape hatch surfaces with the same `dev.`
249
+ * prefix at the call site.
250
+ */
251
+ dev?: StridgeDevConfig;
252
+ /**
253
+ * Customer-support entry point configuration.
254
+ *
255
+ * Omit to use Stridge Intercom. Provide `url`, `onOpen`, or both to use merchant-owned
256
+ * support and opt out of Stridge messenger globals.
257
+ */
258
+ support?: SupportConfig;
259
+ /**
260
+ * Terms link configuration.
261
+ *
262
+ * Omit to point the kit's "terms" links at Stridge's terms page. Provide `url`,
263
+ * `onSelect`, or both to swap in merchant-owned legal copy. Covers both the
264
+ * confirm-deposit disclaimer and the transfer-crypto address row.
265
+ */
266
+ terms?: TermsConfig;
116
267
  /** Optional className applied to the kit's scope root `<div>`. */
117
268
  className?: string;
118
269
  children?: ReactNode;
@@ -129,12 +280,12 @@ declare namespace StridgeProvider {
129
280
  *
130
281
  * @example
131
282
  * ```tsx
132
- * import { StridgeProvider, chains } from "@stridge/kit";
283
+ * import { StridgeProvider } from "@stridge/kit";
133
284
  * import { DepositDialog } from "@stridge/kit/deposit/dialog";
134
285
  *
135
286
  * <StridgeProvider
136
287
  * gatewayKey={process.env.NEXT_PUBLIC_STRIDGE_GATEWAY_KEY!}
137
- * asset={{ chain: chains.bsc, symbol: "USDC" }}
288
+ * asset={{ networkId: "9006", symbol: "USDC" }}
138
289
  * flows={{ deposit: {} }}
139
290
  * appearance={{ theme: "dark", accent: "oklch(78% 0.15 240)", radius: "rounded" }}
140
291
  * >
@@ -151,8 +302,11 @@ declare function StridgeProvider({
151
302
  appearance,
152
303
  i18n,
153
304
  storage,
305
+ dev,
306
+ support,
307
+ terms,
154
308
  className,
155
309
  children
156
310
  }: StridgeProvider.Props): _$react_jsx_runtime0.JSX.Element;
157
311
  //#endregion
158
- export { StridgeAppearance, StridgeAsset, StridgeDepositFlowConfig, StridgeProvider, StridgeStorageConfig, StridgeWithdrawFlowConfig };
312
+ export { StridgeAppearance, StridgeAsset, StridgeDepositDestination, StridgeDepositFlowConfig, StridgeDepositMethodConfig, StridgeDepositMethodsConfig, StridgeFlowOwner, StridgeProvider, StridgeStorageConfig, StridgeWithdrawFlowConfig };
@@ -1 +1 @@
1
- "use client";import{normalizeChainToNetworkId as e}from"../shared/chains/index.js";import{createKitI18n as t}from"../shared/i18n/createKitI18n.js";import"../i18n/index.js";import{StridgeContext as n}from"./StridgeContext.js";import{createStridgeDepositDriver as r}from"../drivers/stridge/createStridgeDepositDriver.js";import{createStridgeWithdrawDriver as i}from"../drivers/stridge/createStridgeWithdrawDriver.js";import"../_internal/drivers/stridge/index.js";import{KitProvider as a}from"../KitProvider.js";import{createStubDepositDriver as o,createStubWithdrawDriver as s}from"./stubs.js";import{useMemo as c,useRef as l,useSyncExternalStore as u}from"react";import{jsx as d}from"react/jsx-runtime";import{useAccount as f,useConfig as p}from"wagmi";function m({gatewayKey:m,environment:h,asset:g,flows:_,appearance:v,i18n:y,storage:b,className:x,children:S}){if(!_.deposit&&!_.withdraw)throw Error("<StridgeProvider /> requires at least one of `flows.deposit` or `flows.withdraw`.");if(!g)throw Error("<StridgeProvider /> requires `asset: { chain, symbol }`.");let C=p(),{address:w}=f(),T=c(()=>t(y??{}),[y?.locale,y?.catalogs]),E=l(T);E.current=T;let D=c(()=>e(g.chain),[g.chain]),O=g.symbol,k=_.deposit,A=_.withdraw,j=c(()=>{if(!(!k||!w))return r({userAddress:w,projectKey:m,destination:{network_id:D,asset_symbol:O},wagmiConfig:C,getI18n:()=>E.current,...h?{environment:h}:{},...k.minDepositUsd===void 0?{}:{minDepositUsd:k.minDepositUsd},...k.metadata?{metadata:k.metadata}:{}})},[k,w,m,h,D,O,C]),M=c(()=>o(),[]),N=k?j??M:void 0,P=c(()=>{if(!(!A||!w))return i({userAddress:w,projectKey:m,currency:{networkId:D,assetSymbol:O},wagmiConfig:C,getI18n:()=>E.current,...h?{environment:h}:{},...A.metadata?{metadata:A.metadata}:{}})},[A,w,m,h,D,O,C]),F=c(()=>s(),[]),I=A?P??F:void 0,L=j??P,R=u(e=>L?.subscribe(e)??(()=>{}),()=>{if(j){let e=j.getSnapshot();return e.brand.status===`ready`&&e.target.status===`ready`}return P?P.getSnapshot().receiveOptions.status===`ready`:!1},()=>!1);return d(n,{value:c(()=>({isReady:R,driver:j}),[R,j]),children:d(a,{theme:v?.theme,accent:v?.accent,radius:v?.radius,direction:v?.direction,i18n:y,storage:b?.driver,storageNamespace:b?.namespace,className:x,...N?{deposit:N}:{},...I?{withdraw:I}:{},children:S})})}export{m as StridgeProvider};
1
+ "use client";import{createKitI18n as e}from"../shared/i18n/createKitI18n.js";import"../i18n/index.js";import{StridgeContext as t}from"./StridgeContext.js";import{createStridgeDepositDriver as n}from"../drivers/stridge/createStridgeDepositDriver.js";import{createStridgeWithdrawDriver as r}from"../drivers/stridge/createStridgeWithdrawDriver.js";import"../_internal/drivers/stridge/index.js";import{KitProvider as i}from"../KitProvider.js";import{resolveSupport as a}from"../shared/support/resolveSupport.js";import{useIntercomMerchantContext as o}from"../shared/support/useIntercomMerchantContext.js";import{useMerchantContext as s}from"../shared/support/useMerchantContext.js";import"../shared/support/index.js";import{useOptionalWagmi as c}from"./optionalWagmi.js";import{createStubDepositDriver as l,createStubWithdrawDriver as u}from"./stubs.js";import{useMemo as d,useRef as f,useSyncExternalStore as p}from"react";import{jsx as m}from"react/jsx-runtime";function h({gatewayKey:h,environment:g,asset:_,flows:v,appearance:y,i18n:b,storage:x,dev:S,support:C,terms:w,className:T,children:E}){if(!v.deposit&&!v.withdraw)throw Error("<StridgeProvider /> requires at least one of `flows.deposit` or `flows.withdraw`.");if(!_)throw Error("<StridgeProvider /> requires `asset: { networkId, symbol }`.");let{config:D,address:O}=c(),k=d(()=>e(b??{}),[b?.locale,b?.messages]),A=f(k);A.current=k;let j=_.networkId,M=_.symbol,N=v.deposit,P=v.withdraw,F=N?.owner?.address??O??S?.userAddressOverride,I=P?.owner.address,L=d(()=>{if(!(!N||!F))return n({userAddress:F,projectKey:h,destination:{network_id:j,asset_symbol:M,to_address:N.destination.address},wagmiConfig:D,getI18n:()=>A.current,...g?{environment:g}:{},...N.minAmountUsd===void 0?{}:{minAmountUsd:N.minAmountUsd},...N.maxAmountUsd===void 0?{}:{maxAmountUsd:N.maxAmountUsd},...N.metadata?{metadata:N.metadata}:{}})},[N,F,h,g,j,M,D]),R=d(()=>l(),[]),z=N?L??R:void 0,B=d(()=>{if(!(!P||!I))return r({userAddress:I,projectKey:h,currency:{networkId:j,assetSymbol:M},wagmiConfig:D,getI18n:()=>A.current,...g?{environment:g}:{},...P.minAmountUsd===void 0?{}:{minAmountUsd:P.minAmountUsd},...P.maxAmountUsd===void 0?{}:{maxAmountUsd:P.maxAmountUsd},...P.metadata?{metadata:P.metadata}:{}})},[P,I,h,g,j,M,D]),V=d(()=>u(),[]),H=P?B??V:void 0,U=L??B,W=p(e=>U?.subscribe(e)??(()=>{}),()=>{if(L){let e=L.getSnapshot();return e.brand.status===`ready`&&e.target.status===`ready`}return B?B.getSnapshot().receiveOptions.status===`ready`:!1},()=>!1),G=F??I,K=s({gatewayKey:h,environment:g??`production`,assetChain:j,assetSymbol:M,...G?{userAddress:G}:{},...L?{depositDriver:L}:{}});return o(a(C).kind===`stridge`?K:null),m(t,{value:d(()=>({isReady:W,driver:L}),[W,L]),children:m(i,{theme:y?.theme,accent:y?.accent,radius:y?.radius,direction:y?.direction,attribution:y?.attribution,i18n:b,storage:x?.driver,storageNamespace:x?.namespace,className:T,support:C,merchantContext:K,terms:w,...z?{deposit:z}:{},...N?.methods?{depositMethods:N.methods}:{},...H?{withdraw:H}:{},children:E})})}export{h as StridgeProvider};
@@ -0,0 +1 @@
1
+ "use client";import{use as e,useCallback as t,useSyncExternalStore as n}from"react";import{getAccount as r,watchAccount as i}from"wagmi/actions";import{WagmiContext as a}from"wagmi";function o(){let o=e(a);return{config:o,address:n(t(e=>o?i(o,{onChange:()=>e()}):()=>{},[o]),t(()=>{if(o)return r(o).address},[o]),()=>void 0)}}export{o as useOptionalWagmi};
@@ -1 +1 @@
1
- const e=Object.freeze({status:`idle`}),t=Object.freeze({brand:e,target:e,addresses:e,balances:e,quote:e,settlement:e,wallet:e}),n=Object.freeze({withdrawableBalances:e,receiveOptions:e,quote:e,settlement:e}),r=()=>{};function i(){if(typeof DOMException==`function`)return new DOMException(`Aborted`,`AbortError`);let e=Error(`Aborted`);return e.name=`AbortError`,e}function a(e){return new Promise((t,n)=>{if(e.aborted){n(i());return}e.addEventListener(`abort`,()=>n(i()),{once:!0})})}function o(){return{getSnapshot:()=>t,subscribe:()=>r,requestQuote:(e,t)=>a(t),submitDeposit:(e,t)=>a(t),watchSettlement:()=>{},fetchActiveSettlement:async()=>null}}function s(){return{getSnapshot:()=>n,subscribe:()=>r,requestQuote:(e,t)=>a(t),submitWithdrawal:(e,t)=>a(t),watchSettlement:()=>{}}}export{o as createStubDepositDriver,s as createStubWithdrawDriver};
1
+ const e=Object.freeze({status:`idle`}),t=Object.freeze({brand:e,target:e,addresses:e,balances:e,quote:e,settlement:e,wallet:e}),n=Object.freeze({withdrawableBalances:e,receiveOptions:e,quote:e,settlement:e}),r=()=>{};function i(){if(typeof DOMException==`function`)return new DOMException(`Aborted`,`AbortError`);let e=Error(`Aborted`);return e.name=`AbortError`,e}function a(e){return new Promise((t,n)=>{if(e.aborted){n(i());return}e.addEventListener(`abort`,()=>n(i()),{once:!0})})}function o(){return{getSnapshot:()=>t,subscribe:()=>r,requestQuote:(e,t)=>a(t),submitDeposit:(e,t)=>a(t),watchSettlement:()=>{},fetchActiveSettlement:async()=>null}}function s(){return{getSnapshot:()=>n,subscribe:()=>r,requestQuote:(e,t)=>a(t),prepareWithdrawal:(e,t)=>a(t),watchSettlement:()=>{}}}export{o as createStubDepositDriver,s as createStubWithdrawDriver};