@stridge/kit 0.1.0-alpha.4 → 0.1.0-alpha.41

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 (251) 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 +3 -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 +3 -3
  8. package/dist/drivers/stridge/catalog.d.ts +54 -0
  9. package/dist/drivers/stridge/catalog.js +1 -0
  10. package/dist/drivers/stridge/createStridgeDepositDriver.d.ts +9 -0
  11. package/dist/drivers/stridge/createStridgeDepositDriver.js +1 -1
  12. package/dist/drivers/stridge/createStridgeWithdrawDriver.d.ts +34 -13
  13. package/dist/drivers/stridge/createStridgeWithdrawDriver.js +1 -1
  14. package/dist/drivers/stridge/internal/ensureWalletChain.js +1 -0
  15. package/dist/drivers/stridge/internal/resolveAddEthereumChain.js +1 -0
  16. package/dist/drivers/stridge/internal/retry.js +1 -0
  17. package/dist/drivers/stridge/internal/supportedChains.js +1 -0
  18. package/dist/drivers/stridge/types.d.ts +20 -14
  19. package/dist/drivers/stridge/types.js +1 -1
  20. package/dist/drivers/stridge/wagmiSigner.js +1 -1
  21. package/dist/drivers/stridge-mock/createStridgeMockDriver.d.ts +2 -2
  22. package/dist/drivers/stridge-mock/createStridgeMockDriver.js +1 -1
  23. package/dist/drivers/stridge-mock/createStridgeMockWithdrawDriver.d.ts +15 -3
  24. package/dist/drivers/stridge-mock/createStridgeMockWithdrawDriver.js +1 -1
  25. package/dist/drivers/stridge-mock/fixtures.d.ts +13 -11
  26. package/dist/drivers/stridge-mock/fixtures.js +1 -1
  27. package/dist/events/bus/createBus.d.ts +7 -0
  28. package/dist/events/bus/createBus.js +1 -0
  29. package/dist/events/bus/flowIdRegistry.d.ts +17 -0
  30. package/dist/events/bus/flowIdRegistry.js +1 -0
  31. package/dist/events/bus/index.js +1 -0
  32. package/dist/events/bus/metadata.js +1 -0
  33. package/dist/events/context.js +1 -0
  34. package/dist/events/emit/index.js +1 -0
  35. package/dist/events/emit/mapFailure.js +1 -0
  36. package/dist/events/emit/useDepositEmissions.js +1 -0
  37. package/dist/events/emit/useKitEmitter.js +1 -0
  38. package/dist/events/emit/useWithdrawEmissions.js +1 -0
  39. package/dist/events/hooks/index.d.ts +6 -0
  40. package/dist/events/hooks/index.js +1 -0
  41. package/dist/events/hooks/useCurrentFlowId.d.ts +6 -0
  42. package/dist/events/hooks/useCurrentFlowId.js +1 -0
  43. package/dist/events/hooks/useStableHandler.js +1 -0
  44. package/dist/events/hooks/useStridgeEvent.d.ts +8 -0
  45. package/dist/events/hooks/useStridgeEvent.js +1 -0
  46. package/dist/events/hooks/useStridgeEventBus.d.ts +33 -0
  47. package/dist/events/hooks/useStridgeEventBus.js +1 -0
  48. package/dist/events/hooks/useStridgeEvents.d.ts +6 -0
  49. package/dist/events/hooks/useStridgeEvents.js +1 -0
  50. package/dist/events/hooks/useStridgeFlowEvent.d.ts +8 -0
  51. package/dist/events/hooks/useStridgeFlowEvent.js +1 -0
  52. package/dist/events/hooks/useStridgeFlowEvents.d.ts +6 -0
  53. package/dist/events/hooks/useStridgeFlowEvents.js +1 -0
  54. package/dist/events/index.d.ts +14 -0
  55. package/dist/events/index.js +1 -0
  56. package/dist/events/publish.js +1 -0
  57. package/dist/events/types/deposit.d.ts +235 -0
  58. package/dist/events/types/envelope.d.ts +145 -0
  59. package/dist/events/types/index.d.ts +31 -0
  60. package/dist/events/types/kit.d.ts +23 -0
  61. package/dist/events/types/withdraw.d.ts +150 -0
  62. package/dist/flows/deposit/dialog/DepositDialog.d.ts +14 -81
  63. package/dist/flows/deposit/dialog/DepositDialog.js +1 -1
  64. package/dist/flows/deposit/dialog/WalletRequiredState.js +1 -0
  65. package/dist/flows/deposit/dialog/WalletRequiredState.styles.js +1 -0
  66. package/dist/flows/deposit/driver/payloads.d.ts +10 -4
  67. package/dist/flows/deposit/driver/transformers/balanceToBalancesPayload.js +1 -1
  68. package/dist/flows/deposit/driver/transformers/startToAddressesPayload.js +1 -1
  69. package/dist/flows/deposit/driver/transformers/startToTargetPayload.js +1 -1
  70. package/dist/flows/deposit/driver/types.d.ts +11 -0
  71. package/dist/flows/deposit/orchestrator/controller.js +1 -1
  72. package/dist/flows/deposit/orchestrator/types.d.ts +30 -1
  73. package/dist/flows/deposit/orchestrator/useDeposit.d.ts +45 -1
  74. package/dist/flows/deposit/orchestrator/useDeposit.js +1 -1
  75. package/dist/flows/deposit/widgets/amount-entry/AmountEntry.d.ts +1 -1
  76. package/dist/flows/deposit/widgets/amount-entry/AmountEntry.js +1 -1
  77. package/dist/flows/deposit/widgets/amount-entry/footerIntent.js +1 -0
  78. package/dist/flows/deposit/widgets/confirm-deposit/ConfirmDeposit.js +1 -1
  79. package/dist/flows/deposit/widgets/deposit/Deposit.js +1 -1
  80. package/dist/flows/deposit/widgets/deposit/compound/components/Method.d.ts +6 -0
  81. package/dist/flows/deposit/widgets/deposit/compound/components/Method.js +1 -1
  82. package/dist/flows/deposit/widgets/deposit/compound/types.d.ts +6 -3
  83. package/dist/flows/deposit/widgets/deposit-status-banner/DepositStatusBanner.d.ts +7 -0
  84. package/dist/flows/deposit/widgets/deposit-status-banner/DepositStatusBanner.js +1 -1
  85. package/dist/flows/deposit/widgets/deposit-status-banner/compound/DepositStatusBanner.js +1 -1
  86. package/dist/flows/deposit/widgets/deposit-status-banner/compound/components/Hero.js +1 -1
  87. package/dist/flows/deposit/widgets/deposit-status-banner/compound/components/PrimaryAction.js +1 -1
  88. package/dist/flows/deposit/widgets/processing-state/ProcessingState.js +1 -1
  89. package/dist/flows/deposit/widgets/transfer-crypto/TransferCrypto.js +1 -1
  90. package/dist/flows/deposit/widgets/transfer-crypto/compound/TransferCrypto.d.ts +1 -1
  91. package/dist/flows/deposit/widgets/transfer-crypto/compound/components/Address.js +1 -1
  92. package/dist/flows/deposit/widgets/transfer-crypto/compound/components/Disclosure.d.ts +2 -1
  93. package/dist/flows/deposit/widgets/transfer-crypto/compound/components/Disclosure.js +1 -1
  94. package/dist/flows/deposit/widgets/transfer-crypto/compound/components/QrCode.d.ts +4 -10
  95. package/dist/flows/deposit/widgets/transfer-crypto/compound/components/QrCode.js +1 -1
  96. package/dist/flows/shared/transformers/pickRelevantSettlement.js +1 -1
  97. package/dist/flows/shared/transformers/testnets.js +1 -0
  98. package/dist/flows/withdraw/bindings/WithdrawBindings.d.ts +92 -0
  99. package/dist/flows/withdraw/bindings/WithdrawBindings.js +1 -0
  100. package/dist/flows/withdraw/bindings/index.d.ts +1 -0
  101. package/dist/flows/withdraw/bindings/index.js +1 -0
  102. package/dist/flows/withdraw/dialog/WithdrawDialog.d.ts +35 -71
  103. package/dist/flows/withdraw/dialog/WithdrawDialog.js +1 -1
  104. package/dist/flows/withdraw/driver/payloads.d.ts +16 -1
  105. package/dist/flows/withdraw/driver/transformers/settlementToWithdrawalPayload.js +1 -1
  106. package/dist/flows/withdraw/driver/transformers/supportedAssetsToReceiveOptionsPayload.js +1 -1
  107. package/dist/flows/withdraw/driver/types.d.ts +76 -13
  108. package/dist/flows/withdraw/orchestrator/controller.js +1 -1
  109. package/dist/flows/withdraw/orchestrator/index.d.ts +1 -1
  110. package/dist/flows/withdraw/orchestrator/reducer.js +1 -1
  111. package/dist/flows/withdraw/orchestrator/types.d.ts +131 -32
  112. package/dist/flows/withdraw/orchestrator/useWithdraw.d.ts +36 -1
  113. package/dist/flows/withdraw/orchestrator/useWithdraw.js +1 -1
  114. package/dist/flows/withdraw/widgets/withdraw-form/WithdrawForm.d.ts +5 -13
  115. package/dist/flows/withdraw/widgets/withdraw-form/WithdrawForm.js +1 -1
  116. package/dist/flows/withdraw/widgets/withdraw-form/compound/WithdrawForm.js +1 -1
  117. package/dist/flows/withdraw/widgets/withdraw-form/compound/components/RecipientField.d.ts +7 -5
  118. package/dist/flows/withdraw/widgets/withdraw-form/compound/components/RecipientField.js +1 -1
  119. package/dist/flows/withdraw/widgets/withdraw-form/compound/types.d.ts +15 -5
  120. package/dist/flows/withdraw/widgets/withdraw-form/validation.js +1 -1
  121. package/dist/flows/withdraw/widgets/withdraw-in-progress/WithdrawInProgress.d.ts +2 -1
  122. package/dist/flows/withdraw/widgets/withdraw-in-progress/WithdrawInProgress.js +1 -1
  123. package/dist/flows/withdraw/widgets/withdraw-success/WithdrawSuccess.js +1 -1
  124. package/dist/i18n/index.d.ts +5 -4
  125. package/dist/i18n/index.js +1 -1
  126. package/dist/i18n/locales/ar.js +1 -1
  127. package/dist/i18n/locales/es.js +1 -1
  128. package/dist/i18n/locales/source-keys.d.ts +12 -0
  129. package/dist/i18n/locales/source-keys.js +0 -0
  130. package/dist/icons/index.d.ts +2 -1
  131. package/dist/icons/index.js +1 -1
  132. package/dist/index.d.ts +21 -9
  133. package/dist/index.js +1 -1
  134. package/dist/package.js +1 -1
  135. package/dist/scope/KitPortalScope.js +1 -1
  136. package/dist/scope/KitScope.d.ts +18 -1
  137. package/dist/scope/KitScope.js +1 -1
  138. package/dist/scope/context.d.ts +17 -1
  139. package/dist/scope/index.d.ts +1 -1
  140. package/dist/shared/attribution/Attribution.js +1 -0
  141. package/dist/shared/attribution/Attribution.slots.js +1 -0
  142. package/dist/shared/attribution/Attribution.styles.js +1 -0
  143. package/dist/shared/attribution/index.js +1 -0
  144. package/dist/shared/chains/index.d.ts +48 -29
  145. package/dist/shared/chains/index.js +1 -1
  146. package/dist/shared/constants/brand-intercom.js +1 -0
  147. package/dist/shared/cuer/Cuer.js +1 -0
  148. package/dist/shared/cuer/QrCode.js +1 -0
  149. package/dist/shared/cuer/index.js +1 -0
  150. package/dist/shared/dialog/Frame.js +1 -1
  151. package/dist/shared/dialog/LoadingState.js +1 -0
  152. package/dist/shared/dialog/LoadingState.styles.js +1 -0
  153. package/dist/shared/dialog/StepTransition.js +1 -1
  154. package/dist/shared/driver/types.d.ts +4 -3
  155. package/dist/shared/i18n/KitI18nProvider.d.ts +11 -8
  156. package/dist/shared/i18n/KitI18nProvider.js +1 -1
  157. package/dist/shared/i18n/createKitI18n.d.ts +79 -16
  158. package/dist/shared/i18n/createKitI18n.js +1 -1
  159. package/dist/shared/i18n/useLingui.d.ts +11 -3
  160. package/dist/shared/icons/LogoIcon.d.ts +13 -0
  161. package/dist/shared/icons/LogoIcon.js +1 -0
  162. package/dist/shared/merchant-link/MerchantLink.d.ts +1 -0
  163. package/dist/shared/merchant-link/MerchantLink.js +1 -0
  164. package/dist/shared/merchant-link/MerchantLinkButton.d.ts +1 -0
  165. package/dist/shared/merchant-link/MerchantLinkButton.js +1 -0
  166. package/dist/shared/merchant-link/index.d.ts +1 -0
  167. package/dist/shared/merchant-link/index.js +1 -0
  168. package/dist/shared/merchant-link/resolveMerchantLink.js +1 -0
  169. package/dist/shared/orchestrator/useSettlementWatcher.js +1 -1
  170. package/dist/shared/primitives/TxHashValue/TxHashValue.js +1 -1
  171. package/dist/shared/support/SupportConfigContext.d.ts +1 -0
  172. package/dist/shared/support/SupportConfigContext.js +1 -0
  173. package/dist/shared/support/SupportLink.d.ts +1 -0
  174. package/dist/shared/support/SupportLink.js +1 -0
  175. package/dist/shared/support/SupportSpinner.d.ts +1 -0
  176. package/dist/shared/support/SupportSpinner.js +1 -0
  177. package/dist/shared/support/index.d.ts +2 -0
  178. package/dist/shared/support/index.js +1 -0
  179. package/dist/shared/support/intercom-loader.d.ts +17 -0
  180. package/dist/shared/support/intercom-loader.js +1 -0
  181. package/dist/shared/support/types.d.ts +43 -0
  182. package/dist/shared/support/useIntercomMerchantContext.d.ts +27 -0
  183. package/dist/shared/support/useIntercomMerchantContext.js +1 -0
  184. package/dist/shared/support/useIntercomShutdownOnUnmount.js +1 -0
  185. package/dist/shared/support/useMerchantContext.d.ts +1 -0
  186. package/dist/shared/support/useMerchantContext.js +1 -0
  187. package/dist/shared/support/useSupportTrigger.js +1 -0
  188. package/dist/shared/terms/TermsConfigContext.d.ts +1 -0
  189. package/dist/shared/terms/TermsConfigContext.js +1 -0
  190. package/dist/shared/terms/TermsLink.d.ts +1 -0
  191. package/dist/shared/terms/TermsLink.js +1 -0
  192. package/dist/shared/terms/index.d.ts +1 -0
  193. package/dist/shared/terms/index.js +1 -0
  194. package/dist/shared/terms/types.d.ts +43 -0
  195. package/dist/shared/ui/Card/Card.styles.js +1 -1
  196. package/dist/shared/ui/Details/Details.d.ts +9 -1
  197. package/dist/shared/ui/Details/Details.styles.js +1 -1
  198. package/dist/shared/ui/Dialog/Dialog.js +1 -1
  199. package/dist/shared/ui/Dialog/Dialog.styles.js +1 -1
  200. package/dist/shared/ui/Select/Select.js +1 -1
  201. package/dist/shared/ui/WalletRow/WalletRow.d.ts +1 -1
  202. package/dist/shared/ui/WalletRow/WalletRow.js +1 -1
  203. package/dist/shared/utils/useDeepMemo.js +1 -0
  204. package/dist/shared/wallet/ConnectWalletContext.d.ts +17 -0
  205. package/dist/shared/wallet/ConnectWalletContext.js +1 -0
  206. package/dist/shared/widgets/amount-entry/compound/components/Hero/Hero.js +1 -1
  207. package/dist/shared/widgets/amount-entry/compound/components/Hero/SwapBackdrop.js +1 -1
  208. package/dist/shared/widgets/asset-picker/compound/components/Asset.d.ts +7 -1
  209. package/dist/shared/widgets/asset-picker/compound/components/Asset.js +1 -1
  210. package/dist/shared/widgets/confirm-transfer/compound/components/Disclaimer.d.ts +4 -3
  211. package/dist/shared/widgets/confirm-transfer/compound/components/Disclaimer.js +1 -1
  212. package/dist/shared/widgets/error-state/compound/components/AssetValue.js +1 -1
  213. package/dist/shared/widgets/error-state/compound/components/HelpInfo.js +1 -1
  214. package/dist/shared/widgets/error-state/compound/components/StatusValue.js +1 -1
  215. package/dist/shared/widgets/processing-state/compound/ProcessingState.d.ts +1 -5
  216. package/dist/shared/widgets/processing-state/compound/ProcessingState.js +1 -1
  217. package/dist/shared/widgets/processing-state/compound/ProcessingState.slots.d.ts +0 -1
  218. package/dist/shared/widgets/processing-state/compound/ProcessingState.slots.js +1 -1
  219. package/dist/shared/widgets/processing-state/compound/ProcessingState.styles.js +1 -1
  220. package/dist/shared/widgets/processing-state/compound/components/Details.d.ts +6 -1
  221. package/dist/shared/widgets/processing-state/compound/components/Details.js +1 -1
  222. package/dist/shared/widgets/processing-state/compound/components/Header.d.ts +4 -3
  223. package/dist/shared/widgets/processing-state/compound/components/Header.js +1 -1
  224. package/dist/shared/widgets/processing-state/compound/components/Hero.d.ts +14 -7
  225. package/dist/shared/widgets/processing-state/compound/components/Hero.js +1 -1
  226. package/dist/shared/widgets/processing-state/compound/components/Rows.js +1 -1
  227. package/dist/shared/widgets/processing-state/compound/components/StatusPill.js +1 -1
  228. package/dist/shared/widgets/processing-state/compound/components/splitAmount.js +1 -0
  229. package/dist/shared/widgets/processing-state/compound/index.d.ts +1 -1
  230. package/dist/shared/widgets/processing-state/compound/types.d.ts +7 -26
  231. package/dist/shared/widgets/success-state/compound/components/Actions.js +1 -1
  232. package/dist/shared/widgets/success-state/compound/components/AssetValue.js +1 -1
  233. package/dist/shared/widgets/success-state/compound/components/RouteValue.js +1 -1
  234. package/dist/shared/widgets/success-state/compound/components/StatusPill.js +1 -1
  235. package/dist/stridge/StridgeProvider.d.ts +165 -35
  236. package/dist/stridge/StridgeProvider.js +1 -1
  237. package/dist/stridge/depositOwner.js +1 -0
  238. package/dist/stridge/optionalWagmi.js +1 -0
  239. package/dist/stridge/stubs.js +1 -1
  240. package/dist/styles/index.css +126 -10
  241. package/dist/types.d.ts +5 -4
  242. package/dist/ui/index.js +1 -1
  243. package/dist/withdraw/compound/index.d.ts +2 -2
  244. package/dist/withdraw/dialog/index.d.ts +3 -1
  245. package/package.json +13 -9
  246. package/dist/flows/withdraw/dialog/WithdrawDialogEventsContext.d.ts +0 -36
  247. package/dist/flows/withdraw/dialog/WithdrawDialogEventsContext.js +0 -1
  248. package/dist/shared/widgets/processing-state/compound/components/Actions.d.ts +0 -17
  249. package/dist/shared/widgets/processing-state/compound/components/Actions.js +0 -1
  250. package/dist/stridge/StridgeContext.d.ts +0 -29
  251. package/dist/stridge/StridgeContext.js +0 -1
@@ -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,47 +1,115 @@
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 { ConnectWalletConfig } from "../shared/wallet/ConnectWalletContext.js";
7
+ import { Address } from "viem";
4
8
  import { ReactNode } from "react";
5
9
  import * as _$react_jsx_runtime0 from "react/jsx-runtime";
6
10
 
7
11
  //#region src/stridge/StridgeProvider.d.ts
8
12
  /**
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`.
13
+ * Settlement-asset tuple. `networkId` is the Stridge network id the wire value the gateway
14
+ * routes against, read straight off `Uda.supportedAssets()` (`"9006"` for BSC, `"195"` for
15
+ * Tron, …). The kit forwards it to `gateway/start` verbatim; it does not ship a chain catalog,
16
+ * so any network the backend lists works without a kit release. `symbol` is the asset symbol
17
+ * on that network (e.g. `"USDC"`).
13
18
  *
14
19
  * The same `asset` drives both flows:
15
20
  *
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.
21
+ * - **Deposit** settles to this `(networkId, symbol)` at the connected wallet (same-owner pattern).
22
+ * - **Withdraw** sources from this `(networkId, symbol)` of the user's on-chain balance.
18
23
  */
19
24
  interface StridgeAsset {
20
- chain: ChainInput;
25
+ networkId: string;
21
26
  symbol: string;
22
27
  }
23
28
  /**
24
- * Per-flow deposit tuning. Pass `deposit: {}` to enable the deposit flow with defaults.
29
+ * Settlement destination for the deposit flow. The kit does not infer a destination from any
30
+ * connected wagmi wallet — businesses pass the treasury / settlement address where deposited
31
+ * funds should land.
32
+ *
33
+ * @remarks
34
+ * If the gateway-kit admin config has "Same-owner only" enabled (default), `address` must
35
+ * equal the deposit owner. Turn the toggle off — and optionally pair it with a destination
36
+ * whitelist — to route funds to an address that differs 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 {
54
+ /** Settlement destination address — where settled brand-currency funds land at completion. */
55
+ destination: StridgeDepositDestination;
56
+ /**
57
+ * Owner used as `gateway/start.owner` for deposit UDAs. Optional — falls back to the
58
+ * connected wagmi wallet address, then to `dev.userAddressOverride`.
59
+ */
60
+ owner?: StridgeFlowOwner;
27
61
  /**
28
- * Low-balance / amount-entry USD floor. Defaults to the kit's internal default
29
- * (`STRIDGE_DEFAULT_MIN_DEPOSIT_USD`) when omitted.
62
+ * Lower USD bound on the deposit amount. Drives the asset-picker's "Low Balance" pill,
63
+ * prefills the amount-entry hero, and gates the confirm CTA.
30
64
  */
31
- minDepositUsd?: number;
65
+ minAmountUsd?: number;
66
+ /**
67
+ * Upper USD bound on the deposit amount. When set, the effective ceiling is
68
+ * `min(walletBalanceUsd, maxAmountUsd)`.
69
+ */
70
+ maxAmountUsd?: number;
32
71
  /**
33
72
  * Metadata persisted on the UDA at `gateway/start` time. Echoed back on `gateway/{owner}`
34
- * and webhook payloads. Treat as untrusted display data.
73
+ * and webhook payloads.
35
74
  */
36
75
  metadata?: Record<string, unknown>;
76
+ /**
77
+ * Per-method host disable lever for the deposit-method picker. Disabled tiles stay in the
78
+ * picker (preserves "I can see my options" UX), render natively disabled, and show
79
+ * `disabledHint` inline as the tile's meta line.
80
+ */
81
+ methods?: StridgeDepositMethodsConfig;
37
82
  }
38
83
  /**
39
- * Per-flow withdraw tuning. Pass `withdraw: {}` to enable the withdraw flow with defaults.
84
+ * Host-supplied disable lever for a single payment method on the deposit-method picker.
85
+ */
86
+ type StridgeDepositMethodConfig = DepositMethodConfig;
87
+ /**
88
+ * Per-method host configuration for the deposit picker. Omitting a method keeps default behavior.
89
+ */
90
+ type StridgeDepositMethodsConfig = DepositMethodsConfig;
91
+ /**
92
+ * Per-flow withdraw tuning.
40
93
  */
41
94
  interface StridgeWithdrawFlowConfig {
42
95
  /**
43
- * Metadata persisted on every UDA the withdraw flow provisions. Merged under the kit-set
44
- * `kit_flow` / `kit_version` / `source` keys (kit keys win).
96
+ * Owner used as `gateway/start.owner` for every withdraw UDA the flow provisions. Required
97
+ * the withdraw flow has no wagmi fallback because the business (not the end-user) is the
98
+ * party broadcasting the source-chain tx to the UDA.
99
+ */
100
+ owner: StridgeFlowOwner;
101
+ /**
102
+ * Lower USD bound on the withdraw amount. When set, the form blocks submit with a localized
103
+ * "Min $X" CTA while the typed amount sits below the floor.
104
+ */
105
+ minAmountUsd?: number;
106
+ /**
107
+ * Upper USD bound on the withdraw amount. When set, the form blocks submit with a localized
108
+ * "Max $X" CTA while the typed amount sits above the cap.
109
+ */
110
+ maxAmountUsd?: number;
111
+ /**
112
+ * Metadata persisted on every UDA the withdraw flow provisions.
45
113
  */
46
114
  metadata?: Record<string, unknown>;
47
115
  }
@@ -56,30 +124,56 @@ interface StridgeAppearance {
56
124
  accent?: string;
57
125
  /** Border-radius preset. `"sharp" | "subtle" | "rounded" | "pill"`. */
58
126
  radius?: "sharp" | "subtle" | "rounded" | "pill";
127
+ /** Text direction the kit's primitives render with. */
128
+ direction?: "ltr" | "rtl";
59
129
  /**
60
- * Text direction the kit's primitives render with. Falls back to a locale-derived default
61
- * (`"rtl"` for Arabic, Hebrew, Persian, Urdu) when omitted.
130
+ * Controls the "Powered by Stridge" attribution row inside every gateway widget frame.
62
131
  */
63
- direction?: "ltr" | "rtl";
132
+ attribution?: "visible" | "hidden";
64
133
  }
65
134
  /**
66
- * Persistence configuration for the kit's per-tab state (settlement banner acks, future
67
- * kit-wide features).
135
+ * Development / preview-only knobs. Grouped under a single `dev` prop so production integrations
136
+ * never reach for these accidentally.
137
+ */
138
+ interface StridgeDevConfig {
139
+ /**
140
+ * Address-only override used when no wagmi account is connected. Lets demos, sample apps,
141
+ * and read-only previews bootstrap the kit against a pasted EOA without firing up a wallet.
142
+ * The wagmi-connected account always wins — the override only fills in when `useAccount()`
143
+ * returns no address.
144
+ */
145
+ userAddressOverride?: Address;
146
+ }
147
+ /**
148
+ * Persistence configuration for the kit's per-tab state (settlement banner acks, future kit-wide
149
+ * features).
68
150
  */
69
151
  interface StridgeStorageConfig {
70
152
  /**
71
153
  * Storage backend. `"session"` (default — `sessionStorage`, forgotten on tab close),
72
- * `"local"` (`localStorage`, survives restarts), or `"memory"` (in-process only, ideal for
73
- * tests).
154
+ * `"local"` (`localStorage`, survives restarts), or `"memory"` (in-process only).
74
155
  */
75
156
  driver?: "session" | "local" | "memory";
76
157
  /**
77
- * Prefix every key the kit writes under. Two `<StridgeProvider />` instances on the same
78
- * page sharing a backend should pick distinct namespaces to keep state isolated. Defaults
79
- * to `stridge-kit:storage:v1`.
158
+ * Prefix every key the kit writes under. Defaults to `stridge-kit:storage:v1`.
80
159
  */
81
160
  namespace?: string;
82
161
  }
162
+ /**
163
+ * Eager-bootstrap opt-in. Set on `<StridgeProvider prefetch={…}>` to fire the driver `arm()` at
164
+ * mount instead of waiting for `useDeposit().open()` / `usePrefetchDeposit()` to do it. Two
165
+ * shapes:
166
+ *
167
+ * - `true` — arm every enabled flow at mount.
168
+ * - `("deposit" | "withdraw")[]` — arm only the listed flows.
169
+ *
170
+ * Default is unset (no eager arm). Reach for this only when the host KNOWS the dialog will
171
+ * open (e.g. a checkout page whose entire purpose is the gateway widget). The default trade —
172
+ * pay bootstrap cost when the user actually opens the dialog — is the right call for every
173
+ * other integration; flipping the prop "just to be safe" re-creates the eager-load problem at
174
+ * a different layer.
175
+ */
176
+ type StridgePrefetchConfig = true | ReadonlyArray<"deposit" | "withdraw">;
83
177
  declare namespace StridgeProvider {
84
178
  interface Props {
85
179
  /**
@@ -90,13 +184,11 @@ declare namespace StridgeProvider {
90
184
  /**
91
185
  * Which Stridge API host the kit talks to. Defaults to `"production"`
92
186
  * (`api.stridge.com`). Pass `"staging"` (`api.stridge.dev`) for integration testing.
93
- * Note that gateway keys are environment-scoped — a staging key won't authenticate
94
- * against production and vice versa.
95
187
  */
96
188
  environment?: StridgeEnvironment;
97
189
  /**
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.
190
+ * Settlement asset — the single source of truth for which `(networkId, symbol)` the
191
+ * gateway operates in.
100
192
  */
101
193
  asset: StridgeAsset;
102
194
  /**
@@ -113,6 +205,34 @@ declare namespace StridgeProvider {
113
205
  i18n?: KitI18nConfig;
114
206
  /** Persistence configuration for kit-internal state. */
115
207
  storage?: StridgeStorageConfig;
208
+ /**
209
+ * Development / preview-only knobs. Grouped under `dev` so production integrations
210
+ * never reach for them accidentally.
211
+ */
212
+ dev?: StridgeDevConfig;
213
+ /**
214
+ * Customer-support entry point configuration.
215
+ *
216
+ * Omit to use Stridge Intercom. Provide `url`, `onOpen`, or both to use merchant-owned
217
+ * support and opt out of Stridge messenger globals.
218
+ */
219
+ support?: SupportConfig;
220
+ /**
221
+ * Terms link configuration. Omit to point the kit's terms links at Stridge's terms page.
222
+ */
223
+ terms?: TermsConfig;
224
+ /**
225
+ * Eager-bootstrap opt-in. See {@link StridgePrefetchConfig}.
226
+ */
227
+ prefetch?: StridgePrefetchConfig;
228
+ /**
229
+ * Host-supplied "Connect a wallet" CTA. Rendered by the dialog's wallet-required state
230
+ * when the deposit flow is enabled but no owner can be resolved (no `flows.deposit.owner`,
231
+ * no wagmi connection, no `dev.userAddressOverride`). Omit to show the prompt without an
232
+ * actionable button — useful when the host surfaces the connect affordance elsewhere on
233
+ * the page.
234
+ */
235
+ connectWallet?: ConnectWalletConfig;
116
236
  /** Optional className applied to the kit's scope root `<div>`. */
117
237
  className?: string;
118
238
  children?: ReactNode;
@@ -127,16 +247,21 @@ declare namespace StridgeProvider {
127
247
  * from the per-flow `/dialog` subpaths anywhere inside; open them with `useDeposit().open()` /
128
248
  * `useWithdraw().open()`.
129
249
  *
250
+ * Bootstrap is lazy — no Stridge requests fire at provider mount. The driver instances stay
251
+ * idle until the user opens a dialog or the headless `usePrefetchDeposit()` /
252
+ * `usePrefetchWithdraw()` hook is called. Pass `prefetch` to opt into eager bootstrap when the
253
+ * host knows the dialog will open (rare).
254
+ *
130
255
  * @example
131
256
  * ```tsx
132
- * import { StridgeProvider, chains } from "@stridge/kit";
257
+ * import { StridgeProvider } from "@stridge/kit";
133
258
  * import { DepositDialog } from "@stridge/kit/deposit/dialog";
134
259
  *
135
260
  * <StridgeProvider
136
261
  * gatewayKey={process.env.NEXT_PUBLIC_STRIDGE_GATEWAY_KEY!}
137
- * asset={{ chain: chains.bsc, symbol: "USDC" }}
138
- * flows={{ deposit: {} }}
139
- * appearance={{ theme: "dark", accent: "oklch(78% 0.15 240)", radius: "rounded" }}
262
+ * asset={{ networkId: "9006", symbol: "USDC" }}
263
+ * flows={{ deposit: { destination: { address: treasury } } }}
264
+ * connectWallet={{ onClick: openConnectModal }}
140
265
  * >
141
266
  * <YourApp />
142
267
  * <DepositDialog />
@@ -151,8 +276,13 @@ declare function StridgeProvider({
151
276
  appearance,
152
277
  i18n,
153
278
  storage,
279
+ dev,
280
+ support,
281
+ terms,
282
+ prefetch,
283
+ connectWallet,
154
284
  className,
155
285
  children
156
286
  }: StridgeProvider.Props): _$react_jsx_runtime0.JSX.Element;
157
287
  //#endregion
158
- export { StridgeAppearance, StridgeAsset, StridgeDepositFlowConfig, StridgeProvider, StridgeStorageConfig, StridgeWithdrawFlowConfig };
288
+ export { StridgeAppearance, StridgeAsset, StridgeDepositDestination, StridgeDepositFlowConfig, StridgeDepositMethodConfig, StridgeDepositMethodsConfig, StridgeFlowOwner, StridgePrefetchConfig, 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{StridgeEventsContext as e}from"../events/context.js";import{createKitI18n as t}from"../shared/i18n/createKitI18n.js";import"../i18n/index.js";import{createStridgeCatalog as n}from"../drivers/stridge/catalog.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{createBus as a}from"../events/bus/createBus.js";import{createFlowIdRegistry as o}from"../events/bus/flowIdRegistry.js";import{createMetadataStore as s}from"../events/bus/metadata.js";import"../events/bus/index.js";import{KitProvider as c}from"../KitProvider.js";import{resolveMerchantLink as l}from"../shared/merchant-link/resolveMerchantLink.js";import"../shared/merchant-link/index.js";import{useIntercomMerchantContext as u}from"../shared/support/useIntercomMerchantContext.js";import{useMerchantContext as ee}from"../shared/support/useMerchantContext.js";import"../shared/support/index.js";import{useDeepMemo as d}from"../shared/utils/useDeepMemo.js";import{ConnectWalletContext as f}from"../shared/wallet/ConnectWalletContext.js";import{DepositOwnerContext as p}from"./depositOwner.js";import{useOptionalWagmi as m}from"./optionalWagmi.js";import{createStubDepositDriver as h,createStubWithdrawDriver as g}from"./stubs.js";import{useEffect as _,useMemo as v,useRef as y}from"react";import{jsx as b}from"react/jsx-runtime";function x({gatewayKey:x,environment:S,asset:C,flows:w,appearance:T,i18n:E,storage:D,dev:O,support:k,terms:te,prefetch:A,connectWallet:j,className:M,children:N}){if(!w.deposit&&!w.withdraw)throw Error("<StridgeProvider /> requires at least one of `flows.deposit` or `flows.withdraw`.");if(!C)throw Error("<StridgeProvider /> requires `asset: { networkId, symbol }`.");let{config:P,address:F}=m(),I=v(()=>t(E??{}),[E?.locale,E?.messages]),L=y(I);L.current=I;let R=d(C),z=d(w.deposit),B=d(w.withdraw),V=R.networkId,H=R.symbol,U=z?.owner?.address??F??O?.userAddressOverride,W=B?.owner.address,G=v(()=>n({projectKey:x,...S?{environment:S}:{}}),[x,S]),K=v(()=>{if(!(!z||!U))return r({userAddress:U,projectKey:x,destination:{network_id:V,asset_symbol:H,to_address:z.destination.address},wagmiConfig:P,catalog:G,getI18n:()=>L.current,...S?{environment:S}:{},...z.minAmountUsd===void 0?{}:{minAmountUsd:z.minAmountUsd},...z.maxAmountUsd===void 0?{}:{maxAmountUsd:z.maxAmountUsd},...z.metadata?{metadata:z.metadata}:{}})},[z,U,x,S,V,H,P,G]),q=v(()=>h(),[]),J=z?K??q:void 0,Y=v(()=>{if(!(!B||!W))return i({userAddress:W,projectKey:x,currency:{networkId:V,assetSymbol:H},wagmiConfig:P,catalog:G,getI18n:()=>L.current,...S?{environment:S}:{},...B.minAmountUsd===void 0?{}:{minAmountUsd:B.minAmountUsd},...B.maxAmountUsd===void 0?{}:{maxAmountUsd:B.maxAmountUsd},...B.metadata?{metadata:B.metadata}:{}})},[B,W,x,S,V,H,P,G]),X=v(()=>g(),[]),Z=B?Y??X:void 0;_(()=>{if(!A)return;let e=A===!0||A.includes(`deposit`),t=A===!0||A.includes(`withdraw`);e&&K?.arm(),t&&Y?.arm()},[A,K,Y]);let ne=v(()=>z?{resolved:U!==void 0}:null,[z,U]),re=v(()=>j?{onClick:j.onClick,...j.label===void 0?{}:{label:j.label}}:null,[j?.onClick,j?.label]),Q=U??W,$=ee({gatewayKey:x,environment:S??`production`,assetChain:V,assetSymbol:H,...Q?{userAddress:Q}:{},...K?{depositDriver:K}:{}});return u(l(k?{url:k.url,onSelect:k.onOpen}:void 0).kind===`default`?$:null),b(e,{value:v(()=>({bus:a(),flowIds:o(),metadata:s()}),[]),children:b(f,{value:re,children:b(p,{value:ne,children:b(c,{theme:T?.theme,accent:T?.accent,radius:T?.radius,direction:T?.direction,attribution:T?.attribution,i18n:E,storage:D?.driver,storageNamespace:D?.namespace,className:M,support:k,merchantContext:$,terms:te,...J?{deposit:J}:{},...z?.methods?{depositMethods:z.methods}:{},...Z?{withdraw:Z}:{},children:N})})})})}export{x as StridgeProvider};
@@ -0,0 +1 @@
1
+ "use client";import{createContext as e,use as t}from"react";const n=e(null);n.displayName=`DepositOwnerContext`;function r(){return t(n)}export{n as DepositOwnerContext,r as useDepositOwnerContext};
@@ -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,arm:()=>{},requestQuote:(e,t)=>a(t),submitDeposit:(e,t)=>a(t),watchSettlement:()=>{},fetchActiveSettlement:async()=>null}}function s(){return{getSnapshot:()=>n,subscribe:()=>r,arm:()=>{},requestQuote:(e,t)=>a(t),prepareWithdrawal:(e,t)=>a(t),watchSettlement:()=>{}}}export{o as createStubDepositDriver,s as createStubWithdrawDriver};
@@ -198,6 +198,9 @@
198
198
  --stridge-kit-card-shadow: 0 30px 80px oklch(0% 0 0 / .6), 0 2px 6px oklch(0% 0 0 / .4);
199
199
  --stridge-kit-skeleton-base: oklch(29.55% .01 285.72);
200
200
  --stridge-kit-skeleton-highlight: oklch(35.16% .01 285.67);
201
+ --stridge-kit-attribution-prefix-color: oklch(62% .005 286);
202
+ --stridge-kit-attribution-mark-color: oklch(72% .005 286);
203
+ --stridge-kit-attribution-wordmark-color: oklch(76% .005 286);
201
204
  --stridge-kit-shadow-xs: 0 1px 1px 0 oklch(0% 0 0 / .125);
202
205
  --stridge-kit-shadow-sm: 0 4px 4px -1px oklch(0% 0 0 / .04), 0 1px 1px 0 oklch(0% 0 0 / .08);
203
206
  --stridge-kit-shadow-md: 0 3px 8px oklch(0% 0 0 / .125), 0 2px 5px oklch(0% 0 0 / .125), 0 1px 1px oklch(0% 0 0 / .125);
@@ -256,6 +259,9 @@
256
259
  --stridge-kit-card-shadow: 0 30px 80px oklch(0% 0 0 / .16), 0 2px 6px oklch(0% 0 0 / .08);
257
260
  --stridge-kit-skeleton-base: oklch(91% 0 286);
258
261
  --stridge-kit-skeleton-highlight: oklch(95% 0 286);
262
+ --stridge-kit-attribution-prefix-color: oklch(50% .01 286);
263
+ --stridge-kit-attribution-mark-color: oklch(42% .01 286);
264
+ --stridge-kit-attribution-wordmark-color: oklch(36% .01 286);
259
265
  --stridge-kit-shadow-xs: 0 1px 2px 0 oklch(0% 0 0 / .04);
260
266
  --stridge-kit-shadow-sm: 0 1px 1px 0 oklch(0% 0 0 / .04), 0 1px 3px 0 oklch(0% 0 0 / .05);
261
267
  --stridge-kit-shadow-md: 0 6px 12px -3px oklch(0% 0 0 / .06), 0 2px 4px -1px oklch(0% 0 0 / .04);
@@ -398,6 +404,10 @@
398
404
  border-radius: 0;
399
405
  }
400
406
 
407
+ .x16rqkct {
408
+ border-radius: 50%;
409
+ }
410
+
401
411
  .x10hpsqq {
402
412
  border-radius: 9999px;
403
413
  }
@@ -478,6 +488,10 @@
478
488
  border-width: 2px;
479
489
  }
480
490
 
491
+ .xkz0k9k {
492
+ flex: 0 auto;
493
+ }
494
+
481
495
  .x845mor {
482
496
  flex: 1;
483
497
  }
@@ -698,6 +712,10 @@
698
712
  padding-inline: var(--stridge-kit-space-3);
699
713
  }
700
714
 
715
+ .x1ujb8i1 {
716
+ padding-inline: var(--stridge-kit-space-5);
717
+ }
718
+
701
719
  .xxztuhb {
702
720
  padding-inline: var(--stridge-kit-space-2);
703
721
  }
@@ -718,10 +736,18 @@
718
736
  border-radius: var(--stridge-kit-radius-sm);
719
737
  }
720
738
 
739
+ .x1gvykhg:focus-visible {
740
+ outline: 2px solid var(--stridge-kit-ring);
741
+ }
742
+
721
743
  .x67ar3w:focus-visible {
722
744
  outline: 2px solid var(--stridge-kit-foreground);
723
745
  }
724
746
 
747
+ .x1l0eogd:is(a:hover, a:focus-visible) [data-stridge-slot~="attribution-wordmark"] {
748
+ text-decoration: underline;
749
+ }
750
+
725
751
  .xnyhjf:has( > input:focus-visible, > textarea:focus-visible) {
726
752
  border-color: var(--stridge-kit-ring);
727
753
  }
@@ -842,6 +868,10 @@
842
868
  animation-delay: 0s;
843
869
  }
844
870
 
871
+ .x1a78uxe {
872
+ animation-duration: .24s;
873
+ }
874
+
845
875
  .x4afe7t {
846
876
  animation-duration: .3s;
847
877
  }
@@ -894,6 +924,10 @@
894
924
  animation-name: x17l86xk-B;
895
925
  }
896
926
 
927
+ .x1tj11xs {
928
+ animation-name: x1deacm-B;
929
+ }
930
+
897
931
  .xv305lp {
898
932
  animation-name: x1l9pw95-B;
899
933
  }
@@ -918,6 +952,10 @@
918
952
  animation-name: xdk6pkw-B;
919
953
  }
920
954
 
955
+ .x11qdjwd {
956
+ animation-name: xmr5gd0-B;
957
+ }
958
+
921
959
  .x1ka1v4i {
922
960
  animation-name: xqng64z-B;
923
961
  }
@@ -1250,6 +1288,10 @@
1250
1288
  color: var(--stridge-kit-info);
1251
1289
  }
1252
1290
 
1291
+ .x9irweu {
1292
+ color: var(--stridge-kit-attribution-mark-color);
1293
+ }
1294
+
1253
1295
  .x1vits3x {
1254
1296
  color: var(--stridge-kit-card-foreground);
1255
1297
  }
@@ -1258,6 +1300,10 @@
1258
1300
  color: var(--stridge-kit-secondary-foreground);
1259
1301
  }
1260
1302
 
1303
+ .x1nxg1fm {
1304
+ color: var(--stridge-kit-attribution-wordmark-color);
1305
+ }
1306
+
1261
1307
  .x1me39qh {
1262
1308
  color: var(--stridge-kit-primary);
1263
1309
  }
@@ -1282,6 +1328,10 @@
1282
1328
  color: var(--stridge-kit-details-label);
1283
1329
  }
1284
1330
 
1331
+ .xd2gg92 {
1332
+ color: var(--stridge-kit-attribution-prefix-color);
1333
+ }
1334
+
1285
1335
  .x1kqivnd {
1286
1336
  color: var(--stridge-kit-tile-foreground);
1287
1337
  }
@@ -1570,6 +1620,10 @@
1570
1620
  inset-inline-start: 0;
1571
1621
  }
1572
1622
 
1623
+ .xbudbmw {
1624
+ inset-inline-start: 50%;
1625
+ }
1626
+
1573
1627
  .xc8icb0 {
1574
1628
  isolation: isolate;
1575
1629
  }
@@ -1634,6 +1688,10 @@
1634
1688
  letter-spacing: var(--stridge-kit-tracking-widest);
1635
1689
  }
1636
1690
 
1691
+ .x14ju556 {
1692
+ line-height: 0;
1693
+ }
1694
+
1637
1695
  .x132q4wb {
1638
1696
  line-height: 1.25;
1639
1697
  }
@@ -1962,6 +2020,10 @@
1962
2020
  touch-action: none;
1963
2021
  }
1964
2022
 
2023
+ .x1764fhq {
2024
+ transform-box: fill-box;
2025
+ }
2026
+
1965
2027
  .x1g0ag68 {
1966
2028
  transform-origin: center;
1967
2029
  }
@@ -1978,8 +2040,8 @@
1978
2040
  transform: rotate(90deg);
1979
2041
  }
1980
2042
 
1981
- .x3oybdh {
1982
- transform: scale(1);
2043
+ .x11lhmoz {
2044
+ transform: translate(-50%, -50%);
1983
2045
  }
1984
2046
 
1985
2047
  .xx6bhzk {
@@ -2038,6 +2100,10 @@
2038
2100
  transition-property: box-shadow;
2039
2101
  }
2040
2102
 
2103
+ .xt3l3uh {
2104
+ transition-property: color;
2105
+ }
2106
+
2041
2107
  .x1vma9ed {
2042
2108
  transition-property: font-size, width;
2043
2109
  }
@@ -2111,10 +2177,6 @@
2111
2177
  will-change: height;
2112
2178
  }
2113
2179
 
2114
- .x6my1t9 {
2115
- will-change: opacity,transform;
2116
- }
2117
-
2118
2180
  .x1q1rmc8 {
2119
2181
  will-change: transform,opacity;
2120
2182
  }
@@ -2219,6 +2281,18 @@
2219
2281
  box-shadow: var(--stridge-kit-shadow-ring-focus);
2220
2282
  }
2221
2283
 
2284
+ .x1perupi:is(a:hover, a:focus-visible) [data-stridge-slot~="attribution-mark"] {
2285
+ color: color-mix(in oklab,var(--stridge-kit-attribution-mark-color) 78%,var(--stridge-kit-foreground));
2286
+ }
2287
+
2288
+ .x19k0ldo:is(a:hover, a:focus-visible) [data-stridge-slot~="attribution-wordmark"] {
2289
+ color: color-mix(in oklab,var(--stridge-kit-attribution-wordmark-color) 78%,var(--stridge-kit-foreground));
2290
+ }
2291
+
2292
+ .x1wa2jhk:is(a:hover, a:focus-visible) [data-stridge-slot~="attribution-prefix"] {
2293
+ color: color-mix(in oklab,var(--stridge-kit-attribution-prefix-color) 78%,var(--stridge-kit-foreground));
2294
+ }
2295
+
2222
2296
  .x111phvh:active:not(:disabled), .x70x1a4:hover:not(:disabled) {
2223
2297
  color: var(--stridge-kit-foreground);
2224
2298
  }
@@ -2247,6 +2321,10 @@
2247
2321
  outline-width: 2px;
2248
2322
  }
2249
2323
 
2324
+ .x1diuls0:is(a:hover, a:focus-visible) [data-stridge-slot~="attribution-wordmark"] {
2325
+ text-underline-offset: 2px;
2326
+ }
2327
+
2250
2328
  .x1yi73pz:has( > input:focus-visible, > textarea:focus-visible) {
2251
2329
  box-shadow: var(--stridge-kit-shadow-ring-focus);
2252
2330
  }
@@ -2380,6 +2458,10 @@
2380
2458
  animation-duration: 0s;
2381
2459
  }
2382
2460
 
2461
+ .x80wavc.x80wavc {
2462
+ animation-duration: 3.5s;
2463
+ }
2464
+
2383
2465
  .x1aquc0h.x1aquc0h {
2384
2466
  animation-name: none;
2385
2467
  }
@@ -2559,6 +2641,10 @@
2559
2641
  height: 64px;
2560
2642
  }
2561
2643
 
2644
+ .xdk7pt {
2645
+ height: 8px;
2646
+ }
2647
+
2562
2648
  .xegnrdp {
2563
2649
  height: 9px;
2564
2650
  }
@@ -2735,6 +2821,10 @@
2735
2821
  min-height: 32px;
2736
2822
  }
2737
2823
 
2824
+ .x1dby22o {
2825
+ min-height: 360px;
2826
+ }
2827
+
2738
2828
  .x1ba4aug {
2739
2829
  min-height: 40px;
2740
2830
  }
@@ -2767,10 +2857,6 @@
2767
2857
  overflow-y: auto;
2768
2858
  }
2769
2859
 
2770
- .x1rife3k {
2771
- overflow-y: scroll;
2772
- }
2773
-
2774
2860
  .xnw97ix {
2775
2861
  padding-bottom: .125rem;
2776
2862
  }
@@ -2911,6 +2997,10 @@
2911
2997
  top: 14px;
2912
2998
  }
2913
2999
 
3000
+ .xwa60dl {
3001
+ top: 50%;
3002
+ }
3003
+
2914
3004
  .xh8yej3 {
2915
3005
  width: 100%;
2916
3006
  }
@@ -2971,6 +3061,10 @@
2971
3061
  width: 64px;
2972
3062
  }
2973
3063
 
3064
+ .x1xc55vz {
3065
+ width: 8px;
3066
+ }
3067
+
2974
3068
  .xfxxnmn {
2975
3069
  width: calc(100% - 28px);
2976
3070
  }
@@ -3396,6 +3490,16 @@
3396
3490
  }
3397
3491
  }
3398
3492
 
3493
+ @keyframes xmr5gd0-B {
3494
+ 0%, 80%, 100% {
3495
+ opacity: 0;
3496
+ }
3497
+
3498
+ 40% {
3499
+ opacity: 1;
3500
+ }
3501
+ }
3502
+
3399
3503
  @keyframes x1k48ry3-B {
3400
3504
  from {
3401
3505
  opacity: 0;
@@ -3408,6 +3512,18 @@
3408
3512
  }
3409
3513
  }
3410
3514
 
3515
+ @keyframes x1deacm-B {
3516
+ 0% {
3517
+ opacity: 0;
3518
+ transform: translateY(2px);
3519
+ }
3520
+
3521
+ 100% {
3522
+ opacity: 1;
3523
+ transform: translateY(0);
3524
+ }
3525
+ }
3526
+
3411
3527
  @keyframes x1l9pw95-B {
3412
3528
  0% {
3413
3529
  opacity: 0;